@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600;700&family=Noto+Serif+JP:wght@300;400;500;600;700&display=swap");
/*変数設定用*/
@font-face {
  font-family: 'icomoon';
  src: url("/assets/fonts/icomoon.eot?49lrif");
  src: url("/assets/fonts/icomoon.eot?49lrif#iefix") format("embedded-opentype"), url("/assets/fonts/icomoon.ttf?49lrif") format("truetype"), url("/assets/fonts/icomoon.woff?49lrif") format("woff"), url("/assets/fonts/icomoon.svg?49lrif#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block; }
[class^="icon-"], [class*=" icon-"] {
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: relative; }

[class^="icon-"]:after,
[class*=" icon-"]:after {
  position: absolute;
  top: 0; }

.icon--train:after {
  content: "\e900";
  color: #fff;
  font-size: 26px; }

@media screen and (max-width: 767px) {
  .icon--position span {
    padding-left: 19px !important; } }

.icon--position:after {
  content: "\e901";
  color: #fff;
  font-size: 26px; }

.icon--search:after {
  content: "\e902";
  color: #9ad667;
  font-size: 26px; }

.icon--heart:after {
  content: "\e903";
  color: #9ad667; }

.icon--tel:after {
  content: "\e904";
  color: #fff; }

html {
  font-size: 62.5%; }

body {
  font-size: 62.5%;
  position: relative;
  color: #222;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 500;
  letter-spacing: 0.05em; }

.dur {
  transition-property: all;
  transition-duration: 0.5s;
  transition-timing-function: ease;
  transition-delay: 0s; }

.scroll-fade {
  opacity: 0;
  transform: translateY(50px);
  transition: all 1.3s; }

.fade_on {
  opacity: 1;
  transform: translateY(0);
  transform: translateX(0); }

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

@media screen and (min-width: 768px) {
  .vpc {
    display: block; } }
@media screen and (max-width: 767px) {
  .vpc {
    display: none; } }

@media screen and (min-width: 768px) {
  .vsp {
    display: none; } }
@media screen and (max-width: 767px) {
  .vsp {
    display: block; } }

a {
  text-decoration: none;
  display: inline-block;
  color: #222; }

a,
p {
  color: #222;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 500; }

p {
  line-height: 1.7;
  font-size: 1.6rem; }
  @media screen and (max-width: 767px) {
    p {
      font-size: 1.4rem; } }

span,
i {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 500;
  display: inline-block; }

@media screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none; } }

[v-cloak] {
  display: none; }

a {
  cursor: pointer; }
  @media screen and (min-width: 768px) {
    a {
      transition: 0.7s; } }
  @media screen and (min-width: 768px) {
    a:hover {
      opacity: 0.7; } }

/**/
.base-w {
  max-width: 1230px;
  margin-left: auto;
  margin-right: auto;
  padding: 0 15px;
  width: 100%; }

/**/
#float-outer {
  padding-top: 100px; }
  @media screen and (max-width: 767px) {
    #float-outer {
      padding-top: 60px; } }
  #float-outer.bottom {
    margin-bottom: 90px; }

/**/
.sub-ttl {
  font-size: 3.0rem;
  margin: 0 0 15px;
  color: #070707;
  position: relative; }
  @media screen and (max-width: 767px) {
    .sub-ttl {
      font-size: 2.6rem; } }
  .sub-ttl.min {
    font-size: 2.4rem; }
    @media screen and (max-width: 767px) {
      .sub-ttl.min {
        font-size: 1.6rem; } }
  .sub-ttl span {
    padding-left: 50px; }
    @media screen and (max-width: 767px) {
      .sub-ttl span {
        padding-left: 40px; } }
  .sub-ttl i {
    font-size: 2.0rem; }
  .sub-ttl::after {
    font-size: 40px;
    top: -4px;
    left: 0; }
    @media screen and (max-width: 767px) {
      .sub-ttl::after {
        font-size: 30px;
        top: -2px; } }
  .sub-ttl .cat-list {
    margin-top: 22px;
    display: block; }
    @media screen and (max-width: 767px) {
      .sub-ttl .cat-list {
        display: flex;
        flex-wrap: wrap;
        gap: 0 3%;
        align-items: flex-start; } }
    .sub-ttl .cat-list i {
      width: 100%;
      line-height: 1;
      display: block;
      font-weight: 400;
      text-align: center;
      padding: 8px 0;
      border: 1px solid;
      border-radius: 5px;
      cursor: pointer;
      transition: .3s; }
      @media screen and (max-width: 767px) {
        .sub-ttl .cat-list i {
          width: 48.5%;
          font-size: 1.6rem; } }
      .sub-ttl .cat-list i.on {
        background-color: #B7E57A; }
      @media screen and (min-width: 768px) {
        .sub-ttl .cat-list i:hover {
          background-color: #B7E57A; } }
      @media screen and (min-width: 768px) {
        .sub-ttl .cat-list i + i {
          margin-top: 10px; } }

/**/
.l-btn {
  display: inline-block;
  text-align: center;
  width: 100%;
  background: #B8E57A;
  border: 3px solid #9AD667;
  border-radius: 100px;
  padding: 18px;
  transition: .3s;
  cursor: pointer; }
  @media screen and (max-width: 767px) {
    .l-btn {
      padding: 10px 5px 10px 10px; } }
  .l-btn span {
    font-size: 1.8rem;
    padding-left: 20px; }
    @media screen and (max-width: 767px) {
      .l-btn span {
        font-size: 1.4rem;
        text-align: left;
        padding-left: 25px;
        line-height: 1.2; } }
  .l-btn::after {
    color: #fff;
    left: 35px;
    top: 50%;
    transform: translateY(-50%); }
    @media screen and (max-width: 767px) {
      .l-btn::after {
        left: 10px; } }
  .l-btn.white {
    background: #fff; }
  .l-btn.red {
    background: #FFA584;
    border-color: #F5865D; }
    .l-btn.red span {
      padding-left: 0; }
  .l-btn.none span {
    padding-left: 0; }
  @media screen and (min-width: 768px) {
    .l-btn.favorite-btn:hover {
      background: #9AD667;
      opacity: 1 !important; } }
  @media screen and (min-width: 768px) {
    .l-btn.favorite-btn:hover::after {
      color: #fff !important; } }
  @media screen and (min-width: 768px) {
    .l-btn:hover {
      opacity: 0.7; } }
  .l-btn.disabled {
    pointer-events: none;
    background: #F7F7F7;
    border-color: #E0E0E0;
    color: #C4C4C4; }

.n-btn {
  display: inline-block;
  text-align: center;
  width: 100%;
  background: #fff;
  border: 2px solid #7FC940;
  border-radius: 100px;
  padding: 11px;
  max-width: 218px;
  position: relative; }
  .n-btn span {
    font-size: 1.4rem;
    padding-right: 20px;
    top: -1px;
    position: relative; }
  .n-btn.return span {
    padding: 0 0 0 20px; }
  .n-btn.return .arrow {
    right: auto;
    left: 35px; }
    .n-btn.return .arrow::after {
      right: 4.5px;
      transform: rotate(230deg); }
  @media screen and (min-width: 768px) {
    .n-btn:hover {
      background: #7FC940;
      opacity: 1 !important; } }
  @media screen and (min-width: 768px) {
    .n-btn:hover .arrow::before {
      background: #fff; } }
  @media screen and (min-width: 768px) {
    .n-btn:hover .arrow::after {
      border-color: #7FC940; } }

.arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  right: 18px; }
  .arrow::before, .arrow::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    content: "";
    vertical-align: middle; }
  .arrow::before {
    width: 16px;
    height: 16px;
    border-radius: 16px;
    background: #B8E57A; }
  .arrow::after {
    right: 6px;
    width: 4px;
    height: 4px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }

/**/
.f-btn-outer {
  margin: 40px 0 0; }
  @media screen and (max-width: 767px) {
    .f-btn-outer {
      margin: 27px 0 0; } }
  .f-btn-outer ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 0 -2%; }
    .f-btn-outer ul li {
      width: 31.333%;
      margin: 0 0 0 2%; }
      @media only screen and (min-width: 767px) and (max-width: 1100px) {
        .f-btn-outer ul li {
          width: 48%;
          margin: 0 0 15px 2%; } }

/**/
.main-ttl {
  background: #F7F7F7;
  padding: 28px 0; }
  @media screen and (max-width: 767px) {
    .main-ttl {
      padding: 20px 0; } }
  @media screen and (min-width: 768px) {
    .main-ttl.rm {
      padding: 22.5px 0 18.5px; } }
  .main-ttl span {
    display: block;
    font-size: 3.0rem;
    color: #7FC940;
    font-weight: 600; }
    @media screen and (max-width: 767px) {
      .main-ttl span {
        font-size: 1.8rem; } }
    .main-ttl span.min {
      font-size: 2.4rem; }
      @media screen and (max-width: 767px) {
        .main-ttl span.min {
          font-size: 1.8rem; } }
    .main-ttl span.date {
      line-height: 0;
      margin-bottom: 10px; }
      .main-ttl span.date i {
        position: relative;
        color: #777;
        display: inline-block;
        font-size: 1.4rem;
        font-weight: 400;
        line-height: 1; }
    .main-ttl span strong {
      font-weight: inherit; }
    .main-ttl span em {
      font-weight: inherit; }
      .main-ttl span em::after {
        content: "、"; }
      .main-ttl span em:last-child::after {
        display: none; }
  .main-ttl .category {
    position: absolute;
    top: -1.5px;
    right: -77px; }
    @media screen and (max-width: 767px) {
      .main-ttl .category {
        top: -2.5px;
        right: -72px; } }
    .main-ttl .category a {
      display: block;
      width: 60px;
      line-height: 1;
      background-color: #FFA584;
      text-align: center;
      padding: 3px 0;
      border-radius: 5px;
      color: #222;
      font-size: 1.2rem;
      font-weight: 400; }
    .main-ttl .category.column a {
      background-color: #B7E57A; }

/**/
.c-outer .c-inner {
  max-width: 1200px;
  margin: 0 auto;
  position: relative; }
.c-outer + .c-outer {
  margin-top: 50px; }
  @media screen and (max-width: 767px) {
    .c-outer + .c-outer {
      margin-top: 35px; } }

/**/
#container > #inner {
  width: 100%; }

/**/
#contents {
  display: flex;
  flex-wrap: wrap;
  margin: 40px auto 0; }
  @media screen and (max-width: 767px) {
    #contents {
      margin: 30px auto 0; } }
  #contents #contentsInner {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto; }
  @media screen and (min-width: 768px) {
    #contents.layout02-right #contentsInner {
      width: 75%;
      padding-right: 3%; } }
  @media only screen and (min-width: 767px) and (max-width: 1100px) {
    #contents.layout02-right #contentsInner {
      width: 100%;
      padding-right: 0; } }
  @media screen and (min-width: 768px) {
    #contents.layout02-right #side-right {
      width: 25%; } }
  @media only screen and (min-width: 767px) and (max-width: 1100px) {
    #contents.layout02-right #side-right {
      width: 100%;
      margin-top: 65px; } }
  @media screen and (min-width: 768px) {
    #contents.layout02-left #contentsInner {
      width: 71.6%;
      padding-left: 17.4%; } }
  @media only screen and (min-width: 767px) and (max-width: 1100px) {
    #contents.layout02-left #contentsInner {
      width: 100%;
      padding-left: 0; } }
  @media screen and (min-width: 768px) {
    #contents.layout02-left #side-left {
      width: 28.4%; } }
  @media only screen and (min-width: 767px) and (max-width: 1100px) {
    #contents.layout02-left #side-left {
      width: 100%; } }

/**/
/**/
#pankusu {
  border-top: 1px solid #CECECE;
  border-bottom: 1px solid #CECECE;
  padding: 13.5px 0;
  background-color: #fff; }
  #pankusu ol {
    display: flex;
    flex-wrap: wrap; }
    #pankusu ol li {
      display: flex;
      /*
      margin-right: 2px;
      */ }
      #pankusu ol li a,
      #pankusu ol li span {
        font-size: 1.0rem;
        display: inline; }
      #pankusu ol li h1 {
        display: inline; }
      #pankusu ol li + li::before {
        content: "・"; }

/**/
header {
  position: relative;
  height: 100px;
  position: fixed;
  top: 0;
  width: 100%;
  background: #fff;
  z-index: 99; }
  @media screen and (max-width: 767px) {
    header {
      height: 60px; } }
  header::after {
    content: "";
    opacity: 0;
    display: block;
    height: 1px;
    width: 100%;
    position: absolute;
    top: 100px;
    left: 0;
    transition: .3s;
    background: #CECECE; }
    @media screen and (max-width: 767px) {
      header::after {
        top: 60px; } }
  header.tp::after {
    opacity: 1; }
  header .head-inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1200px;
    margin: 0 auto; }
    header .head-inner .head {
      display: flex;
      flex-wrap: wrap;
      padding: 25px 0; }
      @media screen and (min-width: 768px) {
        header .head-inner .head {
          align-items: center; } }
      @media screen and (max-width: 767px) {
        header .head-inner .head {
          flex-direction: column-reverse;
          padding: 10px 0 0 15px; } }
      header .head-inner .head .logo {
        width: 190px;
        margin-right: 38px; }
        @media screen and (max-width: 767px) {
          header .head-inner .head .logo {
            width: 127px;
            margin: 3px 0 0; } }
      header .head-inner .head .text {
        font-size: 1.0rem; }
        @media only screen and (min-width: 767px) and (max-width: 1100px) {
          header .head-inner .head .text {
            position: relative;
            top: -18px; } }
    header .head-inner .foot {
      display: flex;
      flex-wrap: wrap;
      align-items: center; }
      @media screen and (min-width: 768px) {
        header .head-inner .foot {
          /*
          position: absolute;
          top: 0;
          right: 0;
          */ } }
      @media screen and (max-width: 767px) {
        header .head-inner .foot {
          display: none; } }
      @media screen and (min-width: 768px) {
        header .head-inner .foot .link {
          line-height: 1; } }
      @media only screen and (min-width: 767px) and (max-width: 1100px) {
        header .head-inner .foot .link {
          position: relative;
          top: 16px; } }
      header .head-inner .foot .link a {
        font-size: 1.4rem; }
        header .head-inner .foot .link a::after {
          top: -4.5px;
          left: -38px;
          font-size: 25px; }
        header .head-inner .foot .link a.icon--text {
          margin-left: 33px; }
          header .head-inner .foot .link a.icon--text::after {
            content: "";
            position: absolute;
            background-repeat: no-repeat;
            background-size: 100% 100%;
            background-position: 0 0;
            background-image: url(./../img/common/icon_text.svg);
            width: 25px;
            height: 22px;
            left: -32px; }
      header .head-inner .foot .link + .link {
        margin-left: 33px; }
      header .head-inner .foot .h-tel {
        background: #F5865D;
        padding: 8px 30px 14px 60px;
        border-radius: 0 0 0 25px; }
        header .head-inner .foot .h-tel p,
        header .head-inner .foot .h-tel a {
          color: #fff;
          line-height: 1; }
        header .head-inner .foot .h-tel p {
          font-size: 1.4rem; }
          header .head-inner .foot .h-tel p i {
            display: inline-block;
            color: #F5865D;
            background: #fff;
            padding: 3.5px 5.5px;
            margin-right: 5px; }
        header .head-inner .foot .h-tel a {
          font-size: 3.4rem;
          font-weight: 700;
          margin: 3px 0 6px; }
        header .head-inner .foot .h-tel::after {
          font-size: 24px;
          top: 50%;
          left: 28px;
          transform: translateY(-50%); }

header.open + #head-float-navi {
  transform: translateX(0); }

#spNavi {
  position: absolute;
  width: 60px;
  height: 60px;
  top: 0;
  right: 0;
  text-align: center;
  cursor: pointer;
  background: #F5865D;
  z-index: 999; }
  #spNavi > div {
    width: 26px;
    height: 2px;
    background-color: #fff;
    left: 18px;
    position: relative; }
    #spNavi > div.menu1 {
      top: 11px; }
    #spNavi > div.menu2 {
      top: 19px; }
    #spNavi > div.menu3 {
      top: 27px; }
  #spNavi .txt {
    top: 31px;
    line-height: 1;
    position: relative; }
    #spNavi .txt span {
      font-size: 1.0rem;
      font-weight: 500;
      color: #fff;
      letter-spacing: -0.01em; }
    #spNavi .txt .t02 {
      display: none; }
  #spNavi.open > div.menu1 {
    transform: translateY(9px) rotate(-45deg); }
  #spNavi.open > div.menu2 {
    opacity: 0; }
  #spNavi.open > div.menu3 {
    transform: translateY(-11px) rotate(45deg); }
  #spNavi.open .txt .t01 {
    display: none; }
  #spNavi.open .txt .t02 {
    display: block; }

