@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Roboto:300,400,700");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&display=swap");
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, var, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  font-weight: normal;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

img {
  vertical-align: bottom;
  border: none;
}

ul, ol {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: none;
}

a {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
}

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;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
  border: 1px solid #ddd;
}

address {
  font-style: normal;
}

/* form */
button, fieldset, form, input, label, legend, select, textarea {
  font-family: inherit;
  font-style: inherit;
  font-weight: inherit;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}

/* ベース
---------------------------------- */
*, :after, :before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  font-size: 62.5%;
  min-height: 100%;
  height: 100%;
}

body {
  color: #000;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, verdana, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  min-height: 100%;
  letter-spacing: 0.05em;
  height: 100%;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  body {
    font-size: 15px;
    line-height: 1.55;
  }
}

a {
  color: #000;
  text-decoration: none;
}
a:hover, a:active, a:focus {
  color: #333333;
}

img {
  max-width: 100%;
  height: auto;
}

p {
  text-align: justify;
  text-justify: inter-ideograph;
  -ms-text-justify: inter-ideograph;
}

.view_pc {
  display: inline-block;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .view_pc {
    display: none;
  }
}

.view_block_pc {
  display: block;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .view_block_pc {
    display: none;
  }
}

.view_sp {
  display: none;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .view_sp {
    display: block;
  }
}

@-webkit-keyframes ball-scale {
  0% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  100% {
    -webkit-transform: scale(2);
            transform: scale(2);
    opacity: 0;
  }
}

@keyframes ball-scale {
  0% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  100% {
    -webkit-transform: scale(2);
            transform: scale(2);
    opacity: 0;
  }
}
#loading {
  width: 100%;
  height: 100%;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 900;
  -webkit-transition: 1s;
  transition: 1s;
  -webkit-transition-timing-function: cubic-bezier(0.32, 0.04, 0.2, 1.03);
          transition-timing-function: cubic-bezier(0.32, 0.04, 0.2, 1.03);
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
  overflow: hidden;
}
#loading:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 902;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #loading:before {
    right: 0;
  }
}
#loading:after {
  content: "";
  background-color: #8dc21f;
  border-radius: 100%;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  display: inline-block;
  height: 60px;
  width: 60px;
  -webkit-animation: ball-scale 1.2s 0.2s ease-in-out infinite;
          animation: ball-scale 1.2s 0.2s ease-in-out infinite;
  z-index: 903;
  position: fixed;
  left: 50%;
  top: 50%;
  margin-left: -30px;
  margin-top: -30px;
  pointer-events: none;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #loading:after {
    margin-top: -40px;
  }
}
#loading.comp {
  width: 0;
}
#loading.comp:after {
  display: none;
}

#container {
  width: 100%;
  padding-top: 70px;
  overflow: hidden;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #container {
    padding-top: 50px;
  }
}

.global__header {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 70px;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  z-index: 2000;
  padding-right: 70px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__header {
    width: 100%;
    height: 50px;
  }
}
.global__header_ttl {
  width: 210px;
  height: 70px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__header_ttl {
    width: 150px;
  }
}
.global__header_ttl h1 {
  width: 174px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__header_ttl h1 {
    width: 120px;
  }
}
.global__header_nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__header_nav {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
  }
}
.global__header_nav li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 70px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.global__header_nav li.btn_entry a {
  width: 140px;
  color: #fff;
  font-size: 14px;
  letter-spacing: 0.2em;
  font-weight: 500;
  line-height: 1.35;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__header_nav li.btn_entry a {
    width: 23vw;
    font-size: 11px;
    letter-spacing: 0em;
    height: 60px;
    line-height: 1.45;
  }
}
.global__header_nav li.btn_entry a span {
  display: inline-block;
  font-family: "Roboto", YuGothic, sans-serif;
  font-weight: 700;
  font-size: 24px;
  letter-spacing: 0.15em;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__header_nav li.btn_entry a span {
    font-size: 20px;
    letter-spacing: 0.1em;
  }
}
.global__header_nav li.btn_mynavi a {
  padding: 0 15px;
  margin-right: 10px;
  width: 220px;
}
@media only screen and (min-width:769px), print and (min-width: 2cm) {
  .global__header_nav li.btn_mynavi a:hover {
    opacity: 0.7;
  }
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__header_nav li.btn_mynavi a {
    width: 31vw;
    height: 60px;
    background-color: #fff;
    margin-right: 0;
    padding: 0 10px;
  }
}

.global__header_nav li.btn_rikunabi a {
  padding: 0 15px;
  margin-right: 10px;
  width: 220px;
}
@media only screen and (min-width:769px), print and (min-width: 2cm) {
  .global__header_nav li.btn_rikunabi a:hover {
    opacity: 0.7;
  }
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__header_nav li.btn_rikunabi a {
    width: 31vw;
    height: 60px;
    background-color: #fff;
    margin-right: 0;
    padding: 0 10px;
  }
}

.global__header_nav li.btn_newgraduate a {
  background-color: #007b3c;
}
@media only screen and (min-width:769px), print and (min-width: 2cm) {
  .global__header_nav li.btn_newgraduate a:hover {
    background-color: #339563;
  }
}
.global__header_nav li.btn_midcareer a {
  background-color: #8dc21f;
}
@media only screen and (min-width:769px), print and (min-width: 2cm) {
  .global__header_nav li.btn_midcareer a:hover {
    background-color: rgba(141, 194, 31, 0.7);
  }
}
.global__header_nav li.btn_internship a {
  background-color: #02ae3c;
}
@media only screen and (min-width:769px), print and (min-width: 2cm) {
  .global__header_nav li.btn_internship a:hover {
    background-color: rgba(2, 174, 60, 0.7);
  }
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__header_nav li.btn_insta {
    position: fixed;
    top: 0;
    right: 35px;
  }
}
.global__header_nav li.btn_insta a {
  width: 40px;
  margin: 0 20px;
}
@media only screen and (min-width:769px), print and (min-width: 2cm) {
  .global__header_nav li.btn_insta a:hover {
    opacity: 0.6;
  }
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__header_nav li.btn_insta a {
    height: 50px;
  }
}
.global__header_nav li.btn_insta a img {
  width: 36px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__header_nav li.btn_insta a img {
    height: 26px;
  }
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__header_nav li.btn_youtube {
    position: fixed;
    top: 0;
    right: 90px;
  }
}
.global__header_nav li.btn_youtube a {
  width: 70px;
  margin: 0 0 0 20px;
}

@media only screen and (min-width:769px), print and (min-width: 2cm) {
  .global__header_nav li.btn_youtube a:hover {
    opacity: 0.6;
  }
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__header_nav li.btn_youtube a {
    height: 50px;
  }
}
.global__header_nav li.btn_youtube a img {
  width: 47px;
  height: 36px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__header_nav li.btn_youtube a img {
    width: 34px;
    height: 26px;
  }
}


/* Toggle Button */
.nav__toggle {
  width: 88px;
  height: 70px;
  padding: 29px 23px;
  cursor: pointer;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 250;
  background-color: transparent;
  -webkit-transition: 0.25s ease-in-out;
  transition: 0.25s ease-in-out;
  /* #nav-toggle 切り替えアニメーション */
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .nav__toggle {
    display: block;
    width: 60px;
    height: 50px;
    padding: 19px 18px;
  }
}
@media only screen and (min-width:769px), print and (min-width: 2cm) {
  .nav__toggle:hover span:nth-child(1) {
    top: -3px;
  }
  .nav__toggle:hover span:nth-child(2) {
    top: 15px;
  }
}
.nav__toggle div {
  position: relative;
}
.nav__toggle span {
  display: block;
  position: absolute;
  height: 3px;
  width: 100%;
  background: #000;
  left: 0;
  -webkit-transition: 0.25s ease-in-out;
  transition: 0.25s ease-in-out;
}
.nav__toggle span:nth-child(1) {
  top: 0px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .nav__toggle span:nth-child(1) {
    top: 0px;
  }
}
.nav__toggle span:nth-child(2) {
  top: 12px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .nav__toggle span:nth-child(2) {
    top: 8px;
  }
}
.nav__toggle.open span:nth-child(1) {
  top: 6px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .nav__toggle.open span:nth-child(1) {
    top: 4px;
  }
}
.nav__toggle.open span:nth-child(2) {
  top: 6px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .nav__toggle.open span:nth-child(2) {
    top: 4px;
  }
}

.global__footer {
  padding: 90px 0 0;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__footer {
    padding: 50px 0 61px;
  }
}
.global__footer .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 90px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__footer .inner {
    display: block;
    padding-bottom: 5px;
  }
}
.global__footer_ttl {
  width: 180px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__footer_ttl {
    width: 180px;
    margin-bottom: 40px;
  }
}
.global__footer .cont_nav {
  width: 773px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__footer .cont_nav {
    width: 100%;
  }
}
.global__footer .copyright {
  font-size: 11px;
  background-color: #007b3c;
  color: #fff;
  padding: 15px;
  text-align: center;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__footer .copyright {
    font-size: 10px;
    padding: 10px 15px;
    background-color: #f3f3f3;
    color: #000;
  }
}

.cont_nav .ttl_cont {
  font-size: 18px;
  color: #007b3c;
  font-weight: 600;
  border-bottom: solid 1px #007b3c;
  padding-bottom: 2px;
  margin-bottom: 35px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .cont_nav .ttl_cont {
    margin-bottom: 0px;
    padding-bottom: 3px;
    border-bottom: solid 2px #007b3c;
  }
}
.cont_nav .nav_wrap {
  -webkit-column-count: 3;
     -moz-column-count: 3;
          column-count: 3;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .cont_nav .nav_wrap {
    -webkit-column-count: 1;
       -moz-column-count: 1;
            column-count: 1;
  }
}
.cont_nav .nav_wrap > * {
  display: table;
  height: 54px;
  margin-bottom: 33px;
  page-break-inside: avoid;
  -webkit-column-break-inside: avoid;
     -moz-column-break-inside: avoid;
          break-inside: avoid;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .cont_nav .nav_wrap > * {
    margin-bottom: 0px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
    border-bottom: solid 1px #ddd;
    height: auto;
    padding: 10px 0 12px;
  }
  .cont_nav .nav_wrap > *:last-child {
    border-bottom: none;
  }
}
.cont_nav .nav_wrap > * .en {
  font-size: 22px;
  font-weight: 500;
  line-height: 1.4;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .cont_nav .nav_wrap > * .en {
    font-size: 21px;
    margin-right: 10px;
  }
}

.cont_nav .nav_wrap > * .jpn {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.4;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .cont_nav .nav_wrap > * .jpn {
    font-size: 14px;
    margin-right: 10px;
  }
}

.cont_nav .nav_wrap > * .jpn-small {
  font-size: 13px;
  font-weight: 500;
  line-height: 1.4;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .cont_nav .nav_wrap > * .jpn-small {
    font-size: 12px;
    margin-right: 10px;
  }
}


.cont_nav .nav_wrap > * .jp {
  font-size: 13px;
  color: #007b3c;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .cont_nav .nav_wrap > * .jp {
    font-size: 12px;
  }
}

.cont_nav .nav_wrap > * .eng {
  font-size: 13px;
  color: #007b3c;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .cont_nav .nav_wrap > * .eng {
    font-size: 12px;
  }
}
.cont_nav .nav_wrap a {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.cont_nav .nav_wrap a:hover {
  opacity: 0.6;
}

.global__menu {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #f6f6f6;
  display: none;
  z-index: 500;
  background: #f6f6f6 url("img/bg_cont.png") repeat center top;
  background-size: 1800px auto;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__menu {
    overflow-y: scroll;
    background-color: #f6f6f6;
  }
}
.global__menu_nav {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__menu_nav {
    display: block;
  }
}
.global__menu_nav .cont_nav {
  width: 90%;
  max-width: 1000px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__menu_nav .cont_nav {
    padding: 65px 0 80px;
    margin: 0 auto;
  }
}
.global__menu.open .global__menu_nav {
  -webkit-animation: menuIn 1.2s ease;
          animation: menuIn 1.2s ease;
}

@-webkit-keyframes menuIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
  30% {
    opacity: 0;
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes menuIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
  30% {
    opacity: 0;
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.contents_illust {
  position: relative;
  background: url("./img/bg_cont.png") repeat center top;
  background-size: 1900px auto;
  padding-bottom: 110px;
  border-bottom: solid 3px #eee;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .contents_illust {
    padding-bottom: 40px;
    background-size: 130vw auto;
  }
}

.contents_pastel {
  background-color: #fffff4;
  padding-bottom: 110px;
  border-bottom: solid 3px #eee;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .contents_pastel {
    padding-bottom: 40px;
  }
}

.contents_gray {
  background-color: #f7f7f7;
  padding-bottom: 110px;
  border-bottom: solid 3px #eee;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .contents_gray {
    padding-bottom: 40px;
  }
}

