@charset "UTF-8";
.main {
  /* -----------------------------------------------------
  variables
  ----------------------------------------------------- */
}
.main html, .main body, .main div, .main span, .main applet, .main object, .main iframe,
.main h1, .main h2, .main h3, .main h4, .main h5, .main h6, .main p, .main blockquote, .main pre,
.main a, .main abbr, .main acronym, .main address, .main big, .main cite, .main code,
.main del, .main dfn, .main em, .main img, .main ins, .main kbd, .main q, .main s, .main samp,
.main small, .main strike, .main strong, .main sub, .main sup, .main tt, .main var,
.main b, .main u, .main i, .main center,
.main dl, .main dt, .main dd, .main ol, .main ul, .main li,
.main fieldset, .main form, .main label, .main legend,
.main table, .main caption, .main tbody, .main tfoot, .main thead, .main tr, .main th, .main td,
.main article, .main aside, .main canvas, .main details, .main embed,
.main figure, .main figcaption, .main footer, .main header, .main hgroup,
.main menu, .main nav, .main output, .main ruby, .main section, .main summary,
.main time, .main mark, .main audio, .main video, .main *::before, .main *::after {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  word-break: break-word;
  box-sizing: border-box;
  vertical-align: baseline;
  background: transparent;
}
.main article, .main aside, .main details, .main figcaption, .main figure,
.main footer, .main header, .main hgroup, .main menu, .main nav, .main section, .main main {
  display: block;
}
.main li {
  list-style-type: none;
}
.main blockquote, .main q {
  quotes: none;
}
.main blockquote::before, .main blockquote::after, .main q::before, .main q::after {
  content: "";
  content: none;
}
.main a {
  text-decoration: none;
  color: inherit;
}
.main img, .main picture {
  vertical-align: middle;
  max-width: 100%;
}
.main table {
  border-collapse: collapse;
  border-spacing: 0;
}
.main input, .main select {
  vertical-align: middle;
}
.main br {
  line-height: 0;
}
.main {
  /* safariでのデフォルトスタイルをリセット */
}
.main input[type=submit],
.main input[type=button] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
       appearance: button;
  border: none;
  box-sizing: border-box;
}
.main input[type=submit]::-webkit-search-decoration,
.main input[type=button]::-webkit-search-decoration {
  display: none;
}
.main input[type=submit]::focus,
.main input[type=button]::focus {
  outline-offset: -2px;
}
.main h1, .main h2, .main h3, .main h4, .main h5, .main h6 {
  font-weight: normal;
}
.main {
  /* -----------------------------------------------------
  	basic
  ----------------------------------------------------- */
}
.main html {
  font-size: 62.5%;
}
.main {
  /* -----------------------------------------------------
  	br
  ----------------------------------------------------- */
}
.main br.pc {
  display: block;
}
@media screen and (max-width: 768px) {
  .main br.pc {
    display: none;
  }
}
.main br.sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .main br.sp {
    display: block;
  }
}
.main {
  /* パソコンで見たときは"pc"のclassがついた画像が表示される */
}
.main .pc {
  display: block !important;
}
.main .sp {
  display: none !important;
}
.main {
  /* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
}
@media only screen and (max-width: 768px) {
  .main .pc {
    display: none !important;
  }
  .main .sp {
    display: block !important;
  }
}
.main p {
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  .main p {
    font-size: 3.125vw;
  }
}
.main a {
  transition: all 0.3s;
}
.main a:hover {
  opacity: 0.8;
  transition: all 0.3s;
}
.main {
  max-width: 1200px;
  margin: 30px auto 0;
}
@media screen and (max-width: 768px) {
  .main {
    margin: 1.3020833333vw auto 0;
  }
}
.main h1 {
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .main h1 {
    margin-bottom: 3.90625vw;
  }
}
@media screen and (max-width: 1200px) {
  .main .tab {
    padding: 0 30px;
  }
}
@media screen and (max-width: 768px) {
  .main .tab {
    padding: 0 3.2552083333vw;
  }
}
.main .tab-list {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}
@media screen and (max-width: 768px) {
  .main .tab-list {
    flex-flow: wrap;
    gap: 5.2083333333vw 1.953125vw;
  }
}
.main .tab-list li {
  display: table;
  width: 155px;
  height: 93px;
  border-radius: 10px;
  border: 1px solid #628c02;
  text-align: center;
  cursor: pointer;
  font-size: 16px;
  line-height: 1.6;
}
@media screen and (max-width: 1200px) {
  .main .tab-list li {
    font-size: 1.5625vw;
    height: 9.1145833333vw;
  }
}
@media screen and (max-width: 768px) {
  .main .tab-list li {
    width: calc(33.3333333333% - 1.953125vw);
    height: 14.3229166667vw;
    font-size: 2.8645833333vw;
  }
}
.main .tab-list li a {
  display: table-cell;
  vertical-align: middle;
}
.main .tab-contents {
  background: #f3f9e7;
  border: 3px solid #93bc46;
  border-radius: 10px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents {
    border: 0.5208333333vw solid #93bc46;
    border-radius: 1.3020833333vw;
  }
}
.main .is-btn-active {
  background-color: #628c02;
  font-weight: bold;
  color: #fff;
  position: relative;
}
.main .is-btn-active:before {
  display: block;
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  width: 0;
  height: 0;
}
.main .top_list {
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .main .top_list {
    margin-bottom: 5.2083333333vw;
  }
}
.main .top_list .is-btn-active:before {
  bottom: -15px;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-top: 15px solid #628c02;
}
@media screen and (max-width: 768px) {
  .main .top_list .is-btn-active:before {
    bottom: -2.4739583333vw;
    border-left: 2.6041666667vw solid transparent;
    border-right: 2.6041666667vw solid transparent;
    border-top: 2.6041666667vw solid #628c02;
  }
}
.main .bottom_list {
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .main .bottom_list {
    margin-top: 5.2083333333vw;
  }
}
.main .bottom_list .is-btn-active:before {
  top: -15px;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-bottom: 15px solid #628c02;
}
@media screen and (max-width: 768px) {
  .main .bottom_list .is-btn-active:before {
    top: -3.90625vw;
    border-left: 3.90625vw solid transparent;
    border-right: 3.90625vw solid transparent;
    border-bottom: 3.90625vw solid #628c02;
  }
}
.main .tab-contents {
  overflow: hidden;
  background: #f3f9e7;
}
.main .tab-contents .menu {
  background: #93bc46;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 13px 30px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .menu {
    padding: 2.6041666667vw 2.6041666667vw 2.6041666667vw 4.5572916667vw;
  }
}
.main .tab-contents .menu p {
  color: #fff;
  font-weight: bold;
  margin-right: 10px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .menu p {
    margin-right: 0;
    width: 10.4166666667vw;
    font-size: 3.3854166667vw;
  }
}
.main .tab-contents .menu .link {
  display: flex;
  gap: 10px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .menu .link {
    flex-flow: column;
    width: 100%;
  }
}
.main .tab-contents .menu .link a {
  background: #fff;
  font-size: 12.5px;
  line-height: 1.2;
  padding: 10px 32px 9px 10px;
  border-radius: 8px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .menu .link a {
    font-size: 3.125vw;
  }
}
.main .tab-contents .menu .link a:after {
  display: block;
  content: "";
  position: absolute;
  right: 15px;
  top: 0;
  bottom: 0;
  margin: auto;
  color: #f79270;
  width: 10px;
  height: 10px;
  border: 2px solid #f79270;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  transform: translateY(-25%) rotate(135deg);
}
@media screen and (max-width: 768px) {
  .main .tab-contents .menu .link a:after {
    right: 3.2552083333vw;
    width: 2.6041666667vw;
    height: 2.6041666667vw;
    border: 0.5208333333vw solid #f79270;
    border-left: 0;
    border-bottom: 0;
  }
}
.main .tab-contents .inner {
  padding: 50px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner {
    padding: 5.2083333333vw 3.2552083333vw 9.1145833333vw;
  }
}
.main .tab-contents .inner .mb_30 {
  margin-bottom: 30px !important;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .mb_30 {
    margin-bottom: 3.90625vw !important;
  }
}
.main .tab-contents .inner .mb_80 {
  margin-bottom: 80px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .mb_80 {
    margin-bottom: 7.8125vw;
  }
}
.main .tab-contents .inner p {
  line-height: 1.8;
}
.main .tab-contents .inner h2 {
  font-size: 36px;
  height: 120px;
  line-height: 130px;
  font-weight: bold;
  color: #fff;
  background: #93bc46;
  padding-left: 160px;
  border-radius: 20px;
  position: relative;
  overflow: hidden;
  margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner h2 {
    height: 13.8020833333vw;
    line-height: 15.1041666667vw;
    font-size: 4.4270833333vw;
    padding-left: 18.2291666667vw;
    border-radius: 2.6041666667vw;
    margin-bottom: 7.8125vw;
  }
}
.main .tab-contents .inner h2:before, .main .tab-contents .inner h2:after {
  display: block;
  content: "";
  position: absolute;
}
.main .tab-contents .inner h2:before {
  left: -30px;
  top: -20px;
  background: #628c02;
  border-radius: 50%;
  width: 160px;
  height: 160px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner h2:before {
    width: 18.2291666667vw;
    height: 20.8333333333vw;
    top: -3.90625vw;
    left: -2.6041666667vw;
  }
}
.main .tab-contents .inner h2:after {
  left: 20px;
  top: 20px;
  width: 81px;
  height: 81px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner h2:after {
    left: 2vw;
    top: 1.4vw;
    width: 11vw;
    height: 11vw;
    background-size: 11vw !important;
  }
}
.main .tab-contents .inner h2.ttl_01:after {
  background: url(/special/bousai/assets/img/ttl_01.png) no-repeat;
}
.main .tab-contents .inner h2.ttl_02:after {
  background: url(/special/bousai/assets/img/ttl_02.png) no-repeat;
}
.main .tab-contents .inner h2.ttl_03:after {
  background: url(/special/bousai/assets/img/ttl_03.png) no-repeat;
}
.main .tab-contents .inner h2.ttl_04:after {
  background: url(/special/bousai/assets/img/ttl_04.png) no-repeat;
}
.main .tab-contents .inner h2.ttl_05:after {
  background: url(/special/bousai/assets/img/ttl_05.png) no-repeat;
}
.main .tab-contents .inner h2.ttl_06:after {
  background: url(/special/bousai/assets/img/ttl_06.png) no-repeat;
}
.main .tab-contents .inner h2.ttl_07:after {
  background: url(/special/bousai/assets/img/ttl_07.png) no-repeat;
}
.main .tab-contents .inner.container {
  padding-block: 55px 69px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner.container {
    padding-block: 6.5104166667vw 11.71875vw;
  }
}
.main .tab-contents .inner.container source {
  display: block;
  width: 76.8229166667vw;
}
.main .tab-contents .inner.container .text {
  max-width: 837px;
  margin: 40px auto 11px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner.container .text {
    margin: 6.5104166667vw auto 0 auto;
  }
}
.main .tab-contents .inner.container .text p {
  line-height: 2;
  text-align: justify;
}
.main .tab-contents .inner .area_01 {
  margin-bottom: 70px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .area_01 {
    margin-bottom: 9.1145833333vw;
  }
}
.main .tab-contents .inner .area_02 {
  margin-bottom: 70px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .area_02 {
    margin-bottom: 9.1145833333vw;
  }
}
.main .tab-contents .inner .area_02 > p {
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .area_02 > p {
    margin-bottom: 3.90625vw;
  }
}
.main .tab-contents .inner .area_02 .small {
  font-size: 14px;
  margin-top: 15px;
  display: block;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .area_02 .small {
    font-size: 2.8645833333vw;
    margin-top: 1.953125vw;
    line-height: 1.6;
  }
}
.main .tab-contents .inner .article {
  display: flex;
  justify-content: space-between;
  gap: 40px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .article {
    flex-flow: column;
    gap: 7.8125vw;
  }
}
.main .tab-contents .inner .article .block:nth-of-type(1) li {
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .article .block:nth-of-type(1) li {
    margin-bottom: 3.90625vw;
  }
}
.main .tab-contents .inner .article .block:nth-of-type(1) li a {
  display: inline-flex;
  align-items: center;
  gap: 20px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .article .block:nth-of-type(1) li a {
    gap: 2.6041666667vw;
  }
}
.main .tab-contents .inner .article .block:nth-of-type(1) li a p {
  font-size: 18px;
  display: block;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .article .block:nth-of-type(1) li a p {
    font-size: 3.125vw;
  }
}
.main .tab-contents .inner .article .block:nth-of-type(1) li a p span {
  color: #628c02;
}
.main .tab-contents .inner .article .block:nth-of-type(1) li a img {
  width: 125px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .article .block:nth-of-type(1) li a img {
    width: 18.2291666667vw;
  }
}
.main .tab-contents .inner .article .block:nth-of-type(2) .archive {
  border: 2px solid #93bc46;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
  width: 205px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .article .block:nth-of-type(2) .archive {
    width: 100%;
    border: 0.5208333333vw solid #93bc46;
    border-radius: 1.0416666667vw;
  }
}
.main .tab-contents .inner .article .block:nth-of-type(2) .archive p {
  background: #628c02;
  color: #fff;
  padding: 5px 15px;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .article .block:nth-of-type(2) .archive p {
    font-size: 4.1666666667vw;
    padding: 1.3020833333vw 2.6041666667vw;
  }
}
.main .tab-contents .inner .article .block:nth-of-type(2) .archive ul {
  padding: 25px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .article .block:nth-of-type(2) .archive ul {
    padding: 5.2083333333vw;
  }
}
.main .tab-contents .inner .article .block:nth-of-type(2) .archive ul li {
  text-align: center;
  border-bottom: 2px dotted #a5a5a5;
  margin-bottom: 20px;
  padding-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .article .block:nth-of-type(2) .archive ul li {
    text-align: left;
    border-bottom: 0.5208333333vw dotted #a5a5a5;
    margin-bottom: 5.2083333333vw;
    padding-bottom: 2.6041666667vw;
  }
}
.main .tab-contents .inner .article .block:nth-of-type(2) .archive ul li:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
.main .tab-contents .inner .article .block:nth-of-type(2) .archive ul li a {
  font-size: 22px;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .article .block:nth-of-type(2) .archive ul li a {
    margin-left: 9.1145833333vw;
    font-size: 3.90625vw;
  }
}
.main .tab-contents .inner .article .block:nth-of-type(2) .archive ul li a:before {
  display: block;
  content: "";
  position: absolute;
  left: -50px;
  top: 3px;
  background: url(/special/bousai/assets/img/tab02_img02.png) no-repeat;
  width: 28px;
  height: 28px;
  background-size: 28px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .article .block:nth-of-type(2) .archive ul li a:before {
    width: 5.2083333333vw;
    height: 5.2083333333vw;
    top: 0;
    left: -9.1145833333vw;
    background-size: 5.2083333333vw;
  }
}
.main .tab-contents .inner .pagination {
  margin-top: 20px;
  text-align: center;
}
.main .tab-contents .inner .pagination a {
  display: inline-block;
  padding: 7px 10px;
  margin-right: 5px;
  color: #333;
  text-decoration: none;
}
.main .tab-contents .inner .page-number {
  background: #fff;
  font-size: 22px;
  border-radius: 4px;
}
.main .tab-contents .inner .next, .main .tab-contents .inner .prev {
  font-size: 16px;
  color: #628c02 !important;
}
.main .tab-contents .inner .page-number:hover {
  background-color: #628c02;
  color: #fff;
}
.main .tab-contents .inner .pagination .current {
  font-weight: bold;
  color: #fff;
  pointer-events: none;
  cursor: default;
  background: #628c02;
}
.main .tab-contents .inner .article_box img {
  margin: 0 auto;
  display: block;
}
.main .tab-contents .inner .article_box a {
  font-size: 16px;
  line-height: 1.8;
}
.main .tab-contents .inner .article_box a:after {
  display: none;
}
.main .tab-contents .inner .article_box table a {
  font-size: 16px;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .article_box table a {
    font-size: 3.125vw;
  }
}
.main .tab-contents .inner #tab03_04 .flex {
  margin-bottom: 40px;
  padding-bottom: 40px;
  border-bottom: 1px dashed #adadab;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner #tab03_04 .flex {
    margin-bottom: 5.2083333333vw;
    padding-bottom: 5.2083333333vw;
  }
}
.main .tab-contents .inner #tab03_04 .flex:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.main .tab-contents .inner h3 {
  font-size: 24px;
  font-weight: bold;
  border-bottom: 2px solid #000;
  padding-bottom: 10px;
  margin-bottom: 35px;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner h3 {
    font-size: 4.1666666667vw;
    border-bottom: 0.5208333333vw solid #000;
    padding-bottom: 1.3020833333vw;
    margin-bottom: 4.5572916667vw;
    line-height: 1.4;
  }
}
.main .tab-contents .inner h4 {
  font-size: 20px;
  font-weight: bold;
  padding-left: 30px;
  margin-bottom: 30px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner h4 {
    font-size: 3.6458333333vw;
    padding-left: 5.2083333333vw;
    margin-bottom: 3.90625vw;
    line-height: 1.6;
  }
}
.main .tab-contents .inner h4:before {
  display: block;
  content: "";
  position: absolute;
  left: 0;
  top: -2px;
  width: 22px;
  height: 22px;
  background: #628c02;
  border-radius: 2px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner h4:before {
    top: 0.5208333333vw;
    width: 4.0364583333vw;
    height: 4.0364583333vw;
  }
}
.main .tab-contents .inner .flex {
  display: flex;
  gap: 25px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .flex {
    flex-flow: column;
    gap: 3.90625vw;
  }
}
.main .tab-contents .inner .flex .block {
  flex: 1;
}
.main .tab-contents .inner .flex .block:first-of-type p {
  line-height: 1.8;
}
.main .tab-contents .inner .flex .block:last-of-type {
  margin-top: 5px;
  flex: 0.8;
}
.main .tab-contents .inner .flex .block:last-of-type p {
  font-size: 14px;
  margin-top: 5px;
}
.main .tab-contents .inner .flex .block.block_modal:hover {
  cursor: pointer;
}
.main .tab-contents .inner .flex .block.block_modal:last-of-type {
  flex: 0.4;
}
.main .tab-contents .inner .dw_link {
  display: flex;
  flex-flow: wrap;
  gap: 15px;
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .dw_link {
    margin-bottom: 7.8125vw;
  }
}
.main .tab-contents .inner .dw_link a {
  min-width: 120px;
  font-size: 18px;
  margin-right: 110px;
  padding-left: 30px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .dw_link a {
    min-width: 0;
    margin-right: 0;
    padding-left: 5.2083333333vw;
    width: calc(50% - 15px);
    font-size: 3.2552083333vw;
  }
}
.main .tab-contents .inner .dw_link a:before {
  display: block;
  content: "";
  position: absolute;
  left: 4px;
  top: -3px;
  background: url(/special/bousai/assets/img/tab_icon.png) no-repeat;
  width: 20px;
  height: 20px;
  background-size: 20px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .dw_link a:before {
    width: 3.6458333333vw;
    height: 3.6458333333vw;
    background-size: 3.6458333333vw;
  }
}
.main .tab-contents .inner .dw_link a:after {
  display: none;
}
.main .tab-contents .inner .use {
  font-size: 18px;
  font-weight: bold;
  color: #628c02;
  border: 2px solid #628c02;
  display: inline-flex;
  padding: 0 20px;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  height: 35px;
  line-height: 1;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .use {
    font-size: 3.2552083333vw;
    border: 0.5208333333vw solid #628c02;
    line-height: 5.2083333333vw;
    margin-bottom: 2.6041666667vw;
    margin-top: 2.6041666667vw;
  }
}
.main .tab-contents .inner .use_list li {
  font-size: 17px;
  padding-left: 1.3em;
  text-indent: -1.3em;
  margin-bottom: 15px;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .use_list li {
    font-size: 3.125vw;
    margin-bottom: 1.3020833333vw;
  }
}
.main .tab-contents .inner .use_list li span {
  font-weight: bold;
  color: #628c02;
}
.main .tab-contents .inner .life_line {
  display: flex;
  gap: 20px;
}
.main .tab-contents .inner .life_line .life {
  display: flex;
  border: 2px solid #93bc46;
  border-radius: 20px;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .life_line .life {
    border-radius: 2.6041666667vw;
  }
}
.main .tab-contents .inner .life_line .life p {
  font-size: 22px;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .life_line .life p {
    font-size: 3.90625vw;
  }
}
.main .tab-contents .inner .life_line .life p:nth-of-type(1) {
  padding: 15px 30px 5px;
  color: #fff;
  background: #93bc46;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .life_line .life p:nth-of-type(1) {
    padding: 4.5572916667vw 3.90625vw 3.2552083333vw;
  }
}
.main .tab-contents .inner .life_line .life p:nth-of-type(2) {
  padding: 10px 20px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .life_line .life p:nth-of-type(2) {
    padding: 3.90625vw;
  }
}
.main .tab-contents .inner .life_line .life p:nth-of-type(2) span {
  font-size: 26px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .life_line .life p:nth-of-type(2) span {
    font-size: 4.6875vw;
  }
}
.main .tab-contents .inner .hinan_area {
  margin: 30px 0 70px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .hinan_area {
    margin: 3.90625vw 0 9.1145833333vw;
  }
}
.main .tab-contents .inner .hinan_area p {
  font-weight: bold;
  margin-bottom: 15px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .hinan_area p {
    margin-bottom: 2.6041666667vw;
  }
}
.main .tab-contents .inner .hinan_area p:nth-of-type(2) {
  margin-top: 60px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .hinan_area p:nth-of-type(2) {
    margin-top: 7.8125vw;
  }
}
.main .tab-contents .inner .hinan_area .hinan_link {
  display: flex;
  flex-flow: wrap;
  gap: 15px 30px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .hinan_area .hinan_link {
    gap: 15px 0;
  }
}
.main .tab-contents .inner .hinan_area .hinan_link li {
  font-size: 18px;
  width: calc(25% - 30px);
  position: relative;
  padding-left: 1em;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .hinan_area .hinan_link li {
    width: calc(50% - 15px);
    font-size: 3.125vw;
  }
}
.main .tab-contents .inner .hinan_area .hinan_link li:before {
  display: block;
  content: "・";
  position: absolute;
  left: -13px;
  top: -8px;
  font-size: 36px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .hinan_area .hinan_link li:before {
    left: -2.34375vw;
    top: -1.5625vw;
    font-size: 6.5104166667vw;
  }
}
.main .tab-contents .inner .hinan_area_02 {
  margin: 30px 0 0;
}
.main .tab-contents .inner .flex_tab05 {
  display: flex;
  justify-content: space-between;
  gap: 15px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .flex_tab05 {
    flex-flow: wrap;
    gap: 10px 0;
  }
}
.main .tab-contents .inner .flex_tab05 li {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .flex_tab05 li {
    width: calc(50% - 5px);
  }
}
.main .tab-contents .inner .flex_tab05 li span {
  display: block;
  margin-top: 10px;
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .flex_tab05 li span {
    font-size: 2.8645833333vw;
    margin-top: 1.953125vw;
  }
}
.main .tab-contents .inner {
  /*モーダル本体の指定 + モーダル外側の背景の指定*/
}
.main .tab-contents .inner .modal-container {
  position: fixed;
  z-index: 100001;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0, 0, 0, 0.5);
  padding: 40px 20px;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
  box-sizing: border-box;
}
.main .tab-contents .inner {
  /*モーダル本体の擬似要素の指定*/
}
.main .tab-contents .inner .modal-container:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.main .tab-contents .inner {
  /*モーダル本体に「active」クラス付与した時のスタイル*/
}
.main .tab-contents .inner .modal-container.active {
  opacity: 1;
  visibility: visible;
}
.main .tab-contents .inner {
  /*モーダル枠の指定*/
}
.main .tab-contents .inner .modal-body {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  max-width: 600px;
  width: 90%;
}
.main .tab-contents .inner {
  /*モーダルを閉じるボタンの指定*/
}
.main .tab-contents .inner .modal-close {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: -25px;
  right: -25px;
  width: 50px;
  height: 50px;
  font-size: 40px;
  color: #fff;
  cursor: pointer;
  background: #93bc46;
  border-radius: 50%;
}
.main .tab-contents .inner {
  /*モーダル内のコンテンツの指定*/
}
.main .tab-contents .inner .modal-content {
  background: #fff;
  text-align: left;
  padding: 30px;
  border-radius: 20px;
}
.main .tab-contents .inner .step_flex {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 80px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .step_flex {
    flex-flow: wrap;
    gap: 10px 5px;
    margin-bottom: 7.8125vw;
  }
}
.main .tab-contents .inner .step_flex li {
  background: #fff;
  border-radius: 0 0 8px 8px;
  width: 25%;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .step_flex li {
    width: calc(50% - 5px);
  }
}
.main .tab-contents .inner .step_flex li > p {
  background: #93bc46;
  text-align: center;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  border-radius: 8px 8px 0 0;
  height: 50px;
  line-height: 55px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .step_flex li > p {
    font-size: 3.90625vw;
    height: 8.4635416667vw;
    line-height: 8.4635416667vw;
    border-radius: 1.0416666667vw 1.0416666667vw 0 0;
  }
}
.main .tab-contents .inner .step_flex li > p span {
  font-size: 28px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .step_flex li > p span {
    font-size: 4.4270833333vw;
  }
}
.main .tab-contents .inner .step_flex li .step_con {
  padding: 15px;
}
.main .tab-contents .inner .step_flex li .step_con p:nth-of-type(1) {
  font-weight: bold;
  color: #628c02;
  text-align: center;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .step_flex li .step_con p:nth-of-type(1) {
    margin-bottom: 1.3020833333vw;
  }
}
.main .tab-contents .inner .step_flex._02 {
  gap: 40px;
}
.main .tab-contents .inner .step_flex._02 li {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .step_flex._02 li {
    width: 100%;
  }
}
.main .tab-contents .inner .step_flex._02 .step_con p:nth-of-type(1) {
  font-weight: normal;
  color: #000;
  text-align: left;
}
.main .tab-contents .inner .handbook {
  display: flex;
  gap: 50px;
  background: #accf51;
  border-radius: 30px;
  padding: 30px 100px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .handbook {
    flex-flow: column;
    padding: 5.2083333333vw 3.2552083333vw;
    gap: 3.90625vw;
    border-radius: 3.90625vw;
  }
}
.main .tab-contents .inner .handbook__container {
  display: grid;
  gap: 50px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .handbook__container {
    gap: 3.90625vw;
  }
}
.main .tab-contents .inner .handbook .book {
  text-align: center;
  flex: 1;
}
.main .tab-contents .inner .handbook .book .dw_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 345px;
  height: 65px;
  background: #fff;
  font-size: 22px;
  font-weight: bold;
  color: #628c02;
  border-radius: 32px;
  box-shadow: 4px 4px 0 0 rgba(33, 33, 33, 0.3);
  margin: 10px auto 30px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .handbook .book .dw_btn {
    width: 63.1510416667vw;
    height: 11.71875vw;
    font-size: 3.90625vw;
    margin: 2.6041666667vw auto 5.2083333333vw;
  }
}
.main .tab-contents .inner .handbook .book .dw_btn:after {
  display: block;
  content: "";
  position: absolute;
  right: 25px;
  display: inline-block;
  color: #628c02;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 7px 12px;
  border-left-color: currentColor;
  border-right: 0;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .handbook .book .dw_btn:after {
    right: 5.2083333333vw;
    border-width: 1.5625vw 2.34375vw;
  }
}
.main .tab-contents .inner .handbook .book .link_txt {
  display: grid;
  gap: 10px;
}
.main .tab-contents .inner .handbook .book .link_txt a {
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  display: flex;
  justify-content: center;
  margin-bottom: 15px;
  position: relative;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .handbook .book .link_txt a {
    font-size: 3.3854166667vw;
    margin-bottom: 1.953125vw;
  }
}
.main .tab-contents .inner .handbook .book .link_txt a:after {
  display: block;
  content: "";
  display: inline-block;
  color: #628c02;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 7px 12px;
  border-left-color: currentColor;
  border-right: 0;
  margin-left: 10px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .handbook .book .link_txt a:after {
    margin-left: 2.6041666667vw;
    border-width: 1.5625vw 2.34375vw;
  }
}
.main .tab-contents .inner .handbook .book .link_txt__box {
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 600;
  color: #628C02;
  border-radius: 4px;
  padding: 4px 8px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .handbook .book .link_txt__box {
    margin-top: 2.6041666667vw;
    padding: 1.0416666667vw 2.0833333333vw;
  }
}
.main .tab-contents .inner .handbook .book .link_txt__box img {
  width: 23px;
  height: 23px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .handbook .book .link_txt__box img {
    width: 5.9895833333vw;
    height: 5.9895833333vw;
  }
}
.main .tab-contents .inner .handbook .book .link_txt__box p {
  display: inline;
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .handbook .book .link_txt__box p {
    font-size: 3.125vw;
    text-align: left;
    line-height: 1.4;
  }
}
.main .tab-contents .inner .handbook .book .link_txt--each-park {
  border-top: 1px solid #fff;
  padding-top: 24px;
  margin-top: 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 15px 20px;
}
.main .tab-contents .inner .handbook .book .link_txt--each-park a {
  flex: 0 0 calc((100% - 80px) / 5);
  min-width: -moz-max-content;
  min-width: max-content;
  justify-content: left;
}
@media (max-width: 1400px) {
  .main .tab-contents .inner .handbook .book .link_txt--each-park a {
    flex: 0 0 calc((100% - 60px) / 4);
  }
}
@media (max-width: 1100px) {
  .main .tab-contents .inner .handbook .book .link_txt--each-park a {
    flex: 0 0 calc((100% - 40px) / 3);
  }
}
@media (max-width: 900px) {
  .main .tab-contents .inner .handbook .book .link_txt--each-park a {
    flex: 0 0 calc((100% - 20px) / 2);
    text-align: left;
  }
}
@media screen and (max-width: 1200px) {
  .main .tab-contents .inner .handbook .book .link_txt--each-park {
    gap: 15px 15px;
  }
  .main .tab-contents .inner .handbook .book .link_txt--each-park a {
    flex: 0 0 calc((100% - 45px) / 3);
  }
}
@media screen and (max-width: 1200px) and (max-width: 900px) {
  .main .tab-contents .inner .handbook .book .link_txt--each-park a {
    flex: 0 0 calc((100% - 15px) / 2);
  }
}
@media screen and (max-width: 768px) {
  .main .tab-contents .inner .handbook .book .link_txt--each-park {
    padding-top: 3.90625vw;
    margin: 2.6041666667vw 5.2083333333vw;
    gap: 1.953125vw 2.6041666667vw;
  }
  .main .tab-contents .inner .handbook .book .link_txt--each-park a {
    flex: 0 0 calc((100% - 2.6041666667vw) / 2);
  }
}/*# sourceMappingURL=style.css.map */