#spFavorite,
#spIns {
  width: 55px;
  height: 60px;
  position: absolute;
  right: 123px;
  text-align: center; }
  #spFavorite a,
  #spIns a {
    width: 100%;
    padding-top: 41px; }
    #spFavorite a::after,
    #spIns a::after {
      font-size: 22px;
      position: absolute;
      top: 11px;
      left: 50%;
      transform: translateX(-50%); }
    #spFavorite a span,
    #spIns a span {
      display: block;
      font-size: 1.0rem;
      font-weight: 500;
      letter-spacing: -0.01em; }

#spIns {
  right: 65px; }
  #spIns .icon--text::after {
    content: "";
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: 0 0;
    background-image: url(./../img/common/icon_text.svg);
    width: 25px;
    height: 22px; }

#head-float-navi {
  position: fixed;
  top: 60px;
  left: 0;
  width: 100%;
  height: calc( 100% - 60px);
  z-index: 10;
  transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1);
  transform: translateX(100%); }
  #head-float-navi #head-float-navi-inner {
    height: 100%;
    background: #F1FDE8; }
  #head-float-navi .pnav-contents-outer {
    overflow: scroll;
    padding: 26px 15px 75px;
    height: 100%;
    position: relative; }
  #head-float-navi .navi-tel a {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    background: #F5865D;
    padding: 15px;
    border-radius: 10px; }
    #head-float-navi .navi-tel a span {
      display: block; }
    #head-float-navi .navi-tel a .tel01 {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      width: 35%; }
      #head-float-navi .navi-tel a .tel01 .t01 {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        width: 39px;
        height: 37px;
        background: #fff;
        text-align: center;
        color: #F5865D;
        font-size: 1.4rem; }
      #head-float-navi .navi-tel a .tel01 .t02 {
        width: calc( 100% - 39px );
        font-size: 1.4rem;
        color: #fff;
        padding-left: 0.5em; }
    #head-float-navi .navi-tel a .tel02 {
      width: 65%;
      padding-left: 25px;
      position: relative; }
      #head-float-navi .navi-tel a .tel02 .t01 {
        font-size: 2.6rem;
        font-weight: 600;
        color: #fff; }
      #head-float-navi .navi-tel a .tel02 .t02 {
        font-size: 1.4rem;
        color: #fff; }
      #head-float-navi .navi-tel a .tel02 .icon--tel {
        position: absolute;
        top: 8px;
        left: 0; }
        #head-float-navi .navi-tel a .tel02 .icon--tel::after {
          font-size: 2.0rem; }
  #head-float-navi .navi-btn ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 0 -4.2%; }
    #head-float-navi .navi-btn ul li {
      width: 45.8%;
      margin: 0 0 0 4.2%; }
      #head-float-navi .navi-btn ul li .l-btn {
        padding: 10px;
        border-radius: 20px; }
        #head-float-navi .navi-btn ul li .l-btn::after {
          top: 50%;
          left: 25px;
          transform: translateY(-50%);
          font-size: 30px; }
        #head-float-navi .navi-btn ul li .l-btn span {
          padding: 0 0 0 30px !important;
          text-align: left;
          line-height: 1.23; }
  #head-float-navi .navi-link {
    border-bottom: 1px solid #CECECE;
    margin: 26px 0 0; }
    #head-float-navi .navi-link li {
      border-top: 1px solid #CECECE; }
      #head-float-navi .navi-link li a,
      #head-float-navi .navi-link li span {
        position: relative;
        display: block;
        padding: 12px 12px;
        font-size: 1.4rem; }
  #head-float-navi .nav-bnr {
    margin-top: 40px; }
  #head-float-navi .btn-outer {
    text-align: center;
    margin: 26px 0 0; }

/**/
footer {
  background: #D2F0AB;
  position: relative;
  margin: 150px 0 0; }
  @media screen and (max-width: 767px) {
    footer {
      margin: 80px 0 0;
      background: #B7E57A; } }
  footer .foot-outer {
    padding: 82px 0 45px; }
    @media screen and (min-width: 768px) {
      footer .foot-outer {
        display: flex;
        flex-wrap: wrap; } }
    @media screen and (max-width: 767px) {
      footer .foot-outer {
        width: 100%;
        padding: 50px 17px 0;
        display: block; } }
  footer .f-logo {
    width: 190px; }
    @media screen and (max-width: 767px) {
      footer .f-logo {
        margin: 0 auto;
        text-align: center; } }
    footer .f-logo .sub {
      line-height: 1;
      font-size: 1.0rem;
      margin-top: 15px; }
      @media screen and (max-width: 767px) {
        footer .f-logo .sub {
          margin-top: 20px; } }
  footer .foot-inner {
    width: calc( 100% - 190px );
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    padding-left: 50px; }
    @media screen and (max-width: 767px) {
      footer .foot-inner {
        width: 100%;
        padding: 50px 0 33px; } }
    footer .foot-inner .btn-outer {
      margin-left: 30px; }
      @media screen and (max-width: 767px) {
        footer .foot-inner .btn-outer {
          margin: 25px auto 0; } }
      footer .foot-inner .btn-outer .n-btn {
        width: 218px; }
    footer .foot-inner .ft-bnr {
      width: 277px;
      margin-left: 36px; }
      @media screen and (max-width: 767px) {
        footer .foot-inner .ft-bnr {
          display: none; } }
  @media screen and (max-width: 767px) {
    footer .ft-link-list {
      margin: 0 auto; } }
  footer .ft-link-list ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center; }
    @media screen and (max-width: 767px) {
      footer .ft-link-list ul {
        justify-content: center; } }
    footer .ft-link-list ul li a {
      font-size: 1.4rem;
      font-weight: 400; }
      @media screen and (max-width: 767px) {
        footer .ft-link-list ul li a {
          font-size: 1.2rem; } }
    footer .ft-link-list ul li + li {
      margin-left: 30px; }
  footer .copy {
    text-align: right;
    font-size: 1.3rem;
    line-height: 1;
    padding: 0 0 25px; }
    @media screen and (max-width: 767px) {
      footer .copy {
        text-align: center;
        font-size: 1.0rem;
        padding: 0 0 40px; } }

/**/
@media screen and (max-width: 767px) {
  #side-area {
    margin-top: 75px; } }
#side-area .m-ttl {
  color: #7FC940;
  text-align: center;
  font-size: 1.6rem;
  font-weight: 600;
  margin: 20px 0 -10px; }
#side-area .num {
  font-size: 1.2rem;
  font-weight: 400;
  text-align: right;
  margin: 7px 0 0; }
#side-area .bnr {
  margin: 0 auto 30px;
  text-align: center; }
#side-area .side-box {
  background: #F1FDE8;
  overflow: hidden;
  border-radius: 5px; }
  #side-area .side-box .s-ttl {
    font-size: 1.6rem;
    color: #fff;
    font-weight: 600;
    padding: 2.5px 20px;
    background: #9AD667; }
    @media screen and (max-width: 767px) {
      #side-area .side-box .s-ttl {
        padding: 2.5px 15px; } }
  #side-area .side-box .tab {
    padding: 17px 20px;
    margin: 0 -5px -7px 0;
    display: flex;
    flex-wrap: wrap; }
    @media screen and (max-width: 767px) {
      #side-area .side-box .tab {
        padding: 17px 15px; } }
    #side-area .side-box .tab li {
      margin: 0 5px 7px 0; }
      #side-area .side-box .tab li a {
        display: inline-block;
        line-height: 1;
        border: 1px solid #E0E0E0;
        border-radius: 5px;
        background: #fff;
        font-size: 1.4rem;
        font-weight: 400;
        padding: 5px 9.5px; }
  #side-area .side-box .link li {
    border-bottom: 1px solid #E0E0E0; }
    #side-area .side-box .link li a {
      font-size: 1.4rem;
      padding: 10px 20px;
      display: block;
      position: relative; }
      @media screen and (max-width: 767px) {
        #side-area .side-box .link li a {
          padding: 10px 15px; } }
    #side-area .side-box .link li:last-child {
      border-bottom: none; }
  #side-area .side-box + .side-box {
    margin-top: 30px; }
#side-area .dlist-outer .d-inner .dtl-ttl {
  padding: 7px 10px; }
  #side-area .dlist-outer .d-inner .dtl-ttl span {
    font-size: 1.2rem;
    padding-right: 0; }
    #side-area .dlist-outer .d-inner .dtl-ttl span i {
      padding-right: 10px;
      display: inline; }
  #side-area .dlist-outer .d-inner .dtl-ttl.new span::after {
    top: 0px;
    right: 0;
    position: relative; }
#side-area .dlist-outer .d-inner .img-info {
  padding: 6px 5px 6px 6px;
  background: #fff; }
  #side-area .dlist-outer .d-inner .img-info .img {
    width: 76px; }
    @media screen and (max-width: 767px) {
      #side-area .dlist-outer .d-inner .img-info .img {
        width: 123px; } }
  #side-area .dlist-outer .d-inner .img-info .txt-in {
    width: calc( 100% - 76px);
    padding-left: 6px;
    display: block; }
    @media screen and (max-width: 767px) {
      #side-area .dlist-outer .d-inner .img-info .txt-in {
        width: calc( 100% - 123px); } }
    #side-area .dlist-outer .d-inner .img-info .txt-in .tt-text {
      margin: 0 0 5px; }
      #side-area .dlist-outer .d-inner .img-info .txt-in .tt-text span {
        display: block; }
      #side-area .dlist-outer .d-inner .img-info .txt-in .tt-text .s01 {
        font-size: 1.2rem;
        padding-right: 0px;
        margin: 0 0 1px; }
      #side-area .dlist-outer .d-inner .img-info .txt-in .tt-text .s02 {
        font-size: 1.0rem; }
#side-area .list-type .txt-in .min-text .s01 {
  font-size: 1.0rem;
  width: 43px;
  height: 18px;
  top: 0.5px; }
#side-area .list-type .txt-in .min-text .s02 {
  font-size: 1.2rem; }
#side-area .list-type .txt-in .min-text + .min-text {
  margin-top: 3px; }
#side-area .list-type .text-box {
  margin-top: 0; }
  #side-area .list-type .text-box .t01 {
    font-size: 1.2rem;
    background: #fff;
    padding: 0px 7px 10px; }

/**/
.radiobtn-input {
  appearance: none;
  position: absolute; }

.radiobtn-text {
  position: relative;
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  font-weight: 400;
  line-height: 1;
  width: 100% !important; }
  .radiobtn-text i {
    width: calc(100% - 29px);
    display: block;
    font-weight: inherit; }

.radiobtn-text::before {
  content: '';
  display: block;
  border-radius: 50%;
  border: 1px solid #E0E0E0;
  width: 19px;
  height: 19px;
  background: #E0E0E0;
  margin-right: 8px; }
  @media screen and (max-width: 767px) {
    .radiobtn-text::before {
      margin-right: 5px; } }