.contents__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  position: relative;
  z-index: 10;
  padding-top: 100px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .contents__header {
    padding-top: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.contents__header .ttl_en {
  font-size: 92px;
  font-weight: 600;
  color: #007b3c;
  line-height: 1;
  /*text-shadow:3px 3px 0 #FFF, -3px -3px 0 #FFF,
             -3px 3px 0 #FFF, 3px -3px 0 #FFF,
             0px 3px 0 #FFF,  0 -3px 0 #FFF,
             -3px 0 0 #FFF, 3px 0 0 #FFF;*/
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .contents__header .ttl_en {
    font-size: 44px;
  }
}
.contents__header .ttl_jp {
  font-size: 22px;
  font-weight: 400;
  letter-spacing: 0.05em;
  margin-left: 1em;
  position: relative;
  bottom: 0.6em;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .contents__header .ttl_jp {
    font-size: 15px;
    margin-left: 0;
    margin-top: 0.8em;
  }
}
.contents__header .illust {
  position: absolute;
  right: 0;
  bottom: 0;
}
.contents__body {
  background-color: #fff;
  border: solid 1px #007b3c;
  border-right: solid 2px #007b3c;
  border-bottom: solid 2px #007b3c;
  margin-top: -8px;
  padding: 60px 50px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .contents__body {
    padding: 20px 15px;
    margin-top: 10px;
  }
}
.contents__body_ttl {
  text-align: center;
  font-size: 36px;
  font-weight: 700;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .contents__body_ttl {
    font-size: 28px;
    text-align: left;
    line-height: 1.4;
  }
}
.contents__body_ttl2 {
  font-size: 36px;
  font-weight: 700;
  display: inline;
  letter-spacing: normal;
  color: #fff;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(15%, transparent), color-stop(15%, #007b3c), color-stop(95%, #007b3c), color-stop(95%, transparent));
  background: linear-gradient(transparent 15%, #007b3c 15%, #007b3c 95%, transparent 95%);
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  padding: 0px 10px 0 10px;
  letter-spacing: 0.05em;
  line-height: 1.35;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .contents__body_ttl2 {
    font-size: 24px;
  }
}

.inner {
  width: 1030px;
  padding: 0 15px;
  margin: 0 auto;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .inner {
    width: 100%;
  }
}
.inner_800 {
  width: 800px;
  padding: 0;
  margin: 0 auto;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .inner_800 {
    width: 100%;
  }
}

.cont__comingsoon {
  width: 100%;
  min-height: calc(100vh - 380px);
  padding: 20px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .cont__comingsoon {
    min-height: calc(100vh - 210px);
  }
}
.cont__comingsoon .img_carry {
  width: 120px;
  height: 201px;
  overflow: hidden;
  position: relative;
  margin-bottom: 10px;
}
.cont__comingsoon .img_carry img {
  width: 240px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 1.6s steps(2) infinite;
          animation: parapara2 1.6s steps(2) infinite;
}
.cont__comingsoon_ttl {
  font-size: 28px;
  font-weight: 500;
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

*:before,
*:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}
img.unlimit {
  width: 100%;
}

.container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.row {
  margin-left: -15px;
  margin-right: -15px;
}

.clearfix:before,
.clearfix:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after {
  content: " ";
  display: table;
}

.clearfix:after,
.container:after,
.container-fluid:after,
.row:after {
  clear: both;
}

.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.pull-right {
  float: right !important;
}

.pull-left {
  float: left !important;
}

/* ========================================
containerの幅を変更
======================================== */
@media (min-width: 769px) {
  .container {
    width: 100%;
  }
}
@media (min-width: 992px) {
  .container {
    width: 100%;
  }
}
@media (min-width: 1070px) {
  .container {
    max-width: 1070px;
  }
}
@media (min-width: 1200px) {
  .container {
    width: 1170px;
  }
}
/* ========================================
間隔を60pxに拡張
======================================== */
.row-60 {
  margin-left: -30px;
  margin-right: -30px;
}
.row-60 > [class^=col-], .row-60 > [class*=" col-"] {
  padding-left: 30px;
  padding-right: 30px;
}

/* ========================================
間隔を50pxに拡張
======================================== */
.row-50 {
  margin-left: -25px;
  margin-right: -25px;
}
.row-50 > [class^=col-], .row-50 > [class*=" col-"] {
  padding-left: 25px;
  padding-right: 25px;
}

/* ========================================
間隔を40pxに拡張
======================================== */
/*
.container{
	padding-left: 20px;
	padding-right: 20px;
}
*/
.row-40 {
  margin-left: -20px;
  margin-right: -20px;
}
.row-40 > [class^=col-], .row-40 > [class*=" col-"] {
  padding-left: 20px;
  padding-right: 20px;
}

/* ========================================
間隔を20pxに縮小
======================================== */
/*
.container{
	padding-left: 10px;
	padding-right: 10px;
}
*/
.row-20 {
  margin-left: -10px;
  margin-right: -10px;
}
.row-20 > [class^=col-], .row-20 > [class*=" col-"] {
  padding-left: 10px;
  padding-right: 10px;
}

/* ========================================
間隔を10pxに縮小
======================================== */
/*
.container{
	padding-left: 5px;
	padding-right: 5px;
}
*/
.row-10 {
  margin-left: -5px;
  margin-right: -5px;
}
.row-10 > [class^=col-], .row-10 > [class*=" col-"] {
  padding-left: 5px;
  padding-right: 5px;
}

/* ========================================
間隔を0に
======================================== */
/*
.container{
	padding-left: 0;
	padding-right: 0;
}
*/
.row-pad0 {
  margin-left: 0;
  margin-right: 0;
}
.row-pad0 > [class^=col-], .row-pad0 > [class*=" col-"] {
  padding-left: 0;
  padding-right: 0;
}

/* ========================================
pull-left
======================================== */
@media only screen and (min-width:480px), print and (max-width: 1cm) {
  .pull-xs−left {
    float: left !important;
  }
  .pull-xs−left + [class^=col-] .img-responsive, .pull-xs−left [class*=" col-"] .img-responsive {
    width: 100%;
  }
}
@media only screen and (min-width:769px), print and (min-width: 2cm) {
  .pull-sm−left {
    float: left !important;
  }
  .pull-sm−left + [class^=col-] .img-responsive, .pull-sm−left [class*=" col-"] .img-responsive {
    width: 100%;
  }
}
@media only screen and (min-width:1000px), print and (min-width: 2cm) {
  .pull-md−left {
    float: left !important;
  }
  .pull-md−left + [class^=col-] .img-responsive, .pull-md−left [class*=" col-"] .img-responsive {
    width: 100%;
  }
}
@media only screen and (min-width:1200px), print and (min-width: 2cm) {
  .pull-lg−left {
    float: left !important;
  }
  .pull-lg−left + [class^=col-] .img-responsive, .pull-lg−left [class*=" col-"] .img-responsive {
    width: 100%;
  }
}
/* ========================================
pull-right
======================================== */
@media only screen and (min-width:480px), print and (max-width: 1cm) {
  .pull-xs−right {
    float: right !important;
  }
  .pull-xs−right + [class^=col-] .img-responsive, .pull-xs−right [class*=" col-"] .img-responsive {
    width: 100%;
  }
}
@media only screen and (min-width:769px), print and (min-width: 2cm) {
  .pull-sm−right {
    float: right !important;
  }
  .pull-sm−right + [class^=col-] .img-responsive, .pull-sm−right [class*=" col-"] .img-responsive {
    width: 100%;
  }
}
@media only screen and (min-width:1000px), print and (min-width: 2cm) {
  .pull-md−right {
    float: right !important;
  }
  .pull-md−right + [class^=col-] .img-responsive, .pull-md−right [class*=" col-"] .img-responsive {
    width: 100%;
  }
}
@media only screen and (min-width:1200px), print and (min-width: 2cm) {
  .pull-lg−right {
    float: right !important;
  }
  .pull-lg−right + [class^=col-] .img-responsive, .pull-lg−right [class*=" col-"] .img-responsive {
    width: 100%;
  }
}
/* ========================================
br
======================================== */
/*br-XX-block*/
.br-xs-block {
  display: none;
}
@media only screen and (min-width:480px), print and (max-width: 1cm) {
  .br-xs-block {
    display: inline-block;
  }
}

.br-sm-block {
  display: none;
}
@media only screen and (min-width:769px), print and (min-width: 2cm) {
  .br-sm-block {
    display: inline-block;
  }
}

.br-md-block {
  display: none;
}
@media only screen and (min-width:1000px), print and (min-width: 2cm) {
  .br-md-block {
    display: inline-block;
  }
}

.br-lg-block {
  display: none;
}
@media only screen and (min-width:1200px), print and (min-width: 2cm) {
  .br-lg-block {
    display: inline-block;
  }
}

/*br-XX-none*/
@media only screen and (min-width:480px), print and (max-width: 1cm) {
  .br-xs-none {
    display: none;
  }
}
@media only screen and (min-width:769px), print and (min-width: 2cm) {
  .br-sm-none {
    display: none;
  }
}
@media only screen and (min-width:1000px), print and (min-width: 2cm) {
  .br-md-none {
    display: none;
  }
}
@media only screen and (min-width:1200px), print and (min-width: 2cm) {
  .br-lg-none {
    display: none;
  }
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .mb1e-sm-min {
    margin-bottom: 1em;
  }
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .mb2e-sm-min {
    margin-bottom: 2em;
  }
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .mb3e-sm-min {
    margin-bottom: 2em;
  }
}

.img-center .img-responsive {
  margin: 0 auto;
}

/* ========================================
グリッド　5等分.col-XX-1-5　追加ver
======================================== */
.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

.col-xs-1-5, .col-sm-1-5, .col-md-1-5, .col-lg-1-5 {
  position: relative;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}

.col-xs-1, .col-xs-1-5, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: none;
  width: 100%;
}

.col-xxs-1, .col-xxs-1-5, .col-xxs-2, .col-xxs-3, .col-xxs-4, .col-xxs-5, .col-xxs-6, .col-xxs-7, .col-xxs-8, .col-xxs-9, .col-xxs-10, .col-xxs-11, .col-xxs-12 {
  float: left;
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

.col-xxs-12 {
  width: 100%;
}

.col-xxs-11 {
  width: 91.66666667%;
}

.col-xxs-10 {
  width: 83.33333333%;
}

.col-xxs-9 {
  width: 75%;
}

.col-xxs-8 {
  width: 66.66666667%;
}

.col-xxs-7 {
  width: 58.33333333%;
}

.col-xxs-6 {
  width: 50%;
}

.col-xxs-5 {
  width: 41.66666667%;
}

.col-xxs-4 {
  width: 33.33333333%;
}

.col-xxs-3 {
  width: 25%;
}

.col-xxs-2 {
  width: 16.66666667%;
}

.col-xxs-1-5 {
  width: 20%;
}

.col-xxs-1 {
  width: 8.33333333%;
}

.col-xxs-pull-12 {
  right: 100%;
}

.col-xxs-pull-11 {
  right: 91.66666667%;
}

.col-xxs-pull-10 {
  right: 83.33333333%;
}

.col-xxs-pull-9 {
  right: 75%;
}

.col-xxs-pull-8 {
  right: 66.66666667%;
}

.col-xxs-pull-7 {
  right: 58.33333333%;
}

.col-xxs-pull-6 {
  right: 50%;
}

.col-xxs-pull-5 {
  right: 41.66666667%;
}

.col-xxs-pull-4 {
  right: 33.33333333%;
}

.col-xxs-pull-3 {
  right: 25%;
}

.col-xxs-pull-2 {
  right: 16.66666667%;
}

.col-xxs-pull-1 {
  right: 8.33333333%;
}

.col-xxs-pull-0 {
  right: auto;
}

.col-xxs-push-12 {
  left: 100%;
}

.col-xxs-push-11 {
  left: 91.66666667%;
}

.col-xxs-push-10 {
  left: 83.33333333%;
}

.col-xxs-push-9 {
  left: 75%;
}

.col-xxs-push-8 {
  left: 66.66666667%;
}

.col-xxs-push-7 {
  left: 58.33333333%;
}

.col-xxs-push-6 {
  left: 50%;
}

.col-xxs-push-5 {
  left: 41.66666667%;
}

.col-xxs-push-4 {
  left: 33.33333333%;
}

.col-xxs-push-3 {
  left: 25%;
}

.col-xxs-push-2 {
  left: 16.66666667%;
}

.col-xxs-push-1 {
  left: 8.33333333%;
}

.col-xxs-push-0 {
  left: auto;
}

.col-xxs-offset-12 {
  margin-left: 100%;
}

.col-xxs-offset-11 {
  margin-left: 91.66666667%;
}

.col-xxs-offset-10 {
  margin-left: 83.33333333%;
}

.col-xxs-offset-9 {
  margin-left: 75%;
}

.col-xxs-offset-8 {
  margin-left: 66.66666667%;
}

.col-xxs-offset-7 {
  margin-left: 58.33333333%;
}

.col-xxs-offset-6 {
  margin-left: 50%;
}

.col-xxs-offset-5 {
  margin-left: 41.66666667%;
}

.col-xxs-offset-4 {
  margin-left: 33.33333333%;
}

.col-xxs-offset-3 {
  margin-left: 25%;
}

.col-xxs-offset-2 {
  margin-left: 16.66666667%;
}

.col-xxs-offset-1 {
  margin-left: 8.33333333%;
}

.col-xxs-offset-0 {
  margin-left: 0%;
}

@media (min-width: 480px) {
  .col-xs-1, .col-xs-1-5, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
    float: left;
  }

  .col-xs-12 {
    width: 100%;
  }

  .col-xs-11 {
    width: 91.66666667%;
  }

  .col-xs-10 {
    width: 83.33333333%;
  }

  .col-xs-9 {
    width: 75%;
  }

  .col-xs-8 {
    width: 66.66666667%;
  }

  .col-xs-7 {
    width: 58.33333333%;
  }

  .col-xs-6 {
    width: 50%;
  }

  .col-xs-5 {
    width: 41.66666667%;
  }

  .col-xs-4 {
    width: 33.33333333%;
  }

  .col-xs-3 {
    width: 25%;
  }

  .col-xs-2 {
    width: 16.66666667%;
  }

  .col-xs-1-5 {
    width: 20%;
  }

  .col-xs-1 {
    width: 8.33333333%;
  }

  .col-xs-pull-12 {
    right: 100%;
  }

  .col-xs-pull-11 {
    right: 91.66666667%;
  }

  .col-xs-pull-10 {
    right: 83.33333333%;
  }

  .col-xs-pull-9 {
    right: 75%;
  }

  .col-xs-pull-8 {
    right: 66.66666667%;
  }

  .col-xs-pull-7 {
    right: 58.33333333%;
  }

  .col-xs-pull-6 {
    right: 50%;
  }

  .col-xs-pull-5 {
    right: 41.66666667%;
  }

  .col-xs-pull-4 {
    right: 33.33333333%;
  }

  .col-xs-pull-3 {
    right: 25%;
  }

  .col-xs-pull-2 {
    right: 16.66666667%;
  }

  .col-xs-pull-1 {
    right: 8.33333333%;
  }

  .col-xs-pull-0 {
    right: auto;
  }

  .col-xs-push-12 {
    left: 100%;
  }

  .col-xs-push-11 {
    left: 91.66666667%;
  }

  .col-xs-push-10 {
    left: 83.33333333%;
  }

  .col-xs-push-9 {
    left: 75%;
  }

  .col-xs-push-8 {
    left: 66.66666667%;
  }

  .col-xs-push-7 {
    left: 58.33333333%;
  }

  .col-xs-push-6 {
    left: 50%;
  }

  .col-xs-push-5 {
    left: 41.66666667%;
  }

  .col-xs-push-4 {
    left: 33.33333333%;
  }

  .col-xs-push-3 {
    left: 25%;
  }

  .col-xs-push-2 {
    left: 16.66666667%;
  }

  .col-xs-push-1 {
    left: 8.33333333%;
  }

  .col-xs-push-0 {
    left: auto;
  }

  .col-xs-offset-12 {
    margin-left: 100%;
  }

  .col-xs-offset-11 {
    margin-left: 91.66666667%;
  }

  .col-xs-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-xs-offset-9 {
    margin-left: 75%;
  }

  .col-xs-offset-8 {
    margin-left: 66.66666667%;
  }

  .col-xs-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-xs-offset-6 {
    margin-left: 50%;
  }

  .col-xs-offset-5 {
    margin-left: 41.66666667%;
  }

  .col-xs-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-xs-offset-3 {
    margin-left: 25%;
  }

  .col-xs-offset-2 {
    margin-left: 16.66666667%;
  }

  .col-xs-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-xs-offset-0 {
    margin-left: 0%;
  }
}
@media (min-width: 768px) {
  .col-sm-1, .col-sm-1-5, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left;
  }

  .col-sm-12 {
    width: 100%;
  }

  .col-sm-11 {
    width: 91.66666667%;
  }

  .col-sm-10 {
    width: 83.33333333%;
  }

  .col-sm-9 {
    width: 75%;
  }

  .col-sm-8 {
    width: 66.66666667%;
  }

  .col-sm-7 {
    width: 58.33333333%;
  }

  .col-sm-6 {
    width: 50%;
  }

  .col-sm-5 {
    width: 41.66666667%;
  }

  .col-sm-4 {
    width: 33.33333333%;
  }

  .col-sm-3 {
    width: 25%;
  }

  .col-sm-2 {
    width: 16.66666667%;
  }

  .col-sm-1-5 {
    width: 20%;
  }

  .col-sm-1 {
    width: 8.33333333%;
  }

  .col-sm-pull-12 {
    right: 100%;
  }

  .col-sm-pull-11 {
    right: 91.66666667%;
  }

  .col-sm-pull-10 {
    right: 83.33333333%;
  }

  .col-sm-pull-9 {
    right: 75%;
  }

  .col-sm-pull-8 {
    right: 66.66666667%;
  }

  .col-sm-pull-7 {
    right: 58.33333333%;
  }

  .col-sm-pull-6 {
    right: 50%;
  }

  .col-sm-pull-5 {
    right: 41.66666667%;
  }

  .col-sm-pull-4 {
    right: 33.33333333%;
  }

  .col-sm-pull-3 {
    right: 25%;
  }

  .col-sm-pull-2 {
    right: 16.66666667%;
  }

  .col-sm-pull-1 {
    right: 8.33333333%;
  }

  .col-sm-pull-0 {
    right: auto;
  }

  .col-sm-push-12 {
    left: 100%;
  }

  .col-sm-push-11 {
    left: 91.66666667%;
  }

  .col-sm-push-10 {
    left: 83.33333333%;
  }

  .col-sm-push-9 {
    left: 75%;
  }

  .col-sm-push-8 {
    left: 66.66666667%;
  }

  .col-sm-push-7 {
    left: 58.33333333%;
  }

  .col-sm-push-6 {
    left: 50%;
  }

  .col-sm-push-5 {
    left: 41.66666667%;
  }

  .col-sm-push-4 {
    left: 33.33333333%;
  }

  .col-sm-push-3 {
    left: 25%;
  }

  .col-sm-push-2 {
    left: 16.66666667%;
  }

  .col-sm-push-1 {
    left: 8.33333333%;
  }

  .col-sm-push-0 {
    left: auto;
  }

  .col-sm-offset-12 {
    margin-left: 100%;
  }

  .col-sm-offset-11 {
    margin-left: 91.66666667%;
  }

  .col-sm-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-sm-offset-9 {
    margin-left: 75%;
  }

  .col-sm-offset-8 {
    margin-left: 66.66666667%;
  }

  .col-sm-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-sm-offset-6 {
    margin-left: 50%;
  }

  .col-sm-offset-5 {
    margin-left: 41.66666667%;
  }

  .col-sm-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-sm-offset-3 {
    margin-left: 25%;
  }

  .col-sm-offset-2 {
    margin-left: 16.66666667%;
  }

  .col-sm-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-sm-offset-0 {
    margin-left: 0%;
  }
}
@media (min-width: 992px) {
  .col-md-1, .col-md-1-5, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
  }

  .col-md-12 {
    width: 100%;
  }

  .col-md-11 {
    width: 91.66666667%;
  }

  .col-md-10 {
    width: 83.33333333%;
  }

  .col-md-9 {
    width: 75%;
  }

  .col-md-8 {
    width: 66.66666667%;
  }

  .col-md-7 {
    width: 58.33333333%;
  }

  .col-md-6 {
    width: 50%;
  }

  .col-md-5 {
    width: 41.66666667%;
  }

  .col-md-4 {
    width: 33.33333333%;
  }

  .col-md-3 {
    width: 25%;
  }

  .col-md-2 {
    width: 16.66666667%;
  }

  .col-md-1-5 {
    width: 20%;
  }

  .col-md-1 {
    width: 8.33333333%;
  }

  .col-md-pull-12 {
    right: 100%;
  }

  .col-md-pull-11 {
    right: 91.66666667%;
  }

  .col-md-pull-10 {
    right: 83.33333333%;
  }

  .col-md-pull-9 {
    right: 75%;
  }

  .col-md-pull-8 {
    right: 66.66666667%;
  }

  .col-md-pull-7 {
    right: 58.33333333%;
  }

  .col-md-pull-6 {
    right: 50%;
  }

  .col-md-pull-5 {
    right: 41.66666667%;
  }

  .col-md-pull-4 {
    right: 33.33333333%;
  }

  .col-md-pull-3 {
    right: 25%;
  }

  .col-md-pull-2 {
    right: 16.66666667%;
  }

  .col-md-pull-1 {
    right: 8.33333333%;
  }

  .col-md-pull-0 {
    right: auto;
  }

  .col-md-push-12 {
    left: 100%;
  }

  .col-md-push-11 {
    left: 91.66666667%;
  }

  .col-md-push-10 {
    left: 83.33333333%;
  }

  .col-md-push-9 {
    left: 75%;
  }

  .col-md-push-8 {
    left: 66.66666667%;
  }

  .col-md-push-7 {
    left: 58.33333333%;
  }

  .col-md-push-6 {
    left: 50%;
  }

  .col-md-push-5 {
    left: 41.66666667%;
  }

  .col-md-push-4 {
    left: 33.33333333%;
  }

  .col-md-push-3 {
    left: 25%;
  }

  .col-md-push-2 {
    left: 16.66666667%;
  }

  .col-md-push-1 {
    left: 8.33333333%;
  }

  .col-md-push-0 {
    left: auto;
  }

  .col-md-offset-12 {
    margin-left: 100%;
  }

  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }

  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-md-offset-9 {
    margin-left: 75%;
  }

  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }

  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-md-offset-6 {
    margin-left: 50%;
  }

  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }

  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-md-offset-3 {
    margin-left: 25%;
  }

  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }

  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-md-offset-0 {
    margin-left: 0%;
  }
}
@media (min-width: 1200px) {
  .col-lg-1, .col-lg-1-5, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left;
  }

  .col-lg-12 {
    width: 100%;
  }

  .col-lg-11 {
    width: 91.66666667%;
  }

  .col-lg-10 {
    width: 83.33333333%;
  }

  .col-lg-9 {
    width: 75%;
  }

  .col-lg-8 {
    width: 66.66666667%;
  }

  .col-lg-7 {
    width: 58.33333333%;
  }

  .col-lg-6 {
    width: 50%;
  }

  .col-lg-5 {
    width: 41.66666667%;
  }

  .col-lg-4 {
    width: 33.33333333%;
  }

  .col-lg-3 {
    width: 25%;
  }

  .col-lg-2 {
    width: 16.66666667%;
  }

  .col-lg-1-5 {
    width: 20%;
  }

  .col-lg-1 {
    width: 8.33333333%;
  }

  .col-lg-pull-12 {
    right: 100%;
  }

  .col-lg-pull-11 {
    right: 91.66666667%;
  }

  .col-lg-pull-10 {
    right: 83.33333333%;
  }

  .col-lg-pull-9 {
    right: 75%;
  }

  .col-lg-pull-8 {
    right: 66.66666667%;
  }

  .col-lg-pull-7 {
    right: 58.33333333%;
  }

  .col-lg-pull-6 {
    right: 50%;
  }

  .col-lg-pull-5 {
    right: 41.66666667%;
  }

  .col-lg-pull-4 {
    right: 33.33333333%;
  }

  .col-lg-pull-3 {
    right: 25%;
  }

  .col-lg-pull-2 {
    right: 16.66666667%;
  }

  .col-lg-pull-1 {
    right: 8.33333333%;
  }

  .col-lg-pull-0 {
    right: auto;
  }

  .col-lg-push-12 {
    left: 100%;
  }

  .col-lg-push-11 {
    left: 91.66666667%;
  }

  .col-lg-push-10 {
    left: 83.33333333%;
  }

  .col-lg-push-9 {
    left: 75%;
  }

  .col-lg-push-8 {
    left: 66.66666667%;
  }

  .col-lg-push-7 {
    left: 58.33333333%;
  }

  .col-lg-push-6 {
    left: 50%;
  }

  .col-lg-push-5 {
    left: 41.66666667%;
  }

  .col-lg-push-4 {
    left: 33.33333333%;
  }

  .col-lg-push-3 {
    left: 25%;
  }

  .col-lg-push-2 {
    left: 16.66666667%;
  }

  .col-lg-push-1 {
    left: 8.33333333%;
  }

  .col-lg-push-0 {
    left: auto;
  }

  .col-lg-offset-12 {
    margin-left: 100%;
  }

  .col-lg-offset-11 {
    margin-left: 91.66666667%;
  }

  .col-lg-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-lg-offset-9 {
    margin-left: 75%;
  }

  .col-lg-offset-8 {
    margin-left: 66.66666667%;
  }

  .col-lg-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-lg-offset-6 {
    margin-left: 50%;
  }

  .col-lg-offset-5 {
    margin-left: 41.66666667%;
  }

  .col-lg-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-lg-offset-3 {
    margin-left: 25%;
  }

  .col-lg-offset-2 {
    margin-left: 16.66666667%;
  }

  .col-lg-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-lg-offset-0 {
    margin-left: 0%;
  }
}
/* ------------------------------------------------------------
フレーム
------------------------------------------------------------ */
.hover:hover {
  opacity: 0.8;
  text-decoration: none;
}

.clear {
  clear: both;
}

.lefty {
  float: left;
}

.righty {
  float: right;
}

.pos_rel {
  position: relative;
}

.block {
  display: block;
}

.ds_table {
  display: table;
}

.inline_block {
  display: inline-block;
}

.inline {
  display: inline;
}

.nodisplay {
  display: none !important;
}

.view_block_pc {
  display: block;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .view_block_pc {
    display: none;
  }
}

.view_block_sp {
  display: none;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .view_block_sp {
    display: block;
  }
}

.view_inline_pc {
  display: inline-block;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .view_inline_pc {
    display: none;
  }
}

.view_inline_sp {
  display: none;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .view_inline_sp {
    display: inline-block;
  }
}

/* ------------------------------
テキスト
------------------------------ */
@media only screen and (min-width:769px), print and (min-width: 2cm) {
  .txt_center_pc {
    text-align: center !important;
  }
}

.txt_center {
  display: block;
  text-align: center !important;
}

.txt_center_only {
  text-align: center !important;
}

.txt_right {
  display: block;
  text-align: right !important;
}

.txt_left {
  display: block;
  text-align: left !important;
}

.txt_justify {
  text-align: justify;
}

.txt_small {
  font-size: 0.7em;
}

.txt_notes_kome {
  display: block;
  margin-top: 0.8em;
  text-indent: -1em;
  margin-left: 1em;
}

.fc_main {
  color: #007b3c;
}

.txt_bold {
  font-weight: bold;
}