.radiobtn-input:checked + .radiobtn-text::before {
  background: #fff; }

.radiobtn-input:checked + .radiobtn-text::after {
  content: '';
  position: absolute;
  top: 4px;
  left: 4px;
  display: block;
  border-radius: 50%;
  width: 13px;
  height: 13px;
  background-color: #9AD667; }

select,
input[type="text"] {
  width: 100%;
  font-size: 1.6rem;
  padding: 7px 15px 5px;
  border-radius: 5px;
  border: 1px solid #222; }
  @media screen and (max-width: 767px) {
    select,
    input[type="text"] {
      font-size: 1.3rem; } }

.select-outer {
  margin-top: 18px; }
  .select-outer .select-inner {
    max-width: 422px; }

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

select {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  background: none;
  padding-right: 45px; }

.select-inner {
  position: relative;
  z-index: 1; }
  .select-inner::after {
    position: absolute;
    content: '';
    width: 7px;
    height: 7px;
    right: 20px;
    top: 45%;
    transform: translateY(-50%) rotate(45deg);
    border-bottom: 1px solid #222;
    border-right: 1px solid #222;
    z-index: -1; }

input[type="checkbox"] {
  position: relative;
  top: 3.0px;
  height: 20px;
  width: 20px;
  display: inline-block;
  border-radius: 2px;
  background: #E0E0E0;
  -webkit-appearance: none;
  appearance: none;
  margin-right: 8px; }
  @media screen and (max-width: 767px) {
    input[type="checkbox"] {
      top: 0; } }

input[type="checkbox"]:checked {
  border: none;
  background-image: url("data:image/svg+xml;utf8,<svg version='1.1' xmlns='http://www.w3.org/2000/svg' width='16' height='16'><rect fill='%239AD667' width='16' height='16'/><path fill='none' stroke='%23fff' stroke-width='2' d='M12.6,5.17l-5.66,5.66L3.4,7.29'/></svg>");
  background-repeat: no-repeat;
  background-size: cover; }

.search-block {
  background: #F7F7F7;
  border-radius: 10px;
  padding: 20px; }
  @media screen and (max-width: 767px) {
    .search-block {
      padding: 20px 15px;
      display: block;
      position: relative; } }
  .search-block .chk-outer {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 -3.333% -3%; }
    @media screen and (max-width: 767px) {
      .search-block .chk-outer {
        margin: 0 0 -3.333% -2%; } }
    .search-block .chk-outer li {
      width: 17%;
      margin: 0 0 3.333% 3%;
      display: flex; }
      @media screen and (max-width: 767px) {
        .search-block .chk-outer li {
          width: 23%;
          margin: 0 0 3.333% 2%; } }
      @media screen and (max-width: 767px) {
        .search-block .chk-outer li label {
          margin-top: 3px; } }
    .search-block .chk-outer.three-line {
      margin: 0 0 -3% -3%; }
      @media screen and (max-width: 767px) {
        .search-block .chk-outer.three-line {
          margin: 0 0 -13px -2%; } }
      .search-block .chk-outer.three-line li {
        width: 30.333%;
        margin: 0 0 3% 3%; }
        @media screen and (max-width: 767px) {
          .search-block .chk-outer.three-line li {
            width: 48%;
            margin: 0 0 13px 2%; } }
    @media screen and (max-width: 767px) {
      .search-block .chk-outer.kinmu {
        margin: 0 0 -3.333% -3.333%; } }
    @media screen and (max-width: 767px) {
      .search-block .chk-outer.kinmu li {
        width: 30%;
        margin: 0 0 3.333% 3.333%; } }
  @media screen and (min-width: 768px) {
    .search-block .sentaku-result {
      width: calc( 100% - 126px );
      padding-left: 46px; } }
  .search-block .sentaku-result > div {
    margin-top: 5px; }
    .search-block .sentaku-result > div > p {
      display: none;
      font-size: 1.6rem;
      color: #C4C4C4;
      font-weight: 400; }
      @media screen and (max-width: 767px) {
        .search-block .sentaku-result > div > p {
          font-size: 1.3rem; } }
    .search-block .sentaku-result > div.noselect > p {
      display: block; }
      @media screen and (max-width: 767px) {
        .search-block .sentaku-result > div.noselect > p {
          padding-left: 15px; } }
  .search-block .sentaku-outer {
    display: flex;
    flex-wrap: wrap; }
    .search-block .sentaku-outer .sentaku-btn {
      display: flex;
      justify-content: center;
      align-items: center;
      line-height: 1;
      position: relative;
      font-size: 1.6rem;
      font-weight: 400;
      cursor: pointer;
      text-align: center;
      width: 126px;
      border: 1px solid #222;
      padding: 8px 12px 8px 0px;
      border-radius: 5px; }
      @media screen and (max-width: 767px) {
        .search-block .sentaku-outer .sentaku-btn {
          font-size: 1.3rem;
          width: 88px; } }
      .search-block .sentaku-outer .sentaku-btn i {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 15px;
        display: block;
        height: 10px;
        width: 10px; }
        @media screen and (max-width: 767px) {
          .search-block .sentaku-outer .sentaku-btn i {
            right: 8px; } }
        .search-block .sentaku-outer .sentaku-btn i::before, .search-block .sentaku-outer .sentaku-btn i::after {
          display: block;
          content: "";
          background: #9AD667;
          position: absolute;
          height: 2px;
          width: 100%;
          top: 50%;
          left: 50%; }
        .search-block .sentaku-outer .sentaku-btn i::before {
          transform: translateY(-50%) translateX(-50%) rotate(90deg); }
        .search-block .sentaku-outer .sentaku-btn i::after {
          transform: translateY(-50%) translateX(-50%); }
  .search-block dl {
    display: flex;
    flex-wrap: wrap; }
    @media screen and (min-width: 768px) {
      .search-block dl {
        border-top: 1px solid #CECECE; } }
    .search-block dl dt,
    .search-block dl dd {
      line-height: 1.8; }
      @media screen and (min-width: 768px) {
        .search-block dl dt,
        .search-block dl dd {
          padding: 20px 20px 20px 25px;
          border-bottom: 1px solid #CECECE; } }
      @media screen and (max-width: 767px) {
        .search-block dl dt,
        .search-block dl dd {
          width: 100%; } }
    .search-block dl dt {
      font-size: 1.6rem;
      background: #F1FDE8; }
      @media screen and (min-width: 768px) {
        .search-block dl dt {
          width: 18%; } }
      @media screen and (max-width: 767px) {
        .search-block dl dt {
          font-size: 1.4rem;
          text-align: center;
          padding: 7px 15px;
          border-top: 1px solid #CECECE; } }
    .search-block dl dd {
      background: #fff;
      font-size: 1.6rem;
      font-weight: 400; }
      @media screen and (min-width: 768px) {
        .search-block dl dd {
          width: 82%; } }
      @media screen and (max-width: 767px) {
        .search-block dl dd {
          padding: 20px 15px;
          font-size: 1.3rem; } }
      .search-block dl dd.flex {
        display: flex;
        flex-wrap: wrap;
        flex-direction: column-reverse; }
      .search-block dl dd em::after {
        content: " ／ "; }
      .search-block dl dd em:last-child::after {
        display: none; }
    .search-block dl #cds-money em::after {
      content: "　"; }
    .search-block dl #cds-money em:last-child::after {
      display: none; }
    .search-block dl #cds-shikucyouson em::after,
    .search-block dl #cds-shikucyouson em::after {
      content: "、"; }
    .search-block dl #cds-shikucyouson em:last-child::after,
    .search-block dl #cds-shikucyouson em:last-child::after {
      display: none; }
  .search-block .result-body {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    padding: 30px 0 10px; }
    @media screen and (max-width: 767px) {
      .search-block .result-body {
        justify-content: center;
        padding: 15px 0 10px;
        z-index: 1; } }
    .search-block .result-body.return {
      display: none;
      justify-content: center; }
      .search-block .result-body.return .btn {
        margin: 0 auto !important;
        max-width: 312px; }
        .search-block .result-body.return .btn .l-btn {
          line-height: 1.2;
          padding: 9.5px; }
          .search-block .result-body.return .btn .l-btn span {
            text-align: left;
            position: relative; }
            @media screen and (max-width: 767px) {
              .search-block .result-body.return .btn .l-btn span {
                padding-left: 25px !important; } }
            .search-block .result-body.return .btn .l-btn span .arrow {
              right: auto;
              left: -5px; }
              @media screen and (max-width: 767px) {
                .search-block .result-body.return .btn .l-btn span .arrow {
                  left: 7px; } }
              .search-block .result-body.return .btn .l-btn span .arrow::before {
                display: none; }
              .search-block .result-body.return .btn .l-btn span .arrow::after {
                transform: rotate(-135deg);
                width: 12px;
                height: 12px;
                border-top: 2px solid #222;
                border-right: 2px solid #222; }
                @media screen and (max-width: 767px) {
                  .search-block .result-body.return .btn .l-btn span .arrow::after {
                    width: 8px;
                    height: 8px; } }
      .search-block .result-body.return.on {
        display: block; }
        .search-block .result-body.return.on + .result-body {
          display: none; }
    .search-block .result-body .btn {
      width: 100%;
      max-width: 412px; }
      @media screen and (min-width: 768px) {
        .search-block .result-body .btn {
          margin-left: 35px; } }
      @media screen and (max-width: 767px) {
        .search-block .result-body .btn {
          width: calc( 100% + 4px );
          margin: 12px -2px 0; } }
      .search-block .result-body .btn .l-btn {
        padding: 25px; }
        @media screen and (max-width: 767px) {
          .search-block .result-body .btn .l-btn {
            padding: 12px; } }
        .search-block .result-body .btn .l-btn::after {
          font-size: 40px;
          left: 12%; }
          @media screen and (max-width: 767px) {
            .search-block .result-body .btn .l-btn::after {
              font-size: 30px; } }
        .search-block .result-body .btn .l-btn span {
          font-size: 2.4rem; }
          @media screen and (max-width: 767px) {
            .search-block .result-body .btn .l-btn span {
              font-size: 2.0rem; } }
    .search-block .result-body.center {
      justify-content: center; }
      @media screen and (min-width: 768px) {
        .search-block .result-body.center .btn {
          margin-left: 0; } }

/**/
.list-top {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin: 0 0 35px; }
  @media screen and (max-width: 767px) {
    .list-top {
      display: block; } }
  .list-top .conditions-outer {
    width: 170px; }
    @media screen and (max-width: 767px) {
      .list-top .conditions-outer {
        margin-top: 15px; } }
    .list-top .conditions-outer select {
      padding-top: 8px;
      padding-bottom: 7px; }

/**/
.result-text .t01 {
  font-size: 1.4rem;
  font-weight: 400; }
  .result-text .t01 + .r-num {
    margin-left: 4px; }
.result-text .t02 {
  font-size: 3.0rem;
  font-weight: 700;
  color: #F5865D;
  /*
  margin: 0 2px 0 5px;
  */ }
.result-text .t03 {
  font-size: 1.6rem;
  font-weight: 700; }

/**/
.category-tab {
  margin: 0 0 40px; }
  @media screen and (max-width: 767px) {
    .category-tab {
      margin: 0 0 35px; } }
  .category-tab ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 -16px -16px; }
    @media screen and (max-width: 767px) {
      .category-tab ul {
        margin: 0 0 -3.333% -3.333%; } }
    .category-tab ul li {
      width: 160px;
      text-align: center;
      margin: 0 0 16px 16px; }
      @media screen and (max-width: 767px) {
        .category-tab ul li {
          width: 30%;
          margin: 0 0 3.333% 3.333%; } }
      .category-tab ul li span {
        display: block;
        border: 1px solid #222;
        border-radius: 5px;
        font-size: 1.6rem;
        font-weight: 400;
        line-height: 1;
        padding: 8px 0;
        cursor: pointer; }
        @media screen and (max-width: 767px) {
          .category-tab ul li span {
            font-size: 1.4rem; } }
      .category-tab ul li.active span {
        background-color: #B7E57A; }

/**/
.new-list {
  position: relative;
  z-index: 2; }
  .new-list ul li {
    border-bottom: 1px solid #E0E0E0; }
    .new-list ul li a {
      display: flex;
      width: 100%;
      padding: 30px 46px 30px 20px;
      position: relative; }
      @media screen and (max-width: 767px) {
        .new-list ul li a {
          padding: 15px 25px 15px 0px; } }
      .new-list ul li a span {
        display: block;
        font-size: 1.4rem;
        font-weight: 400; }
        .new-list ul li a span i {
          display: block;
          font-weight: 400; }
        .new-list ul li a span .date {
          min-width: 77px;
          color: #888;
          margin-bottom: 9px;
          position: relative;
          display: inline-block; }
          .new-list ul li a span .date .category {
            display: block;
            width: 60px;
            line-height: 1;
            background-color: #FFA584;
            text-align: center;
            position: absolute;
            top: 1px;
            right: -77px;
            padding: 3px 0;
            border-radius: 5px;
            color: #222;
            font-size: 1.2rem; }
            @media screen and (max-width: 767px) {
              .new-list ul li a span .date .category {
                right: -70px; } }
            .new-list ul li a span .date .category.column {
              background-color: #B7E57A; }
        .new-list ul li a span.img {
          width: 90px; }
        .new-list ul li a span.text {
          width: calc( 100% - 90px );
          padding-left: 30px; }
          @media screen and (max-width: 767px) {
            .new-list ul li a span.text {
              padding-left: 20px; } }
      @media screen and (max-width: 767px) {
        .new-list ul li a .arrow {
          right: 0; } }

/**/
@media only screen and (min-width: 767px) and (max-width: 1100px) {
  .list-type {
    display: flex;
    flex-wrap: wrap;
    justify-content: center; } }
.list-type li {
  position: relative; }
  .list-type li + li {
    margin-top: 40px; }
    @media screen and (max-width: 767px) {
      .list-type li + li {
        margin-top: 20px; } }
  .list-type li::after {
    top: 0;
    right: 30px; }
.list-type .text-box {
  position: relative;
  margin-top: 10px; }
  @media screen and (max-width: 767px) {
    .list-type .text-box {
      margin-top: 6px; } }
  .list-type .text-box .t01 {
    display: block;
    line-height: 1.6;
    font-size: 1.6rem;
    font-weight: 600;
    background: #F1FDE8;
    padding: 9.5px 15px;
    color: #7FC940;
    letter-spacing: 0.03em; }
    @media screen and (max-width: 767px) {
      .list-type .text-box .t01 {
        font-size: 1.4rem;
        padding: 5px 12px; } }
    .list-type .text-box .t01 i {
      font-family: inherit;
      font-weight: inherit;
      font-size: inherit;
      display: inline; }
  .list-type .text-box .t02 {
    font-size: 1.4rem;
    font-weight: 400; }
    @media screen and (max-width: 767px) {
      .list-type .text-box .t02 {
        font-size: 1.2rem; } }
  .list-type .text-box .t03 {
    font-size: 1.6rem;
    font-weight: 600;
    color: #7FC940;
    line-height: 1.6; }
    @media screen and (max-width: 767px) {
      .list-type .text-box .t03 {
        font-size: 1.4rem; } }
  .list-type .text-box .t04 {
    font-size: 1.6rem;
    font-weight: 400; }
    @media screen and (max-width: 767px) {
      .list-type .text-box .t04 {
        font-size: 1.4rem; } }
.list-type .txt-in .min-text {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start; }
  .list-type .txt-in .min-text span {
    display: block; }
    .list-type .txt-in .min-text span.s01 {
      font-size: 1.2rem;
      font-weight: 600;
      color: #fff;
      background: #7FC940;
      width: 50px;
      height: 20px;
      border-radius: 100px;
      text-align: center;
      display: flex;
      justify-content: center;
      align-items: center;
      position: relative;
      top: 2px;
      line-height: 1; }
      @media screen and (max-width: 767px) {
        .list-type .txt-in .min-text span.s01 {
          width: 43px;
          height: 18px;
          font-size: 1.0rem;
          top: 1px; } }
    .list-type .txt-in .min-text span.s02 {
      font-size: 1.6rem;
      width: calc( 100% - 50px );
      padding-left: 7px;
      font-weight: 600;
      line-height: 1.6; }
      @media screen and (max-width: 767px) {
        .list-type .txt-in .min-text span.s02 {
          font-size: 1.2rem; } }
      @media screen and (max-width: 767px) {
        .list-type .txt-in .min-text span.s02.sp-large {
          font-size: 1.4rem;
          position: relative;
          top: -1.5px; } }
      .list-type .txt-in .min-text span.s02.bold {
        font-weight: 500; }
      .list-type .txt-in .min-text span.s02 em {
        font-weight: inherit; }
  .list-type .txt-in .min-text + .min-text {
    margin-top: 7px; }
    @media screen and (max-width: 767px) {
      .list-type .txt-in .min-text + .min-text {
        margin-top: 5px; } }
.list-type .tab-list-outer {
  position: relative; }
  .list-type .tab-list-outer .tab-list {
    padding-right: 40px; }
  .list-type .tab-list-outer .favorite-btn.float {
    position: absolute;
    top: 0;
    right: 5px; }
    .list-type .tab-list-outer .favorite-btn.float button {
      width: 26px;
      height: 22px;
      background-repeat: no-repeat;
      background-position: 0 0;
      background-image: url(./../img/common/icon_favorite.png);
      background-size: 100% 100%;
      cursor: pointer;
      border: none;
      background-color: transparent; }
    .list-type .tab-list-outer .favorite-btn.float.icon--heart button {
      background-image: url(./../img/common/icon_favorite_on.png); }
    .list-type .tab-list-outer .favorite-btn.float.icon--heart::after {
      display: none !important; }
.list-type .tab-list {
  margin: 10px 0 4px -5px;
  display: flex;
  flex-wrap: wrap; }
  @media screen and (max-width: 767px) {
    .list-type .tab-list {
      margin: 6px 0 1px -4px; } }
  .list-type .tab-list a,
  .list-type .tab-list span {
    display: inline-block;
    line-height: 1;
    border: 1px solid #E0E0E0;
    border-radius: 5px;
    background: #fff;
    font-size: 1.2rem;
    font-weight: 400;
    padding: 4.5px 5px;
    margin: 0 0 6px 5px; }
    @media screen and (max-width: 767px) {
      .list-type .tab-list a,
      .list-type .tab-list span {
        margin: 0 0 5px 4px;
        /*
        padding: 4.5px 5px;
        */
        padding: 0 5px;
        margin: 0 0 5px 4px;
        height: 23px;
        display: flex !important;
        align-items: center; } }
.list-type .btn-flow {
  margin-top: auto;
  position: relative; }
  .list-type .btn-flow .btn-flow-inner {
    padding: 20px 0;
    max-width: 378px;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0 1.5%;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .list-type .btn-flow .btn-flow-inner {
        padding: 15px; } }
    .list-type .btn-flow .btn-flow-inner .l-btn {
      width: 48.7%;
      height: 60px;
      line-height: 1; }
      @media screen and (max-width: 767px) {
        .list-type .btn-flow .btn-flow-inner .l-btn {
          display: flex;
          align-items: center;
          justify-content: center; } }
      @media screen and (max-width: 767px) {
        .list-type .btn-flow .btn-flow-inner .l-btn span {
          font-size: 1.6rem; } }
      .list-type .btn-flow .btn-flow-inner .l-btn:after {
        font-size: 24px;
        color: #9AD667;
        left: 22px; }
        @media screen and (max-width: 767px) {
          .list-type .btn-flow .btn-flow-inner .l-btn:after {
            left: 15px; } }
  .list-type .btn-flow .info {
    text-align: right; }
    @media screen and (min-width: 768px) {
      .list-type .btn-flow .info {
        position: absolute;
        right: 30px;
        bottom: 30px;
        max-width: 150px; } }
    @media only screen and (min-width: 767px) and (max-width: 1100px) {
      .list-type .btn-flow .info {
        position: static;
        margin: 0 0 0 auto; } }
    @media screen and (max-width: 767px) {
      .list-type .btn-flow .info {
        margin-top: 15px; } }
    .list-type .btn-flow .info p {
      font-size: 1.2rem;
      font-weight: 400; }

/**/
.dlist-outer .d-inner .block-dtl-inner {
  overflow: hidden;
  border-radius: 5px 5px 0 0;
  border-bottom: 2px solid #9AD667; }
  .dlist-outer .d-inner .block-dtl-inner a {
    display: block; }
.dlist-outer .d-inner .dtl-ttl {
  width: 100%;
  background-color: #9AD667;
  border-radius: 7px 7px 0 0;
  padding: 8px 15px; }
  @media screen and (max-width: 767px) {
    .dlist-outer .d-inner .dtl-ttl {
      border-radius: 5px 5px 0 0;
      padding: 2px 11px 3px; } }
  .dlist-outer .d-inner .dtl-ttl span {
    font-size: 1.4rem;
    font-weight: 600;
    position: relative;
    padding-right: 48px; }
    @media screen and (max-width: 767px) {
      .dlist-outer .d-inner .dtl-ttl span {
        font-size: 1.2rem;
        padding-right: 45px; } }
  .dlist-outer .d-inner .dtl-ttl.new span::after {
    content: "NEW";
    display: inline-block;
    color: #fff;
    font-size: 1.0rem;
    font-weight: 700;
    background: #F5865D;
    padding: 3px 6.5px;
    border-radius: 100px;
    line-height: 1;
    position: absolute;
    top: 2px;
    right: 0; }
    @media screen and (max-width: 767px) {
      .dlist-outer .d-inner .dtl-ttl.new span::after {
        top: 1px; } }
@media screen and (min-width: 768px) {
  .dlist-outer .d-inner .d-top {
    display: flex;
    align-items: flex-start; } }
.dlist-outer .d-inner .d-top .t01 {
  padding: 11px 10px;
  min-width: 138px;
  text-align: center;
  border-radius: 0 0 10px 10px; }
@media screen and (min-width: 768px) {
  .dlist-outer .d-inner .d-top .t02 {
    margin-left: 20px;
    padding: 8px 0 0; } }
@media screen and (max-width: 767px) {
  .dlist-outer .d-inner .d-top .t02 {
    width: 100%;
    margin-top: 15px; } }
.dlist-outer .d-inner .img-info {
  display: flex;
  flex-wrap: wrap;
  padding: 10px 0 0; }
  @media screen and (max-width: 767px) {
    .dlist-outer .d-inner .img-info {
      padding: 6px 0 0; } }
  .dlist-outer .d-inner .img-info .img {
    width: 172px; }
    @media screen and (max-width: 767px) {
      .dlist-outer .d-inner .img-info .img {
        width: 40.6%; } }
    .dlist-outer .d-inner .img-info .img img {
      border-radius: 5px;
      overflow: hidden; }
  .dlist-outer .d-inner .img-info .txt-in {
    width: calc( 100% - 172px);
    padding-left: 13px; }
    @media screen and (max-width: 767px) {
      .dlist-outer .d-inner .img-info .txt-in {
        padding-left: 12px;
        width: 59.4%; } }
    .dlist-outer .d-inner .img-info .txt-in .tt-text {
      margin: 0 0 11px; }
      @media screen and (min-width: 768px) {
        .dlist-outer .d-inner .img-info .txt-in .tt-text {
          display: flex;
          flex-wrap: wrap;
          align-items: flex-end; } }
      @media screen and (max-width: 767px) {
        .dlist-outer .d-inner .img-info .txt-in .tt-text {
          margin: 0 0 5px; } }
      .dlist-outer .d-inner .img-info .txt-in .tt-text span {
        display: block;
        letter-spacing: 0.05em; }
        @media screen and (max-width: 767px) {
          .dlist-outer .d-inner .img-info .txt-in .tt-text span {
            letter-spacing: 0.02em; } }
        .dlist-outer .d-inner .img-info .txt-in .tt-text span.s01 {
          font-size: 1.6rem;
          font-weight: 600; }
          @media screen and (min-width: 768px) {
            .dlist-outer .d-inner .img-info .txt-in .tt-text span.s01 {
              padding-right: 13px; } }
          @media screen and (max-width: 767px) {
            .dlist-outer .d-inner .img-info .txt-in .tt-text span.s01 {
              font-size: 1.2rem;
              margin-bottom: 1px; } }
        .dlist-outer .d-inner .img-info .txt-in .tt-text span.s02 {
          font-size: 1.0rem;
          font-weight: 400;
          color: #222;
          opacity: 0.5; }

/**/
.new-info::after {
  content: "NEW";
  display: block;
  position: absolute;
  top: -2px;
  right: 10px;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 700;
  background: #F5865D;
  padding: 11px 17px;
  border-radius: 0 0 10px 10px;
  z-index: 1; }
  @media screen and (max-width: 767px) {
    .new-info::after {
      font-size: 1.2rem;
      padding: 10.5px 12px; } }

/**/
.pagination-outer {
  margin: 60px auto 100px; }
  @media screen and (max-width: 767px) {
    .pagination-outer {
      margin: 35px auto 0; } }
  .pagination-outer .pagination {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 0 4px; }
    .pagination-outer .pagination .page-item a {
      font-size: 1.8rem;
      font-weight: 700;
      color: #C4C4C4;
      border: 3px solid #E0E0E0;
      display: block;
      width: 44px;
      height: 44px;
      border-radius: 44px;
      display: flex;
      justify-content: center;
      align-items: center;
      line-height: 1;
      cursor: pointer; }
      @media screen and (max-width: 767px) {
        .pagination-outer .pagination .page-item a {
          width: 35px;
          height: 35px;
          border-radius: 35px;
          font-size: 1.4rem; } }
    .pagination-outer .pagination .page-item span {
      font-size: 1.8rem;
      color: #C4C4C4;
      line-height: 0; }
    .pagination-outer .pagination .page-item.active span {
      font-size: 1.8rem;
      font-weight: 700;
      color: #C4C4C4;
      border: 3px solid #E0E0E0;
      display: block;
      width: 44px;
      height: 44px;
      border-radius: 44px;
      display: flex;
      justify-content: center;
      align-items: center;
      line-height: 1;
      cursor: pointer;
      color: #7FC940;
      border-color: #9AD667; }
      @media screen and (max-width: 767px) {
        .pagination-outer .pagination .page-item.active span {
          width: 35px;
          height: 35px;
          border-radius: 35px;
          font-size: 1.4rem; } }

/* TOP */
.swiper .slide-btn-outer {
  position: relative;
  top: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-top: 35px; }
  .swiper .slide-btn-outer .swiper-button-prev,
  .swiper .slide-btn-outer .swiper-button-next,
  .swiper .slide-btn-outer .swiper-pagination {
    position: static !important;
    margin: 0 5px;
    display: block;
    width: auto;
    height: auto; }
  .swiper .slide-btn-outer .swiper-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    border-radius: 8px;
    background: #C4C4C4;
    margin: 0 10px;
    opacity: 1; }
  .swiper .slide-btn-outer .swiper-pagination .swiper-pagination-bullet-active {
    background: #9AD667; }
  .swiper .slide-btn-outer .swiper-button-prev::after,
  .swiper .slide-btn-outer .swiper-button-next::after {
    margin: auto;
    content: "";
    vertical-align: middle;
    right: 6px;
    width: 4px;
    height: 4px;
    border-top: 2px solid #7FC940;
    border-right: 2px solid #7FC940;
    transform: rotate(45deg);
    width: 12px;
    height: 12px;
    display: block; }
  .swiper .slide-btn-outer .swiper-button-prev::after {
    transform: rotate(-135deg); }

.recruit-slider {
  /*
  padding-bottom: 65px;
  */
  	/*
  
  	.swiper-slide-inner {
  
  		height: 100%;
  		border: 2px solid #9AD667;
      overflow: hidden;
      border-radius: 5px;
  		position: relative;
  		@include flex();
  		flex-direction: column;
  
  		.text-box {
  
  			padding: 0 20px;
  			margin-top: -18px;
  			@include sp() {
  			padding: 0 15px;
  			}
  
  			.t01 {
  
  				border-radius: 0 100px 100px 0px;
  				margin: 0 0 12px -20px;
  				@include sp() {
  				margin: 0 0 10px -20px;
  				}
  
  			}
  
  			.t02 {
  
  				margin: 0 0 7px;
  				@include sp() {
  				margin: 0 0 1px;
  				}
  
  			}
  
  		}
  
  		.txt-in {
  
  			background: #F1FDE8;
  			padding: 12.5px 20px;
  			margin: 15px 0 0;
  			@include sp() {
  			padding: 12.5px 15px;
  			margin: 10px 0 0;
  			}
  
  			.min-text {
  
  				align-items: center;
  
  				span {
  
  					&.s01 {
  
  						width: 50px;
  						top: 0px;
  
  					}
  
  					&.s02 {
  
  						width: calc( 100% - 50px );
  
  					}
  
  				}
  
  				& + .min-text {
  
  					margin-top: 10px;
  
  				}
  
  			}
  
  		}
  
  	}
  
  	*/ }
  .recruit-slider .swiper-slide {
    height: auto; }

#search-area .sub-ttl {
  margin-bottom: 25px; }

body#top #contents-mv {
  position: relative; }
  @media screen and (min-width: 768px) {
    body#top #contents-mv {
      margin: 0 0 80px; } }
@media screen and (max-width: 767px) {
  body#top #side-right {
    display: none !important; } }
@media screen and (max-width: 767px) {
  body#top #contents02 .img-box {
    padding: 0 11px; } }
@media screen and (max-width: 767px) {
  body#top .c-outer {
    margin-top: 20px; } }
@media screen and (min-width: 768px) {
  body#top .c-outer + .c-outer {
    margin-top: 70px; } }
@media screen and (max-width: 767px) {
  body#top .c-outer + .c-outer {
    margin-top: 50px; } }
body#top #top-btn {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 570px;
  padding: 25px 45px;
  border-radius: 500px;
  background: rgba(241, 253, 232, 0.77);
  bottom: 10.5%; }
  @media screen and (max-width: 767px) {
    body#top #top-btn {
      padding: 16px 14px;
      width: calc( 100% - 28px );
      margin: 0 auto;
      bottom: 4.0%; } }
  body#top #top-btn .top-btn-inner {
    display: flex;
    flex-wrap: wrap;
    gap: 0 4%; }
  body#top #top-btn a {
    font-size: 2.0rem;
    font-weight: 500;
    line-height: 1;
    display: flex;
    border: 3px solid #9AD667;
    border-radius: 200px;
    background: #fff;
    width: 48%;
    height: 60px;
    justify-content: center;
    align-items: center;
    letter-spacing: 0.05em;
    transition: .3s; }
    @media screen and (max-width: 767px) {
      body#top #top-btn a {
        font-size: 1.4rem;
        height: 50px; } }
    body#top #top-btn a span {
      position: relative;
      display: inline-block; }
      body#top #top-btn a span.free {
        padding-left: 57px;
        left: -2px; }
        @media screen and (max-width: 767px) {
          body#top #top-btn a span.free {
            padding-left: 44px; } }
        body#top #top-btn a span.free::before {
          content: "無料";
          line-height: 1;
          color: #fff;
          position: absolute;
          top: -5px;
          left: 0;
          font-size: 1.8rem;
          font-weight: 500;
          display: inline-block;
          background-color: #F07550;
          border-radius: 100px;
          padding: 5px 6px 7px 7px; }
          @media screen and (max-width: 767px) {
            body#top #top-btn a span.free::before {
              font-size: 1.2rem; } }

#top-news {
  border-top: 1px solid #E0E0E0; }
  @media screen and (min-width: 768px) {
    #top-news .news-outer {
      display: flex;
      flex-wrap: wrap; } }
  @media screen and (max-width: 767px) {
    #top-news .news-outer {
      padding-top: 20px; } }
  @media screen and (min-width: 768px) {
    #top-news .news-outer .sub-ttl {
      width: 23.5%;
      padding-right: 25px;
      margin-top: 15px; } }
  @media screen and (min-width: 768px) {
    #top-news .news-outer .new-list {
      width: 76.5%; } }
  #top-news .news-outer .new-list ul {
    display: none; }
    #top-news .news-outer .new-list ul.on {
      display: block; }
  #top-news .news-outer + .btn-outer {
    margin: 30px auto 0;
    text-align: center; }
    @media screen and (max-width: 767px) {
      #top-news .news-outer + .btn-outer {
        margin-top: 25px; } }
    #top-news .news-outer + .btn-outer .n-btn {
      max-width: 160px; }

.top-search {
  width: 100%;
  margin: 0 auto -40px;
  border: 5px solid #B8E57A;
  border-radius: 10px;
  background: #fff;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 20px 55px;
  transform: translateY(-50%); }
  @media only screen and (min-width: 767px) and (max-width: 1100px) {
    .top-search {
      width: calc( 100% - 30px );
      padding: 18px 10px 18px 15px;
      border-width: 3px;
      margin-bottom: -15px; } }
  @media screen and (max-width: 767px) {
    .top-search {
      width: calc( 100% - 30px );
      padding: 8px 10px 8px 15px;
      border-width: 3px;
      margin-bottom: -15px; } }
  .top-search > p {
    font-size: 3.0rem;
    width: 28.6%;
    line-height: 1;
    padding-right: 20px; }
    @media only screen and (min-width: 767px) and (max-width: 1100px) {
      .top-search > p {
        font-size: 1.8rem;
        width: 28%;
        padding-right: 5px;
        line-height: 1.3; } }
    @media screen and (max-width: 767px) {
      .top-search > p {
        font-size: 1.2rem;
        width: 28%;
        padding-right: 5px;
        line-height: 1.3; } }
  .top-search .btn {
    display: flex;
    width: 71.4%; }
    @media screen and (min-width: 768px) {
      .top-search .btn {
        gap: 0 30px; } }
    @media only screen and (min-width: 767px) and (max-width: 1100px) {
      .top-search .btn {
        width: 72.0%;
        justify-content: space-between; } }
    @media screen and (max-width: 767px) {
      .top-search .btn {
        width: 72.0%;
        justify-content: space-between; } }
    .top-search .btn .l-btn {
      width: 49.7%;
      height: 90px;
      display: flex;
      justify-content: center;
      align-items: center; }
      @media only screen and (min-width: 767px) and (max-width: 1100px) {
        .top-search .btn .l-btn {
          height: 50px;
          width: 48.7%; } }
      @media screen and (max-width: 767px) {
        .top-search .btn .l-btn {
          height: 50px;
          width: 48.7%; } }
      .top-search .btn .l-btn span {
        font-size: 2.0rem;
        line-height: 1; }
        @media only screen and (min-width: 767px) and (max-width: 1100px) {
          .top-search .btn .l-btn span {
            font-size: 1.8rem;
            line-height: 1.3; } }
        @media screen and (max-width: 767px) {
          .top-search .btn .l-btn span {
            font-size: 1.2rem;
            line-height: 1.3; } }
        .top-search .btn .l-btn span em {
          font-size: 3.0rem;
          display: inline-block;
          line-height: 1;
          font-weight: 500; }
          @media only screen and (min-width: 767px) and (max-width: 1100px) {
            .top-search .btn .l-btn span em {
              font-size: 2.0rem; } }
          @media screen and (max-width: 767px) {
            .top-search .btn .l-btn span em {
              font-size: 1.6rem; } }
      .top-search .btn .l-btn::after {
        font-size: 40px;
        left: 65px; }
        @media only screen and (min-width: 767px) and (max-width: 1100px) {
          .top-search .btn .l-btn::after {
            font-size: 30px;
            left: 10px; } }
        @media screen and (max-width: 767px) {
          .top-search .btn .l-btn::after {
            font-size: 30px;
            left: 10px; } }

/* LIST */
@media screen and (max-width: 767px) {
  #list-area .tab-list {
    height: 28px;
    overflow: hidden; } }
@media screen and (max-width: 767px) {
  #list-area .dlist-outer.list-type .text-box .t01::after {
    content: "…"; } }
@media screen and (max-width: 767px) {
  #list-area .dlist-outer.list-type .text-box .t01 i {
    display: none; } }
#list-area .dlist-outer.list-type .d-inner .d-top {
  margin-bottom: 15px; }
#list-area .dlist-outer.list-type .d-inner .t03 {
  border-bottom: 1px solid #CECECE;
  padding: 0 0 13px;
  margin: 0 0 15px; }
#list-area .dlist-outer.list-type .d-inner .t04 {
  margin: 15px 0; }
#list-area .dlist-outer.list-type .d-inner .btn-flow {
  margin: 15px -30px 0;
  position: relative;
  background: #F1FDE8;
  padding: 20px 0; }
  @media screen and (max-width: 767px) {
    #list-area .dlist-outer.list-type .d-inner .btn-flow {
      margin: 15px -15px 0;
      padding: 20px 15px; } }
  #list-area .dlist-outer.list-type .d-inner .btn-flow .btn-flow-inner {
    padding: 0;
    max-width: 378px;
    margin: 0 auto; }