.ff {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.ffg {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, verdana, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
}

.uppercase {
  text-transform: uppercase;
}

.txt_white_space {
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}

.img_center {
  text-align: center;
}
.img_center img {
  display: inline-block;
}

.opa img,
.opa_group img {
  background-color: #fff;
}
.opa a:hover, .opa:hover,
.opa_group a:hover,
.opa_group:hover {
  text-decoration: none;
}

.hover,
.hover_group a {
  text-decoration: none;
}
.hover:hover,
.hover_group a:hover {
  text-decoration: none;
}

.leadcopy {
  text-align: center;
  line-height: 1.8;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .leadcopy {
    text-align: left;
    line-height: 1.7;
    text-align: justify;
    text-justify: inter-ideograph;
  }
}

/* ------------------------------
タイトル
------------------------------ */
.ttl_1 {
  font-size: 28px;
  font-weight: 400;
  color: #8dc21f;
  letter-spacing: 0.05em;
  border: solid 2px #8dc21f;
  width: 300px;
  padding: 0.32em 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto 1em;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .ttl_1 {
    font-size: 21px;
    width: 100%;
  }
}

/* ------------------------------
ボタン
------------------------------ */
.btn_1 {
  margin: 0 auto;
  position: relative;
  width: 380px;
  height: 80px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .btn_1 {
    width: 100%;
    height: 60px;
    font-size: 16px;
  }
}
.btn_1:before {
  content: "";
  position: absolute;
  top: 5px;
  left: 5px;
  width: 100%;
  height: 100%;
  background-color: #007b3c;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn_1 a {
  font-size: 18px;
  width: 100%;
  height: 100%;
  color: #007b3c;
  font-weight: 600;
  position: relative;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  padding-top: 25px;
  padding-left: 115px;
  display: block;
  border: 2px solid #007b3c;
  background-color: #fff;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .btn_1 a {
    padding-top: 0;
    padding-left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 16px;
  }
}
.btn_1 a:hover {
  -webkit-transform: translate(3px, 3px);
          transform: translate(3px, 3px);
}
.btn_1 a:hover:before {
  -webkit-transform: translate(0, -50%) scale(1.1);
          transform: translate(0, -50%) scale(1.1);
}
.btn_1 a:hover:after {
  -webkit-transform: translate(0, -50%) scale(1.1);
          transform: translate(0, -50%) scale(1.1);
}
.btn_1 a:before {
  content: "";
  position: absolute;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-color: #007b3c;
  right: 15px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.btn_1 a:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 8px;
  border-color: transparent transparent transparent #fff;
  right: 22px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.btn_1 button {
  font-size: 18px;
  width: 100%;
  height: 100%;
  color: #007b3c;
  font-weight: 600;
  position: relative;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  display: block;
  border: 2px solid #007b3c;
  background-color: #fff;
  cursor: pointer;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .btn_1 button {
    padding-top: 0;
    padding-left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 16px;
  }
}
.btn_1 button:hover {
  -webkit-transform: translate(3px, 3px);
          transform: translate(3px, 3px);
}
.btn_1 button:hover:before {
  -webkit-transform: translate(0, -50%) scale(1.1);
          transform: translate(0, -50%) scale(1.1);
}
.btn_1 button:hover:after {
  -webkit-transform: translate(0, -50%) scale(1.1);
          transform: translate(0, -50%) scale(1.1);
}
.btn_1 button:before {
  content: "";
  position: absolute;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-color: #007b3c;
  right: 15px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.btn_1 button:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 8px;
  border-color: transparent transparent transparent #fff;
  right: 22px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.btn_2 a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #007b3c;
  background-color: rgba(0, 123, 60, 0.06);
  width: 150px;
  height: 46px;
  padding-right: 30px;
  position: relative;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .btn_2 a {
    width: 100%;
    padding-right: 10px;
  }
}
.btn_2 a:hover {
  background-color: #007b3c;
  color: #fff;
}
.btn_2 a:hover:before {
  right: 11px;
  background-color: #fff;
}
.btn_2 a:hover:after {
  right: 18px;
  border-color: transparent transparent transparent #007b3c;
}
.btn_2 a:before {
  content: "";
  position: absolute;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-color: #007b3c;
  right: 15px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.btn_2 a:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 8px;
  border-color: transparent transparent transparent #fff;
  right: 22px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
/* ------------------------------
テーブル
------------------------------ */
.table-responsive {
  min-height: 0.01%;
  overflow-x: auto;
}

.table_1 {
  width: 100%;
}
.table_1 tr {
  border-top: solid 1px #ddd;
}
.table_1 tr th {
  width: 140px;
  padding: 20px 0;
  font-weight: 600;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .table_1 tr th {
    width: 100%;
    display: block;
  }
}
.table_1 tr td {
  padding: 20px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .table_1 tr td {
    width: 100%;
    display: block;
    padding: 0 5px 25px;
  }
}
.table_1 tr td b {
  font-weight: 500;
}

/* ------------------------------
ページネーション
------------------------------ */
.page_navi {
  padding-top: 30px;
  border-top: 1px solid #dddddd;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.page_navi li {
  margin: 0 5px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .page_navi li {
    font-size: 15px;
  }
}
.page_navi li:first-child {
  margin-left: 0;
}
.page_navi li a, .page_navi li span {
  width: 30px;
  height: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #f3f3f3;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.page_navi li a:hover {
  background-color: rgba(0, 123, 60, 0.1);
  color: #007b3c;
}
.page_navi .current > * {
  background-color: #007b3c;
  color: #fff;
}
/* ------------------------------
タブ
------------------------------ */
.tab_navi .tab_btn {
  display: table;
  width: 100%;
}
.tab_navi .tab_btn.tab_2 li {
  width: 50%;
}
.tab_navi .tab_btn.tab_3 li {
  width: 33.33%;
}
.tab_navi .tab_btn.tab_4 li {
  width: 25%;
}
.tab_navi .tab_btn.tab_5 li {
  width: 20%;
}
.tab_navi .tab_btn.tab_6 li {
  width: 16.66%;
}
.tab_navi .tab_btn li {
  background-color: #007b3c;
  color: #fff;
  cursor: pointer;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  line-height: 1.4;
  padding: 0.9em;
  border-left: solid 1px #d9f0eb;
}
.tab_navi .tab_btn li.active {
  background-color: #d9f0eb;
  color: #007b3c;
  cursor: default;
}
.tab_navi .tab_btn li:first-child {
  border-left: none;
}
.tab_navi .tab_cont {
  margin-top: 10px;
}
.tab_navi .tab_cont > div {
  display: none;
  opacity: 0;
  -webkit-animation-duration: 0.5s;
          animation-duration: 0.5s;
  -webkit-animation-name: fade-in;
          animation-name: fade-in;
  -webkit-animation-direction: alternate;
          animation-direction: alternate;
}
.tab_navi .tab_cont > div.active {
  display: block;
  opacity: 1;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-name: fade-in;
          animation-name: fade-in;
}

@-webkit-keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}

@keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
/* ------------------------------
アコーディオン
------------------------------ */
.ac_box dl {
  margin-bottom: 10px;
}
.ac_box dl dt {
  color: #000;
  background-color: #f3f3f3;
  border: solid 1px #eee;
  font-size: 15px;
  font-size: 1.5rem;
  padding: 0.4em 2em 0.4em 2.2em;
  position: relative;
  cursor: pointer;
}
.ac_box dl dt:before {
  font-size: 120%;
  display: block;
  content: "Q";
  position: absolute;
  top: 50%;
  left: 10px;
  margin-top: -0.5em;
  line-height: 1;
}
.ac_box dl dt:after {
  font-size: 120%;
  display: block;
  content: "＋";
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -0.5em;
  line-height: 1;
  opacity: 0.5;
}
.ac_box dl dd {
  padding: 10px 0 10px 40px;
  position: relative;
}
.ac_box dl dd:before {
  font-size: 140%;
  display: block;
  content: "A";
  position: absolute;
  top: 15px;
  left: 10px;
  line-height: 1;
}
.ac_box dl.active dt {
  color: #007b3c;
  background-color: #fff;
  border: solid 1px #007b3c;
}
.ac_box dl.active dt:after {
  content: "ー";
}
/* ------------------------------
ブロック
------------------------------ */
.block_1 {
  background-color: rgba(0, 123, 60, 0.07);
  padding: 25px 30px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .block_1 {
    padding: 12px 15px;
  }
}

/* ------------------------------
レイアウトセット
------------------------------ */
.layout_1 {
  margin-top: 80px;
}
.layout_1 .link_box {
  padding: 4% 10px 1%;
  background-color: #007b3c;
}
.layout_1 .link_box h4 {
  font-size: 30px;
  font-size: 3rem;
  text-align: center;
  padding: 10px 15px;
  font-family: "Roboto", sans-serif;
  color: #fff;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .layout_1 .link_box h4 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}
.layout_1 .link_box p {
  font-size: 15px;
  font-size: 1.5rem;
  color: #fff;
  text-align: center;
  margin-bottom: 35px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .layout_1 .link_box p {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
.layout_1 .btn_4 a {
  display: block;
  margin: 0 auto;
  padding: 4px 5px;
  width: 160px;
}
.layout_1 figure {
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .layout_1 figure {
    padding-bottom: 45%;
  }
}

body .mrg__btm0 {
  margin-bottom: 0 !important;
}
body .mrg__btm05 {
  margin-bottom: 0.5em !important;
}
body .mrg__btm1 {
  margin-bottom: 1em !important;
}
body .mrg__btm15 {
  margin-bottom: 1.5em !important;
}
body .mrg__btm2 {
  margin-bottom: 2em !important;
}
body .mrg__btm3 {
  margin-bottom: 3em !important;
}
body .mrg__btm4 {
  margin-bottom: 4em !important;
}
body .mrg__btm5 {
  margin-bottom: 5em !important;
}
body .mrg__btm6 {
  margin-bottom: 6em !important;
}
body .mrg__btm7 {
  margin-bottom: 7em !important;
}
body .mrg__btm8 {
  margin-bottom: 8em !important;
}
body .mrg__top0 {
  margin-top: 0 !important;
}
body .mrg__top05 {
  margin-top: 0.5em !important;
}
body .mrg__top1 {
  margin-top: 1em !important;
}
body .mrg__top2 {
  margin-top: 2em !important;
}
body .mrg__top3 {
  margin-top: 3em !important;
}
body .mrg__top4 {
  margin-top: 4em !important;
}
body .mrg__top5 {
  margin-top: 5em !important;
}
body .mrg__top6 {
  margin-top: 6em !important;
}
body .mrg__top7 {
  margin-top: 7em !important;
}
body .mrg__top8 {
  margin-top: 8em !important;
}
body .mrg__left0 {
  margin-left: 0 !important;
}
body .mrg__left1 {
  margin-left: 1em !important;
}
body .mrg__left2 {
  margin-left: 2em !important;
}
body .mrg__left3 {
  margin-left: 3em !important;
}
body .mrg__right0 {
  margin-right: 0 !important;
}
body .mrg__right1 {
  margin-right: 1em !important;
}
body .mrg__right2 {
  margin-right: 2em !important;
}
body .mrg__right3 {
  margin-right: 3em !important;
}
body .pad__top0 {
  padding-top: 0 !important;
}
body .pad__top1 {
  padding-top: 1em !important;
}
body .pad__top2 {
  padding-top: 2em !important;
}
body .pad__top3 {
  padding-top: 3em !important;
}
body .pad__top4 {
  padding-top: 4em !important;
}
body .pad__top5 {
  padding-top: 5em !important;
}
body .pad__top6 {
  padding-top: 6em !important;
}
body .pad__top7 {
  padding-top: 7em !important;
}
body .pad__top8 {
  padding-top: 8em !important;
}
body .pad__btm0 {
  padding-bottom: 0 !important;
}
body .pad__btm1 {
  padding-bottom: 1em !important;
}
body .pad__btm2 {
  padding-bottom: 2em !important;
}
body .pad__btm3 {
  padding-bottom: 3em !important;
}
body .pad__btm4 {
  padding-bottom: 4em !important;
}
body .pad__btm5 {
  padding-bottom: 5em !important;
}
body .pad__btm6 {
  padding-bottom: 6em !important;
}
body .pad__btm7 {
  padding-bottom: 7em !important;
}
body .pad__btm8 {
  padding-bottom: 8em !important;
}
body .pad__top_anc {
  padding-top: 84px !important;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  body .mrg__sp_btm1 {
    margin-bottom: 1em !important;
  }
  body .mrg__sp_btm15 {
    margin-bottom: 1.5em !important;
  }
  body .mrg__sp_btm2 {
    margin-bottom: 2em !important;
  }
  body .mrg__sp_btm3 {
    margin-bottom: 3em !important;
  }
  body .mrg__sp_left1 {
    margin-left: 1em !important;
  }
}

.category_ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .category_ul {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.category_ul li {
  display: inline-block;
  margin-right: 10px;
  margin-bottom: 5px;
}
.category_ul li a, .category_ul li span {
  display: inline-block;
  font-size: 15px;
  padding: 2px 10px;
  border-radius: 4px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .category_ul li a, .category_ul li span {
    font-size: 12px;
    padding: 3px 8px;
  }
}
.category_ul .color_red > * {
  background-color: #ffb6ae;
}
.category_ul .color_green > * {
  background-color: #96d9c9;
}
.category_ul .color_blue > * {
  background-color: #a4d5ff;
}
.category_ul .color_info > * {
  background-color: #007b3c;
  color: #fff;
}

.list_ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.list_ul .list_li {
  width: 290px;
  border: 1px solid #ddd;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  margin-bottom: 15px;
  background-color: #f6f6f6;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .list_ul .list_li {
    width: 100%;
  }
}
.list_ul .list_li:hover {
  border: 1px solid #007b3c;
}
.list_ul .list_li a {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  padding-bottom: 45px;
}
.list_ul .list_li a:hover .more_read {
  background-color: #007b3c;
  color: #fff;
}
.list_ul .list_li a:hover .more_read:before {
  background-color: #fff;
}
.list_ul .list_li a:hover .more_read:after {
  border-color: transparent transparent transparent #007b3c;
}
.list_ul .list_li a .list_box {
  padding: 15px 15px 20px;
}
.list_ul .list_li a .list_box .img_box {
  margin-bottom: 15px;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.list_ul .list_li a .list_box h2 {
  font-size: 20px;
  line-height: 1.4;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .list_ul .list_li a .list_box h2 {
    font-size: 16px;
  }
}
.list_ul .list_li a .more_read {
  background-color: #fff;
  text-align: center;
  color: #007b3c;
  display: block;
  padding: 10px 0;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.list_ul .list_li a .more_read:before {
  content: "";
  position: absolute;
  width: 24px;
  height: 24px;
  background-color: #007b3c;
  border-radius: 50%;
  right: 65px;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.list_ul .list_li a .more_read:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 8px;
  border-color: transparent transparent transparent #fff;
  right: 72px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

.waypoint {
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
}
.waypoint__fadeIn {
  opacity: 0;
}
.waypoint__fadeIn.active {
  opacity: 1;
}
.waypoint__fadeUp {
  opacity: 0;
  -webkit-transform: translateY(60px);
          transform: translateY(60px);
}
.waypoint__fadeUp.active {
  opacity: 1;
  -webkit-transform: translateY(0px);
          transform: translateY(0px);
}
.waypoint__slideLeft {
  opacity: 0;
  -webkit-transform: translateX(-100px);
          transform: translateX(-100px);
}
.waypoint__slideLeft.active {
  opacity: 1;
  -webkit-transform: translateX(0px);
          transform: translateX(0px);
}
.waypoint__slideLeftbig {
  opacity: 0;
  -webkit-transform: translateX(-400px);
          transform: translateX(-400px);
}
.waypoint__slideLeftbig.active {
  opacity: 1;
  -webkit-transform: translateX(0px);
          transform: translateX(0px);
}
.waypoint__slideLeftsmall {
  opacity: 0;
  -webkit-transform: translateX(-30px);
          transform: translateX(-30px);
}
.waypoint__slideLeftsmall.active {
  opacity: 1;
  -webkit-transform: translateX(0px);
          transform: translateX(0px);
}
.waypoint__slideRight {
  opacity: 0;
  -webkit-transform: translateX(100px);
          transform: translateX(100px);
}
.waypoint__slideRight.active {
  opacity: 1;
  -webkit-transform: translateX(0px);
          transform: translateX(0px);
}
.waypoint__slideRightup {
  opacity: 0;
  -webkit-transform: translate(100px, -100px);
          transform: translate(100px, -100px);
}
.waypoint__slideRightup.active {
  opacity: 1;
  -webkit-transform: translateX(0px);
          transform: translateX(0px);
}
.waypoint__slideRightupsmall {
  opacity: 0;
  -webkit-transform: translate(30px, -30px);
          transform: translate(30px, -30px);
}
.waypoint__slideRightupsmall.active {
  opacity: 1;
  -webkit-transform: translateX(0px);
          transform: translateX(0px);
}
.waypoint__zoomOutin {
  opacity: 0;
  -webkit-transform: scale(1.4);
          transform: scale(1.4);
}
.waypoint__zoomOutin.active {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
}
.waypoint__zoomIn {
  opacity: 0;
  -webkit-transform: scale(0.1);
          transform: scale(0.1);
}
.waypoint__zoomIn.active {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
}
.waypoint__zoomOut {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
}
.waypoint__zoomOut.active {
  opacity: 0;
  -webkit-transform: scale(3);
          transform: scale(3);
}
.waypoint__junpUp {
  opacity: 0;
  -webkit-transform: scale(0.1) translate(0, 100%);
          transform: scale(0.1) translate(0, 100%);
}
.waypoint__junpUp.active {
  opacity: 1;
  -webkit-transform: scale(1) translate(0, 0);
          transform: scale(1) translate(0, 0);
}
.waypoint__imgSlidein {
  -webkit-clip-path: inset(0 100% 0 0);
          clip-path: inset(0 100% 0 0);
}
.waypoint__imgSlidein.active {
  -webkit-clip-path: inset(0 0 0 0);
          clip-path: inset(0 0 0 0);
}
.waypoint.delay_02 {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
.waypoint.delay_03 {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
.waypoint.delay_04 {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
.waypoint.delay_06 {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
.waypoint.delay_1 {
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}
.waypoint.delay_16 {
  -webkit-transition-delay: 1.6s;
          transition-delay: 1.6s;
}
.waypoint.delay_2 {
  -webkit-transition-delay: 2s;
          transition-delay: 2s;
}
.waypoint.duration_06 {
  -webkit-transition-duration: 0.6s;
          transition-duration: 0.6s;
}
.waypoint.duration_2 {
  -webkit-transition-duration: 2s;
          transition-duration: 2s;
}
.waypoint.ease_black {
  -webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
          transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.waypoint.ease_Out_Quint {
  -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
          transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
}

@-webkit-keyframes fuyuAnime {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes fuyuAnime {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes buruburuAnime {
  0% {
    -webkit-transform: rotate(0deg) scale(1);
            transform: rotate(0deg) scale(1);
  }
  30% {
    -webkit-transform: rotate(0deg) scale(1);
            transform: rotate(0deg) scale(1);
  }
  33% {
    -webkit-transform: rotate(-10deg) scale(1.1);
            transform: rotate(-10deg) scale(1.1);
  }
  39% {
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
  }
  45% {
    -webkit-transform: rotate(-10deg) scale(1.1);
            transform: rotate(-10deg) scale(1.1);
  }
  51% {
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
  }
  57% {
    -webkit-transform: rotate(-10deg) scale(1.1);
            transform: rotate(-10deg) scale(1.1);
  }
  63% {
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
  }
  69% {
    -webkit-transform: rotate(-10deg) scale(1.1);
            transform: rotate(-10deg) scale(1.1);
  }
  75% {
    -webkit-transform: rotate(0deg) scale(1);
            transform: rotate(0deg) scale(1);
  }
  100% {
    -webkit-transform: rotate(0deg) scale(1);
            transform: rotate(0deg) scale(1);
  }
}
@keyframes buruburuAnime {
  0% {
    -webkit-transform: rotate(0deg) scale(1);
            transform: rotate(0deg) scale(1);
  }
  30% {
    -webkit-transform: rotate(0deg) scale(1);
            transform: rotate(0deg) scale(1);
  }
  33% {
    -webkit-transform: rotate(-10deg) scale(1.1);
            transform: rotate(-10deg) scale(1.1);
  }
  39% {
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
  }
  45% {
    -webkit-transform: rotate(-10deg) scale(1.1);
            transform: rotate(-10deg) scale(1.1);
  }
  51% {
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
  }
  57% {
    -webkit-transform: rotate(-10deg) scale(1.1);
            transform: rotate(-10deg) scale(1.1);
  }
  63% {
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
  }
  69% {
    -webkit-transform: rotate(-10deg) scale(1.1);
            transform: rotate(-10deg) scale(1.1);
  }
  75% {
    -webkit-transform: rotate(0deg) scale(1);
            transform: rotate(0deg) scale(1);
  }
  100% {
    -webkit-transform: rotate(0deg) scale(1);
            transform: rotate(0deg) scale(1);
  }
}
@-webkit-keyframes linkAnime {
  0% {
    -webkit-transform: translateX(-50px);
            transform: translateX(-50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}
@keyframes linkAnime {
  0% {
    -webkit-transform: translateX(-50px);
            transform: translateX(-50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}
@-webkit-keyframes parapara2 {
  to {
    -webkit-transform: translateX(-100.2%);
            transform: translateX(-100.2%);
  }
}
@keyframes parapara2 {
  to {
    -webkit-transform: translateX(-100.2%);
            transform: translateX(-100.2%);
  }
}
@-webkit-keyframes bgSky_anime {
  0% {
    background-position: 0 -60px;
  }
  100% {
    background-position: 1400px -60px;
  }
}
@keyframes bgSky_anime {
  0% {
    background-position: 0 -60px;
  }
  100% {
    background-position: 1400px -60px;
  }
}
@-webkit-keyframes bgSky_anime_sp {
  0% {
    background-position: 0 top;
  }
  100% {
    background-position: 500px top;
  }
}
@keyframes bgSky_anime_sp {
  0% {
    background-position: 0 top;
  }
  100% {
    background-position: 500px top;
  }
}
#home {
  background: #fff !important;
  border-bottom: none;
  padding-bottom: 0;
}
#home #sec_1 {
  background: url("img/home/bg_sky.svg") repeat-x center -60px;
  background-size: 1400px auto;
  padding-top: 24px;
  position: relative;
  -webkit-animation: bgSky_anime 36s linear infinite;
          animation: bgSky_anime 36s linear infinite;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_1 {
    background-position: center top;
    background-size: 500px auto;
    -webkit-animation: bgSky_anime_sp 36s linear infinite;
            animation: bgSky_anime_sp 36s linear infinite;
  }
}

#home #sec_1 .ttl_main {
  width: 1084px;
  height: 529px;
  margin: 0 auto;
  position: relative;
  z-index: 11;
  margin-bottom: 40px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_1 .ttl_main {
    width: 96vw;
    height: 47vw;
    margin-bottom: 82px;
  }
}
#home #sec_1 .ttl_main > div {
  position: absolute;
  z-index: 13;
}
#home #sec_1 .ttl_main_1_1 {
  width: 684px;
  left: 1px;
  top: 0px;
  -webkit-transition: 0.6s 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transition: 0.6s 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_1 .ttl_main_1_1 {
    width: 61vw;
    left: 0.01vw;
    top: 0px;
  }
}
#home #sec_1 .ttl_main_1_2 {
  width: 356px;
  left: 685px;
  top: 155px;
  -webkit-transition: 0.6s 0.6s;
  transition: 0.6s 0.6s;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_1 .ttl_main_1_2 {
    width: 31.53vw;
    left: 60.7vw;
    top: 13.5vw;
  }
}
#home #sec_1 .ttl_main_2_1 {
  width: 528px;
  left: 180px;
  top: 257px;
  -webkit-transition: 0.6s 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transition: 0.6s 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_1 .ttl_main_2_1 {
    width: 46.76vw;
    left: 16vw;
    top: 22.5vw;
  }
}
#home #sec_1 .ttl_main_2_2 {
  width: 357px;
  left: 725px;
  top: 341px;
  -webkit-transition: 0.6s 1.2s;
  transition: 0.6s 1.2s;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_1 .ttl_main_2_2 {
    width: 31.62vw;
    left: 64.4vw;
    top: 30.2vw;
  }
}
#home #sec_1 .main_copy:before {
  content: "";
  display: block;
  width: 100vw;
  height: 200vh;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(50%, white), to(white));
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), white 50%, white);
  position: fixed;
  left: 0;
  top: -100vh;
  -webkit-transition: 3s 2s cubic-bezier(0.32, 0.04, 0.2, 1.03);
  transition: 3s 2s cubic-bezier(0.32, 0.04, 0.2, 1.03);
  pointer-events: none;
}
#home #sec_1 .main_copy .ttl_main_1_1 {
  -webkit-transform: scale(2.6);
          transform: scale(2.6);
  opacity: 0;
}
#home #sec_1 .main_copy .ttl_main_1_2 {
  -webkit-transform: translateX(-50px);
          transform: translateX(-50px);
  opacity: 0;
}
#home #sec_1 .main_copy .ttl_main_2_1 {
  -webkit-transform: scale(1.6);
          transform: scale(1.6);
  opacity: 0;
}
#home #sec_1 .main_copy .ttl_main_2_2 {
  -webkit-transform: translateX(-50px);
          transform: translateX(-50px);
  opacity: 0;
}
#home #sec_1 .main_copy.ttl_fade:before {
  top: 100vh;
}
#home #sec_1 .main_copy.ttl_fade .ttl_main_1_1 {
  -webkit-transform: scale(1);
          transform: scale(1);
  opacity: 1;
}
#home #sec_1 .main_copy.ttl_fade .ttl_main_1_2 {
  -webkit-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
}
#home #sec_1 .main_copy.ttl_fade .ttl_main_2_1 {
  -webkit-transform: scale(1);
          transform: scale(1);
  opacity: 1;
}
#home #sec_1 .main_copy.ttl_fade .ttl_main_2_2 {
  -webkit-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
}
#home #sec_1 .ttl_sub {
  width: 604px;
  margin: 0 auto;
  position: relative;
  z-index: 10;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_1 .ttl_sub {
    width: 80%;
  }
}
#home #sec_1 .txt_read {
  text-align: center;
  font-size: 21px;
  color: #007b3c;
  font-weight: 500;
  line-height: 1.9;
  letter-spacing: 0.05em;
  position: relative;
  z-index: 10;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_1 .txt_read {
    font-size: 15px;
    padding: 5px 15px 15px;
  }
}
#home #sec_1 .img_tottori_1 {
  position: absolute;
  width: 321px;
  left: 50%;
  margin-left: 335px;
  top: 455px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_1 .img_tottori_1 {
    width: 140px;
    right: -10px;
    left: auto;
    margin-left: 0;
    top: 46vw;
    -webkit-transform: rotate(15deg);
            transform: rotate(15deg);
  }
}
#home #sec_1 .img_house_1 {
  position: absolute;
  width: 293px;
  right: 50%;
  margin-right: 400px;
  top: 578px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_1 .img_house_1 {
    width: 141px;
    left: -35px;
    right: auto;
    margin-right: 0;
    top: 54vw;
  }
}

#home #sec_1 .img_tottoriman {
  position: absolute;
  width: 225px;
  left: 2%;
  margin-left: 128px;
  top: 565px;
  -webkit-animation: fuyuAnime 2s ease infinite;
  animation: fuyuAnime 2s ease infinite;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_1 .img_tottoriman {
    width: 86px;
    left: 5%;
    margin-left: 0px;
    top: 55vw;
  }
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_2 {
    height: 2324px;
  }
}
#home #sec_2 .img_root {
  width: 1687px;
  height: 4295px;
  margin: -90px 0 0;
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  padding-left: 3px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_2 .img_root {
    -webkit-transform: translate(-49.6%, -17.4%) scale(0.4);
            transform: translate(-49.6%, -17.4%) scale(0.4);
    margin: -530px 0 0;
  }
}
#home #sec_2 .ttl_start_out {
  width: 341px;
  position: absolute;
  top: 211px;
  left: 50%;
  margin-left: -170.5px;
}
#home #sec_2 .img_jaguchi {
  position: absolute;
  width: 189.67px;
  left: 50%;
  margin-left: 39px;
  top: 816px;
  -webkit-animation: buruburuAnime 2s ease infinite;
          animation: buruburuAnime 2s ease infinite;
}
#home #sec_2 .img_naitei {
  width: 126px;
  position: absolute;
  right: 1%;
  margin-right: 454px;
  top: 340px;
  z-index: 999;
}
#home #sec_2 .img_airplane {
  width: 250px;
  position: absolute;
  right: 61%;
  margin-right: -806px;
  top: 3049px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_2 .img_airplane {
    width: 200px;
    right: 66%;
  }
}
#home #sec_2 .img_bike {
  width: 87px;
  position: absolute;
  right: 50%;
  margin-right: -301px;
  top: 3954px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_2 .img_bike {
    margin-right: -251px;
    top: 3989px;
    width: 75px;
  }
}
#home #sec_2 .img_bus {
  width: 389px;
  position: absolute;
  right: 50%;
  margin-right: -762px;
  top: 3775px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_2 .img_bus {
    margin-right: -672px;
    top: 3775px;
  }
}
#home #sec_2 .img_run {
  position: absolute;
  width: 580px;
  left: 1108px;
  top: -202px;
}
#home #sec_2 .img_tottorievent {
  width: 181px;
  height: 152px;
  position: absolute;
  right: 410px;
  top: 1442px;
  overflow: hidden;
}
#home #sec_2 .img_tottorievent img {
  width: 362px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 0.8s steps(2) infinite;
          animation: parapara2 0.8s steps(2) infinite;
}
#home #sec_2 .img_cycle_1 {
  position: absolute;
  left: 1130px;
  top: 1630px;
  width: 539px;
  z-index: 999;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_2 .img_cycle_1 {
    width: 426px;
    left: 1091px;
    top: 1701px;
  }
}
#home #sec_2 .img_cycle_2 {
  position: absolute;
  left: 816px;
  top: 1725px;
  width: 190px;
  z-index:999;
}
#home #sec_2 .img_meeting {
  position: absolute;
  left: 788px;
  top: 999px;
  width: 354px;
  z-index: 999;
}
#home #sec_2 .img_work_1 {
  position: absolute;
  left: 160px;
  top: 1033px;
  width: 211px;
  height: 198px;
  overflow: hidden;
  z-index: 999;
}
#home #sec_2 .img_work_1 img {
  width: 421px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 0.8s steps(2) infinite;
          animation: parapara2 0.8s steps(2) infinite;
}
#home #sec_2 .img_work_2 {
  position: absolute;
  left: 317px;
  top: 2573px;
  width: 186px;
  height: 224px;
  overflow: hidden;
}
#home #sec_2 .img_work_2 img {
  width: 372px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 2.6s steps(2) infinite;
          animation: parapara2 2.6s steps(2) infinite;
}
#home #sec_2 .img_call {
  position: absolute;
  left: 604px;
  top: 388px;
  width: 135px;
  height: 196px;
  overflow: hidden;
}
#home #sec_2 .img_call img {
  width: 270px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 1.4s steps(2) infinite;
          animation: parapara2 1.4s steps(2) infinite;
}
#home #sec_2 .img_carry {
  position: absolute;
  left: 1325px;
  top: 661px;
  width: 160px;
  height: 267px;
  overflow: hidden;
}
#home #sec_2 .img_carry img {
  width: 320px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 1.6s steps(2) infinite;
          animation: parapara2 1.6s steps(2) infinite;
}
#home #sec_2 .img_camp {
  position: absolute;
  left: 1224px;
  top: 2900px;
  width: 284px;
  height: 225px;
  overflow: hidden;
}
#home #sec_2 .img_camp img {
  width: 568px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 2s steps(2) infinite;
          animation: parapara2 2s steps(2) infinite;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_2 .img_camp {
    left: 1188px;
  }
}
#home #sec_2 .img_talk {
  position: absolute;
  left: 191px;
  top: 1458px;
  width: 361px;
  height: 258px;
  overflow: hidden;
}
#home #sec_2 .img_talk img {
  width: 722px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 2.6s steps(2) infinite;
          animation: parapara2 2.6s steps(2) infinite;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_2 .img_talk {
    left: 283px;
    top: 1479px;
    width: 288px;
    height: 206px;
  }
  #home #sec_2 .img_talk img {
    width: 576px;
  }
}
#home #sec_2 .img_shakehand {
  position: absolute;
  left: 922px;
  top: 2166px;
  width: 218px;
  height: 170px;
  overflow: hidden;
}
#home #sec_2 .img_shakehand img {
  width: 436px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 1.4s steps(2) infinite;
          animation: parapara2 1.4s steps(2) infinite;
}
#home #sec_2 .img_kids_1 {
  position: absolute;
  left: 178px;
  top: 593px;
  width: 312px;
  height: 412px;
  overflow: hidden;
}
#home #sec_2 .img_kids_1 img {
  width: 624px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 2s steps(2) infinite;
          animation: parapara2 2s steps(2) infinite;
}
#home #sec_2 .box_sea {
  position: absolute;
  left: 50%;
  top: 2030px;
  width: 100vw;
  height: 1236px;
  min-width: 1684px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: -1;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_2 .box_sea {
    min-width: auto;
    -webkit-transform: translateX(0);
            transform: translateX(0);
    left: 125px;
    width: 200vw;
    top: 2085px;
  }
}
#home #sec_2 .img_kids_2 {
  position: absolute;
  left: 417px;
  top: 57px;
  width: 145px;
  height: 136px;
  overflow: hidden;
}
#home #sec_2 .img_kids_2 img {
  width: 290px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 1s steps(2) infinite;
          animation: parapara2 1s steps(2) infinite;
}
#home #sec_2 .bg_sea {
  position: absolute;
  left: 0;
  top: 0;
  width: 382px;
}
#home #sec_2 .img_mirror {
  position: absolute;
  left: 577px;
  top: 692px;
  width: 227px;
  height: 252px;
  overflow: hidden;
  z-index: 999;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_2 .img_work_1 {
    left: 368px;
    top: 1315px;
    width: 137px;
  }
}
#home #sec_2 .img_mirror img {
  width: 454px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 1s steps(2) infinite;
          animation: parapara2 1s steps(2) infinite;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_2 .img_work_1 img {
    width: 270px;
  }
}
#home #sec_2 .img_slide {
  position: absolute;
  width: 76px;
  top: 2219px;
  left: 50%;
  margin-left: -522px;
}
#home #sec_2 .img_havestar {
  position: absolute;
  width: 116px;
  top: 1718px;
  left: 48%;
  margin-left: -427px;
  z-index: 999;
}
#home #sec_2 .img_dance {
  position: absolute;
  top: 1723px;
  left: 17%;
  width: 70px;
}
#home #sec_2 .img_kiwame_1 {
  position: absolute;
  width: 443px;
  height: 435px;
  top: 2674px;
  left: 50.7%;
  margin-left: -488px;
  overflow: hidden;
}
#home #sec_2 .img_kiwame_1 img {
  width: 886px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 1s steps(2) infinite;
          animation: parapara2 1s steps(2) infinite;
}
#home #sec_2 .img_kiwame_2 {
  position: absolute;
  width: 271px;
  height: 432px;
  top: 2593px;
  right: 50%;
  margin-right: -404px;
  overflow: hidden;
}
#home #sec_2 .img_kiwame_2 img {
  width: 542px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 1s steps(2) infinite;
          animation: parapara2 1s steps(2) infinite;
  z-index: 999;
}
#home #sec_2 .img_kiwame_3 {
  position: absolute;
  width: 216px;
  height: 285px;
  top: 3194px;
  right: 50%;
  margin-right: 299px;
  overflow: hidden;
  z-index: 999;
}
#home #sec_2 .img_kiwame_3 img {
  width: 432px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 1.6s steps(2) infinite;
          animation: parapara2 1.6s steps(2) infinite;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_2 .img_kiwame_3 {
    top: 3168px;
    margin-right: 280px;
  }
}
#home #sec_2 .img_kiwame_4 {
  position: absolute;
  width: 230px;
  height: 232px;
  top: 3584px;
  right: 49.5%;
  margin-right: 291px;
  overflow: hidden;
}
#home #sec_2 .img_kiwame_4 img {
  width: 460px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 1.6s steps(2) infinite;
          animation: parapara2 1.6s steps(2) infinite;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_2 .img_kiwame_4 {
    top: 3609px;
    margin-right: 267px;
  }
}
#home #sec_2 .img_kiwame_5 {
  position: absolute;
  width: 323px;
  height: 254px;
  top: 3334px;
  right: 50%;
  margin-right: -596px;
  overflow: hidden;
  z-index:999;
}
#home #sec_2 .img_kiwame_5 img {
  width: 646px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 1.6s steps(2) infinite;
          animation: parapara2 1.6s steps(2) infinite;
}
#home #sec_2 .img_kiwame_6 {
  position: absolute;
  width: 240px;
  height: 241px;
  top: 3647px;
  right: 50%;
  margin-right: -485px;
  overflow: hidden;
  z-index:999;
}
#home #sec_2 .img_kiwame_6 img {
  width: 480px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 1.6s steps(2) infinite;
          animation: parapara2 1.6s steps(2) infinite;
}
#home #sec_2 .bg_jump {
  position: absolute;
  width: 417px;
  height: 508px;
  top: 3175px;
  left: 49%;
  margin-left: -192px;
  overflow: hidden;
  z-index:999;
}
#home #sec_2 .bg_jump img {
  width: 834px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 1.2s steps(2) infinite;
          animation: parapara2 1.2s steps(2) infinite;
}
#home #sec_2 .img_jump_1 {
  position: absolute;
  width: 327px;
  top: 3172px;
  left: 50%;
  margin-left: -185px;
  z-index:999;
}
#home #sec_2 .img_jump_2 {
  position: absolute;
  width: 301px;
  top: 3405px;
  left: 50%;
  margin-left: -67px;
  z-index:999;
}
#home #sec_2 .txt_tottori {
  position: absolute;
  width: 426px;
  height: 50px;
  top: 1462px;
  left: 50%;
  margin-left: -226px;
  overflow: hidden;
}
#home #sec_2 .txt_tottori img {
  width: 852px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 1s steps(2) infinite;
          animation: parapara2 1s steps(2) infinite;
}
#home #sec_2 .txt_yamata {
  position: absolute;
  width: 404px;
  height: 50px;
  top: 2416px;
  left: 50%;
  margin-left: -215px;
  overflow: hidden;
}
#home #sec_2 .txt_yamata img {
  width: 808px;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: parapara2 1s steps(2) infinite;
          animation: parapara2 1s steps(2) infinite;
}
#home #sec_2 a {
  display: block;
  position: absolute;
  z-index: 100;
}
#home #sec_2 a:before {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  right: 8px;
  bottom: 10px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