/**/
.detail-body .detail-text .t01 {
  font-size: 1.8rem;
  font-weight: 600;
  color: #7FC940; }
  .detail-body .detail-text .t01 + .t02 {
    margin-top: 30px; }
    @media screen and (max-width: 767px) {
      .detail-body .detail-text .t01 + .t02 {
        margin-top: 15px; } }
.detail-body .detail-text .t02 {
  font-size: 1.6rem;
  font-weight: 400; }
  @media screen and (max-width: 767px) {
    .detail-body .detail-text .t02 {
      font-size: 1.4rem; } }
.detail-body .detail-youkou {
  margin-top: 50px; }
  .detail-body .detail-youkou .sub-ttl {
    margin-bottom: 25px;
    padding-bottom: 10px;
    border-bottom: 2px solid #9AD667; }
  @media screen and (min-width: 768px) {
    .detail-body .detail-youkou .txt-in {
      display: flex;
      flex-wrap: wrap; } }
  .detail-body .detail-youkou .txt-in dt,
  .detail-body .detail-youkou .txt-in dd {
    font-weight: 400;
    font-size: 1.6rem;
    position: relative;
    padding: 0 5px 21px;
    margin-bottom: 20px; }
    @media screen and (min-width: 768px) {
      .detail-body .detail-youkou .txt-in dt,
      .detail-body .detail-youkou .txt-in dd {
        border-bottom: 1px dashed #CECECE; } }
    @media screen and (max-width: 767px) {
      .detail-body .detail-youkou .txt-in dt,
      .detail-body .detail-youkou .txt-in dd {
        width: 100%;
        font-size: 1.4rem; } }
  .detail-body .detail-youkou .txt-in dt {
    width: 180px; }
    @media screen and (max-width: 767px) {
      .detail-body .detail-youkou .txt-in dt {
        width: 170px;
        padding: 0;
        margin-bottom: 10px; } }
    .detail-body .detail-youkou .txt-in dt span {
      font-size: 1.6rem;
      font-weight: 600;
      color: #fff;
      background: #7FC940;
      width: 100%;
      height: 28px;
      border-radius: 100px;
      text-align: center;
      display: flex;
      justify-content: center;
      align-items: center; }
      @media screen and (max-width: 767px) {
        .detail-body .detail-youkou .txt-in dt span {
          font-size: 1.4rem; } }
  .detail-body .detail-youkou .txt-in dd {
    width: calc( 100% - 180px );
    padding-left: 20px;
    padding-top: 2px; }
    @media screen and (max-width: 767px) {
      .detail-body .detail-youkou .txt-in dd {
        width: 100%;
        padding: 0 15px;
        border-bottom: 1px dashed #CECECE;
        padding-bottom: 15px; } }
    .detail-body .detail-youkou .txt-in dd p + p {
      margin-top: 18px; }
      @media screen and (max-width: 767px) {
        .detail-body .detail-youkou .txt-in dd p + p {
          margin-top: 13px; } }
    .detail-body .detail-youkou .txt-in dd p,
    .detail-body .detail-youkou .txt-in dd span {
      font-weight: 400;
      font-size: 1.6rem;
      position: relative; }
      @media screen and (max-width: 767px) {
        .detail-body .detail-youkou .txt-in dd p,
        .detail-body .detail-youkou .txt-in dd span {
          font-size: 1.4rem; } }
    .detail-body .detail-youkou .txt-in dd .line {
      padding-top: 27px;
      margin-top: 1em; }
      .detail-body .detail-youkou .txt-in dd .line::after {
        content: "";
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: 100% 100%;
        background-image: url(/assets/img/common/icon_access.svg);
        width: 59px;
        height: 24px;
        position: absolute;
        top: 0;
        left: 0; }
    .detail-body .detail-youkou .txt-in dd span {
      display: inline-block;
      margin-right: 10px; }
      .detail-body .detail-youkou .txt-in dd span::before {
        content: "●";
        color: #7FC940; }
      .detail-body .detail-youkou .txt-in dd span + span {
        /*
        margin-left: 10px;
        */ }
  .detail-body .detail-youkou + .detail-youkou {
    margin-top: 25px; }
    @media screen and (max-width: 767px) {
      .detail-body .detail-youkou + .detail-youkou {
        margin-top: 35px; } }
  .detail-body .detail-youkou + .btn-outer {
    text-align: center;
    margin-top: 50px; }
    @media screen and (max-width: 767px) {
      .detail-body .detail-youkou + .btn-outer {
        margin-top: 30px; } }

/* detai */
#detail-top .block-dtl-inner > a {
  pointer-events: none; }

/**/
.s-recruit {
  padding: 20px 30px 30px;
  /*
  @include sp() {
  padding: 20px 15px 30px;
  }
  */ }
  .s-recruit li {
    position: relative; }
    .s-recruit li::after {
      padding: 5px 11px;
      font-size: 1.2rem;
      top: 0;
      right: 0;
      border-radius: 0 0 0 10px; }
    .s-recruit li + li {
      margin-top: 20px; }
  .s-recruit .in {
    border: 2px solid #9AD667;
    position: relative;
    background: #fff;
    border-radius: 0 0 10px 10px; }
    .s-recruit .in .t01 {
      padding: 7px 10px;
      border-radius: 0 0 10px 0;
      font-size: 1.2rem; }
    .s-recruit .in .t02 {
      padding: 5px 10px 0;
      font-size: 1.2rem; }
    .s-recruit .in .flex {
      display: flex;
      flex-wrap: wrap;
      margin: 7px 0 10px; }
      @media screen and (max-width: 767px) {
        .s-recruit .in .flex {
          align-items: center; } }
      .s-recruit .in .flex .img {
        width: 33%; }
        .s-recruit .in .flex .img img {
          height: 61px;
          object-fit: cover;
          overflow: hidden;
          border-radius: 0 10px 10px 0; }
      .s-recruit .in .flex .text {
        width: 67%;
        position: relative;
        top: -4px;
        padding: 0 10px; }
        .s-recruit .in .flex .text p {
          font-size: 1.2rem;
          color: #7FC940; }
    .s-recruit .in .txt-in {
      padding: 0 15px 15px; }
      .s-recruit .in .txt-in .min-text span:not(.bold) {
        font-size: 1.2rem; }
        .s-recruit .in .txt-in .min-text span:not(.bold).s02 {
          padding-top: 3px; }
      .s-recruit .in .txt-in .min-text .s01 {
        width: 40px; }
      .s-recruit .in .txt-in .min-text .s02 {
        padding-left: 10px; }
      .s-recruit .in .txt-in .min-text + .min-text {
        margin-top: 5px; }
    .s-recruit .in::after {
      padding: 5px 11px;
      font-size: 1.2rem;
      top: -2px;
      right: -2px;
      border-radius: 0 0 0 10px; }
  .s-recruit .more {
    margin-top: 20px; }
    .s-recruit .more a {
      display: block;
      text-align: right;
      font-size: 1.4rem;
      position: relative;
      line-height: 1; }
      .s-recruit .more a span {
        padding-right: 25px; }
      .s-recruit .more a .arrow {
        right: 0; }

@media screen and (min-width: 768px) {
  #side-left #side-area {
    position: sticky;
    top: 100px;
    left: 0; } }
@media only screen and (min-width: 767px) and (max-width: 1100px) {
  #side-left #side-area {
    margin: 0 0 35px; } }
@media screen and (max-width: 767px) {
  #side-left #side-area {
    margin: 0 0 35px; } }
#side-left #side-area .side-box {
  background: #F7F7F7; }
  @media screen and (min-width: 768px) {
    #side-left #side-area .side-box .s-recruit {
      padding: 30px 50px 25px; } }
  #side-left #side-area .side-box .s-recruit .d-inner a {
    pointer-events: none !important; }

/**/
.bottom-fixed {
  position: sticky;
  bottom: 0;
  left: 0;
  background: #F7F7F7;
  transition: .3s;
  z-index: 2; }
  @media screen and (max-width: 767px) {
    .bottom-fixed {
      border-top: 1px solid #CECECE;
      opacity: 0;
      visibility: hidden; } }
  @media screen and (max-width: 767px) {
    .bottom-fixed.tp {
      opacity: 1;
      visibility: visible; } }
  .bottom-fixed .bottom-fixed-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center; }
  .bottom-fixed .d-top {
    width: calc( 100% - 378px );
    padding: 0 50px 10px 0; }
    @media screen and (max-width: 767px) {
      .bottom-fixed .d-top {
        display: none; } }
    .bottom-fixed .d-top .t01 {
      padding: 11px 10px;
      min-width: 138px;
      text-align: center;
      border-radius: 0 0 10px 10px; }
    .bottom-fixed .d-top .t02 {
      margin-left: 20px;
      padding: 8px 0 0; }
    .bottom-fixed .d-top .text-box + p {
      font-size: 1.6rem;
      font-weight: 600;
      margin-top: 5px; }
  @media screen and (min-width: 768px) {
    .bottom-fixed .btn-flow {
      width: 378px; } }
  @media screen and (max-width: 767px) {
    .bottom-fixed .btn-flow {
      width: 100%; } }
  @media screen and (max-width: 767px) {
    .bottom-fixed .btn-flow .btn-flow-inner {
      padding: 10px 0; } }
  @media screen and (min-width: 768px) {
    .bottom-fixed .btn-flow.favorite {
      width: 530px;
      margin: 0 auto; } }
  @media screen and (min-width: 768px) {
    .bottom-fixed .btn-flow.favorite .btn-flow-inner {
      gap: 0 30px;
      max-width: none;
      flex-wrap: nowrap; } }
  @media screen and (max-width: 767px) {
    .bottom-fixed .btn-flow.favorite .btn-flow-inner {
      justify-content: space-between;
      gap: 0 0;
      padding: 10px 0; } }
  .bottom-fixed .btn-flow.favorite .btn-flow-inner .telbtn,
  .bottom-fixed .btn-flow.favorite .btn-flow-inner .l-btn {
    width: 100%; }
    @media screen and (max-width: 767px) {
      .bottom-fixed .btn-flow.favorite .btn-flow-inner .telbtn,
      .bottom-fixed .btn-flow.favorite .btn-flow-inner .l-btn {
        width: 49.3%;
        /*
        border-radius: 16px;
        */ } }
    @media screen and (max-width: 767px) {
      .bottom-fixed .btn-flow.favorite .btn-flow-inner .telbtn span,
      .bottom-fixed .btn-flow.favorite .btn-flow-inner .l-btn span {
        /*
        font-size: 1.4rem;
        */
        font-size: 1.7rem; } }
    @media screen and (max-width: 767px) {
      .bottom-fixed .btn-flow.favorite .btn-flow-inner .telbtn::after,
      .bottom-fixed .btn-flow.favorite .btn-flow-inner .l-btn::after {
        /*
        color: #fff;
        */
        left: 20px;
        font-size: 26px; } }
  .bottom-fixed .btn-flow.favorite .btn-flow-inner .telbtn {
    background: #F5865D;
    position: relative;
    padding: 2px 5px 4px 26px; }
    @media screen and (max-width: 767px) {
      .bottom-fixed .btn-flow.favorite .btn-flow-inner .telbtn {
        padding: 1px 5px 4px 26px;
        border-radius: 100px; } }
    .bottom-fixed .btn-flow.favorite .btn-flow-inner .telbtn span {
      display: block;
      line-height: 1; }
      .bottom-fixed .btn-flow.favorite .btn-flow-inner .telbtn span i {
        color: #fff;
        font-size: 1.0rem;
        line-height: 1; }
    .bottom-fixed .btn-flow.favorite .btn-flow-inner .telbtn .tel01 .t01 {
      background: #fff;
      color: #F5865D;
      padding: 3px 3px; }
    .bottom-fixed .btn-flow.favorite .btn-flow-inner .telbtn .tel02 {
      margin-top: 2px; }
      .bottom-fixed .btn-flow.favorite .btn-flow-inner .telbtn .tel02 .t01 {
        font-size: 2.0rem;
        font-weight: 600; }
      @media screen and (max-width: 767px) {
        .bottom-fixed .btn-flow.favorite .btn-flow-inner .telbtn .tel02 .t02 {
          padding-top: 3px;
          display: block; } }
    .bottom-fixed .btn-flow.favorite .btn-flow-inner .telbtn .icon--tel {
      position: absolute;
      top: 0;
      left: 0; }
      .bottom-fixed .btn-flow.favorite .btn-flow-inner .telbtn .icon--tel::after {
        font-size: 18px;
        top: 23px;
        left: 6px; }

/**/
.reruit-sel,
.chk-sel {
  margin: 0 0 15px; }
  .reruit-sel input[type="checkbox"],
  .chk-sel input[type="checkbox"] {
    height: 20px;
    width: 20px;
    margin-right: 5px;
    top: 0; }
  .reruit-sel label,
  .chk-sel label {
    display: flex;
    flex-wrap: wrap;
    font-size: 1.4rem;
    font-weight: 600;
    position: relative;
    top: -1px; }
    @media screen and (max-width: 767px) {
      .reruit-sel label,
      .chk-sel label {
        font-size: 1.2rem; } }

.chk-sel {
  margin: 0 0 38px; }

/**/
#news-area .new-list {
  border-top: 1px solid #E0E0E0; }

/**/
.new-detail-body-outer {
  margin-top: -25px; }
  .new-detail-body-outer .new-detail-body p {
    font-weight: 400;
    margin-top: 1.5em; }
  .new-detail-body-outer .btn-outer {
    margin-top: 55px;
    text-align: center; }
    .new-detail-body-outer .btn-outer .arrow {
      left: 22px; }

/**/
.text-normal-list {
  padding-bottom: 50px; }
  .text-normal-list dl dt {
    color: #7FC940;
    font-size: 2.0rem;
    border-left: 4px solid #7FC940;
    padding-left: 20px; }
    @media screen and (max-width: 767px) {
      .text-normal-list dl dt {
        font-size: 1.6rem;
        padding-left: 15px; } }
    .text-normal-list dl dt span {
      color: inherit;
      font-weight: inherit;
      font-size: inherit;
      display: block;
      position: relative; }
  .text-normal-list dl dd {
    font-weight: 400;
    font-size: 1.4rem;
    padding-left: 24px; }
    @media screen and (max-width: 767px) {
      .text-normal-list dl dd {
        padding-left: 19px; } }
    .text-normal-list dl dd p,
    .text-normal-list dl dd ol {
      margin-top: 15px; }
    .text-normal-list dl dd p,
    .text-normal-list dl dd li {
      font-weight: inherit;
      font-size: inherit;
      line-height: 1.7; }
      @media screen and (max-width: 767px) {
        .text-normal-list dl dd p,
        .text-normal-list dl dd li {
          margin-top: 10px; } }
    .text-normal-list dl dd ol {
      counter-reset: count02 0; }
      .text-normal-list dl dd ol li {
        margin-top: 5px;
        position: relative;
        padding-left: 2.0rem; }
        .text-normal-list dl dd ol li::before {
          content: counter(count02) ". ";
          counter-increment: count02 1;
          position: absolute;
          left: 0;
          font-weight: 600;
          color: #7FC940; }
    .text-normal-list dl dd + dt {
      margin-top: 45px; }
      @media screen and (max-width: 767px) {
        .text-normal-list dl dd + dt {
          margin-top: 25px; } }
  .text-normal-list dl.num {
    counter-reset: count 0; }
    .text-normal-list dl.num dt span::before {
      content: counter(count) ". ";
      counter-increment: count 1; }
  .text-normal-list .kaitei {
    text-align: right;
    margin: 40px 0 0;
    font-weight: 400;
    font-size: 1.4rem; }
  .text-normal-list .btn-outer {
    margin: 50px auto 0;
    max-width: 250px; }
    .text-normal-list .btn-outer .l-btn {
      padding: 14px; }

.text-padding {
  padding: 25px 35px;
  background: #F7F7F7;
  margin-top: 65px; }
  .text-padding .t01 {
    font-weight: 600;
    font-size: 2.0rem;
    color: #7FC940;
    margin: 0 0 15px; }
    @media screen and (max-width: 767px) {
      .text-padding .t01 {
        font-size: 1.6rem; } }
  .text-padding .t02 {
    font-weight: 400;
    font-size: 1.4rem;
    line-height: 1.8; }

/* form */
.form-block {
  max-width: 650px;
  margin-left: auto;
  margin-right: auto;
  width: 100%; }
  .form-block .form-navi {
    margin: 0 0 55px; }
    .form-block .form-navi ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 0 30px; }
      .form-block .form-navi ul li {
        width: 100px;
        position: relative;
        text-align: center; }
        @media screen and (max-width: 767px) {
          .form-block .form-navi ul li {
            width: 85px; } }
        .form-block .form-navi ul li span {
          display: block; }
        .form-block .form-navi ul li .t01 {
          font-size: 1.2rem;
          line-height: 1;
          color: #C4C4C4;
          margin: 0 0 7px; }
        .form-block .form-navi ul li .t02 {
          border-radius: 100px;
          color: #C4C4C4;
          font-size: 1.4rem;
          font-weight: 600;
          line-height: 1;
          background: #F7F7F7;
          padding: 13px 0; }
        .form-block .form-navi ul li + li::after {
          content: "";
          display: block;
          width: 0;
          height: 0;
          border-left: 8px solid #FFCE85;
          border-top: 8px solid transparent;
          border-bottom: 8px solid transparent;
          position: absolute;
          top: 67%;
          left: -20px;
          transform: translateY(-50%); }
  .form-block .text-box {
    display: none;
    padding: 0 20px 20px;
    background: #F7F7F7; }
    .form-block .text-box .t01 {
      display: inline-block;
      font-size: 1.6rem;
      color: #fff;
      font-weight: 600;
      line-height: 1;
      background: #7FC940;
      padding: 6px 13px;
      border-radius: 100px;
      margin: 0 0 0;
      transform: translateY(-50%); }
    .form-block .text-box .t02 {
      font-size: 1.4rem;
      font-weight: 400; }

#form-parts > p {
  font-size: 1.6rem;
  font-weight: 400;
  padding: 45px 0;
  display: none; }
#form-parts dl dt {
  font-weight: 600;
  font-size: 1.6rem;
  position: relative;
  line-height: 1;
  margin: 0 0 13px; }
  #form-parts dl dt span {
    font-size: 1.2rem;
    font-weight: 400;
    padding-left: 1em; }
  #form-parts dl dt.must {
    padding-left: 43px; }
    #form-parts dl dt.must::after {
      display: block;
      content: "必須";
      width: 37px;
      background: #F5865D;
      border-radius: 100px;
      position: absolute;
      top: 0;
      left: 0;
      line-height: 1;
      color: #fff;
      font-size: 1.2rem;
      text-align: center;
      padding: 3px 0; }
#form-parts dl dd {
  font-size: 1.6rem;
  font-weight: 400; }
  #form-parts dl dd .min {
    font-size: 1.2rem;
    font-weight: 400;
    margin: 4px 0 0; }
  #form-parts dl dd input,
  #form-parts dl dd label,
  #form-parts dl dd textarea {
    font-size: inherit;
    font-weight: inherit;
    resize: none; }
  #form-parts dl dd label a {
    font-weight: inherit;
    color: #2D70DB;
    text-decoration: underline; }
    @media screen and (min-width: 768px) {
      #form-parts dl dd label a:hover {
        text-decoration: none; } }
  #form-parts dl dd input[type="text"] {
    padding: 18px 15px 16px; }
  #form-parts dl dd textarea {
    padding: 18px 15px 16px;
    width: 100%;
    border-radius: 5px;
    border: 1px solid #222; }
  #form-parts dl dd + dt {
    margin-top: 45px; }
  #form-parts dl dd .parts-inner.kiyaku {
    display: flex; }
  #form-parts dl dd .parts-inner.flex {
    display: flex;
    gap: 0 10px; }
  #form-parts dl dd .parts-inner ul {
    margin-top: 20px; }
    #form-parts dl dd .parts-inner ul li {
      margin-top: 18px; }
  #form-parts dl dd .parts-inner .in-input {
    margin: 13px 0 0 30px; }
#form-parts .btn-outer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  margin: 40px 0 0;
  padding: 40px 0 0;
  border-top: 1px solid #CECECE;
  position: relative; }
  #form-parts .btn-outer button,
  #form-parts .btn-outer input[type="button"],
  #form-parts .btn-outer input[type="submit"] {
    display: none;
    cursor: pointer;
    transition-property: all;
    transition-duration: 0.5s;
    transition-timing-function: ease;
    transition-delay: 0s; }
  #form-parts .btn-outer button:not(.back),
  #form-parts .btn-outer input[type="button"]:not(.back),
  #form-parts .btn-outer input[type="submit"]:not(.back) {
    border: 3px solid #9AD667;
    background: #B8E57A;
    width: 250px;
    border-radius: 100px;
    height: 60px;
    font-size: 1.8rem;
    font-weight: 500;
    color: #222; }
    @media screen and (min-width: 768px) {
      #form-parts .btn-outer button:not(.back):hover,
      #form-parts .btn-outer input[type="button"]:not(.back):hover,
      #form-parts .btn-outer input[type="submit"]:not(.back):hover {
        opacity: 0.7; } }
    #form-parts .btn-outer button:not(.back).disabled,
    #form-parts .btn-outer input[type="button"]:not(.back).disabled,
    #form-parts .btn-outer input[type="submit"]:not(.back).disabled {
      pointer-events: none;
      background: #F7F7F7;
      border-color: #E0E0E0;
      color: #C4C4C4; }
  #form-parts .btn-outer .back {
    background: none;
    font-size: 1.4rem;
    font-weight: 500;
    position: relative;
    border: none;
    font-weight: 500;
    padding-left: 23px !important; }
    @media screen and (min-width: 768px) {
      #form-parts .btn-outer .back {
        position: absolute;
        bottom: 20px;
        left: 0; } }
    @media screen and (max-width: 767px) {
      #form-parts .btn-outer .back {
        margin: -10px 0px 30px -5px; } }
    #form-parts .btn-outer .back .arrow {
      right: auto;
      left: 0; }
      #form-parts .btn-outer .back .arrow::before {
        background: #C4C4C4; }
      #form-parts .btn-outer .back .arrow::after {
        right: 3.5px;
        transform: rotate(230deg); }

/* form：input */
#form.input .form-block .text-box {
  display: block; }
#form.input .form-block .form-navi ul .input .t01 {
  color: #F5865D; }
#form.input .form-block .form-navi ul .input .t02 {
  background: #F5865D;
  color: #fff; }
#form.input #form-parts .input {
  display: block; }
#form.input .btn-outer button.input,
#form.input .btn-outer input[type="button"],
#form.input .btn-outer input[type="submit"] {
  display: block; }

/* form：confirm */
#form.confirm .form-block .form-navi ul .confirm .t01 {
  color: #F5865D; }
#form.confirm .form-block .form-navi ul .confirm .t02 {
  background: #F5865D;
  color: #fff; }
#form.confirm #form-parts .confirm {
  display: block;
  padding: 0 0 0; }
#form.confirm #form-parts dl dt {
  padding-left: 0;
  border-top: 1px solid #CECECE;
  padding-top: 33px;
  margin-top: 33px; }
  #form.confirm #form-parts dl dt span, #form.confirm #form-parts dl dt.must::after {
    display: none !important; }
#form.confirm #form-parts dl dd {
  padding: 0.5em 0 0 1em; }
  #form.confirm #form-parts dl dd .min {
    display: none; }
  #form.confirm #form-parts dl dd .parts-inner ul {
    margin-top: -10px; }
    #form.confirm #form-parts dl dd .parts-inner ul li {
      margin-top: 10px; }
#form.confirm .btn-outer button.confirm,
#form.confirm .btn-outer input[type="button"].confirm,
#form.confirm .btn-outer input[type="submit"].confirm {
  display: block; }

/* form：thanks */
#form.thanks .form-block .form-navi {
  margin-bottom: 40px; }
  #form.thanks .form-block .form-navi ul .thanks .t01 {
    color: #F5865D; }
  #form.thanks .form-block .form-navi ul .thanks .t02 {
    background: #F5865D;
    color: #fff; }