#home #sec_2 a.arrow_1:before {
  background: url("img/home/link_arrow_1.svg") no-repeat center top;
  background-size: contain;
}
#home #sec_2 a.arrow_2:before {
  background: url("img/home/link_arrow_2.svg") no-repeat center top;
  background-size: contain;
}
#home #sec_2 a.arrow_3:before {
  background: url("img/home/link_arrow_3.svg") no-repeat center top;
  background-size: contain;
}
#home #sec_2 a:hover:before {
  -webkit-animation: linkAnime 0.6s ease forwards;
          animation: linkAnime 0.6s ease forwards;
}
#home #sec_2 a span {
  color: #FF0004;
  font-weight: 700;
  padding: 5px 15px;
  pointer-events: none;
  display: none;
}
#home #sec_2 a[href=""] {
  display: none;
}
#home #sec_2 .link_01 {
  width: 308px;
  height: 146px;
  top: 534px;
  left: 860px;
}
#home #sec_2 .link_02 {
  width: 260px;
  height: 146px;
  top: 894px;
  left: 849px;
}
#home #sec_2 .link_03 {
  width: 300px;
  height: 146px;
  top: 894px;
  left: 544px;
}
#home #sec_2 .link_04 {
  width: 278px;
  height: 152px;
  top: 1297px;
  left: 540px;
}
#home #sec_2 .link_05 {
  width: 272px;
  height: 146px;
  top: 1300px;
  left: 837px;
}
#home #sec_2 .link_06 {
  width: 146px;
  height: 236px;
  top: 1748px;
  left: 483px;
}
#home #sec_2 .link_07 {
  width: 242px;
  height: 146px;
  top: 2032px;
  left: 678px;
}
#home #sec_2 .link_08 {
  width: 218px;
  height: 146px;
  top: 2032px;
  left: 922px;
}
#home #sec_2 .link_09 {
  width: 218px;
  height: 146px;
  top: 2272px;
  left: 922px;
}
#home #sec_2 .link_10 {
  width: 218px;
  height: 146px;
  top: 2272px;
  left: 483px;
}
#home #sec_2 .link_11 {
  width: 224px;
  height: 146px;
  top: 2511px;
  left: 483px;
}
#home #sec_2 .link_11:before {
  right: 38px;
}
#home #sec_2 .link_12 {
  width: 224px;
  height: 146px;
  top: 2511px;
  left: 936px;
}
#home #sec_2 .link_13 {
  width: 146px;
  height: 200px;
  top: 3185px;
  left: 528px;
}
#home #sec_2 .link_14 {
  width: 146px;
  height: 200px;
  top: 3388px;
  left: 528px;
}
#home #sec_2 .link_14:before {
  right: 18px;
}
#home #sec_2 .link_15 {
  width: 146px;
  height: 200px;
  top: 3590px;
  left: 528px;
}
#home #sec_2 .link_16 {
  width: 146px;
  height: 200px;
  top: 3185px;
  left: 1008px;
}
#home #sec_2 .link_17 {
  width: 146px;
  height: 200px;
  top: 3388px;
  left: 1008px;
}
#home #sec_2 .link_17:before {
  bottom: 43px;
}
#home #sec_2 .link_18 {
  width: 146px;
  height: 200px;
  top: 3590px;
  left: 1008px;
}
#home #sec_2 .link_18:before {
  right: 16px;
}
#home #sec_3 {
  background-color: #8dc21f;
  width: 1000px;
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  border-top-left-radius: 50px;
  border-top-right-radius: 50px;
  border-top: solid 8px #fff;
  border-left: solid 8px #fff;
  border-right: solid 8px #fff;
  margin-top: -161px;
  padding: 30px 70px 10px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_3 {
    width: 100%;
    padding: 60px 0px 10px;
    border-top: solid 4px #fff;
    border-left: solid 4px #fff;
    border-right: solid 4px #fff;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    margin-top: -129px;
  }
}
#home #sec_3 .ttl_goal {
  width: 500px;
  margin: 0 auto;
  position: relative;
  z-index: 10;
  margin-bottom: 10px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_3 .ttl_goal {
    width: 265px;
  }
}
#home #sec_3 .ttl_goal_out {
  position: absolute;
  left: 0;
  top: 0;
  width: 500px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_3 .ttl_goal_out {
    width: 265px;
  }
}
#home #sec_3 .txt_goal {
  text-align: center;
  font-size: 29px;
  color: #fff;
  line-height: 1.9;
  letter-spacing: 0.05em;
  position: relative;
  z-index: 10;
  margin-bottom: 20px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_3 .txt_goal {
    font-size: 18px;
  }
}
#home #sec_3 .btn_goal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_3 .btn_goal {
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
}
#home #sec_3 .btn_goal li {
  background: url("img/home/bg_goalbtn.svg") no-repeat center top;
  background-size: contain;
  width: 180px;
  height: 180px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 20px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_3 .btn_goal li {
    width: 150px;
    height: 150px;
  }
}
#home #sec_3 .btn_goal li a {
  background-color: #007b3c;
  border-radius: 100%;
  width: 150px;
  height: 150px;
  padding-top: 4px;
  font-size: 22px;
  color: #fff;
  font-weight: 500;
  line-height: 1.3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  position: relative;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_3 .btn_goal li a {
    width: 125px;
    height: 125px;
    font-size: 18px;
  }
}
#home #sec_3 .btn_goal li a:before {
  content: "";
  display: block;
  position: absolute;
  top: 23px;
  left: 50%;
  margin-left: -7.5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 7.5px 0 7.5px;
  border-color: #fff transparent transparent transparent;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_3 .btn_goal li a:before {
    top: 18px;
  }
}
#home #sec_3 .btn_goal li a:hover {
  width: 166px;
  height: 166px;
}
#home #sec_3 .btn_goal li a:hover:before {
  top: 38px;
}
#home #sec_3 .img_tottori_goal {
  width: 300px;
  position: absolute;
  left: -70px;
  top: -25px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_3 .img_tottori_goal {
    width: 150px;
    left: -6px;
    top: -20px;
  }
}
#home #sec_3 .img_house_goal {
  width: 320px;
  position: absolute;
  right: -90px;
  top: -70px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_3 .img_house_goal {
    width: 160px;
    top: -24px;
    right: -46px;
  }
}
#home #sec_3 .img_staff_goal {
  width: 263px;
  position: absolute;
  bottom: 60px;
  right: -226px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_3 .img_staff_goal {
    width: 130px;
    bottom: -15px;
    right: -66px;
  }
}
#home #sec_3 .img_tree_goal {
  width: 64px;
  position: absolute;
  left: -134px;
  bottom: 50px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #home #sec_3 .img_tree_goal {
    width: 32px;
    left: 1px;
    bottom: 8px;
  }
}

#event .category_box {
  margin: 35px 0;
  border: 4px solid #f3f3f3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 30px 35px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #event .category_box {
    display: block;
    padding: 15px 10px;
    margin: 25px 0;
  }
}
#event .category_box .category_p {
  margin-right: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 120px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #event .category_box .category_p {
    margin-bottom: 5px;
    margin-right: 0;
    text-align: center;
  }
}
#event .category_box .category_p span {
  display: block;
}
#event .event_list {
  margin-bottom: 70px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #event .event_list {
    margin-bottom: 30px;
  }
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #event .event_list .list_ul .list_li a .list_box .category_ul {
    margin-bottom: 5px;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
#event .event_list .list_ul .list_li a .list_box .category_ul li {
  margin-right: 5px;
}
#event .event_list .list_ul .list_li a .list_box .date {
  margin-bottom: 10px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #event .event_list .list_ul .list_li a .list_box .date {
    margin-bottom: 5px;
    font-size: 14px;
  }
}
#event .article_ttl {
  border-bottom: 1px solid #dddddd;
  padding-bottom: 20px;
}
#event .article_ttl .category_ul {
  margin-bottom: 20px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #event .article_ttl .category_ul {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin-bottom: 10px;
  }
}
#event .article_ttl h2 {
  font-size: 24px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #event .article_ttl h2 {
    font-size: 20px;
    line-height: 1.4;
    margin-top: 5px;
  }
}
#event .article_box {
  padding-top: 45px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #event .article_box {
    padding-top: 30px;
  }
}
#event .article_box .img_box {
  width: 725px;
  margin-bottom: 60px;
  padding-left: 45px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #event .article_box .img_box {
    width: 100%;
    padding-left: 0;
    margin-bottom: 30px;
  }
}
#event .article_box .p_box {
  padding-left: 45px;
  margin-bottom: 190px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #event .article_box .p_box {
    padding-left: 0;
    margin-bottom: 60px;
  }
}
#event .article_box .p_box p {
  margin-bottom: 30px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #event .article_box .p_box p {
    font-size: 14px;
    margin-bottom: 15px;
  }
}

#entry input {
  border: 1px solid #cccccc;
}
#entry ::-webkit-input-placeholder {
  color: #b3b3b3;
}
#entry ::-moz-placeholder {
  color: #b3b3b3;
}
#entry :-ms-input-placeholder {
  color: #b3b3b3;
}
#entry ::-ms-input-placeholder {
  color: #b3b3b3;
}
#entry ::placeholder {
  color: #b3b3b3;
}
#entry .contents__body {
  padding: 80px 100px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .contents__body {
    padding: 20px 15px 30px;
  }
}
#entry .entrystep_ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  background-color: #f3f3f3;
  padding: 15px 0;
  margin-top: 45px;
  margin-bottom: 65px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .entrystep_ul {
    margin-top: 30px;
    margin-bottom: 40px;
  }
}
#entry .entrystep_ul li {
  font-size: 18px;
  margin-right: 145px;
  position: relative;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .entrystep_ul li {
    margin-right: 60px;
    font-size: 16px;
  }
}
#entry .entrystep_ul li:last-child {
  margin-right: 0;
}
#entry .entrystep_ul li:last-child:after {
  display: none;
}
#entry .entrystep_ul li:after {
  content: "";
  position: absolute;
  top: 10px;
  right: -90px;
  background-image: url("/img/entry/step_allow.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 28px;
  height: 26px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .entrystep_ul li:after {
    width: 23px;
    height: 21px;
    top: 8px;
    right: -40px;
  }
}
#entry .entrystep_ul .selected {
  color: #007b3c;
  font-weight: bold;
}
#entry .completion_ul {
  margin-top: 0;
  margin-bottom: 90px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .completion_ul {
    margin-bottom: 35px;
  }
}
#entry .completion_p {
  font-size: 24px;
  margin-bottom: 70px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .completion_p {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
#entry .thanks_txt {
  width: 600px;
  margin: 0 auto 120px;
  line-height: 2;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .thanks_txt {
    width: 100%;
    margin: 0 auto 35px;
    line-height: 1.8;
  }
}
#entry .formwrap .form_group {
  margin-bottom: 70px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .form_group {
    margin-bottom: 40px;
  }
}
#entry .formwrap .form_group .form_box {
  margin-bottom: 35px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .form_group .form_box {
    display: block;
    margin-bottom: 30px;
  }
}
#entry .formwrap .form_group .form_box:last-child {
  margin-bottom: 0;
}
#entry .formwrap .form_group .form_box dt {
  width: 200px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .form_group .form_box dt {
    width: 100%;
    margin-bottom: 10px;
    font-size: 16px;
  }
}
#entry .formwrap .form_group .form_box dt span {
  font-size: 15px;
  background-color: #8dc21f;
  color: #fff;
  padding: 2px 9px;
  border-radius: 4px;
  display: inline-block;
  margin-right: 15px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .form_group .form_box dt span {
    font-size: 12px;
    padding: 2px 5px;
  }
}
#entry .formwrap .form_group .form_box dt .optional {
  background-color: #eeeeee;
  color: #000;
}
#entry .formwrap .form_group .form_box dd .input {
  width: 240px;
  height: 36px;
  padding: 0 10px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .form_group .form_box dd .input {
    width: 100%;
    height: 30px;
    padding: 5px;
  }
}
#entry .formwrap .form_group .form_box dd .date {
  width: 60px;
  height: 36px;
  padding: 0 10px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .form_group .form_box dd .date {
    height: 30px;
    padding: 5px;
  }
}
#entry .formwrap .form_group .form_box dd .email {
  width: 600px;
  height: 36px;
  padding: 0 10px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .form_group .form_box dd .email {
    width: 100%;
    height: 30px;
    padding: 5px;
  }
}
#entry .formwrap .form_group .form_box dd .form_label {
  margin-right: 30px;
  position: relative;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .form_group .form_box dd .form_label {
    display: block;
    margin-bottom: 5px;
  }
}
#entry .formwrap .form_group .form_box dd .form_label input {
  opacity: 0;
  position: absolute;
  top: 6px;
  left: 3px;
}
#entry .formwrap .form_group .form_box dd .form_label .label_span {
  position: relative;
  padding-left: 25px;
  cursor: pointer;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .form_group .form_box dd .form_label .label_span {
    padding-left: 20px;
  }
}
#entry .formwrap .form_group .form_box dd .form_label .label_span:before {
  content: "";
  position: absolute;
  width: 14px;
  height: 14px;
  background-color: #fff;
  border: 1px solid #999999;
  border-radius: 4px;
  left: 3px;
  top: 6px;
  cursor: pointer;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .form_group .form_box dd .form_label .label_span:before {
    left: 0;
    top: 5px;
  }
}
#entry .formwrap .form_group .form_box dd .form_label input:checked + .label_span:after {
  position: absolute;
  top: 10px;
  left: 6px;
  content: "";
  width: 9px;
  height: 4px;
  border-left: 2px solid #007b3c;
  border-bottom: 2px solid #007b3c;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .form_group .form_box dd .form_label input:checked + .label_span:after {
    left: 3px;
  }
}
#entry .formwrap .form_group .form_box dd .textarea {
  max-width: 600px;
  min-width: 600px;
  height: 150px;
  outline: 0;
  border: 1px solid #cccccc;
  padding: 10px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .form_group .form_box dd .textarea {
    max-width: 100%;
    min-width: 100%;
    padding: 5px;
  }
}

#entry .formwrap .form_group .form_box dd .error_str {
  color: #ff0000
}
#entry .formwrap .form_group .form_box dd .career_select{
  width: 180px;
}

#entry .formwrap .form_group .form_box .attention {
  font-size: 13px;
  margin-top: 5px;
  text-indent: -1em;
  padding-left: 1em;
}
#entry .formwrap .form_group .align-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#entry .formwrap .form_confirmation .form_box {
  border-bottom: 1px solid #dddddd;
  padding: 20px 0;
  margin-bottom: 0;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .form_confirmation .form_box {
    padding: 15px 0;
  }
}
#entry .formwrap .form_confirmation .form_box:first-child {
  padding-top: 0;
}
#entry .formwrap .form_confirmation .form_box dt {
  width: 270px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .form_confirmation .form_box dt {
    margin-bottom: 5px;
  }
}
#entry .formwrap .privacy {
  background-color: #edf6f1;
  padding: 40px 15px;
  margin-bottom: 60px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .privacy {
    line-height: 1.8;
    font-size: 14px;
    padding: 20px 15px;
    margin-bottom: 40px;
  }
}
#entry .formwrap .privacy label {
  position: relative;
}
#entry .formwrap .privacy label .input {
  opacity: 0;
  position: absolute;
  top: 6px;
  left: 3px;
}
#entry .formwrap .privacy label .check_span {
  position: relative;
  padding-left: 20px;
  cursor: pointer;
  text-indent: -1em;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .privacy label .check_span {
    padding-left: 20px;
  }
}
#entry .formwrap .privacy label .check_span:before {
  content: "";
  position: absolute;
  width: 14px;
  height: 14px;
  background-color: #fff;
  border: 1px solid #999999;
  border-radius: 4px;
  left: 0px;
  top: 6px;
  cursor: pointer;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .privacy label .check_span:before {
    top: 4px;
  }
}
#entry .formwrap .privacy label .check_span .privacy_line {
  border-bottom: 1px solid #000;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
#entry .formwrap .privacy label .check_span .privacy_line:hover {
  opacity: 0.8;
}
#entry .formwrap .privacy label .input:checked + .check_span:after {
  position: absolute;
  top: 10px;
  left: 3px;
  content: "";
  width: 9px;
  height: 4px;
  border-left: 2px solid #007b3c;
  border-bottom: 2px solid #007b3c;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .privacy label .input:checked + .check_span:after {
    top: 9px;
  }
}
#entry .formwrap .btn_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .btn_box {
    display: block;
  }
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .btn_box .btn_1 {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .btn_box .btn_1:last-child {
    margin-bottom: 0px;
  }
}
#entry .formwrap .btn_box .btn_1:before {
  width: 360px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .btn_box .btn_1:before {
    width: 100%;
  }
}
#entry .formwrap .btn_box .btn_1 button {
  width: 360px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #entry .formwrap .btn_box .btn_1 button {
    width: 100%;
  }
}

#information .box__search {
  background-color: #f6f6f6;
  margin: 20px -50px;
  padding-bottom: 40px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #information .box__search {
    margin: 20px -15px;
  }
}
#information .box__search_ttl {
  font-size: 20px;
  font-weight: 500;
  text-align: center;
  padding: 40px 0 20px;
}
#information .box__search_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #information .box__search_list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#information .box__search_list li {
  margin-bottom: 10px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #information .box__search_list li {
    padding: 0 10px;
  }
}
#information .box__search_list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 395px;
  min-height: 60px;
  text-align: center;
  border: solid 1px #ddd;
  background-color: #fff;
  font-size: 15px;
  line-height: 1.4;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  padding: 5px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #information .box__search_list li a {
    width: 100%;
  }
}
#information .box__search_list li a:hover {
  border-color: rgba(255, 255, 255, 0.8);
  color: #fff;
  background-color: rgba(0, 123, 60, 0.8);
}
#information .box__result {
  padding-top: 30px;
  position: relative;
}
#information .box__result:before {
  content: "";
  width: 17px;
  height: 17px;
  display: block;
  border-right: solid 1px #000;
  border-bottom: solid 1px #000;
  -webkit-transform: translate(-50%, 0) rotate(45deg);
          transform: translate(-50%, 0) rotate(45deg);
  position: absolute;
  top: -35px;
  left: 50%;
}
#information .box__result:after {
  content: "";
  width: 17px;
  height: 17px;
  display: block;
  border-right: solid 1px #000;
  border-bottom: solid 1px #000;
  -webkit-transform: translate(-50%, 0) rotate(45deg);
          transform: translate(-50%, 0) rotate(45deg);
  position: absolute;
  top: -20px;
  left: 50%;
}
#information .box__result__item {
  border: solid 2px #eee;
  position: relative;
  padding: 30px 30px;
  margin-bottom: 30px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #information .box__result__item {
    padding: 30px 20px;
    margin-bottom: 20px;
  }
}
#information .box__result__item_ttl {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 30px;
  position: relative;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #information .box__result__item_ttl {
    font-size: 18px;
  }
}
#information .box__result__item_ttl:before {
  content: "";
  display: block;
  width: 8px;
  height: calc(100% + 16px);
  background-color: #007b3c;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translate(-32px, -50%);
          transform: translate(-32px, -50%);
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #information .box__result__item_ttl:before {
    -webkit-transform: translate(-22px, -50%);
            transform: translate(-22px, -50%);
  }
}
#information .box__result__item_info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #information .box__result__item_info {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#information .box__result__item_img {
  width: 215px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #information .box__result__item_img {
    width: 100%;
  }
}
#information .box__result__item_txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 15px;
  padding-left: 30px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #information .box__result__item_txt {
    padding: 20px 0 30px;
    font-size: 14px;
  }
}
#information .box__result__item_txt dt {
  font-weight: 700;
}
#information .box__result__item_txt dd {
  margin-bottom: 0.8em;
  line-height: 1.5;
  text-align: justify;
  text-justify: inter-ideograph;
}
#information .box__result__item a {
  position: absolute;
  right: 0;
  bottom: 0;
}
#information .article__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-top: 4em;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #information .article__header {
    display: block;
    margin-top: 2em;
  }
}
#information .article__header_img {
  width: 215px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #information .article__header_img {
    width: 100%;
    margin: 0 auto 30px;
  }
}
#information .article__header_txt {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding-left: 45px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #information .article__header_txt {
    padding-left: 0;
  }
}
#information .article__header_txt_cat span {
  display: inline-block;
  font-size: 15px;
  padding: 1px 10px;
  margin-right: 10px;
  background-color: #007b3c;
  color: #fff;
  margin-bottom: 0.6em;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #information .article__header_txt_cat span {
    font-size: 12px;
    padding: 3px 8px;
  }
}
#information .article__header_txt_ttl {
  font-size: 24px;
  font-weight: 600;
  margin-bottom: 0.6em;
  line-height: 1.45;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #information .article__header_txt_ttl {
    font-size: 20px;
  }
}
#information .article_list {
  margin-top: 3em;
  margin-bottom: 6em;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #information .article_list {
    margin-top: 3em;
    margin-bottom: 3em;
  }
}