.text-box-thanks {
  max-width: 650px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-bottom: 50px; }
  .text-box-thanks .t01 {
    font-weight: 600;
    font-size: 2.0rem;
    color: #7FC940; }
    @media screen and (max-width: 767px) {
      .text-box-thanks .t01 {
        font-size: 1.6rem; } }
  .text-box-thanks .t02 {
    font-size: 1.6rem;
    font-weight: 400;
    margin-top: 1.2em; }
    @media screen and (max-width: 767px) {
      .text-box-thanks .t02 {
        font-size: 1.4rem; } }
    .text-box-thanks .t02 em {
      display: block;
      font-weight: 600;
      font-size: inherit; }
  .text-box-thanks .btn-outer {
    margin: 50px auto 0;
    max-width: 250px; }
    .text-box-thanks .btn-outer .l-btn {
      padding: 14px; }

::placeholder {
  color: #C4C4C4; }

/**********/
/* search */
/**********/
.modal-open {
  cursor: pointer; }

.modal-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
  padding: 40px 20px;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transition: .3s;
  box-sizing: border-box;
  z-index: 10000; }
  @media screen and (min-width: 768px) {
    .modal-container {
      height: 100%; } }
  @media screen and (max-width: 767px) {
    .modal-container {
      padding: 0; } }
  .modal-container .sub-ttl {
    		/*
    		@include pc() {
        padding-left: 50px;
    		}
    		*/ }
    .modal-container .sub-ttl span {
      color: #fff;
      letter-spacing: 0.01em; }
      .modal-container .sub-ttl span i {
        padding-left: 2px; }
    .modal-container .sub-ttl::after {
      color: #B8E57A !important; }
  .modal-container .search-block {
    padding: 0;
    background: #fff; }
    @media screen and (max-width: 767px) {
      .modal-container .search-block {
        height: calc( 100vh - 75px );
        background: #F1FDE8; } }
    .modal-container .search-block .search-block-inner {
      padding: 30px 8.8%;
      overflow-y: scroll; }
      @media screen and (min-width: 768px) {
        .modal-container .search-block .search-block-inner {
          max-height: 550px; } }
      @media screen and (max-width: 767px) {
        .modal-container .search-block .search-block-inner {
          height: 100%;
          padding: 0;
          padding-bottom: 100px; } }
      @media screen and (min-width: 768px) {
        .modal-container .search-block .search-block-inner.wide {
          padding: 30px 5.8%; } }
    .modal-container .search-block .result-body {
      background: #F7F7F7;
      padding: 15px 6%; }
      @media screen and (max-width: 767px) {
        .modal-container .search-block .result-body {
          position: absolute;
          bottom: 0;
          left: 0;
          padding: 7px 15px;
          border-top: 1px solid #CECECE;
          justify-content: space-between;
          width: 100%; } }
      @media screen and (max-width: 767px) {
        .modal-container .search-block .result-body .result-text {
          width: 40%; } }
      @media screen and (max-width: 767px) {
        .modal-container .search-block .result-body .result-text .r-num {
          margin-left: 0;
          line-height: 1; } }
      @media screen and (max-width: 767px) {
        .modal-container .search-block .result-body .btn {
          /*
          width: 51.6%;
          */
          width: 55.6%;
          margin: 0; } }
      @media screen and (max-width: 767px) {
        .modal-container .search-block .result-body .btn .l-btn span {
          font-size: 1.4rem;
          padding-left: 48px;
          /*
          padding-left: 25px;
          */
          line-height: 1.4; } }
      @media screen and (max-width: 767px) {
        .modal-container .search-block .result-body .btn .l-btn::after {
          font-size: 30px; } }
  .modal-container .black-cover {
    display: block;
    content: "";
    position: fixed;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    transition: .3s;
    z-index: 0;
    top: 0;
    left: 0; }
    @media screen and (max-width: 767px) {
      .modal-container .black-cover {
        background: #F1FDE8; } }
  .modal-container.active {
    opacity: 1;
    visibility: visible; }
  @media screen and (min-width: 768px) {
    .modal-container::before {
      content: "";
      display: inline-block;
      vertical-align: middle;
      height: 100%; } }
  .modal-container .modal-body {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    max-width: 1000px;
    width: calc( 100% - 30px );
    padding: 15px 0;
    overflow: hidden;
    z-index: 1; }
    @media screen and (max-width: 767px) {
      .modal-container .modal-body {
        padding: 0;
        width: 100%;
        display: block;
        /*
        max-width: 1000px;
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        */ } }
    .modal-container .modal-body .modal-close {
      position: absolute;
      display: flex;
      align-items: center;
      justify-content: center;
      top: 0;
      right: 0;
      width: 30px;
      height: 30px;
      font-size: 40px;
      color: #fff;
      cursor: pointer;
      font-weight: 300;
      z-index: 2; }
      @media screen and (max-width: 767px) {
        .modal-container .modal-body .modal-close {
          width: 40px;
          height: 40px;
          background: #9AD667;
          border-radius: 40px;
          line-height: 1;
          font-size: 24px;
          top: 15px;
          right: 15px; } }
    .modal-container .modal-body .modal-content {
      text-align: left;
      display: flex;
      flex-wrap: wrap; }
      @media screen and (min-width: 768px) {
        .modal-container .modal-body .modal-content {
          align-items: center; } }
      @media screen and (max-width: 767px) {
        .modal-container .modal-body .modal-content {
          width: 100% !important; } }
      .modal-container .modal-body .modal-content .modal-inner {
        display: none;
        max-width: 1000px;
        width: 100%; }
        @media screen and (max-width: 767px) {
          .modal-container .modal-body .modal-content .modal-inner {
            height: 100%; } }
        @media screen and (max-width: 767px) {
          .modal-container .modal-body .modal-content .modal-inner .sub-ttl {
            display: flex;
            height: 70px;
            align-items: center;
            margin: 0 0 5px;
            padding: 0 15px; } }
        @media screen and (max-width: 767px) {
          .modal-container .modal-body .modal-content .modal-inner .sub-ttl span {
            padding-left: 45px;
            color: #222; } }
        @media screen and (max-width: 767px) {
          .modal-container .modal-body .modal-content .modal-inner .sub-ttl::after {
            top: 50%;
            transform: translateY(-50%);
            left: 15px;
            font-size: 40px; } }
        @media screen and (max-width: 767px) {
          .modal-container .modal-body .modal-content .modal-inner .sub-ttl.icon--position span {
            padding-left: 37px !important; } }
        @media screen and (max-width: 767px) {
          .modal-container .modal-body .modal-content .modal-inner#modal-base .search-block {
            width: 92.6%;
            margin: 0 auto;
            padding: 0 0 20px;
            background: #fff;
            border: 1px solid #CECECE; } }
        @media screen and (max-width: 767px) {
          .modal-container .modal-body .modal-content .modal-inner#modal-base .search-block .search-block-inner {
            padding-top: 20px;
            padding-right: 15px;
            padding-left: 15px; } }
        @media screen and (max-width: 767px) {
          .modal-container .modal-body .modal-content .modal-inner#modal-base .search-block .result-body {
            margin: 0 -15px;
            width: calc(100% + 30px); } }
  .modal-container .chk-outer-sch {
    overflow: hidden; }
    @media screen and (min-width: 768px) {
      .modal-container .chk-outer-sch {
        border: 2px solid #9AD667;
        border-radius: 5px; } }
    @media screen and (max-width: 767px) {
      .modal-container .chk-outer-sch {
        background: #fff; } }
    .modal-container .chk-outer-sch .checkbox {
      /*
      margin-right: 0;
      @include pc() {
      top: 2.2px;
      }
      */ }
      @media screen and (max-width: 767px) {
        .modal-container .chk-outer-sch .checkbox {
          top: 2.4px; } }
      .modal-container .chk-outer-sch .checkbox + label {
        padding-left: 4px; }
    .modal-container .chk-outer-sch .chk-outer-sch-inner {
      display: none; }
    .modal-container .chk-outer-sch .crs_btn {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: 15px;
      width: 28px;
      height: 28px;
      overflow: hidden;
      cursor: pointer; }
      .modal-container .chk-outer-sch .crs_btn::before, .modal-container .chk-outer-sch .crs_btn::after {
        position: absolute;
        margin: auto;
        content: "";
        vertical-align: middle;
        width: 2px;
        height: 2px;
        background: #fff;
        top: 50%;
        left: 50%;
        transform: translateX(-50%) translateY(-50%); }
      .modal-container .chk-outer-sch .crs_btn::before {
        width: 14px; }
      .modal-container .chk-outer-sch .crs_btn::after {
        height: 14px; }
      .modal-container .chk-outer-sch .crs_btn.open::after {
        display: none; }
    .modal-container .chk-outer-sch .top {
      background: #9AD667;
      padding: 8px 30px 11px;
      position: relative; }
      @media screen and (max-width: 767px) {
        .modal-container .chk-outer-sch .top {
          padding: 10px 15px;
          /*
          border-radius: 10px;
          */ } }
    .modal-container .chk-outer-sch .city {
      background: #F1FDE8;
      padding: 10px 47px;
      position: relative; }
      @media screen and (max-width: 767px) {
        .modal-container .chk-outer-sch .city {
          padding: 10px 15px;
          /*
          border-radius: 10px;
          */ } }
      .modal-container .chk-outer-sch .city .crs_btn::before, .modal-container .chk-outer-sch .city .crs_btn::after {
        background-color: #9AD667; }
      .modal-container .chk-outer-sch .city + ul {
        border-top: 2px solid #9DD869; }
      .modal-container .chk-outer-sch .city.disp-none {
        display: none !important; }
    .modal-container .chk-outer-sch ul {
      display: flex;
      flex-wrap: wrap;
      padding: 22px 50px 27px;
      margin: 0 0 -22px -3%; }
      @media screen and (max-width: 767px) {
        .modal-container .chk-outer-sch ul {
          padding: 15px 15px 25px;
          margin: 0 0 -15px -4%; } }
      .modal-container .chk-outer-sch ul li {
        width: 22%;
        margin: 0 0 22px 3%;
        display: flex;
        align-items: flex-start; }
        @media screen and (max-width: 767px) {
          .modal-container .chk-outer-sch ul li {
            width: 46%;
            margin: 0 0 15px 4%; } }
      @media screen and (min-width: 768px) {
        .modal-container .chk-outer-sch ul.three-line li {
          width: 30.333%; } }
      .modal-container .chk-outer-sch ul + .city {
        border-top: 2px solid #9DD869; }
    .modal-container .chk-outer-sch label {
      font-size: 1.6rem;
      font-weight: 400; }
    @media screen and (min-width: 768px) {
      .modal-container .chk-outer-sch + .chk-outer-sch {
        margin-top: 20px; } }
    @media screen and (max-width: 767px) {
      .modal-container .chk-outer-sch + .chk-outer-sch {
        margin-top: 2px; } }

.return-outer.data_on {
  margin: 0 0 0 -3%;
  display: flex;
  flex-wrap: wrap;
  width: 103%;
  		/*
  		& + .sentaku-outer {
  
  			.sentaku-result {
  
  				display: none;
  
  			}
  
  		}
  		*/ }
  @media screen and (max-width: 767px) {
    .return-outer.data_on {
      margin: 0 0 0 -2%;
      width: 102%; } }
  .return-outer.data_on li {
    width: 22%;
    margin: 15px 0 0 3%;
    display: none; }
    @media screen and (max-width: 767px) {
      .return-outer.data_on li {
        width: 48%;
        margin: 13px 0 0 2%; } }
    @media screen and (max-width: 767px) {
      .return-outer.data_on li label {
        margin-top: 3.5px; } }
    .return-outer.data_on li:has(input:checked) {
      display: flex; }
  @media screen and (min-width: 768px) {
    .return-outer.data_on.three-line li {
      width: 30.333%; } }
.return-outer:has(input:checked) + .sentaku-outer .sentaku-result {
  display: none; }

/*
#modal-shikucyouson {

	.crs_btn {

		@include pc() {
		display: none !important;
		}

	}

}
*/
body#about {
  background-color: #F1FDE7; }
  body#about #about-body {
    margin-bottom: -80px; }
    @media screen and (max-width: 767px) {
      body#about #about-body {
        margin-bottom: -45px; } }
    body#about #about-body .in-box {
      font-family: 'Noto Sans JP', sans-serif;
      font-weight: 500;
      padding: 30px 0;
      max-width: 1000px;
      margin: 0 auto; }
      body#about #about-body .in-box + .in-box {
        margin-top: 40px; }
      body#about #about-body .in-box p {
        color: #545454;
        line-height: 1.5; }
      body#about #about-body .in-box .ttl {
        text-align: center;
        margin: 0 0 50px; }
        @media screen and (max-width: 767px) {
          body#about #about-body .in-box .ttl {
            margin: 0 0 40px; } }
        body#about #about-body .in-box .ttl span {
          display: block;
          line-height: 1; }
          body#about #about-body .in-box .ttl span.t01 img {
            margin: 0 auto; }
          body#about #about-body .in-box .ttl span.t02 {
            font-weight: 700;
            font-size: 2.4rem;
            margin-top: 33px;
            color: #545454; }
            @media screen and (max-width: 767px) {
              body#about #about-body .in-box .ttl span.t02 {
                margin-top: 20px; } }
    @media screen and (min-width: 768px) {
      body#about #about-body #beginners {
        padding-right: 38px;
        padding-left: 38px; } }
    body#about #about-body #beginners .img-flex {
      display: flex;
      flex-wrap: wrap; }
      @media screen and (min-width: 768px) {
        body#about #about-body #beginners .img-flex {
          align-items: flex-end; } }
      @media screen and (max-width: 767px) {
        body#about #about-body #beginners .img-flex {
          flex-direction: column-reverse;
          max-width: 375px;
          margin: 0 auto; } }
      @media screen and (min-width: 768px) {
        body#about #about-body #beginners .img-flex .text {
          width: 55.1%;
          padding-right: 30px; } }
      body#about #about-body #beginners .img-flex .text .t01 {
        font-size: 2.6rem;
        color: #02601D;
        line-height: 1.4; }
        @media screen and (max-width: 767px) {
          body#about #about-body #beginners .img-flex .text .t01 {
            font-size: 2.0rem; } }
      body#about #about-body #beginners .img-flex .text .t02 {
        margin-top: 30px;
        font-size: 2.0rem; }
        @media screen and (min-width: 768px) {
          body#about #about-body #beginners .img-flex .text .t02 {
            color: #3C3C43;
            letter-spacing: -0.001em; } }
        @media screen and (max-width: 767px) {
          body#about #about-body #beginners .img-flex .text .t02 {
            font-size: 1.4rem;
            line-height: 1.6;
            margin-top: 10px; } }
      @media screen and (min-width: 768px) {
        body#about #about-body #beginners .img-flex .img {
          width: 44.9%; } }
      @media screen and (max-width: 767px) {
        body#about #about-body #beginners .img-flex .img {
          margin: 0 -15px 28px; } }
    @media screen and (min-width: 768px) {
      body#about #about-body #feature {
        padding-right: 50px;
        padding-left: 50px; } }
    @media screen and (max-width: 767px) {
      body#about #about-body #feature .ft-box {
        padding: 0 5px; } }
    body#about #about-body #feature .ft-box ul li {
      background: #fff;
      border-radius: 25px;
      overflow: hidden;
      box-shadow: 1px 4px 5px 0px rgba(0, 0, 0, 0.5); }
      @media screen and (min-width: 768px) {
        body#about #about-body #feature .ft-box ul li {
          display: flex;
          flex-wrap: wrap;
          align-items: center; } }
      body#about #about-body #feature .ft-box ul li + li {
        margin-top: 30px; }
      @media screen and (min-width: 768px) {
        body#about #about-body #feature .ft-box ul li .img {
          width: 15.6%; } }
      @media screen and (max-width: 767px) {
        body#about #about-body #feature .ft-box ul li .img {
          width: 100%; } }
      @media screen and (max-width: 767px) {
        body#about #about-body #feature .ft-box ul li .img img {
          width: 100%; } }
      @media screen and (min-width: 768px) {
        body#about #about-body #feature .ft-box ul li .text {
          width: 84.4%;
          padding: 0 30px; } }
      @media screen and (max-width: 767px) {
        body#about #about-body #feature .ft-box ul li .text {
          padding: 8px 14px 33px;
          width: 100%; } }
      body#about #about-body #feature .ft-box ul li .text .t01 {
        font-size: 2.4rem;
        margin: 0 0 10px; }
        @media screen and (max-width: 767px) {
          body#about #about-body #feature .ft-box ul li .text .t01 {
            font-size: 1.8rem; } }
        body#about #about-body #feature .ft-box ul li .text .t01 span {
          display: inline-block;
          border-bottom: 2px solid #A7A7A7;
          padding: 0 0 2px;
          font-weight: 600; }
          @media screen and (max-width: 767px) {
            body#about #about-body #feature .ft-box ul li .text .t01 span {
              display: block;
              padding: 0 0 4px; } }
      body#about #about-body #feature .ft-box ul li .text .t02 {
        font-size: 1.8rem;
        font-weight: 400; }
        @media screen and (max-width: 767px) {
          body#about #about-body #feature .ft-box ul li .text .t02 {
            font-size: 1.4rem;
            line-height: 1.6; } }
    @media screen and (min-width: 768px) {
      body#about #about-body #support {
        padding-right: 60px;
        padding-left: 60px; } }
    @media screen and (max-width: 767px) {
      body#about #about-body #support .card-box {
        margin: 0 -15px; } }
    @media screen and (min-width: 768px) {
      body#about #about-body #support .card-box ul {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 20px 20px; } }
    body#about #about-body #support .card-box ul li {
      background: #fff;
      border-radius: 25px;
      overflow: hidden;
      box-shadow: 1px 4px 5px 0px rgba(0, 0, 0, 0.5);
      padding: 25px 25px 20px;
      counter-increment: mycounter; }
      body#about #about-body #support .card-box ul li .t01 {
        font-size: 1.8rem;
        font-weight: 600;
        margin: 0 0 8px;
        line-height: 1.4;
        position: relative;
        padding-left: 62px; }
        @media screen and (min-width: 768px) {
          body#about #about-body #support .card-box ul li .t01 {
            color: #343B42; } }
        @media screen and (max-width: 767px) {
          body#about #about-body #support .card-box ul li .t01 {
            font-size: 2.4rem;
            padding-left: 85px;
            margin: 0 0 25px; } }
        body#about #about-body #support .card-box ul li .t01::before {
          content: counter(mycounter,decimal-leading-zero);
          position: absolute;
          top: 0;
          left: 0;
          font-size: 4.8rem;
          font-weight: 400;
          line-height: 1;
          color: #9AD667; }
          @media screen and (max-width: 767px) {
            body#about #about-body #support .card-box ul li .t01::before {
              font-size: 6.4rem; } }
      body#about #about-body #support .card-box ul li .t02 {
        font-size: 1.3rem;
        font-weight: 400;
        line-height: 1.3;
        margin-top: 8px; }
        @media screen and (max-width: 767px) {
          body#about #about-body #support .card-box ul li .t02 {
            margin-top: 17px;
            line-height: 1.5; } }
        body#about #about-body #support .card-box ul li .t02 em {
          color: #9AD667;
          font-weight: 600; }
      @media screen and (max-width: 767px) {
        body#about #about-body #support .card-box ul li + li {
          margin-top: 30px; } }
      @media screen and (max-width: 767px) {
        body#about #about-body #support .card-box ul li:nth-child(odd) {
          margin-left: 25px;
          border-radius: 25px 0 0 25px;
          padding: 20px 0px 30px 30px; } }
      @media screen and (max-width: 767px) {
        body#about #about-body #support .card-box ul li:nth-child(odd) .t02 {
          padding-right: 25px; } }
      @media screen and (max-width: 767px) {
        body#about #about-body #support .card-box ul li:nth-child(even) {
          margin-right: 25px;
          border-radius: 0 25px 25px 0;
          padding: 20px 30px 30px 0px; } }
      @media screen and (max-width: 767px) {
        body#about #about-body #support .card-box ul li:nth-child(even) .t01 {
          margin-left: 55px; } }
      @media screen and (max-width: 767px) {
        body#about #about-body #support .card-box ul li:nth-child(even) .t02 {
          padding-left: 15px; } }
    body#about #about-body #flow .mid {
      line-height: 2.0;
      color: #02601D;
      font-size: 2.0rem;
      text-align: center; }
      @media screen and (max-width: 767px) {
        body#about #about-body #flow .mid {
          font-size: 1.4rem; } }
    body#about #about-body #flow .move-contents {
      max-width: 960px;
      margin: 30px auto 30px; }
      @media screen and (max-width: 960px) {
        body#about #about-body #flow .move-contents {
          margin-right: -15px;
          margin-bottom: 0;
          padding-left: 60px;
          background-position: 20px 0;
          background-size: 20px 100%;
          background-repeat: no-repeat;
          background-image: url(./../img/about/arrow_sp.png); } }
      body#about #about-body #flow .move-contents ul {
        display: flex;
        flex-wrap: wrap; }
        @media screen and (max-width: 960px) {
          body#about #about-body #flow .move-contents ul {
            display: block;
            box-shadow: 1px 4px 5px 0px rgba(0, 0, 0, 0.5); } }
        body#about #about-body #flow .move-contents ul li {
          position: relative;
          width: calc( 100% / 6 );
          overflow: hidden;
          background: #fff;
          padding: 25px 2.6% 69px;
          border-right: 1px solid #D1D1D1;
          cursor: pointer;
          transition: 0.7s; }
          @media screen and (max-width: 960px) {
            body#about #about-body #flow .move-contents ul li {
              width: 100% !important;
              padding: 15px 14.5px 20px; } }
          @media screen and (max-width: 960px) {
            body#about #about-body #flow .move-contents ul li::before {
              content: "";
              background-position: 0 0;
              background-repeat: no-repeat;
              background-size: 100% 100%;
              background-image: url(./../img/about/step01.svg);
              width: 85px;
              height: 70px;
              position: absolute;
              top: 15px;
              right: 50px; } }
          body#about #about-body #flow .move-contents ul li:nth-child(2)::before {
            background-image: url(./../img/about/step02.svg); }
          body#about #about-body #flow .move-contents ul li:nth-child(3)::before {
            background-image: url(./../img/about/step03.svg); }
          body#about #about-body #flow .move-contents ul li:nth-child(4)::before {
            background-image: url(./../img/about/step04.svg); }
          body#about #about-body #flow .move-contents ul li:nth-child(5)::before {
            background-image: url(./../img/about/step05.svg); }
          body#about #about-body #flow .move-contents ul li:nth-child(6)::before {
            background-image: url(./../img/about/step06.svg); }
          body#about #about-body #flow .move-contents ul li::after {
            content: "";
            background-position: 0 0;
            background-repeat: no-repeat;
            background-size: 100% 100%;
            background-image: url(./../img/about/icon_plus.png);
            width: 26px;
            height: 26px;
            position: absolute;
            left: 50%;
            bottom: 20px;
            transform: translateX(-50%); }
            @media screen and (max-width: 960px) {
              body#about #about-body #flow .move-contents ul li::after {
                left: auto;
                bottom: auto;
                transform: none;
                top: 33px;
                right: 15px; } }
          body#about #about-body #flow .move-contents ul li .t01 {
            font-size: 2.0rem;
            font-weight: 600;
            color: #9AD667; }
          body#about #about-body #flow .move-contents ul li .t02 {
            font-size: 1.4rem;
            font-weight: 400;
            color: #545454;
            margin-top: 5px; }
            @media screen and (max-width: 960px) {
              body#about #about-body #flow .move-contents ul li .t02 {
                padding-bottom: 12px; } }
          body#about #about-body #flow .move-contents ul li .move-inner {
            display: flex;
            flex-wrap: wrap;
            width: 310px;
            margin-top: 25px; }
            @media screen and (max-width: 960px) {
              body#about #about-body #flow .move-contents ul li .move-inner {
                width: 100%;
                display: block;
                padding: 0 10px;
                padding: 15px 10px 0;
                border-top: 1px solid #003855;
                margin: 15px 0 0 0;
                display: none; } }
            @media screen and (min-width: 961px) {
              body#about #about-body #flow .move-contents ul li .move-inner {
                display: flex !important; } }
            body#about #about-body #flow .move-contents ul li .move-inner .img {
              width: 106px;
              padding-left: 10px;
              transition: 0.7s; }
              @media screen and (max-width: 960px) {
                body#about #about-body #flow .move-contents ul li .move-inner .img {
                  display: none; } }
            body#about #about-body #flow .move-contents ul li .move-inner .text {
              width: calc( 100% - 106px );
              padding-left: 14px;
              opacity: 0;
              max-width: 215px;
              transition: 0.7s; }
              @media screen and (max-width: 960px) {
                body#about #about-body #flow .move-contents ul li .move-inner .text {
                  max-width: 100% !important;
                  width: 100% !important;
                  padding: 0;
                  opacity: 1; } }
              body#about #about-body #flow .move-contents ul li .move-inner .text p {
                font-size: 1.4rem;
                line-height: 1.8;
                color: #003855;
                font-weight: 400; }
          body#about #about-body #flow .move-contents ul li:last-child {
            border-right: 2px solid #D1D1D1; }
          @media screen and (max-width: 960px) {
            body#about #about-body #flow .move-contents ul li + li {
              border-top: 1px solid #D1D1D1; } }
        body#about #about-body #flow .move-contents ul.on li {
          width: calc( 62.4% / 5 ); }
          body#about #about-body #flow .move-contents ul.on li.target {
            width: 37.6%;
            background-color: #FFF4E2; }
            body#about #about-body #flow .move-contents ul.on li.target::after {
              background-image: url(./../img/about/icon_minasu.png); }
            body#about #about-body #flow .move-contents ul.on li.target .t01 {
              color: #02601D; }
            body#about #about-body #flow .move-contents ul.on li.target .t02 {
              position: relative; }
              body#about #about-body #flow .move-contents ul.on li.target .t02::after {
                content: "";
                background-color: #02601D;
                width: 100%;
                height: 2px;
                left: 0;
                bottom: -7px;
                position: absolute; }
                @media screen and (max-width: 960px) {
                  body#about #about-body #flow .move-contents ul.on li.target .t02::after {
                    display: none !important; } }
            body#about #about-body #flow .move-contents ul.on li.target .move-inner .img {
              width: 96px;
              padding-left: 0px; }
            body#about #about-body #flow .move-contents ul.on li.target .move-inner .text {
              opacity: 1;
              width: calc( 100% - 96px ); }
          body#about #about-body #flow .move-contents ul.on li:not(.target) {
            padding: 25px 0.8% 69px; }
            @media screen and (max-width: 960px) {
              body#about #about-body #flow .move-contents ul.on li:not(.target) {
                padding: 15px 14.5px 20px; } }
            body#about #about-body #flow .move-contents ul.on li:not(.target) .move-inner .img {
              padding-left: 1.5%; }
    body#about #about-body #flow .arrow_flow {
      max-width: 960px;
      margin: 0 auto; }
      @media screen and (max-width: 960px) {
        body#about #about-body #flow .arrow_flow {
          display: none; } }
    @media screen and (max-width: 767px) {
      body#about #about-body #question {
        padding-bottom: 55px; } }
    body#about #about-body #question .faq-body {
      max-width: 820px;
      margin: 0 auto; }
      body#about #about-body #question .faq-body .faq-text {
        background-color: #fff;
        border-radius: 10px;
        box-shadow: 1px 4px 5px 0px rgba(0, 0, 0, 0.5);
        padding: 35px 25px 35px;
        cursor: pointer; }
        @media screen and (max-width: 767px) {
          body#about #about-body #question .faq-body .faq-text {
            padding: 20px 15px 22px; } }
        body#about #about-body #question .faq-body .faq-text p {
          position: relative;
          padding-left: 50px;
          color: #545454; }
          @media screen and (max-width: 767px) {
            body#about #about-body #question .faq-body .faq-text p {
              padding-left: 30px; } }
          body#about #about-body #question .faq-body .faq-text p::before {
            font-size: 4.0rem;
            line-height: 1;
            position: absolute;
            top: 50%;
            left: 0; }
            @media screen and (min-width: 768px) {
              body#about #about-body #question .faq-body .faq-text p::before {
                transform: translateY(-50%); } }
            @media screen and (max-width: 767px) {
              body#about #about-body #question .faq-body .faq-text p::before {
                top: -5px;
                font-size: 2.4rem; } }
        body#about #about-body #question .faq-body .faq-text .q {
          font-size: 2.0rem;
          padding-right: 45px; }
          @media screen and (max-width: 767px) {
            body#about #about-body #question .faq-body .faq-text .q {
              font-size: 1.4rem;
              padding-right: 25px; } }
          body#about #about-body #question .faq-body .faq-text .q::before {
            content: "Q";
            color: #9AD667; }
            @media screen and (min-width: 768px) {
              body#about #about-body #question .faq-body .faq-text .q::before {
                top: 40%; } }
          body#about #about-body #question .faq-body .faq-text .q::after {
            content: "";
            background-position: 0 0;
            background-repeat: no-repeat;
            background-size: 100% 100%;
            background-image: url(./../img/about/icon_q.png);
            width: 30px;
            height: 30px;
            top: 50%;
            right: 0;
            transform: translateY(-50%);
            position: absolute; }
            @media screen and (max-width: 767px) {
              body#about #about-body #question .faq-body .faq-text .q::after {
                width: 20px;
                height: 20px; } }
        body#about #about-body #question .faq-body .faq-text .a {
          font-size: 1.8rem;
          color: #707070;
          margin: 35px 0 0;
          font-weight: 400;
          display: none; }
          @media screen and (max-width: 767px) {
            body#about #about-body #question .faq-body .faq-text .a {
              font-size: 1.3rem;
              margin: 25px 0 0; } }
          body#about #about-body #question .faq-body .faq-text .a::before {
            content: "A";
            color: #FA9137;
            left: 3px; }
            @media screen and (max-width: 767px) {
              body#about #about-body #question .faq-body .faq-text .a::before {
                left: 2px; } }
        body#about #about-body #question .faq-body .faq-text + .faq-text {
          margin-top: 30px; }
          @media screen and (max-width: 767px) {
            body#about #about-body #question .faq-body .faq-text + .faq-text {
              margin-top: 15px; } }
        body#about #about-body #question .faq-body .faq-text.on .q::after {
          background-image: url(./../img/about/icon_close.png); }
    body#about #about-body #promise {
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover;
      background-image: url(./../img/about/bg_promise.png);
      padding-top: 60px;
      padding-bottom: 60px; }
      @media screen and (max-width: 767px) {
        body#about #about-body #promise {
          margin: 0 -15px; } }
      body#about #about-body #promise .promise-inner {
        max-width: 680px;
        margin: 0 auto;
        padding: 35px 61px 30px;
        background: #fff;
        border-radius: 25px;
        box-shadow: 1px 4px 5px 0px rgba(0, 0, 0, 0.3); }
        @media screen and (max-width: 767px) {
          body#about #about-body #promise .promise-inner {
            margin: 0 18px;
            padding: 35px 19px 5px; } }
        body#about #about-body #promise .promise-inner .mm {
          color: #067753;
          text-align: center;
          font-size: 3.6rem;
          margin: 0 0 20px;
          font-weight: 600; }
          @media screen and (max-width: 767px) {
            body#about #about-body #promise .promise-inner .mm {
              font-size: 2.4rem;
              margin: 0 0 25px; } }
        body#about #about-body #promise .promise-inner ul li {
          border-bottom: 2px solid #C8C8C8;
          padding-bottom: 13px;
          margin-bottom: 8px; }
          @media screen and (max-width: 767px) {
            body#about #about-body #promise .promise-inner ul li {
              padding-bottom: 12px;
              margin-bottom: 15px; } }
          body#about #about-body #promise .promise-inner ul li .t01 {
            color: #8DC500;
            font-size: 2.4rem; }
            @media screen and (max-width: 767px) {
              body#about #about-body #promise .promise-inner ul li .t01 {
                font-size: 1.4rem;
                margin: 0 0 5px; } }
          body#about #about-body #promise .promise-inner ul li .t02 {
            font-weight: 400;
            color: #545454;
            font-size: 1.6rem; }
            @media screen and (max-width: 767px) {
              body#about #about-body #promise .promise-inner ul li .t02 {
                font-size: 1.3rem; } }
          body#about #about-body #promise .promise-inner ul li:last-child {
            border: none; }
    body#about #about-body #ft-area {
      max-width: 900px;
      margin: 30px auto 0;
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover;
      background-image: url(./../img/about/bg_message.png);
      border-radius: 20px;
      overflow: hidden;
      padding: 88px 0; }
      @media screen and (max-width: 767px) {
        body#about #about-body #ft-area {
          background-image: url(./../img/about/bg_message_sp.png);
          padding: 24px 0;
          margin: 30px -15px 0; } }
      body#about #about-body #ft-area .ft-out {
        margin: 0 0 0 auto;
        background: rgba(255, 255, 255, 0.3);
        padding: 60px 25px 50px;
        box-shadow: 1px 4px 5px 0px rgba(0, 0, 0, 0.3);
        border-radius: 15px;
        position: relative;
        right: 40px; }
        @media screen and (min-width: 768px) {
          body#about #about-body #ft-area .ft-out {
            max-width: 444px; } }
        @media screen and (max-width: 767px) {
          body#about #about-body #ft-area .ft-out {
            width: 56.6%;
            padding: 18px 10px 18px;
            right: 20px; } }
        body#about #about-body #ft-area .ft-out p {
          color: #545454;
          text-align: center; }
        body#about #about-body #ft-area .ft-out .t01 {
          font-size: 2.0rem;
          line-height: 2.0; }
          @media screen and (max-width: 767px) {
            body#about #about-body #ft-area .ft-out .t01 {
              font-size: 1.0rem; } }
        body#about #about-body #ft-area .ft-out .t02 {
          font-size: 2.4rem;
          font-weight: 600;
          margin-top: 15px; }
          @media screen and (max-width: 767px) {
            body#about #about-body #ft-area .ft-out .t02 {
              font-size: 1.2rem;
              margin: 10px -10px 0; } }
        body#about #about-body #ft-area .ft-out .t03 {
          max-width: 326px;
          margin: 20px auto 0; }
          @media screen and (max-width: 767px) {
            body#about #about-body #ft-area .ft-out .t03 {
              width: 90.6%;
              margin: 10px auto 0; } }
    body#about #about-body #ft-btn {
      max-width: 900px;
      margin: 30px auto 0;
      padding: 0; }
      body#about #about-body #ft-btn ul {
        display: flex;
        flex-wrap: wrap;
        margin: 0 0 0 -4.3%; }
        body#about #about-body #ft-btn ul li {
          width: 45.7%;
          margin: 0 0 0 4.3%; }
          body#about #about-body #ft-btn ul li .btn {
            display: block;
            color: #545454;
            text-align: center;
            border-radius: 20px;
            border: 2px solid #9DD669;
            background-color: #B7E579;
            font-size: 2.0rem;
            padding: 19.5px 0; }
            @media screen and (max-width: 767px) {
              body#about #about-body #ft-btn ul li .btn {
                font-size: 1.4rem;
                padding: 0;
                display: flex;
                justify-content: center;
                align-items: center;
                height: 58px; } }
            body#about #about-body #ft-btn ul li .btn span {
              display: inline-block;
              position: relative;
              padding-left: 36px;
              margin-left: -15px; }
              @media screen and (max-width: 767px) {
                body#about #about-body #ft-btn ul li .btn span {
                  padding-left: 42px; } }
              body#about #about-body #ft-btn ul li .btn span::before {
                content: "";
                background-position: 0 0;
                background-repeat: no-repeat;
                background-size: 100% 100%;
                background-image: url(./../img/about/icon_search.png);
                width: 27px;
                height: 27px;
                position: absolute;
                top: 50%;
                left: 0;
                transform: translateY(-50%); }
                @media screen and (max-width: 767px) {
                  body#about #about-body #ft-btn ul li .btn span::before {
                    left: 10px; } }
          body#about #about-body #ft-btn ul li:nth-child(2) .btn {
            border-color: #DD580F;
            background-color: #FA9137;
            color: #fff; }
            body#about #about-body #ft-btn ul li:nth-child(2) .btn span {
              padding-left: 0 !important;
              margin-left: 0 !important; }
              body#about #about-body #ft-btn ul li:nth-child(2) .btn span::before {
                display: none; }

.map-select-outer {
  background-color: #F7F7F7;
  border-radius: 10px;
  padding: 23px 0 19px;
  margin: 27px 0 0;
  overflow: hidden; }
  .map-select-outer .map-select-inner {
    max-width: 470px;
    margin: 0 auto;
    position: relative; }
    .map-select-outer .map-select-inner #map-search {
      position: relative; }
    .map-select-outer .map-select-inner svg {
      width: 100%;
      height: auto;
      			/*
      			a {
      
      				opacity: 1 !important;
      
      				path {
      
      					transition: .3s;
      
      				}
      
      				&.hover {
      
      					path {
      
      						fill: #7FC940;
      
      						&.hover {
      
      							fill: #7FC940;
      
      						}
      
      					}
      
      				}
      
      			}
      			*/ }
      @media screen and (max-width: 767px) {
        .map-select-outer .map-select-inner svg {
          width: 120%;
          margin-left: -5%; } }
      .map-select-outer .map-select-inner svg path {
        transition: .3s; }
        .map-select-outer .map-select-inner svg path.hover {
          fill: #7FC940; }
    @media screen and (min-width: 768px) {
      .map-select-outer .map-select-inner .map_alert {
        position: absolute;
        bottom: 1%;
        right: -36%;
        width: 47%; } }
    @media screen and (max-width: 767px) {
      .map-select-outer .map-select-inner .map_alert {
        width: 91%;
        margin: -10px auto 7px; } }
    .map-select-outer .map-select-inner .prefectures-link .float {
      position: absolute;
      cursor: pointer;
      opacity: 1 !important; }
      .map-select-outer .map-select-inner .prefectures-link .float span {
        font-size: 1.8rem;
        font-weight: 500;
        line-height: 1;
        display: flex;
        border: 3px solid #5FAF1A;
        border-radius: 100px;
        background: #fff;
        width: 120px;
        height: 50px;
        justify-content: center;
        align-items: center;
        letter-spacing: 0.05em;
        transition: .3s; }
        @media screen and (max-width: 767px) {
          .map-select-outer .map-select-inner .prefectures-link .float span {
            width: 100px; } }
      @media screen and (min-width: 768px) {
        .map-select-outer .map-select-inner .prefectures-link .float::before, .map-select-outer .map-select-inner .prefectures-link .float::after {
          content: "";
          position: absolute;
          background-color: #5EAF1A;
          top: 50%;
          transform: translateY(-50%);
          transition: .3s; } }
      .map-select-outer .map-select-inner .prefectures-link .float::before {
        width: 28px;
        height: 3px; }
      .map-select-outer .map-select-inner .prefectures-link .float::after {
        width: 14px;
        height: 14px;
        border-radius: 14px; }
      .map-select-outer .map-select-inner .prefectures-link .float.l25 {
        top: 16%;
        left: 74%; }
        @media screen and (max-width: 767px) {
          .map-select-outer .map-select-inner .prefectures-link .float.l25 {
            top: 9%;
            left: 64%; } }
        .map-select-outer .map-select-inner .prefectures-link .float.l25::before {
          left: -15px;
          width: 17px; }
        .map-select-outer .map-select-inner .prefectures-link .float.l25::after {
          left: -23px; }
      .map-select-outer .map-select-inner .prefectures-link .float.l26 {
        top: -0.5%;
        left: 34%; }
        @media screen and (max-width: 767px) {
          .map-select-outer .map-select-inner .prefectures-link .float.l26 {
            top: 18.0%; } }
        .map-select-outer .map-select-inner .prefectures-link .float.l26::before {
          left: 50%;
          transform: translateX(-50%);
          width: 3px;
          height: 25px;
          bottom: -25px;
          top: auto; }
        .map-select-outer .map-select-inner .prefectures-link .float.l26::after {
          left: 50%;
          transform: translateX(-50%);
          top: auto;
          bottom: -34px; }
      .map-select-outer .map-select-inner .prefectures-link .float.l27 {
        top: 49%;
        left: 23%; }
        @media screen and (max-width: 767px) {
          .map-select-outer .map-select-inner .prefectures-link .float.l27 {
            top: 46%;
            left: 32%; } }
        .map-select-outer .map-select-inner .prefectures-link .float.l27::before {
          right: -15px;
          width: 17px; }
        .map-select-outer .map-select-inner .prefectures-link .float.l27::after {
          right: -23px; }
      .map-select-outer .map-select-inner .prefectures-link .float.l28 {
        top: 24%;
        left: 0; }
        @media screen and (max-width: 767px) {
          .map-select-outer .map-select-inner .prefectures-link .float.l28 {
            top: 26.5%;
            left: 3%; } }
        .map-select-outer .map-select-inner .prefectures-link .float.l28::before {
          right: -25px; }
        .map-select-outer .map-select-inner .prefectures-link .float.l28::after {
          right: -32px; }
      .map-select-outer .map-select-inner .prefectures-link .float.l29 {
        top: 59%;
        left: 66%; }
        @media screen and (max-width: 767px) {
          .map-select-outer .map-select-inner .prefectures-link .float.l29 {
            top: 57%;
            left: 65%; } }
        .map-select-outer .map-select-inner .prefectures-link .float.l29::before {
          left: -15px;
          width: 17px; }
        .map-select-outer .map-select-inner .prefectures-link .float.l29::after {
          left: -23px; }
      .map-select-outer .map-select-inner .prefectures-link .float.l30 {
        top: 73%;
        left: 17.5%; }
        @media screen and (max-width: 767px) {
          .map-select-outer .map-select-inner .prefectures-link .float.l30 {
            top: 76%;
            left: 25.5%; } }
        .map-select-outer .map-select-inner .prefectures-link .float.l30::before {
          right: -18px;
          width: 20px; }
        .map-select-outer .map-select-inner .prefectures-link .float.l30::after {
          right: -25px; }
      .map-select-outer .map-select-inner .prefectures-link .float.hover span {
        background-color: #5FAF1A;
        color: #fff;
        border-color: #fff; }
      .map-select-outer .map-select-inner .prefectures-link .float.hover::before, .map-select-outer .map-select-inner .prefectures-link .float.hover::after {
        background-color: #fff; }

@media screen and (max-width: 767px) {
  #list-search-area {
    background-color: #F1FDE8;
    border-radius: 10px; } }
#list-search-area .acc-move {
  text-align: center;
  font-size: 1.4rem;
  position: relative;
  padding: 12px 0;
  cursor: pointer; }
  #list-search-area .acc-move .crs_btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 15px;
    width: 28px;
    height: 28px;
    overflow: hidden;
    cursor: pointer; }
    #list-search-area .acc-move .crs_btn::before, #list-search-area .acc-move .crs_btn::after {
      position: absolute;
      margin: auto;
      content: "";
      vertical-align: middle;
      width: 2px;
      height: 2px;
      background: #7FC940;
      top: 50%;
      left: 50%;
      transform: translateX(-50%) translateY(-50%); }
    #list-search-area .acc-move .crs_btn::before {
      width: 14px; }
    #list-search-area .acc-move .crs_btn::after {
      height: 14px; }
  @media screen and (min-width: 768px) {
    #list-search-area .acc-move + .search-block.result {
      display: block !important; } }
  @media screen and (max-width: 767px) {
    #list-search-area .acc-move + .search-block.result {
      display: none;
      padding-top: 0 !important; } }
#list-search-area.open {
  background: #F7F7F7; }
  #list-search-area.open .acc-move .crs_btn::after {
    display: none; }

@media screen and (max-width: 767px) {
  .page-in-link {
    padding-top: 75px;
    margin-top: -75px; } }

label span {
  font-weight: inherit; }

#wrap ul li label {
  display: flex;
  flex-wrap: wrap;
  width: 100%; }
  #wrap ul li label span {
    width: calc(100% - 28px);
    display: block; }

/*# sourceMappingURL=styles.css.map */