#crosstalk .contents__header .illust {
  width: 195px;
  -webkit-transform: translate(-5px, 12px);
          transform: translate(-5px, 12px);
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__header .illust {
    width: 97px;
    -webkit-transform: translate(-5px, 20px);
            transform: translate(-5px, 20px);
  }
}
#crosstalk .contents__body {
  padding: 60px 0 90px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body {
    padding: 30px 0;
  }
}
#crosstalk .contents__body .lead_p {
  margin-bottom: 80px;
  text-align: center;
  line-height: 1.8;
  color: #007b3c;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .lead_p {
    padding: 0 15px;
    margin-bottom: 40px;
    text-align: left;
    line-height: 1.7;
  }
}
#crosstalk .contents__body .ttl_box {
  position: relative;
  z-index: 1;
}
#crosstalk .contents__body .ttl_box .number_box {
  padding-top: 25px;
  width: 130px;
  height: 130px;
  color: #fff;
  background-color: #8dc21f;
  font-size: 18px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .ttl_box .number_box {
    font-size: 12px;
    width: 80px;
    height: 80px;
    padding-top: 20px;
  }
}
#crosstalk .contents__body .ttl_box .number_box .number {
  font-size: 48px;
  line-height: 1.2;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .ttl_box .number_box .number {
    font-size: 24px;
    line-height: 1;
  }
}
#crosstalk .contents__body .ttl_box h2 {
  color: #007b3c;
  font-size: 42px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  display: inline;
  letter-spacing: normal;
  background-color: #fff;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  padding: 0px 10px 0 0;
  letter-spacing: 0.05em;
  line-height: 1.5;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .ttl_box h2 {
    font-size: 22px;
  }
}
#crosstalk .contents__body .ttl_box h2 span {
  background-color: #fff;
  display: inline;
  padding: 0 10px 0 0;
}
#crosstalk .contents__body .crosstalk_area .crosstalk_box {
  position: relative;
  padding-bottom: 40px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  margin-bottom: 80px;
  display: block;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .crosstalk_area .crosstalk_box {
    padding-bottom: 20px;
    margin-bottom: 40px;
  }
}
#crosstalk .contents__body .crosstalk_area .crosstalk_box:last-child {
  margin-bottom: 0;
}
#crosstalk .contents__body .crosstalk_area .crosstalk_box:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 941px;
  height: 1px;
  background-color: #dddddd;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .crosstalk_area .crosstalk_box:after {
    width: 95%;
  }
}
#crosstalk .contents__body .crosstalk_area .crosstalk_box:hover .img_box {
  opacity: 0.8;
}
#crosstalk .contents__body .crosstalk_area .crosstalk_box:hover .ttl_box h2 {
  color: #8dc21f;
}
#crosstalk .contents__body .crosstalk_area .crosstalk_box:hover .link_btn .link_btn_inner:before {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  background-color: #8dc21f;
}
#crosstalk .contents__body .crosstalk_area .crosstalk_box:hover .link_btn .link_btn_inner:after {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
#crosstalk .contents__body .crosstalk_area .crosstalk_box .img_box {
  width: 860px;
  margin-left: 137px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .crosstalk_area .crosstalk_box .img_box {
    margin-left: 0;
    width: 100%;
    padding: 0 0 0 30px;
  }
}
#crosstalk .contents__body .crosstalk_area .crosstalk_box .ttl_box {
  margin-top: -190px;
  margin-left: 50px;
  width: 830px;
  min-height: 290px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .crosstalk_area .crosstalk_box .ttl_box {
    margin-top: -40px;
    margin-left: 0px;
    width: 80%;
    padding-left: 15px;
    min-height: auto;
  }
}
#crosstalk .contents__body .crosstalk_area .crosstalk_box .ttl_box .number_box {
  margin-bottom: 30px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .crosstalk_area .crosstalk_box .ttl_box .number_box {
    margin-bottom: 10px;
  }
}
#crosstalk .contents__body .crosstalk_area .crosstalk_box .link_btn {
  position: absolute;
  right: 50px;
  bottom: 40px;
  width: 50px;
  height: 50px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .crosstalk_area .crosstalk_box .link_btn {
    right: 30px;
    bottom: 25px;
  }
}
#crosstalk .contents__body .crosstalk_area .crosstalk_box .link_btn .link_btn_inner {
  position: relative;
  width: 100%;
  height: 100%;
}
#crosstalk .contents__body .crosstalk_area .crosstalk_box .link_btn .link_btn_inner:before {
  content: "";
  position: absolute;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: #007b3c;
  right: 0px;
  bottom: 0px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .crosstalk_area .crosstalk_box .link_btn .link_btn_inner:before {
    width: 30px;
    height: 30px;
  }
}
#crosstalk .contents__body .crosstalk_area .crosstalk_box .link_btn .link_btn_inner:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8.5px 0 8.5px 17px;
  border-color: transparent transparent transparent #fff;
  right: 13px;
  bottom: 15px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .crosstalk_area .crosstalk_box .link_btn .link_btn_inner:after {
    border-width: 4px 0 4px 8px;
    right: 10px;
    bottom: 10px;
  }
}
#crosstalk .contents__body .talk_area .ttl_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  margin-bottom: 45px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .talk_area .ttl_box {
    margin-bottom: 25px;
    -webkit-box-align: inherit;
        -ms-flex-align: inherit;
            align-items: inherit;
  }
}
#crosstalk .contents__body .talk_area .ttl_box h2 {
  margin-left: 50px;
  width: 800px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .talk_area .ttl_box h2 {
    margin-left: 15px;
    width: 70%;
  }
}
#crosstalk .contents__body .talk_area .img_box {
  margin-bottom: 40px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .talk_area .img_box {
    margin-bottom: 20px;
  }
}
#crosstalk .contents__body .profile_area {
  position: relative;
  margin-bottom: 95px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .profile_area {
    margin-bottom: 40px;
  }
}
#crosstalk .contents__body .profile_area .profile_ttl {
  font-size: 26px;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  color: #8dc21f;
  position: absolute;
  left: 0;
  top: 0;
  border: 2px solid #8dc21f;
  border-left: transparent;
  padding: 20px 5px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .profile_area .profile_ttl {
    font-size: 20px;
    position: relative;
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
    display: inline-block;
    padding: 3px 15px;
    margin-left: 15px;
    border-left: 2px solid #8dc21f;
    margin-bottom: 20px;
  }
}
#crosstalk .contents__body .profile_area .profile_group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0 40px 0 90px;
  position: relative;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 991px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .profile_area .profile_group {
    padding: 0 15px;
    width: 100%;
  }
}
#crosstalk .contents__body .profile_area .profile_group .profile_item:nth-child(2n-1) {
  border-right: 1px solid #dddddd;
  padding: 30px 30px 30px 0px;
  position: relative;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .profile_area .profile_group .profile_item:nth-child(2n-1) {
    border-right: none;
    border-bottom: 1px solid #dddddd;
    padding: 20px 0;
  }
}
#crosstalk .contents__body .profile_area .profile_group .profile_item:nth-child(2n-1):after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 200%;
  height: 1px;
  background-color: #ddd;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .profile_area .profile_group .profile_item:nth-child(2n-1):after {
    display: none;
  }
}
#crosstalk .contents__body .profile_area .profile_group .profile_item:nth-child(2n) {
  padding: 30px 0px 30px 30px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .profile_area .profile_group .profile_item:nth-child(2n) {
    border-bottom: 1px solid #dddddd;
    padding: 20px 0;
  }
}
#crosstalk .contents__body .profile_area .profile_group .profile_item:first-child {
  padding: 0 30px 30px 0px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .profile_area .profile_group .profile_item:first-child {
    padding: 0 0px 20px 0px;
  }
}
#crosstalk .contents__body .profile_area .profile_group .profile_item:nth-child(2) {
  padding: 0 0px 30px 30px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .profile_area .profile_group .profile_item:nth-child(2) {
    padding: 20px 0;
  }
}
#crosstalk .contents__body .profile_area .profile_group .profile_item:nth-last-child(-n+2) {
  padding-bottom: 0;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .profile_area .profile_group .profile_item:nth-last-child(-n+2) {
    padding-bottom: 20px;
  }
}
#crosstalk .contents__body .profile_area .profile_group .profile_item:nth-last-child(-n+2):after {
  display: none;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .profile_area .profile_group .profile_item:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }
}
#crosstalk .contents__body .profile_area .profile_group .profile_item .profile_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 20px;
  width: 400px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .profile_area .profile_group .profile_item .profile_box {
    width: 100%;
    margin-bottom: 10px;
  }
}
#crosstalk .contents__body .profile_area .profile_group .profile_item .profile_box .profile_img {
  width: 180px;
  height: 180px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .profile_area .profile_group .profile_item .profile_box .profile_img {
    width: 40%;
    height: auto;
  }
}
#crosstalk .contents__body .profile_area .profile_group .profile_item .profile_box .profile {
  margin-left: 30px;
  width: 190px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .profile_area .profile_group .profile_item .profile_box .profile {
    margin-left: 15px;
    width: 60%;
  }
}
#crosstalk .contents__body .profile_area .profile_group .profile_item .profile_box .profile .name {
  font-size: 22px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .profile_area .profile_group .profile_item .profile_box .profile .name {
    font-size: 18px;
  }
}
#crosstalk .contents__body .profile_area .profile_group .profile_item .profile_txt {
  width: 400px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .profile_area .profile_group .profile_item .profile_txt {
    width: 100%;
  }
}
#crosstalk .contents__body .talk_img .img_box {
  width: 100%;
}
#crosstalk .contents__body .talk_img_2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#crosstalk .contents__body .talk_img_2 .img_box {
  width: 385px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .talk_img_2 .img_box {
    width: 48%;
  }
}
#crosstalk .contents__body .crosstalk_page {
  background-color: #f7fbef;
  padding: 75px 100px;
  position: relative;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .crosstalk_page {
    padding: 40px 15px;
  }
}
#crosstalk .contents__body .crosstalk_page .theme_ttl {
  font-size: 20px;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  color: #8dc21f;
  position: absolute;
  left: 30px;
  top: 80px;
  margin-bottom: 15px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .crosstalk_page .theme_ttl {
    font-size: 18px;
    position: static;
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
  }
}
#crosstalk .contents__body .crosstalk_page .theme_ttl span {
  position: relative;
  display: block;
  width: 14px;
  height: 86px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .crosstalk_page .theme_ttl span {
    height: auto;
  }
}
#crosstalk .contents__body .crosstalk_page .theme_ttl span:after {
  content: "";
  position: absolute;
  width: 14px;
  height: 86px;
  background-color: #8dc21f;
  top: 0;
  left: 0;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .crosstalk_page .theme_ttl span:after {
    top: 0;
    left: 0;
    width: 70px;
    height: 4px;
  }
}
#crosstalk .contents__body .crosstalk_page h3 {
  font-size: 28px;
  margin-bottom: 50px;
  width: 800px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .crosstalk_page h3 {
    width: 100%;
    font-size: 20px;
    margin-bottom: 20px;
  }
}
#crosstalk .contents__body .bg_white {
  background-color: #fff;
}
#crosstalk .contents__body .btn_area {
  padding: 65px 0 0 0;
  display: flex;
  justify-content: center;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .btn_area {
    padding: 0 15px;
    flex-direction: column;
    align-items: stretch;
  }
  }

#crosstalk .contents__body .btn_area .btn_1{
  margin:0 15px 0 15px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .btn_area .btn_1{
    margin:0 auto;
    margin-bottom: 20px;
  }
}
#crosstalk .contents__body .btn_area .btn_1 a {
  padding-left: 0px;
  padding-right: 29px;
  text-align: center;
  flex: 1;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .btn_area .btn_1 a {
    padding-left: 0;
  }
}

#message .contents__header .illust {
  width: 193px;
  -webkit-transform: translate(-5px, 3px);
          transform: translate(-5px, 3px);
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .contents__header .illust {
    width: 80px;
    -webkit-transform: translate(-5px, 20px);
            transform: translate(-5px, 20px);
  }
}
#message .contents__body {
  padding: 30px;
  position: relative;
  z-index: -2;
  overflow: hidden;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .contents__body {
    padding: 0px;
  }
}
#message .mv_area {
  position: relative;
  padding-bottom: 70px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .mv_area {
    padding: 10px 10px 50px;
  }
}
#message .mv_area:before {
  content: "";
  position: absolute;
  bottom: 0px;
  left: -30px;
  background-image: url("/img/message/mv_bg.jpg");
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  width: 997px;
  height: 560px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .mv_area:before {
    width: 100%;
    margin-right: -10px;
    margin-left: -10px;
    left: inherit;
    height: 80%;
  }
}
#message .mv_area .top_prof {
  position: relative;
}
#message .mv_area .top_prof h2 {
  color: #007b3c;
  font-size: 48px;
  position: absolute;
  left: 0;
  top: 30px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .mv_area .top_prof h2 {
    font-size: 24px;
    top: 20px;
  }
}
#message .mv_area .top_prof h2 span {
  background-color: #fff;
  display: inline-block;
  margin-bottom: 3px;
  padding: 0 5px;
  line-height: 1.4;
}
#message .mv_area .top_prof .prof_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: -45px;
  margin-bottom: 60px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .mv_area .top_prof .prof_box {
    margin-bottom: 20px;
    margin-top: 20px;
    display: block;
  }
}
#message .mv_area .top_prof .prof_box dl {
  width: 360px;
  background-color: #fff;
  padding: 25px;
  margin-right: 70px;
  position: relative;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .mv_area .top_prof .prof_box dl:last-child {
    margin-bottom: 0;
  }
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .mv_area .top_prof .prof_box dl {
    padding: 10px;
    margin-right: 30px;
    width: 100%;
    margin-bottom: 35px;
  }
}
#message .mv_area .top_prof .prof_box dl:last-child {
  margin-right: 0;
  position: relative;
}
#message .mv_area .top_prof .prof_box dl:last-child:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -52px;
  width: 35px;
  height: 2px;
  background-color: #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .mv_area .top_prof .prof_box dl:last-child:before {
    width: 20px;
    left: 50%;
    top: -20px;
    -webkit-transform: translate(-50%, 0) rotate(45deg);
            transform: translate(-50%, 0) rotate(45deg);
  }
}
#message .mv_area .top_prof .prof_box dl:last-child:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -52px;
  width: 35px;
  height: 2px;
  background-color: #fff;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .mv_area .top_prof .prof_box dl:last-child:after {
    width: 20px;
    left: 50%;
    top: -20px;
    -webkit-transform: translate(-50%, 0) rotate(-45deg);
            transform: translate(-50%, 0) rotate(-45deg);
  }
}
#message .mv_area .top_prof .prof_box dl dt {
  font-size: 14px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .mv_area .top_prof .prof_box dl dt {
    font-size: 12px;
  }
}
#message .mv_area .top_prof .prof_box dl dd {
  font-size: 22px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .mv_area .top_prof .prof_box dl dd {
    font-size: 18px;
  }
}
#message .mv_area .top_prof .prof_box dl .prof_txt {
  font-size: 15px;
  margin-top: 10px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .mv_area .top_prof .prof_box dl .prof_txt {
    font-size: 14px;
    margin-top: 5px;
  }
}
#message .mv_area .leadcopy {
  z-index: 1;
  position: relative;
  color: #fff;
  font-size: 18px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .mv_area .leadcopy {
    font-size: 14px;
  }
}
#message .theme_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 40px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .theme_item {
    margin-bottom: 20px;
  }
}
#message .theme_item .theme_p {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  letter-spacing: 0.07em;
}
#message .theme_item .prof_imgbox {
  margin-right: 30px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .theme_item .prof_imgbox {
    margin-right: 15px;
  }
}
#message .theme_item .prof_imgbox .prof_img {
  margin-bottom: 5px;
  width: 80px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .theme_item .prof_imgbox .prof_img {
    width: 60px;
  }
}
#message .theme_item .prof_imgbox p {
  font-size: 14px;
  font-weight: 500;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .theme_item .prof_imgbox p {
    font-size: 12px;
  }
}
#message .reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
#message .reverse .prof_imgbox {
  margin-right: 0;
  margin-left: 30px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .reverse .prof_imgbox {
    margin-left: 15px;
  }
}
#message .theme_area {
  position: relative;
  padding-top: 190px;
  margin-bottom: 225px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .theme_area {
    padding: 40px 10px 10px;
    margin-bottom: 0;
    background-color: rgba(141, 194, 31, 0.2);
  }
}
#message .theme_area:after {
  content: "";
  position: absolute;
  top: 0;
  right: -30px;
  background-color: rgba(141, 194, 31, 0.2);
  width: 800px;
  height: calc(100% + 90px);
  z-index: -1;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .theme_area:after {
    display: none;
  }
}
#message .theme_area .theme_box {
  background-color: #fff;
  padding: 70px 50px 50px;
  position: relative;
  -webkit-box-shadow: 10px 10px 12px rgba(141, 194, 31, 0.05);
          box-shadow: 10px 10px 12px rgba(141, 194, 31, 0.05);
  width: 800px;
  margin: 0 auto 90px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .theme_area .theme_box {
    width: 100%;
    padding: 15px;
  }
}
#message .theme_area .theme_box .img01 {
  position: absolute;
  z-index: 2;
  width: 420px;
  right: -98px;
  top: -110px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .theme_area .theme_box .img01 {
    position: static;
    width: 100%;
    margin-bottom: 20px;
  }
}
#message .theme_area .theme_box h3 {
  font-size: 28px;
  position: relative;
  padding-bottom: 15px;
  margin-bottom: 50px;
  letter-spacing: 0.05em;
  line-height: 1.7;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .theme_area .theme_box h3 {
    font-size: 18px;
    line-height: 1.6;
    margin-bottom: 20px;
  }
}
#message .theme_area .theme_box h3:after {
  content: "";
  position: absolute;
  width: 75px;
  height: 3px;
  background-color: #8dc21f;
  bottom: 0px;
  left: 0;
}
#message .theme_area .img02 {
  width: 420px;
  margin-left: -30px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .theme_area .img02 {
    width: 100%;
    margin-left: 0;
    margin-bottom: 0;
  }
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .theme_area .box02 {
    margin: 0 auto 60px;
  }
}
#message .theme_area .box02:after {
  content: "";
  position: absolute;
  width: 250px;
  height: 250px;
  background-color: rgba(141, 194, 31, 0.8);
  z-index: -2;
  right: -98px;
  top: -125px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .theme_area .box02:after {
    width: 150px;
    height: 150px;
    right: -10px;
    top: -275px;
  }
}
#message .theme_area .img03 {
  width: 900px;
  margin: 0 auto;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .theme_area .img03 {
    width: 100%;
  }
}
#message .theme_area .box03 {
  margin-top: -60px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .theme_area .box03 {
    margin-top: 0px;
    margin-bottom: 50px;
  }
}
#message .theme_area .box03:after {
  content: "";
  position: absolute;
  width: 250px;
  height: 250px;
  background-color: rgba(141, 194, 31, 0.8);
  z-index: -2;
  left: -98px;
  bottom: -160px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .theme_area .box03:after {
    width: 150px;
    height: 150px;
    left: -10px;
    bottom: -60px;
  }
}
#message .support_area {
  padding: 0 70px 70px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .support_area {
    padding: 40px 10px;
  }
}
#message .support_area h3 {
  color: #007b3c;
  font-size: 26px;
  margin-bottom: 45px;
  display: inline-block;
  position: relative;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .support_area h3 {
    font-size: 18px;
    margin-bottom: 25px;
  }
}
#message .support_area h3:before {
  content: "";
  position: absolute;
  background-color: #007b3c;
  width: 38px;
  height: 2px;
  -webkit-transform: rotate(55deg);
          transform: rotate(55deg);
  left: -40px;
  bottom: 13px;
}
#message .support_area h3:after {
  content: "";
  position: absolute;
  background-color: #007b3c;
  width: 38px;
  height: 2px;
  -webkit-transform: rotate(-55deg);
          transform: rotate(-55deg);
  right: -40px;
  bottom: 13px;
}
#message .support_area .theme_item .theme_p {
  width: 700px;
  background-color: rgba(0, 123, 60, 0.9);
  padding: 30px;
  color: #fff;
  position: relative;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .support_area .theme_item .theme_p {
    padding: 15px;
  }
}
#message .support_area .theme_item .theme_p:after {
  content: "";
  position: absolute;
  left: -15px;
  top: 20px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 18px 13px;
  border-color: transparent transparent rgba(0, 123, 60, 0.9) transparent;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .support_area .theme_item .theme_p:after {
    border-width: 0 0 10px 10px;
    left: -10px;
  }
}
#message .support_area .reverse {
  margin-bottom: 0;
}
#message .support_area .reverse .theme_p {
  position: relative;
}
#message .support_area .reverse .theme_p:after {
  right: -15px;
  left: inherit;
  -webkit-transform: rotate(90deg) scale(-1, 1);
          transform: rotate(90deg) scale(-1, 1);
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #message .support_area .reverse .theme_p:after {
    border-width: 0 0 10px 10px;
    right: -10px;
    left: inherit;
  }
}
#message.contents {
  z-index: -3;
}

#strategy .pic__strategy {
  width: 860px;
  margin-left: 40px;
  margin-bottom: 60px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #strategy .pic__strategy {
    width: calc(100vw - 45px);
    margin-left: -10px;
    margin-right: -10px;
  }
}
#strategy .box__strategy_list {
  background-color: #f6f6f6;
  padding: 30px 50px 40px 50px;
  margin-bottom: 20px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #strategy .box__strategy_list {
    padding: 20px 15px 25px 15px;
  }
}
#strategy .box__strategy_list dt {
  font-size: 28px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.08em;
  position: relative;
  padding-left: 30px;
  margin-bottom: 1em;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #strategy .box__strategy_list dt {
    font-size: 20px;
    padding-left: 25px;
    margin-bottom: 0.7em;
  }
}
#strategy .box__strategy_list dt:before {
  display: block;
  content: "";
  position: absolute;
  width: 10px;
  height: 100%;
  background-color: #8dc21f;
  left: 0;
  top: 0;
}
#strategy .box__strategy_list dd {
  text-align: justify;
  text-justify: inter-ideograph;
}

#support .contents__header .illust {
  width: 118px;
  -webkit-transform: translate(-40px, 55px);
          transform: translate(-40px, 55px);
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__header .illust {
    width: 59px;
    -webkit-transform: translate(-5px, 20px);
            transform: translate(-5px, 20px);
  }
}
#support .box__support {
  width: 800px;
  margin: 30px auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .box__support {
    width: 100%;
  }
}
#support .box__support_ttl {
  font-size: 22px;
  font-weight: 700;
  background-color: #8dc21f;
  color: #fff;
  padding: 0.7em;
  text-align: center;
  line-height: 1.4;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .box__support_ttl {
    font-size: 20px;
  }
}
#support .box__support_list {
  background-color: #f6f6f6;
  padding: 2.6em 50px 0.4em;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .box__support_list {
    padding: 2.6em 15px 0.4em;
  }
}
#support .box__support_list dl {
  padding-bottom: 2.2em;
}
#support .box__support_list dl dt {
  font-size: 18px;
  font-weight: 700;
  color: #007b3c;
  border-bottom: solid 2px #007b3c;
  padding-bottom: 0.2em;
  margin-bottom: 0.6em;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .box__support_list dl dt {
    font-size: 17px;
  }
}
#support .box__support_list dl dd {
  text-align: justify;
  text-justify: inter-ideograph;
}

#localism .box__localism_ttl {
  font-size: 23px;
  font-weight: 700;
  background-color: #8dc21f;
  color: #fff;
  padding: 0 30px 0 40px;
  text-align: center;
  line-height: 1.4;
  letter-spacing: 0.05em;
  height: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
#localism .box__localism_ttl:before {
  display: block;
  content: "";
  position: absolute;
  width: 3px;
  height: 80px;
  background-color: #fff;
  left: 8px;
  top: 10px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .box__localism_ttl {
    font-size: 20px;
    padding: 0 20px 0 30px;
    margin: 0 -5px;
    text-align: left;
  }
}
#localism .box__localism_ttl .illust_1 {
  width: 174px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .box__localism_ttl .illust_1 {
    width: 87px;
  }
}
#localism .box__localism_ttl .illust_2 {
  width: 260px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .box__localism_ttl .illust_2 {
    width: 130px;
  }
}
#localism .box__localism_ttl .illust_3 {
  width: 142px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .box__localism_ttl .illust_3 {
    width: 86px;
  }
}
#localism .box__localism_ttl .illust_4 {
  width: 188px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .box__localism_ttl .illust_4 {
    width: 94px;
  }
}
#localism .box__localism_ttl .illust_5 {
  width: 220px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .box__localism_ttl .illust_5 {
    width: 110px;
  }
}
#localism .box__localism_ttl .illust_6 {
  width: 180px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .box__localism_ttl .illust_6 {
    width: 90px;
  }
}
#localism .box__localism_list {
  padding: 3em 50px 3em;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .box__localism_list {
    padding: 3em 10px 3.6em;
  }
}
#localism .box__localism_list dl {
  padding-bottom: 2.8em;
}
#localism .box__localism_list dl dt {
  font-size: 20px;
  font-weight: 700;
  border-bottom: solid 2px #007b3c;
  padding-bottom: 0.4em;
  margin-bottom: 1.6em;
  letter-spacing: 0.05em;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .box__localism_list dl dt {
    font-size: 17px;
    margin-bottom: 1em;
  }
}
#localism .box__localism_list dl dd {
  text-align: justify;
  text-justify: inter-ideograph;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .box__localism_list dl dd {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#localism .box__localism_list dl dd figure {
  width: 240px;
  margin-right: 40px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .box__localism_list dl dd figure {
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
  }
}
#localism .box__localism_list dl dd p {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

#history .pic__history {
  width: 950px;
  margin-top: 40px;
  margin-left: -25px;
  position: relative;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .pic__history {
    width: calc(100% + 20px);
    margin-left: -10px;
    margin-top: 20px;
  }
}
#history .pic__history .img_txt {
  position: absolute;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .pic__history .img_txt {
    display: none;
  }
}
#history .pic__history .img_txt_1 {
  width: 285px;
  left: 281px;
  top: 196px;
}
#history .pic__history .img_txt_2 {
  width: 235px;
  left: 504px;
  top: 269px;
}
#history .pic__history .img_txt_3 {
  width: 258px;
  left: 183px;
  top: 571px;
}
#history .pic__history .img_txt_4 {
  width: 209px;
  left: 435px;
  top: 638px;
}
#history .pic__history .img_txt_5 {
  width: 225px;
  left: 653px;
  top: 652px;
}
#history .pic__history .img_txt_6 {
  width: 362px;
  left: 412px;
  top: 980px;
}
#history .pic__history .img_txt_7 {
  width: 436px;
  left: 314px;
  top: 1103px;
}
#history .box__goal {
  border: solid 4px #007b3c;
  background-color: #fff;
  width: 100%;
  max-width: 840px;
  margin: -20px auto 10px;
  position: relative;
  z-index: 10;
  padding: 6px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .box__goal {
    padding: 3px;
    border-width: 2px;
    margin-top: -10px;
  }
}
#history .box__goal_inner {
  border: solid 16px #8dc21f;
  background-color: #007b3c;
  padding: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .box__goal_inner {
    padding: 15px;
    border-width: 7px;
  }
}
#history .box__goal .ttl_goal {
  width: 240px;
  position: relative;
  z-index: 10;
  margin-bottom: 15px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .box__goal .ttl_goal {
    width: 140px;
  }
}
#history .box__goal .ttl_goal_out {
  position: absolute;
  left: 0;
  top: 0;
  width: 240px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .box__goal .ttl_goal_out {
    width: 140px;
  }
}
#history .box__goal .movie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
#history .box__goal .movie iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

#business .contents__body {
  position: relative;
}
#business .contents__body:before {
  content: "";
  display: block;
  width: 101px;
  height: 136px;
  background: url("img/business/img_illust_1.png") no-repeat center top;
  background-size: contain;
  position: absolute;
  right: 18px;
  top: 47px;
  z-index: 10;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #business .contents__body:before {
    right: auto;
    left: 50%;
    top: 192px;
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
    margin-left: -10px;
  }
}
#business .contents__body:after {
  content: "";
  display: block;
  width: 105px;
  height: 129px;
  background: url("img/business/img_illust_2.png") no-repeat center top;
  background-size: contain;
  position: absolute;
  right: 60px;
  top: 192px;
  z-index: 10;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #business .contents__body:after {
    right: 50%;
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    margin-right: -15px;
  }
}
#business .list__business {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 140px;
}
#business .list__business .list__business_item {
  width: 440px;
  padding: 0px 20px 30px;
  border: solid 4px #eee;
  margin-bottom: 20px;
  position: relative;
}
#business .list__business .list__business_item figure {
  height: 146px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#business .list__business .list__business_item figure img {
  width: 320px;
}
#business .list__business .list__business_item:nth-child(odd) {
  top: -80px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #business .list__business .list__business_item:nth-child(odd) {
    top: auto;
  }
}

#data .contents__body {
  overflow: hidden;
  position: relative;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #data .contents__body {
    padding-bottom: 40px;
  }
}
#data .contents__body:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url("img/data/bg_data.jpg") repeat center top;
  background-size: 14.5px auto;
  position: absolute;
  left: 0;
  top: 200px;
  opacity: 0.5;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #data .contents__body:before {
    top: 144px;
  }
}
#data .txt_update {
  text-align: right;
  -webkit-transform: translate(30px, -45px);
          transform: translate(30px, -45px);
  font-size: 14px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #data .txt_update {
    -webkit-transform: translate(5px, -15px);
            transform: translate(5px, -15px);
    font-size: 13px;
  }
}
#data .ttl_data {
  width: 100%;
  position: relative;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #data .ttl_data {
    width: calc(100% + 20px);
    margin: 0 -10px;
  }
}
#data .list__data {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
}
#data .list__data_item {
  position: relative;
  background-color: #fff;
  -webkit-box-shadow: 9px 9px 6px rgba(0, 123, 60, 0.1);
          box-shadow: 9px 9px 6px rgba(0, 123, 60, 0.1);
  margin: 80px 0 30px 0;
  padding: 35px 0 20px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #data .list__data_item {
    margin: 50px 0 20px 0;
  }
}
#data .list__data_item img {
  margin: 0 auto;
}
#data .list__data_item_3 {
  width: 280px;
}
#data .list__data_item_3 img {
  width: 280px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #data .list__data_item_3 {
    width: 100%;
  }
}
#data .list__data_item_2 {
  width: 435px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #data .list__data_item_2 {
    width: 100%;
  }
}
#data .list__data_item_1 {
  width: 100%;
}
#data .list__data_item_txt {
  padding: 10px 40px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #data .list__data_item_txt {
    padding: 0px 20px 5px;
  }
}
#data .list__data_item_mrg_top {
  margin-top: 100px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #data .list__data_item_mrg_top {
    margin-top: 70px;
  }
}
#data .list__data_item_mrg_btm {
  margin-bottom: 20px;
}
#data .list__data_item dt {
  display: inline-block;
  font-size: 20px;
  font-weight: 700;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #fff;
  min-width: 180px;
  max-width: 100%;
  padding: 5px 15px;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  white-space: nowrap;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #data .list__data_item dt {
    font-size: 18px;
  }
}
#data .list__data_item dt span {
  position: absolute;
  left: 50%;
  top: 0;
  -webkit-transform: translate(-50%, -130%);
          transform: translate(-50%, -130%);
  font-size: 14px;
  color: #007b3c;
  font-weight: 700;
}
#data .list__data_item dt span:before {
  display: block;
  content: "";
  position: absolute;
  width: 1px;
  height: 13px;
  background-color: #007b3c;
  left: -13px;
  top: 6px;
  -webkit-transform: rotate(-35deg);
          transform: rotate(-35deg);
}
#data .list__data_item dt span:after {
  display: block;
  content: "";
  position: absolute;
  width: 1px;
  height: 13px;
  background-color: #007b3c;
  right: -13px;
  top: 6px;
  -webkit-transform: rotate(35deg);
          transform: rotate(35deg);
}
#data .item_ttl_lightgreen {
  background-color: #8dc21f;
}

#data .item_ttl_green {
  background-color: #007b3c;
}
#data .list__data_item.bg_green dt {
  background-color: #007b3c !important;
}


/* added in 2024 renewal ----------------------------------------- */

/*PCでは無効（改行しない）*/
.br-sp{
  display: none;
}

/*スマートフォンでは有効（改行する）*/
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .br-sp{
      display: unset;
  }
}

/*PCでは有効（改行する）*/
.br-pc{
  display: block;
}

/*スマートフォンでは無効（改行しない）*/
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .br-pc{
    display: none;
  }
}

.anchor-link {
  padding-top: 80px;
  margin-top: -80px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .anchor-link {
    padding-top: 60px;
    margin-top: -60px;
  }
}

.global__footer .pagetop{
  height: 50px;
  width: 50px;
  position: fixed;
  right: 30px;
  bottom: 50px;
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 2;
  cursor: pointer;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .global__footer .pagetop{
    height: 40px;
    width: 40px;
    right: 18px;
    bottom: 70px;
  }
}

#crosstalk .contents__body .addprofile_area {
  position: relative;
  margin-bottom: 0;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addprofile_area {
    margin-bottom: 0;
  }
}

#crosstalk .contents__body .addprofile_area .profile_ttl {
  font-size: 26px;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  color: #8dc21f;
  position: absolute;
  left: 0;
  top: 0;
  border: 2px solid #8dc21f;
  border-left: transparent;
  padding: 20px 5px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addprofile_area .profile_ttl {
    font-size: 20px;
    position: relative;
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
    display: inline-block;
    padding: 3px 15px;
    margin-left: 15px;
    border-left: 2px solid #8dc21f;
    margin-bottom: 20px;
  }
}
#crosstalk .contents__body .addprofile_area .profile_group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0 40px 0 90px;
  position: relative;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 931px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addprofile_area .profile_group {
    padding: 0 15px;
    width: 100%;
  }
}
#crosstalk .contents__body .addprofile_area .profile_group .profile_item:nth-child(2n-1) {
  border-right: 1px solid #dddddd;
  padding: 30px 30px 30px 0px;
  position: relative;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addprofile_area .profile_group .profile_item:nth-child(2n-1) {
    border-right: none;
    border-bottom: 1px solid #dddddd;
    padding: 20px 0;
  }
}
#crosstalk .contents__body .addprofile_area .profile_group .profile_item:nth-child(2n-1):after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 200%;
  height: 1px;
  background-color: #ddd;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addprofile_area .profile_group .profile_item:nth-child(2n-1):after {
    display: none;
  }
}
#crosstalk .contents__body .addprofile_area .profile_group .profile_item:nth-child(2n) {
  padding: 30px 0px 30px 30px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addprofile_area .profile_group .profile_item:nth-child(2n) {
    border-bottom: 1px solid #dddddd;
    padding: 20px 0;
  }
}
#crosstalk .contents__body .addprofile_area .profile_group .profile_item:first-child {
  padding: 0 30px 30px 0px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addprofile_area .profile_group .profile_item:first-child {
    padding: 0 0px 20px 0px;
  }
}
#crosstalk .contents__body .addprofile_area .profile_group .profile_item:nth-child(2) {
  padding: 0 0px 30px 30px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addprofile_area .profile_group .profile_item:nth-child(2) {
    padding: 20px 0;
  }
}
#crosstalk .contents__body .addprofile_area .profile_group .profile_item:nth-last-child(-n+2) {
  padding-bottom: 0;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addprofile_area .profile_group .profile_item:nth-last-child(-n+2) {
    padding-bottom: 20px;
  }
}
#crosstalk .contents__body .addprofile_area .profile_group .profile_item:nth-last-child(-n+2):after {
  display: none;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addprofile_area .profile_group .profile_item:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }
}
#crosstalk .contents__body .addprofile_area .profile_group .profile_item .profile_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 20px;
  width: 370px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addprofile_area .profile_group .profile_item .profile_box {
    width: 100%;
    margin-bottom: 10px;
  }
}

#crosstalk .contents__body .addprofile_area .profile_group .profile_item .profile_box .profile p {
  margin-bottom: 4px;
}

#crosstalk .contents__body .addprofile_area .profile_group .profile_item .profile_box .profile .txt_profile_small {
  font-size: 94%;
}

#crosstalk .contents__body .addprofile_area .profile_group .profile_item .profile_box .profile_img {
  width: 150px;
  height: 150px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addprofile_area .profile_group .profile_item .profile_box .profile_img {
    width: 40%;
    height: auto;
  }
}
#crosstalk .contents__body .addprofile_area .profile_group .profile_item .profile_box .profile {
  margin-left: 30px;
  width: 190px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addprofile_area .profile_group .profile_item .profile_box .profile {
    margin-left: 15px;
    width: 60%;
  }
}
#crosstalk .contents__body .addprofile_area .profile_group .profile_item .profile_box .profile .name {
  font-size: 22px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addprofile_area .profile_group .profile_item .profile_box .profile .name {
    font-size: 18px;
  }
}
#crosstalk .contents__body .addprofile_area .profile_group .profile_item .profile_txt {
  width: 370px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addprofile_area .profile_group .profile_item .profile_txt {
    width: 100%;
  }
}


#crosstalk .contents__body .addcrosstalk_page {
  background-color: #ffffff;
  padding: 0px 100px;
  position: relative;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addcrosstalk_page {
    padding: 15px 15px;
  }
}
#crosstalk .contents__body .addcrosstalk_page h3 {
  font-size: 28px;
  margin-bottom: 50px;
  width: 800px;
  
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addcrosstalk_page h3 {
    width: 100%;
    font-size: 20px;
    margin-bottom: 20px;
  }
}


#crosstalk .contents__body .addcrosstalk_page h3::before {
  content: ""; 
  display: inline-block;
  width: 45px;
  height: 3px;
  background-color: #737373;
  margin-right: 10px;
  vertical-align: middle;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .addcrosstalk_page h3::before {
    width: 35px;
    height: 2px;
  }
}

#addcrosstalk .theme_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 40px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #addcrosstalk .theme_item {
    margin-bottom: 20px;
  }
}

#addcrosstalk .theme_item .theme_p {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  letter-spacing: 0.07em;
}
#addcrosstalk .theme_item .prof_imgbox {
  margin-right: 20px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #addcrosstalk .theme_item .prof_imgbox {
    margin-right: 15px;
  }
}
#addcrosstalk .theme_item .prof_imgbox .prof_img {
  margin-bottom: 5px;
  width: 125px;
  border-radius: 50%;
}
#addcrosstalk .theme_item .prof_imgbox .prof_img .img_inner {
  border-radius: 50%;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #addcrosstalk .theme_item .prof_imgbox .prof_img {
    width: 60px;
  }
}
#addcrosstalk .theme_item .prof_imgbox p {
  font-size: 14px;
  font-weight: 500;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #addcrosstalk .theme_item .prof_imgbox p {
    font-size: 12px;
  }
}

#addcrosstalk .reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
#addcrosstalk .reverse .prof_imgbox {
  margin-right: 0;
  margin-left: 30px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #addcrosstalk .reverse .prof_imgbox {
    margin-left: 15px;
  }
}

#addcrosstalk .message_area {
  margin-top: 95px;
  padding: 0 0 0 0;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #addcrosstalk .message_area {
    margin-top: 40px;
    padding: 0;
  }
}
#addcrosstalk .message_area h3 {
  margin-bottom: 45px;
  display: inline-block;
  position: relative;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #addcrosstalk .message_area h3 {
    font-size: 18px;
    margin-bottom: 25px;
  }
}

#addcrosstalk .message_area .theme_item .theme_p_box {
  width: 700px;
}

#addcrosstalk .message_area .theme_item .theme_p {
  background-color: rgba(231, 239, 219, 1);
  border-radius: 10px;
  padding: 30px;
  position: relative;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #addcrosstalk .message_area .theme_item .theme_p {
    padding: 15px;
  }
}

#addcrosstalk .message_area .reverse .theme_p {
  position: relative;
  background-color: rgba(216, 229, 220, 1);
}
#addcrosstalk .message_area .reverse .theme_p:after {
  right: -15px;
  left: inherit;
  -webkit-transform: rotate(90deg) scale(-1, 1);
          transform: rotate(90deg) scale(-1, 1);
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #addcrosstalk .message_area .reverse .theme_p:after {
    border-width: 0 0 10px 10px;
    right: -10px;
    left: inherit;
  }
}

#crosstalk .contents__body .talk_img .addimg_box {
  width: 100%;
  margin-top: 95px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #crosstalk .contents__body .talk_img .addimg_box  {
    margin-top: 40px;
    margin-bottom: 20px;
  }
}

#topmessage .contents__body .lead {
  margin-top: 35px;
  padding: 0 40px 0 40px;
  text-align: center;
  line-height: 1.8;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .lead {
    margin-top: 20px;
    padding: 0 0 0 0;
    line-height: 1.7;
    text-align: left;
  }
}
#topmessage .contents__body .mv_area {
  width: calc(100% - -100px);
  margin-top: 90px;
  margin-left: -50px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .mv_area {
    width: calc(100% - -30px);
    margin-top: 30px;
    margin-left: -15px;
  }
}
#topmessage .contents__body .mv_area .img_box {
  padding: 0;
  margin-bottom: 40px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .mv_area .img_box {
    margin-bottom: 20px;
  }
}
#topmessage .contents__body .catch_ttl {
  font-size: 22px;
  margin-top: 90px;
  padding: 0 40px 0 40px;
  text-align: left;
  line-height: 1.8;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .catch_ttl {
    font-size: 100%;
    margin-top: 30px;
    padding: 0 0 0 0;
    line-height: 1.7;
    text-align: justify;
    text-justify: inter-ideograph;
  }
}

#topmessage .contents__body .catch_copy {
  font-size: 26px;
  margin-top: 0px;
  margin-bottom: 90px;
  padding: 0 40px 0 40px;
  text-align: left;
  line-height: 1.8;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .catch_copy {
    font-size: 20px;
    margin-top: 10px;
    margin-bottom: 30px;
    padding: 0 0 0 0;
    line-height: 1.7;
    text-align: justify;
    text-justify: inter-ideograph;
  }
}


#topmessage .contents__body .profilephoto-container {
  display: flex;
  padding: 0 40px 0 40px;
  margin-bottom: 40px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .profilephoto-container {
    padding: 0;
    margin-bottom: 30px;
  }
  
}

#topmessage .contents__body .profiletext-container {
  display: flex;
  flex-direction: column;
  margin-left: 30px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .profiletext-container {
    margin-left: 10px;
  }
  }

#topmessage .contents__body .profiletext-container .profile-large-text {
  font-size: 20px;
  margin-top: -5px;
  margin-bottom: 10px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .profiletext-container .profile-large-text {
    font-size: 14px;
}
}

#topmessage .contents__body .profiletext-container .profile-line-1 {
  width: 100%;
  height: 2px;
  background-color: #007b3c;
  margin-bottom: 10px;
}

#topmessage .contents__body .profiletext-container .profile-line-2 {
  width: 100%;
  height: 2px;
  background-color: #8dc21f;
  margin-bottom: 10px;
}

#topmessage .contents__body .profiletext-container .profile-small-text {
  font-size: 100%;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .profiletext-container .profile-small-text {
    font-size: 12px;
  }
}

#topmessage .contents__body .profilephoto-container img {
  width: 150px;
  height: auto;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .profilephoto-container img {
    width: 90px;
    height: 90px;
  }
}

#topmessage .contents__body .topconversation {
  padding: 0 40px 0 40px;
  margin-top: 95px;
 }

 @media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .topconversation {
    padding: 0;
    margin-top: 50px;
   }
  }

#topmessage .contents__body .topconversation h3 {
  font-size: 28px;
  margin-bottom: 40px;
  width: 800px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .topconversation h3 {
    width: 100%;
    font-size: 20px;
    margin-bottom: 20px;
  }
}

#topmessage .contents__body .topconversation h3::before {
  content: "";
  display: inline-block;
  width: 45px;
  height: 3px;
  background-color: #737373;
  margin-right: 10px;
  vertical-align: middle;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .topconversation h3::before {
    width: 35px;
    height: 2px;
  }
}

#topmessage .contents__body .topconversation p {
  font-size: 100%;
  margin-bottom: 30px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .topconversation p {
    line-height: 1.8;
  }
}

#topmessage .contents__body .topconversation .talker1 {
  color: #007b3c;
}

#topmessage .contents__body .topconversation .talker2 {
  color: #8dc21f;
}

#topmessage .contents__body .img_box {
  padding: 0 40px 0 40px;
  width: 100%;
  margin-top: 95px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .img_box {
    padding: 0;
    margin-top: 50px;
  }
}

#topmessage .contents__body .img_box2 {
  padding: 0 40px 0 40px;
  width: 100%;
  margin-top: 30px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .img_box2 {
    padding: 0;
  }
}

#topmessage .contents__body .btn_area {
  margin-top: 100px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .btn_area {
    margin-top: 3em !important;
  }
}

#topmessage .contents__body .btn_area .btn_1 a {
  padding-left: 0px;
  padding-right: 29px;
  text-align: center;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #topmessage .contents__body .btn_area .btn_1 a {
    padding-left: 0;
  }
}

#history .contents__body .catch{
  font-size: 42px;
  color: #007b3c;
  margin-top: 35px;
  padding: 0 40px 0 40px;
  text-align: center;
  line-height: 1.5;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .catch{
    margin-top: 10px;
    font-size: 22px;
  }
}

#history .contents__body .lead{
  margin-top: 50px;
  padding: 0 40px 0 40px;
  text-align: center;
  line-height: 1.8;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .lead{
    margin-top: 30px;
    padding: 0 0 0 0;
    text-align: left;
  }
}

#history .contents__body .btn_container {
  padding: 0 40px 0 40px;
  margin-top: 50px;
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .btn_container {
    padding: 0 0 0 0;
    margin-top: 30px;
    flex-wrap: wrap; 
  }
}

#history .contents__body .btn_box {
  display: flex;
  align-items: center; 
  justify-content: center; 
  width:195px;
  padding:5px 5px 7px 5px; 
  box-sizing: border-box;
  color: white; 
  font-size: 20px;
  text-decoration: none; 
  transition: opacity 0.3s ease-in-out; 
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .btn_box {
    width: 100%;
    font-size: 110%;
    margin-bottom: 20px; 
}
}

#history .contents__body .btn_box:hover {
  opacity: 0.6;
}

#history .contents__body .btn_box1  {
  background-color: #8cc21e;
}

#history .contents__body .btn_box2 {
  background-color: #6aaa00; 
}

#history .contents__body .btn_box3 {
  background-color: #3d8e00; 
}

#history .contents__body .btn_box4 {
  background-color: #027b3c; 
}

#history .contents__body .timeline {
  padding: 0 40px 0 46px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .timeline {
    padding: 0;
  }
 
}

#history .contents__body .timeline-list {
  padding: 0;
  margin-top: 95px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .timeline-list {
    margin-top: 30px;
  }
}

#history .contents__body .timeline-list-item {
  display: flex;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .timeline-list-item  {
      flex-direction: column;
      border-left: 2px solid #027b3c;}
}

#history .contents__body .date {
  padding: 0 0 0 20px;
  font-weight: bold;
  position: relative;
  border-left: 2px solid #027b3c;}

  @media only screen and (max-width:768px), print and (min-width: 2cm) {
    #history .contents__body .date  {
        border-left: 0px}
  }
          
#history .contents__body .date::before {
  content: "";
  position: absolute;
  top: 0;
  left: -5.3px;
  width: 10px;
  height: 10px;
  background-color: #027b3c;
  border-radius: 50%;
}
#history .contents__body .date_inner {
  display: flex;
  align-items: center;
  margin-left: -23px;
  margin-top: -25px;
  font-size: 35px;
  font-weight: bold;
  color: #027b3c;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .date_inner {
    font-size: 26px;
    margin-top: -18px;
  }
}


#history .contents__body .date_inner::before {
  content: "------";
  font-size: 15px;
  color: #027b3c;
  margin-right: 5px;
}

#history .contents__body .timeline_content {
  position: relative;
  width:auto;
  margin-top: -10px;
  margin-bottom: 60px;
  padding: 0 0 0 30px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .timeline_content {
    margin-bottom: 30px;
  }
}

#history .contents__body .timeline_content_last {
  position: relative;
  width:auto;
  margin-top: -10px;
  margin-bottom: 20px;
  padding: 0 0 0 30px;
}

#history .contents__body .timeline_content_box {
  display: flex;
  padding: 0 0 20px 0;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .timeline_content_box {
    padding: 0 0 10px 0;
  }
}

#history .contents__body .timeline_content_patch {
  margin-right: 20px;
}

#history .contents__body .timeline_content_wrapper {
  width:95px ;
  height:20px;
  margin-top: 5px;
  padding: 0 0 1.5px 0;
  font-size: 14px;
  color: #ffffff;
  letter-spacing: 0.3em;
  text-align: center;
  background-color: #818181;
  white-space: nowrap;
  display: flex;
  align-items: center;
  justify-content: center; 
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .timeline_content_wrapper {
    margin-top: 15px;
    margin-left: 10px;
  }
}
#history .contents__body .timeline_content_txt {
  flex-grow: 1;
  white-space: pre-line;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .timeline_content_txt {
    margin-left: 10px;
  }
  }

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .timeline_content_box {
      flex-direction: column; 
  }

  #history .contents__body .timeline_content_patch {
      margin-right: 0;
      margin-bottom: 10px; 
  }
}

#history .contents__body .awards-ttl{
  margin-top: 95px;
  margin-bottom: 30px;
  padding: 0 40px 0 40px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .awards-ttl{
    margin-top: 60px;
    padding: 0 ;
  }
}
#history .contents__body .awards-ttl-box {
  height: 46px;
  width: 100%;
  background-color: #027b3c; 
  display: flex;
  justify-content: center;
  align-items: center;
}

#history .contents__body .awards-ttl-txt {
  color: #ffffff;
  font-size: 20px;
  margin-top: -4px;
}

#history .contents__body .awards-ttl-note {
  text-align: right;
  margin-top: 10px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .awards-ttl-note {
    font-size: 85%;
    margin-top: 5px;
  }
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .awards-ttl-txt {
    font-size: 110%;
  }
}
#history .contents__body .award-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0 30px 0 30px;
  margin: 0 auto;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .award-container {
    padding: 0;
    margin-left: -10px;
    margin-right: -10px;
    justify-content: left;
  }
}

#history .contents__body .award-box {
  width: calc(33.33% - 20px);
  margin: 10px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .award-box {
    width: calc(50% - 20px);
}
}

#history .contents__body .award-box:nth-child(-n+3) {
  align-self: flex-start;
}

#history .contents__body .award-box:nth-last-child(-n+2) {
  align-self: flex-end;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .award-box:last-child {
    margin-right: 0;
}
}

#history .contents__body .award-box img {
  width: 100%;
  height: auto;
  margin-bottom: 5px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .award-box img {
    margin-bottom: 3px;
  }
}
#history .contents__body .award-box-txt {
  color: #000;
  margin-bottom: 60px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .award-box-txt {
    margin-bottom: 30px;
    font-size: 85%
  }
}

#history .contents__body .award-last-txt {
  margin-bottom: 60px;
  padding: 0 40px 0 40px;
  text-align: center;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body .award-last-txt {
    margin-bottom: 60px;
    padding: 0;
  }

}

#history .contents__body  .btn_area {
  margin-top: 100px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body  .btn_area {
    margin-top: 3em !important;
  }
}

#history .contents__body  .btn_area .btn_1 a {
  padding-left: 0px;
  padding-right: 29px;
  text-align: center;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #history .contents__body  .btn_area .btn_1 a {
    padding-left: 0;
  }
}

#localism .contents__body .catch{
  font-size: 42px;
  color: #007b3c;
  margin-top: 35px;
  padding: 0 40px 0 40px;
  text-align: center;
  line-height: 1.5;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .contents__body .catch{
    margin-top: 10px;
    font-size: 22px;
  }
}

#localism .contents__body .localism-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 -10px 0 -10px;
  padding-bottom: 30px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .contents__body .localism-container {
  justify-content: left;
  }
}

#localism .contents__body .localism-box {
  width: calc(33.33% - 20px);
  margin: 10px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .contents__body .localism-box {
    width: calc(50% - 20px);
}
}

#localism .contents__body .localism-box:nth-child(-n+3) {
  align-self: flex-start;
}

#localism .contents__body .localism-box:nth-last-child(-n+2) {
  align-self: flex-end;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .contents__body .localism-box:last-child {
    margin-right: 0;
}
}

#localism .contents__body .localism-box img {
  width: 100%;
  height: auto;
  margin-bottom: 5px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .contents__body .localism-box img {
    margin-bottom: 3px;
  }
}
#localism .contents__body .localism-box-txt {
  color: #000;
  margin-bottom: 30px;
  text-align: left;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .contents__body .localism-box-txt {
    margin-bottom: 0px;
    font-size: 85%
  }
}

#localism .contents__body .localism-last-txt {
  margin-bottom: 60px;
  padding: 0 40px 0 40px;
  text-align: center;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .contents__body .localism-last-txt {
    margin-bottom: 60px;
    padding: 0;
  }

}

#localism .contents__body .localism-ttl-border {
  display: flex;
  align-items: center;
  font-size: 25px;
  color: #007b3c;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .contents__body .localism-ttl-border {
    font-size: 120%;
  }
}
#localism .contents__body .localism-ttl-border:before,
#localism .contents__body .localism-ttl-border:after {
  content: "";
  height: 2px;
  flex-grow: 1;
  background-color: #007b3c;
}

#localism .contents__body .localism-ttl-border:before {
  margin-right: 15px;
}

#localism .contents__body .localism-ttl-border:after {
  margin-left: 15px;
}

.localism-ttl-txt{
  margin: 25px 0 10px 0;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  .localism-ttl-txt{
    margin: 15px 0 10px 0;
  }
}

#localism .contents__body  .btn_area {
  margin-top: 30px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .contents__body  .btn_area {
    margin-top: 3em !important;
  }
}

#localism .contents__body  .btn_area .btn_1 a {
  padding-left: 0px;
  text-align: center;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #localism .contents__body  .btn_area .btn_1 a {
    padding-left: 0;
  }
}

#howto .contents__body .catch{
  font-size: 42px;
  color: #007b3c;
  margin-top: 35px;
  padding: 0 40px 0 40px;
  text-align: center;
  line-height: 1.5;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .catch{
    margin-top: 10px;
    font-size: 22px;
  }
}

#howto .contents__body  .btn_area1 {
  margin-top: -20px;
  margin-bottom: 50px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body  .btn_area1 {
    margin-top: 3em !important;
    margin-bottom: 1em !important;
  }
}

#howto .contents__body  .btn_area1 .btn_1 a {
  padding-left: 20px;
  padding-top: 10px;
  justify-content: start;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body  .btn_area1 .btn_1 a {
    padding-left: 15px;
    padding-top: 0;
  }
}

#howto .contents__body .photo-slide{
	padding:30px 0 0 0;
  margin: 0 -50px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
	#howto .contents__body .photo-slide{
		padding: 25px 0 0 0;
    margin: 0 -15px;
	}
}

#howto .contents__body .photo-slide__wrap {
	display: flex;
	overflow: hidden;
  }
  
#howto .contents__body .photo-slide__list {
	display: flex;
	list-style: none;
  }

#howto .contents__body .photo-slide__item {
	width: calc(100vw / 3);
	padding-left: 30px;
  }

  @media only screen and (max-width:768px), print and (min-width: 2cm) {
    #howto .contents__body .photo-slide__item {
      width: calc(100vw / 2);
      padding-left: 10px;
    }
  }  
  #howto .contents__body .photo-slide__item > img{
	 width: 100%;
	 border-radius: 30px;
	}
  @media only screen and (max-width:768px), print and (min-width: 2cm) {
    #howto .contents__body .photo-slide__item > img{
      width: 100%;
      border-radius: 15px;
  }
  }
  /*
右から左へ
----------------------------*/
@keyframes infinity-scroll-left {
	from {
	  transform: translateX(0);
	}
	to {
	  transform: translateX(-100%);
	}
  }
  #howto .contents__body .photo-slide__list--left{
	animation :infinity-scroll-left 40s infinite linear 0.5s both;
	}
  @media only screen and (max-width:768px), print and (min-width: 2cm) {
    @keyframes infinity-scroll-left {
      from {
        transform: translateX(0);
      }
      to {
        transform: translateX(-100%);
      }
      }
      #howto .contents__body .photo-slide__list--left{
      animation :infinity-scroll-left 30s infinite linear 0.5s both;
      }
  }
  /*
左から右へ
----------------------------*/
@keyframes infinity-scroll-right {
	from {
	  transform: translateX(-100%);
	}
	to {
	  transform: translateX(0%);
	}
  }
  #howto .contents__body .photo-slide__list--right{
	animation :infinity-scroll-right 40s infinite linear 0.5s both;
  margin-bottom: 50px;
	} 
  @media only screen and (max-width:768px), print and (min-width: 2cm) {
    @keyframes infinity-scroll-right {
      from {
        transform: translateX(-100%);
      }
      to {
        transform: translateX(0%);
      }
      }
      #howto .contents__body .photo-slide__list--right{
      animation :infinity-scroll-right 30s infinite linear 0.5s both;
      } 
  }

  /*
  IE11対策
  ----------------------------*/
  _:-ms-lang(x)::-ms-backdrop,
  #howto .contents__body .photo-slide {
	display: -ms-grid;
	overflow: hidden;
  }

  #howto .contents__body .flow {
    margin: 50px 0 5px 0;
    padding: 0 40px;
    width: calc(100% - 30px);
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  
  @media only screen and (max-width:768px), print and (min-width: 2cm) {
    #howto .contents__body .flow {
      margin: 0 auto;
      padding: 0;
      margin-left: -5px;
    }
  }
  
  #howto .contents__body .flow a {
    color: #027b3c;
    font-size: 16px;
    width: calc(100% / 7);
    background: #eee;
    height: 63px;
    text-align: center;
    position: relative;
    margin-bottom: 10px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  
  @media only screen and (max-width:768px), print and (min-width: 2cm) {
    #howto .contents__body .flow a {
      width: calc(100% / 4);
      font-size: 13px;
      line-height: 18px;
    }
  }
  
  
  #howto .contents__body .flow a:not(:first-child):not(:last-child) {
    padding: 0 0 0 0;
  }
  
  #howto .contents__body .flow a::before,
  #howto .contents__body .flow a::after {
    content: "";
    width: 0;
    height: 0;
    display: block;
    position: absolute;
  }
  
  #howto .contents__body .flow a::before {
    border: solid 39px transparent;
    border-right: solid 26px transparent;
    border-left: solid 26px #FFF;
    top: -7px;
    left: 0px;
    z-index: 1;
  }
  
  #howto .contents__body .flow a::after {
    border: solid 32px transparent;
    border-left: solid 21px #EDEDED;
    border-right: solid 21px transparent;
    top: 0px;
    right: -41px;
    z-index: 2;
  }
  
  #howto .contents__body .flow > a:nth-child(1) { background: #e6f1df; }
  #howto .contents__body .flow > a:nth-child(2) { background: #deecd5; }
  #howto .contents__body .flow > a:nth-child(3) { background: #d3e7c9; }
  #howto .contents__body .flow > a:nth-child(4) { background: #c7e1b7; }
  #howto .contents__body .flow > a:nth-child(5) { background: #b7d9a5; }
  #howto .contents__body .flow > a:nth-child(6) { background: #abd49c; }
  #howto .contents__body .flow > a:nth-child(7) { background: #90c67e; }
  
  #howto .contents__body .flow > a:nth-child(1)::after { border-left-color: #e6f1df; }
  #howto .contents__body .flow > a:nth-child(2)::after { border-left-color: #deecd5; }
  #howto .contents__body .flow > a:nth-child(3)::after { border-left-color: #d3e7c9; }
  #howto .contents__body .flow > a:nth-child(4)::after { border-left-color: #c7e1b7; }
  #howto .contents__body .flow > a:nth-child(5)::after { border-left-color: #b7d9a5; }
  #howto .contents__body .flow > a:nth-child(6)::after { border-left-color: #abd49c; }
  #howto .contents__body .flow > a:nth-child(7)::after { border-left-color: #90c67e; }
  
  
  #howto .contents__body .flow_txt{
    margin-left: 30px;
  }
  
  #howto .contents__body .flow_txt:hover {
    opacity: 0.6;
    transform: scale(1.1); 
    transition: transform 0.3s ease;
  }
  
  #howto .contents__body .flownote{
    color: #027b3c;
    text-align: center;
    margin-bottom: 95px;
  }
  
  @media only screen and (max-width:768px), print and (min-width: 2cm) {
    #howto .contents__body .flownote{
      text-align: left;
      margin-left: 20px;
      margin-bottom: 30px;
    }
  }
  
  #howto .contents__body .flownote:hover{
    opacity: 0.6;
    transform: scale(1.1); 
    transition: transform 0.3s ease;
  }
  
  #howto .contents__body .flownote a{
    text-decoration: none;
    color: inherit;
  }

#howto .contents__body .flow_unit{
  margin: 120px 0 0 0;
  padding: 0 40px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .flow_unit{
    margin: 80px 0 0 0;
    padding: 0;
  }
}

#howto .contents__body .flow_ttl{
  font-size: 21px;
  width: 275px;
  border: 2px solid #007b3c;
  margin: 0 auto;
  margin-bottom: 95px;
  padding: 4px 0 5px 0;
  color: #007b3c;
  text-align: center;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .flow_ttl{
    font-size: 18px;
    width: 100%;
    padding: 8px 0 10px 0;
    margin-bottom: 30px;
  }
}

#howto .contents__body .flow_unit .flow_unit_container {
  display: flex; 
  flex-wrap: wrap;
  margin-bottom: 30px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .flow_unit .flow_unit_container {
    margin-bottom: 0;
  }
  }

#howto .contents__body .flow_unit .image-box {
  width: 290px;
  margin-right: 30px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .flow_unit .image-box {
    width: 100%;
    margin-right:0;
    margin-bottom: 30px;
  }
}

#howto .contents__body .flow_unit .image-box img {
  width: 100%;
}
#howto .contents__body .flow_unit .text-box {
  flex-grow: 1; 
  width: 60%;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .flow_unit .text-box {
    width: 100%;
    margin-bottom: 10px;
  }
}

#howto .contents__body .flow_unit .text-box p {
  margin-bottom: 20px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .flow_unit .text-box p {
    margin-bottom: 10px;
  }
}

#howto .contents__body .flow_unit .text-box p.big-text {
  font-size: 30px;
  line-height: 25px;
  color: #007b3c; 
  letter-spacing: 0.08em;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .flow_unit .text-box p.big-text {
    font-size: 25px;
    line-height: 20px;
  }
}

#howto .contents__body .flow_unit .text-box .big-textnote {
  font-size: 18px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .flow_unit .text-box .big-textnote {
    font-size: 14px;
  }
}

#howto .contents__body .flow_unit .text-box p.small-text {
  font-size: 18px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .flow_unit .text-box p.small-text {
    font-size: 100%;
  }
}

#howto .contents__body .logo_ttl {
  color: #007b3c;
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .logo_ttl {
    margin-bottom: 10px;
  }
}

#howto .contents__body .flow_unit .logo_ttl:after {
  content: "";
  height: 0.8px;
  flex-grow: 1;
  background-color: #007b3c;
  margin-left: 1rem;
}

#howto .contents__body .flow_unit .logo_container {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 90px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .flow_unit .logo_container {
    margin-bottom: 30px;
  }
}

#howto .contents__body .flow_unit .logo_image {
  height: 40px;
  margin-right: 40px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .flow_unit .logo_image {
    height: 30px;
    margin-right: 20px;
    margin-bottom: 20px;
  }
}

#howto .contents__body .other_unit{
  margin: 95px -50px 0 -50px;
  background-color: #e9e9e9;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .other_unit{
    margin: 50px -15px 0 -15px;
  }
}

#howto .contents__body .other_unit .other_unit_inner{
  padding: 50px 90px 0 90px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .other_unit .other_unit_inner{
    padding: 30px 15px 0 15px;
  }
}

#howto .contents__body .other_ttl{
  font-size: 21px;
  width: 100%;
  border: 2px solid #007b3c;
  margin: 0 auto;
  margin-bottom: 50px;
  padding: 4px 0 5px 0;
  color: #007b3c;
  text-align: center;
  background-color: #fff;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .other_ttl{
    font-size: 100%;
    width: 100%;
    padding: 8px 0 10px 0;
    margin-bottom: 30px;
  }
}

#howto .contents__body .other_unit .other_unit_container {
  display: flex; 
  flex-wrap: wrap;
  margin-bottom: 95px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .other_unit .other_unit_container {
    margin-bottom: 0;
  }
  }


#howto .contents__body .other_unit .image-box {
  width: 150px;
  margin-right: 30px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .other_unit .image-box {
    margin:0 auto;
  }
}

#howto .contents__body .other_unit .image-box img {
  width: 100%;
}
#howto .contents__body .other_unit .text-box {
  flex-grow: 1; 
  width: 60%;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .other_unit .text-box {
    width: 100%;
    margin: 30px 0 30px 0;
  }
}

#howto .contents__body .other_unit .text-box p {
  margin-bottom: 10px;
}

#howto .contents__body .other_unit .text-box p.big-text {
  font-size: 30px;
  line-height: 25px;
  color: #007b3c; 
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .other_unit .text-box p.big-text {
    font-size: 25px;
    line-height: 20px;
    text-align: center;
  }
}

#howto .contents__body .other_unit .text-box .big-textnote {
  font-size: 18px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body .other_unit .text-box .big-textnote {
    font-size: 14px;
  }
}

#howto .contents__body .other_unit .text-box p.small-text {
  font-size: 100%;
}

#howto .contents__body  .btn_area {
  margin-top: 100px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body  .btn_area {
    margin-top: 3em !important;
  }
}

#howto .contents__body  .btn_area .btn_1 a {
  padding-left: 0px;
  padding-right: 29px;
  text-align: center;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #howto .contents__body  .btn_area .btn_1 a {
    padding-left: 0;
  }
}

#jobdetail .contents__body .jobttl-container {
  padding: 0 40px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .jobttl-container {
    padding: 0;
  }
}


 #jobdetail .contents__body .jobttl-box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  width: 100%;
  height: 120px;
  background-color: #e6f1df;
  margin-bottom: 30px;
 }

 @media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .jobttl-box {
    height: 80px;
    background-color: #e6f1df;
   }
}

 #jobdetail .contents__body .jobttl {
  font-size: 42px;
  color: #007b3c;
  margin-left: 35px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .jobttl {
    font-size: 22px;
    margin-left: 20px;
  }
}

 #jobdetail .contents__body .jobttl-triangle {
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 0;
  border-top: 60px solid #027b3c;
  border-right: 60px solid #027b3c;
  border-bottom: 60px solid transparent;
  border-left: 60px solid transparent;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .jobttl-triangle {
    border-top: 40px solid #027b3c;
    border-right: 40px solid #027b3c;
    border-bottom: 40px solid transparent;
    border-left: 40px solid transparent;
  }
}

#jobdetail .contents__body .jobnumber {
  font-size: 40px;
  position: absolute;
  color: white;
  margin-top: -60px;
  margin-right: 10px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .jobnumber {
    font-size: 30px;
    margin-top: -40px;
    margin-right: 10px;
  }
}

#jobdetail .contents__body .joblink_btn_container {
  display: flex;
  flex-wrap: wrap;
  padding: 0 40px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .joblink_btn_container {
    padding: 0;
  }
}

#jobdetail .contents__body .joblink_btn_box {
  font-size: 20px;
  flex: 1;
  background-color: #027b3c;
  margin-right: 20px;
  margin-bottom: 20px;
  text-align: center;
  padding: 8px;
  color: white;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .joblink_btn_box {
    font-size: 15px;
    flex: auto;
    width: 100%;
    padding: 10px;
    margin-right: 0;
  }
}

#jobdetail .contents__body .joblink_btn_box_none {
  font-size: 20px;
  flex: 1;
  background-color: #ccc;
  margin-right: 20px;
  margin-bottom: 20px;
  text-align: center;
  padding: 8px;
  color: white;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .joblink_btn_box_none {
    font-size: 15px;
    flex: auto;
    width: 100%;
    padding: 10px;
    margin-right: 0;
  }
}


#jobdetail .contents__body .joblink_btn_box:hover {
  opacity: 0.6;
}

#jobdetail .contents__body .joblink_btn_box:last-child {
  margin-right: 0;
}

#jobdetail .contents__body .joblink_btn_box_none:last-child {
  margin-right: 0;
}

#jobdetail .contents__body .jobintro_container {
  display: flex; 
  padding: 0 40px;
  margin-top: 30px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .jobintro_container {
    padding: 0;
    display: block;
    margin-top: 10px;
  }
}

#jobdetail .contents__body .jobintro_image-box {
  width: 235px;
  margin-right: 20px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .jobintro_image-box {
    width: 150px;
    margin-right: 20px;
  }
}

#jobdetail .contents__body .jobintro_image-box img {
  width: 100%;
  margin-right: 20px; 
}


#jobdetail .contents__body .jobintro_text-element {
  display: flex; 
  flex-direction: column;
  margin-bottom: 20px;
  width: 564px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .jobintro_text-element {
    width: 100%;
    margin-top: 10px;
  }
}


#jobdetail .contents__body .jobintro_text-large {
  font-size: 24px;
  color:#027b3c;
  margin-top: 0;
  margin-bottom: 7px;  
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .jobintro_text-large {
    font-size: 18px;
    margin-bottom: 5px;  
  }
}

#jobdetail .contents__body .jobintro_text-medium {
  font-size: 22px;
  margin-top: 0;
  margin-bottom: 7px;  
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .jobintro_text-medium {
    font-size: 16px;
    margin-bottom: 5px;  
  }
}

#jobdetail .contents__body .jobintro_text-small {
  font-size: 18px;
  margin-top: 10px;
  margin-bottom: 0px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .jobintro_text-small {
    font-size: 100%;
    margin-top: 0;
  }
}

#jobdetail .contents__body .jobcatch_box{
  margin-top: 65px;
  margin-bottom: 50px;
  padding: 0 40px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .jobcatch_box{
    margin-top: 30px;
    margin-bottom: 30px;
    padding: 0;
  }
}

#jobdetail .contents__body .jobcatch{
  font-size: 36px;
  color:#027b3c;
  margin-bottom: 50px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .jobcatch{
    font-size: 22px;
    margin-bottom: 30px;
  }
}

#jobdetail .contents__body .jobcatch_image{
  width: 100%;
}

#jobdetail .contents__body .jobcatch_image img{
  width: 100%;
}

#jobdetail .contents__body .job_interview_box {
  padding: 0 40px;
  margin-bottom: 75px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .job_interview_box {
    padding: 0;
    margin-bottom: 50px;
  }
}

#jobdetail .contents__body .job_interview_ttlbox {
  width: 100%;
  height: 65px;
  margin-bottom: 15px;
  background-color: #e9e9e9;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: left;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .job_interview_ttlbox {
    height: 40px;
    margin-bottom: 10px;
  }
}

#jobdetail .contents__body .job_interview_ttl {
  font-size: 27px;
  color: #027b3c;
  margin-left: 30px;
  display: inline-block;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .job_interview_ttl {
    font-size: 18px;
    margin-left: 20px;
  }
}

#jobdetail .contents__body .job_interview_txt {
  font-size: 21px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .job_interview_txt {
    font-size: 16px;
  }
}

#jobdetail .contents__body .job_time_schedule {
  position: relative;
}

#jobdetail .contents__body .job_time_line {
  width: 2px;
  height: 95%;
  position: absolute;
  top: 3px;
  left: 12%;
  z-index: 999;
  transform: translateX(-50%);
  padding-top: 15px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .job_time_line {
    left: 20%;
  }
}

#jobdetail .contents__body .job_time_line span {
  display: block;
  width: 100%;
  height: 100%;
  background: #027b3c;
}

#jobdetail .contents__body .job_time_ball {
  position: absolute;
  background: #027b3c;
  width: 17px;
  height: 17px;
  border-radius: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  left: 12%;
  z-index: 999;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .job_time_ball {
    left: 20%;
    width: 12px;
    height: 12px;
  }
}


#jobdetail .contents__body .job_time_schedule dl {
  padding: 10px 0;
  font-size: 20px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .job_time_schedule dl {
    padding: 10px 0;
    font-size: 16px;
  }
}

#jobdetail .contents__body .job_time_schedule dl dt {
  width: 100%;
  position: absolute;
  color: #027b3c;
}

#jobdetail .contents__body .job_time_white {
  color: #fff;
}

#jobdetail .contents__body .job_time_schedule dl dd {
  width: 100%;
  margin-left: 17%;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .job_time_schedule dl dd {
    margin-left: 26%;
  }
}

#jobdetail .contents__body .job_time_txt{
  line-height: 1.6;
  padding: 0 137px 0 0;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .job_time_txt{
    padding: 0 25% 0 0;
  }
}

#jobdetail .contents__body .job_explan_container{
  padding: 0 40px;
  margin-bottom: 75px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .job_explan_container{
    padding: 0;
    margin-bottom: 50px;
  }
}

#jobdetail .contents__body .job_explan_ttl_box{
  width: 100%;
  height: 60px;
  background-color: #027b3c; 
  display: flex;
  justify-content: center;
  align-items: center;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .job_explan_ttl_box{
    height: 50px;
  }
}

#jobdetail .contents__body .job_explan_ttl {
  margin-top: -2px;
  font-size: 24px;
  letter-spacing: 0.3em;
  color: #ffffff;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .job_explan_ttl {
    font-size: 18px;
    letter-spacing: 0em;
  }
}

#jobdetail .contents__body .job_explan_box {
  display: flex;
  padding: 45px 0;
  gap: 45px;
  flex-direction: row;
  border-bottom:2px solid #b6b6b6;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .job_explan_box {
    flex-direction: column;
    padding: 30px 0;
    gap: 10px;
}
}

#jobdetail .contents__body .job_explan_box_inner1, #jobdetail .contents__body .job_explan_box_inner2 {
  display: flex;
  align-items: center;
  justify-content: left;
}

#jobdetail .contents__body .job_explan_box_inner1 {
  width: 220px;
  font-size: 25px;
  color: #027b3c; 
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .job_explan_box_inner1 {
    width: 100%;
    font-size: 18px;
  }
}
#jobdetail .contents__body .job_explan_box_inner2 {
  flex: 1;
}

#jobdetail .contents__body .job_now_container{
  padding: 0 40px;
  margin-bottom: 75px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .job_now_container{
    padding: 0;
    margin-bottom: 50px;
  }
}

#jobdetail .contents__body .job_now_ttl_box{
  width: 100%;
  height: 60px;
  background-color: #027b3c; 
  display: flex;
  justify-content: center;
  align-items: center;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .job_now_ttl_box{
    height: 50px;
  }
}

#jobdetail .contents__body .job_now_ttl {
  margin-top: -2px;
  font-size: 24px;
  letter-spacing: 0.3em;
  color: #ffffff;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body .job_now_ttl {
    font-size: 20px;
    letter-spacing: 0.15em;
  }
}

#jobdetail .contents__body  .box__result {
  padding-top: 30px;
  position: relative;
}
#jobdetail .contents__body  .box__result__item {
  border: solid 2px #eee;
  position: relative;
  padding: 30px 30px;
  margin-bottom: 30px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body  .box__result__item {
    padding: 30px 20px;
    margin-bottom: 20px;
  }
}
#jobdetail .contents__body  .box__result__item_ttl {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 30px;
  position: relative;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body  .box__result__item_ttl {
    font-size: 18px;
  }
}
#jobdetail .contents__body  .box__result__item_ttl:before {
  content: "";
  display: block;
  width: 8px;
  height: calc(100% + 16px);
  background-color: #007b3c;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translate(-32px, -50%);
          transform: translate(-32px, -50%);
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body  .box__result__item_ttl:before {
    -webkit-transform: translate(-22px, -50%);
            transform: translate(-22px, -50%);
  }
}
#jobdetail .contents__body  .box__result__item_info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body  .box__result__item_info {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#jobdetail .contents__body  .box__result__item_img {
  width: 215px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body  .box__result__item_img {
    width: 100%;
  }
}
#jobdetail .contents__body  .box__result__item_txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 15px;
  padding-left: 30px;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body  .box__result__item_txt {
    padding: 20px 0 30px;
    font-size: 14px;
  }
}
#jobdetail .contents__body  .box__result__item_txt dt {
  font-weight: 700;
}
#jobdetail .contents__body  .box__result__item_txt dd {
  margin-bottom: 0.8em;
  line-height: 1.5;
  text-align: justify;
  text-justify: inter-ideograph;
}
#jobdetail .contents__body  .box__result__item a {
  position: absolute;
  right: 0;
  bottom: 0;
}

#jobdetail .contents__body  .btn_area {
  margin-top: 100px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body  .btn_area {
    margin-top: 3em !important;
  }
}

#jobdetail .contents__body  .btn_area .btn_1 a {
  padding-left: 0px;
  text-align: center;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobdetail .contents__body  .btn_area .btn_1 a {
    padding-left: 0;
  }
}

#jobcategory .contents__body .catch{
  font-size: 42px;
  color: #007b3c;
  margin-top: 35px;
  padding: 0 40px 0 40px;
  text-align: center;
  line-height: 1.5;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobcategory .contents__body .catch{
    margin-top: 10px;
    font-size: 22px;
    padding: 0;
  }
}

#jobcategory .contents__body .lead{
  margin-top: 5em;
  padding: 0 40px 0 40px;
  text-align: center;
  line-height: 1.8;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobcategory .contents__body .lead{
    margin-top: 30px;
    padding: 0 15px;
    text-align: left;
  }
}

#jobcategory .contents__body{
  padding: 60px 0 60px 0;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobcategory .contents__body{
    padding: 20px 0 20px 0;
  }
}

#jobcategory .contents__body .category_container{
  width: 100%;
  background-image: url('img/jobcategory/bg_data_half.jpg'); 
  background-size: 14.5px 14.5px; 
  background-repeat: repeat;
  padding: 60px 90px 60px 90px;
  margin-top: 130px;
  }

  @media only screen and (max-width:768px), print and (min-width: 2cm) {
    #jobcategory .contents__body .category_container{
      padding: 30px 15px 30px 15px;
      margin-top: 60px;
      }
  }

#jobcategory .contents__body .category_ttl{
  margin-top: -120px;
  font-size: 67px;
  font-weight: 100;
  letter-spacing: 0.2em;
  color: #027b3c;
  text-align: center;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobcategory .contents__body .category_ttl{
    margin-top: -60px;
    font-size: 35px;
    letter-spacing: 0.1em;
  }
}

#jobcategory .contents__body .category_lead{
  text-align: center;
  margin-bottom: 60px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobcategory .contents__body .category_lead{
    text-align: center;
    margin-bottom: 30px;
  }
  
}

#jobcategory .contents__body .category_job_container{
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  box-sizing: border-box;
}

#jobcategory .contents__body .category_job_container_item{
  width: calc(33.33% - 17px);
  text-align: center;
  margin-right: 25px;
}

#jobcategory .contents__body .category_job_container_item:nth-child(3){
  margin-right: 0px;
}

#jobcategory .contents__body .category_job_container_item:nth-child(6){
  margin-right: 0px;
}


@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobcategory .contents__body .category_job_container_item{
    width: calc(100%);
    text-align: center;
    margin-right: 0px;
  }
 
}

#jobcategory .contents__body .category_job_box {
  position: relative;
  height: 262px;
  background-color: #fff;
  -webkit-box-shadow: 2px 5px 10px rgba(2, 123, 60, 0.7);
  box-shadow: 2px 5px 10px rgba(2, 123, 60, 0.7);
  margin-bottom: 35px;
  width: 100%;
  float: left;
  clear: none;
  cursor: pointer;
  overflow: hidden;
}

#jobcategory .contents__body .category_job_box:hover {
  transform: scale(1.05); 
  transition: transform 0.3s ease; 
}



@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobcategory .contents__body .category_job_box {
    height: 240px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
#jobcategory .contents__body .category_job_box a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-decoration: none;
}

#jobcategory .contents__body .category_job_box a:hover {
  opacity: 0.6;
}


#jobcategory .contents__body .category_job_box_triangle {
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 0;
  border-top: 32px solid #027b3c;
  border-right: 32px solid #027b3c;
  border-bottom: 32px solid transparent;
  border-left: 32px solid transparent;
}

#jobcategory .contents__body .category_job_box_content {
  position: absolute;
  color: white;
  margin-top: -30px;
  margin-right: 10px;
  font-size: 20px;
}

#jobcategory .contents__body .category_job_box_inner{
  width: 215px;
  position: absolute;
  padding-top: 60px;
  padding-bottom:15px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobcategory .contents__body .category_job_box_inner{
    width: 230px;
    padding-top: 30px;
    padding-bottom:10px;
  }
}

#jobcategory .contents__body .category_job_box_inner img{
  width: 100%;
}

#jobcategory .contents__body .category_job_box_inner_txt{
  text-align: center;
  margin-top: 15px;
  font-size: 18px;
  color: #027b3c;
}

#jobcategory .contents__body .lastlead{
  margin-top: 5em;
  padding: 0 40px 0 40px;
  text-align: center;
  line-height: 1.8;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #jobcategory .contents__body .lastlead{
    margin-top: 30px;
    padding: 0 15px;
  }
}

#support .contents__body{
  padding: 60px 0 60px 0;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body{
    padding: 20px 0 20px 0;
  }
}
#support .contents__body .catch{
  font-size: 42px;
  color: #007b3c;
  margin-top: 35px;
  padding: 0 90px 0 90px;
  text-align: center;
  line-height: 1.5;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .catch{
    margin-top: 10px;
    font-size: 22px;
    padding: 0 15px 0 15px;
  }
}

#support .contents__body .lead{
  margin-top: 50px;
  margin-bottom: 50px;
  padding: 0 90px 0 90px;
  text-align: center;
  line-height: 1.8;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .lead{
    margin-top: 30px;
    margin-bottom: 0px;
    padding: 0 15px 0 15px;
    text-align: left;
  }
}



#support .contents__body .support_accordion-area {
  list-style: none;
  width: 100%;
  margin: 0 auto;
  padding: 0 90px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_accordion-area {
    padding: 30px 15px 0 15px;
  }
}

#support .contents__body .support_accordion-area li {
  margin: 10px 0;
}

#support .contents__body .support_accordion-area section {
  border: 2px solid #027b3c;;
}

#support .contents__body .support_title1 {
  display: flex;
  align-items: center;
  position: relative;
  cursor: pointer;
  font-weight: normal;
  padding: 20px 0 20px 50px;
  transition: all .5s ease;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title1 {
    display:block ;
    padding: 10px 0 10px 30px;
    transition: all .5s ease;
  }
}


#support .contents__body .support_title1 .ttl {
  flex: 35;
  font-size: 30px;
  color: #027b3c;
  position: relative; 
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title1 .ttl {
    font-size: 20px;
  }
}

#support .contents__body .support_title1 .ttl::before {
  content:"";
  display:inline-block;
  width:7px;
  height:30px;
  background-color:#027b3c;
  position:absolute;
  top:25%;
  left:-20px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title1 .ttl::before {
    width:5px;
    height:20px;
    top:20%;
    left:-15px;
}
}

#support .contents__body .support_title1 .content {
  flex: 55;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title1 .content {
    padding-right: 60px;
  }
}

#support .contents__body .support_title1::before,
#support .contents__body .support_title1::after {
  position: absolute;
  content: '';
  width: 25px;
  height: 5px;
  background-color: #027b3c;
  right: 30px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title1::before,
  #support .contents__body .support_title1::after {
    position: absolute;
    content: '';
    width: 20px;
    height: 3px;
    background-color: #027b3c;
    right: 20px;
  }
}

#support .contents__body .support_title1::before {
  top: 50%;
  transform: rotate(0deg);
}

#support .contents__body .support_title1::after {
  top: 50%;
  transform: rotate(90deg);
}

#support .contents__body .support_title1.close1::before {
  transform: rotate(0deg);
}

#support .contents__body .support_title1.close1::after {
  display: none;
}

#support .contents__body .support_title2 {
  display: flex;
  align-items: center;
  position: relative;
  cursor: pointer;
  font-weight: normal;
  padding: 20px 0 20px 50px;
  transition: all .5s ease;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title2 {
    display:block ;
    padding: 10px 0 10px 30px;
    transition: all .5s ease;
  }
}


#support .contents__body .support_title2 .ttl {
  flex: 35;
  font-size: 30px;
  color: #027b3c;
  position: relative; 
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title2 .ttl {
    font-size: 20px;
  }
}

#support .contents__body .support_title2 .ttl::before {
  content:"";
  display:inline-block;
  width:7px;
  height:30px;
  background-color:#027b3c;
  position:absolute;
  top:25%;
  left:-20px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title2 .ttl::before {
    width:5px;
    height:20px;
    top:20%;
    left:-15px;
}
}

#support .contents__body .support_title2 .content {
  flex: 55;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title2 .content {
    padding-right: 60px;
  }
}

#support .contents__body .support_title2::before,
#support .contents__body .support_title2::after {
  position: absolute;
  content: '';
  width: 25px;
  height: 5px;
  background-color: #027b3c;
  right: 30px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title2::before,
  #support .contents__body .support_title2::after {
    position: absolute;
    content: '';
    width: 20px;
    height: 3px;
    background-color: #027b3c;
    right: 20px;
  }
}

#support .contents__body .support_title2::before {
  top: 50%;
  transform: rotate(0deg);
}

#support .contents__body .support_title2::after {
  top: 50%;
  transform: rotate(90deg);
}

#support .contents__body .support_title2.close2::before {
  transform: rotate(0deg);
}

#support .contents__body .support_title2.close2::after {
  display: none;
}

#support .contents__body .support_title3 {
  display: flex;
  align-items: center;
  position: relative;
  cursor: pointer;
  font-weight: normal;
  padding: 20px 0 20px 50px;
  transition: all .5s ease;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title3 {
    display:block ;
    padding: 10px 0 10px 30px;
    transition: all .5s ease;
  }
}


#support .contents__body .support_title3 .ttl {
  flex: 35;
  font-size: 30px;
  color: #027b3c;
  position: relative; 
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title3 .ttl {
    font-size: 20px;
  }
}

#support .contents__body .support_title3 .ttl::before {
  content:"";
  display:inline-block;
  width:7px;
  height:30px;
  background-color:#027b3c;
  position:absolute;
  top:25%;
  left:-20px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title3 .ttl::before {
    width:5px;
    height:20px;
    top:20%;
    left:-15px;
}
}

#support .contents__body .support_title3 .content {
  flex: 55;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title3 .content {
    padding-right: 60px;
  }
}

#support .contents__body .support_title3::before,
#support .contents__body .support_title3::after {
  position: absolute;
  content: '';
  width: 25px;
  height: 5px;
  background-color: #027b3c;
  right: 30px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title3::before,
  #support .contents__body .support_title3::after {
    position: absolute;
    content: '';
    width: 20px;
    height: 3px;
    background-color: #027b3c;
    right: 20px;
  }
}

#support .contents__body .support_title3::before {
  top: 50%;
  transform: rotate(0deg);
}

#support .contents__body .support_title3::after {
  top: 50%;
  transform: rotate(90deg);
}

#support .contents__body .support_title3.close3::before {
  transform: rotate(0deg);
}

#support .contents__body .support_title3.close3::after {
  display: none;
}

#support .contents__body .support_title4 {
  display: flex;
  align-items: center;
  position: relative;
  cursor: pointer;
  font-weight: normal;
  padding: 20px 0 20px 50px;
  transition: all .5s ease;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title4 {
    display:block ;
    padding: 10px 0 10px 30px;
    transition: all .5s ease;
  }
}


#support .contents__body .support_title4 .ttl {
  flex: 35;
  font-size: 30px;
  color: #027b3c;
  position: relative; 
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title4 .ttl {
    font-size: 20px;
  }
}

#support .contents__body .support_title4 .ttl::before {
  content:"";
  display:inline-block;
  width:7px;
  height:30px;
  background-color:#027b3c;
  position:absolute;
  top:25%;
  left:-20px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title4 .ttl::before {
    width:5px;
    height:20px;
    top:20%;
    left:-15px;
}
}

#support .contents__body .support_title4 .content {
  flex: 55;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title4 .content {
    padding-right: 60px;
  }
}

#support .contents__body .support_title4::before,
#support .contents__body .support_title4::after {
  position: absolute;
  content: '';
  width: 25px;
  height: 5px;
  background-color: #027b3c;
  right: 30px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_title4::before,
  #support .contents__body .support_title4::after {
    position: absolute;
    content: '';
    width: 20px;
    height: 3px;
    background-color: #027b3c;
    right: 20px;
  }
}

#support .contents__body .support_title4::before {
  top: 50%;
  transform: rotate(0deg);
}

#support .contents__body .support_title4::after {
  top: 50%;
  transform: rotate(90deg);
}

#support .contents__body .support_title4.close4::before {
  transform: rotate(0deg);
}

#support .contents__body .support_title4.close4::after {
  display: none;
}


#support .contents__body .support_box {
  display: none; 
  margin:0 30px 40px 30px;
}

#support .contents__body .support_box_img {
  width: 320px;
  margin: 0 auto;
  margin-bottom: -20px;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_box_img {
    width: 100%;
  }
}

#support .contents__body .support_box_img img {
  width: 100%;
}

#support .contents__body .support_explan_box {
  display: flex;
  padding: 45px 0;
  margin: 0 45px;
  gap: 45px;
  flex-direction: row;
  border-bottom:2px solid #b6b6b6;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_explan_box {
    flex-direction: column;
    padding: 30px 0;
    margin: 0;
    gap: 10px;
}
}

#support .contents__body .support_explan_box:last-child {
  border-bottom:0;
  padding: 30px 0 0 0;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_explan_box:last-child {
    border-bottom:0;
    padding: 30px 0 0 0;
  }
}

#support .contents__body .support_explan_box_inner1, #support .contents__body .support_explan_box_inner2 {
  display: flex;
  align-items: center;
  justify-content: left;
}

#support .contents__body .support_explan_box_inner1 {
  width: 164px;
  font-size: 17px;
  color: #027b3c; 
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .support_explan_box_inner1 {
    width: 100%;
    font-size: 17px;
  }
}
#support .contents__body .support_explan_box_inner2 {
  flex: 1;
}

#support .contents__body .message_container{
  width: 100%;
  background-image: url('img/jobcategory/bg_data_half.jpg'); 
  background-size: 14.5px 14.5px; 
  background-repeat: repeat;
  padding: 50px 90px 70px 90px;
  margin-top: 90px;
  }

  @media only screen and (max-width:768px), print and (min-width: 2cm) {
    #support .contents__body .message_container{
      padding: 30px 15px 30px 15px;
      margin-top: 60px;
      }
  }

 #support .contents__body .message_box{
  padding: 60px 0;
  background-color:#fff;
  box-shadow: 2px 5px 10px rgba(2, 123, 60, 0.7);
  text-align: center;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .message_box{
    padding: 30px 20px;
  }
}

#support .contents__body .btn_area {
  padding: 65px 0 0 0;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .btn_area {
    margin-top: 60px;
    padding: 0 15px;
  }
}
#support .contents__body .btn_area .btn_1 a {
  padding-left: 0px;
  text-align: center;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #support .contents__body .btn_area .btn_1 a {
    padding-left: 0;
  }
}



#home .overlay01-box {
  left: 603px;
  top: 155px;
  width: 485px;
}
#home .overlay01-box::after {
  content: "";
  width: 32px;
  height: 32px;
  right: 230px;
  bottom: 14px;
  position: absolute;
  background-image: url("img/home/link_arrow_2.svg");
  background-repeat: no-repeat;
  transition: transform 0.5s ease;
}
#home .overlay01-box:hover::after {transform: translateX(30px); }
#home .overlay01-box-inner{position: relative;width: 100%;}
#home .overlay01-box-inner-image{opacity: 0;}
#home .overlay01-box-inner-image:hover{opacity: 1;}


#home .overlay02-box {
  left: 775px;
  top: 477px;
  width: 333px;
}
#home .overlay02-box::after {
  content: "";
  width: 32px;
  height: 32px;
  right: 39px;
  bottom: 37px;
  position: absolute;
  background-image: url("img/home/link_arrow_2.svg");
  background-repeat: no-repeat;
  transition: transform 0.5s ease;
}
#home .overlay02-box:hover::after {transform: translateX(30px); }
#home .overlay02-box-inner{position: relative;width: 100%;}
#home .overlay02-box-inner-image{opacity: 0;}
#home .overlay02-box-inner-image:hover{opacity: 1;}

#home .overlay03-box {
  left: 855.5px;
  top: 877.8px;
  width: 252px;
}
#home .overlay03-box::after {
  content: "";
  width: 32px;
  height: 32px;
  right: 39px;
  bottom: 35px;
  position: absolute;
  background-image: url("img/home/link_arrow_2.svg");
  background-repeat: no-repeat;
  transition: transform 0.5s ease;
}
#home .overlay03-box:hover::after {transform: translateX(30px); }
#home .overlay03-box-inner{position: relative;width: 100%;}
#home .overlay03-box-inner-image{opacity: 0;}
#home .overlay03-box-inner-image:hover{opacity: 1;}

#home .overlay04-box {
  left: 552.75px;
  top: 877.5px;
  width: 292px;
}
#home .overlay04-box::after {
  content: "";
  width: 32px;
  height: 32px;
  right: 137px;
  bottom: 35px;
  position: absolute;
  background-image: url("img/home/link_arrow_2.svg");
  background-repeat: no-repeat;
  transition: transform 0.5s ease;
}
#home .overlay04-box:hover::after {transform: translateX(30px); }
#home .overlay04-box-inner{position: relative;width: 100%;}
#home .overlay04-box-inner-image{opacity: 0;}
#home .overlay04-box-inner-image:hover{opacity: 1;}

#home .overlay05-box {
  left: 356.7px;
  top: 1068.7px;
  width: 145px;
}
#home .overlay05-box::after {
  content: "";
  width: 32px;
  height: 32px;
  right: 87px;
  bottom: 30px;
  position: absolute;
  background-image: url("img/home/link_arrow_2.svg");
  background-repeat: no-repeat;
  transition: transform 0.5s ease;
}
#home .overlay05-box:hover::after {transform: translateX(30px); }
#home .overlay05-box-inner{position: relative;width: 100%;}
#home .overlay05-box-inner-image{opacity: 0;}
#home .overlay05-box-inner-image:hover{opacity: 1;}

#home .overlay06-box {
  left: 825.5px;
  top: 1281.1px;
  width: 282px;
}
#home .overlay06-box::after {
  content: "";
  width: 32px;
  height: 32px;
  right: 172px;
  bottom: 30px;
  position: absolute;
  background-image: url("img/home/link_arrow_2.svg");
  background-repeat: no-repeat;
  transition: transform 0.5s ease;
}
#home .overlay06-box:hover::after {transform: translateX(30px); }
#home .overlay06-box-inner{position: relative;width: 100%;}
#home .overlay06-box-inner-image{opacity: 0;}
#home .overlay06-box-inner-image:hover{opacity: 1;}

#home .overlay07-box {
  left: 1162px;
  top: 1475.5px;
  width: 139px;
}
#home .overlay07-box::after {
  content: "";
  width: 32px;
  height: 32px;
  right: 88px;
  bottom: 74px;
  position: absolute;
  background-image: url("img/home/link_arrow_2.svg");
  background-repeat: no-repeat;
  transition: transform 0.5s ease;
}
#home .overlay07-box:hover::after {transform: translateX(30px); }
#home .overlay07-box-inner{position: relative;width: 100%;}
#home .overlay07-box-inner-image{opacity: 0;}
#home .overlay07-box-inner-image:hover{opacity: 1;}

#home .overlay08-box {
  left: 687px;
  top: 1532px;
  width: 183px;
}
#home .overlay08-box::after {
  content: "";
  width: 32px;
  height: 32px;
  right: 131px;
  bottom: 12px;
  position: absolute;
  background-image: url("img/home/link_arrow_2.svg");
  background-repeat: no-repeat;
  transition: transform 0.5s ease;
}
#home .overlay08-box:hover::after {transform: translateX(30px); }
#home .overlay08-box-inner{position: relative;width: 100%;}
#home .overlay08-box-inner-image{opacity: 0;}
#home .overlay08-box-inner-image:hover{opacity: 1;}

#home .overlay09-box {
  left: 492.8px;
  top: 1725.5px;
  width: 140px;
}
#home .overlay09-box::after {
  content: "";
  width: 32px;
  height: 32px;
  right: 82px;
  bottom: 18px;
  position: absolute;
  background-image: url("img/home/link_arrow_2.svg");
  background-repeat: no-repeat;
  transition: transform 0.5s ease;
}
#home .overlay09-box:hover::after {transform: translateX(30px); }
#home .overlay09-box-inner{position: relative;width: 100%;}
#home .overlay09-box-inner-image{opacity: 0;}
#home .overlay09-box-inner-image:hover{opacity: 1;}

#home .overlay10-box {
  left: 929.4px;
  top: 2007.5px;
  width: 208px;
}
#home .overlay10-box::after {
  content: "";
  width: 32px;
  height: 32px;
  right: 53px;
  bottom: 40px;
  position: absolute;
  background-image: url("img/home/link_arrow_2.svg");
  background-repeat: no-repeat;
  transition: transform 0.5s ease;
}
#home .overlay10-box:hover::after {transform: translateX(30px); }
#home .overlay10-box-inner{position: relative;width: 100%;}
#home .overlay10-box-inner-image{opacity: 0;}
#home .overlay10-box-inner-image:hover{opacity: 1;}

#home .overlay11-box {
  left: 493px;
  top: 2483.6px;
  width: 215px;
}
#home .overlay11-box::after {
  content: "";
  width: 32px;
  height: 32px;
  right: 24px;
  bottom: 17px;
  position: absolute;
  background-image: url("img/home/link_arrow_2.svg");
  background-repeat: no-repeat;
  transition: transform 0.5s ease;
}
#home .overlay11-box:hover::after {transform: translateX(15px); }
#home .overlay11-box-inner{position: relative;width: 100%;}
#home .overlay11-box-inner-image{opacity: 0;}
#home .overlay11-box-inner-image:hover{opacity: 1;}

#home .overlay12-box {
  left: 717.7px;
  top: 2483.7px;
  width: 215px;
}
#home .overlay12-box::after {
  content: "";
  width: 32px;
  height: 32px;
  right: 24px;
  bottom: 36px;
  position: absolute;
  background-image: url("img/home/link_arrow_2.svg");
  background-repeat: no-repeat;
  transition: transform 0.5s ease;
}
#home .overlay12-box:hover::after {transform: translateX(15px); }
#home .overlay12-box-inner{position: relative;width: 100%;}
#home .overlay12-box-inner-image{opacity: 0;}
#home .overlay12-box-inner-image:hover{opacity: 1;}

#home .overlay13-box {
  left: 943px;
  top: 2483.5px;
  width: 215px;
}
#home .overlay13-box::after {
  content: "";
  width: 32px;
  height: 32px;
  right: 24px;
  bottom: 36px;
  position: absolute;
  background-image: url("img/home/link_arrow_2.svg");
  background-repeat: no-repeat;
  transition: transform 0.5s ease;
}
#home .overlay13-box:hover::after {transform: translateX(15px); }
#home .overlay13-box-inner{position: relative;width: 100%;}
#home .overlay13-box-inner-image{opacity: 0;}
#home .overlay13-box-inner-image:hover{opacity: 1;}

#home .overlay14-box {
  left: 537.6px;
  top: 3353.3px;
  width: 139px;
}
#home .overlay14-box::after {
	content: "";
	width: 32px;
	height: 32px;
  right: 93px;
  bottom: 3px;
	position: absolute;
	background-image: url("img/home/link_arrow_2.svg");
	background-repeat: no-repeat;
	transition: transform 0.5s ease;
  }
#home .overlay14-box:hover::after {transform: translateX(80px); }
#home .overlay14-box-inner{position: relative;width: 100%;}
#home .overlay14-box-inner-image{opacity: 0;}
#home .overlay14-box-inner-image:hover{opacity: 1;}
 
#home .overlay15-box {
  left: 1013.6px;
  top: 3151.8px;
  width: 138.4px;
}
#home .overlay15-box::after {
  content: "";
  width: 32px;
  height: 32px;
  right: 93px;
  bottom: 3px;
  position: absolute;
  background-image: url("img/home/link_arrow_2.svg");
  background-repeat: no-repeat;
  transition: transform 0.5s ease;
}
#home .overlay15-box:hover::after {transform: translateX(80px); }
#home .overlay15-box-inner{position: relative;width: 100%;}
#home .overlay15-box-inner-image{opacity: 0;}
#home .overlay15-box-inner-image:hover{opacity: 1;}

#home .overlay16-box {
  left: 1014px;
  top: 3555px;
  width: 138px;
}

#home .overlay16-box::after {
	content: "";
	width: 32px;
	height: 32px;
	right: 93px;
	bottom: 3px;
	position: absolute;
	background-image: url("img/home/link_arrow_2.svg");
	background-repeat: no-repeat;
	transition: transform 0.5s ease;
}

#home .overlay16-box:hover::after {transform: translateX(80px); }
#home .overlay16-box-inner{position: relative;width: 100%;}
#home .overlay16-box-inner-image{opacity: 0;}
#home .overlay16-box-inner-image:hover{opacity: 1;}


#data .contents__body .btn_area {
  padding: 65px 0 0 0;
}

@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #data .contents__body .btn_area {
    margin-top: 60px;
    padding: 0 15px;
  }
}
#data .contents__body .btn_area .btn_1 a {
  padding-left: 0px;
  text-align: center;
}
@media only screen and (max-width:768px), print and (min-width: 2cm) {
  #data .contents__body .btn_area .btn_1 a {
    padding-left: 0;
  }
}