/* CSS Document */
/* SCSS Document */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700;900&family=Noto+Serif+JP:wght@200;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Sacramento&display=swap");
.serif {
  font-family: 'Noto Serif JP', serif; }

@keyframes anime1 {
  0% {
    margin-top: -20px;
    opacity: 0; }
  100% {
    margin-top: 0;
    opacity: 1; } }
@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
#plan_new .box1180 {
  margin-left: auto;
  margin-right: auto; }
#plan_new .title01._detail {
  border-bottom: 1px solid #74AFA0;
  padding-bottom: 5px;
  line-height: 1.5; }
  #plan_new .title01._detail span {
    font-size: 60%;
    color: #74AFA0; }
    @media (max-width: 640px) {
      #plan_new .title01._detail span {
        display: block;
        text-align: end; } }
#plan_new .plan_table table {
  width: 100%;
  border-collapse: collapse;
  font-size: clamp(12px, 1vw, 14px);
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0; }
  #plan_new .plan_table table thead th {
    background: #74AFA0;
    color: #fff;
    text-align: center;
    padding: 15px 5px;
    border: #fff 1px solid;
    font-size: clamp(12px, 1vw, 16px);
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: 0; }
  #plan_new .plan_table table tbody th {
    background: #eee;
    text-align: center;
    padding: 15px 5px;
    border: #74AFA0 1px solid;
    font-size: clamp(12px, 1vw, 16px);
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: 0; }
    #plan_new .plan_table table tbody th span {
      font-family: "Noto Sans JP", sans-serif;
      font-size: 80%;
      letter-spacing: 0; }
      @media (max-width: 640px) {
        #plan_new .plan_table table tbody th span {
          display: block; } }
  #plan_new .plan_table table tbody td {
    text-align: center;
    padding: 15px 5px;
    border: #74AFA0 1px solid;
    font-size: clamp(12px, 1vw, 16px);
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: 0; }
  @media (max-width: 640px) {
    #plan_new .plan_table table thead th, #plan_new .plan_table table tbody th, #plan_new .plan_table table tbody td {
      padding: 8px 2px;
      font-size: 11px; } }
#plan_new .mb {
  margin-bottom: clamp(40px, 8%, 120px); }
#plan_new ._bg {
  display: block;
  padding: clamp(15px, 3%, 30px) 10px;
  background: rgba(116, 175, 159, 0.1); }
#plan_new ._center {
  text-align: center; }
#plan_new ._right {
  text-align: end; }
#plan_new .small {
  font-size: 80%; }
#plan_new .planlist_bnr {
  display: flex;
  justify-content: center; }
  #plan_new .planlist_bnr .planbnr {
    display: block;
    position: relative;
    width: 30%;
    margin: 1.5%;
    background: #fff;
    padding: 25px;
    border-radius: 15px;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
    padding-bottom: 80px; }
    #plan_new .planlist_bnr .planbnr .icon_goushi {
      display: block;
      width: 30%;
      position: absolute;
      top: -10%;
      right: -3%; }
    #plan_new .planlist_bnr .planbnr h3 {
      display: block;
      text-align: center;
      font-size: clamp(22px, 2.5vw, 28px);
      color: #74AFA0;
      letter-spacing: 0;
      padding: 0 0 10px 0; }
    #plan_new .planlist_bnr .planbnr strong {
      display: block;
      text-align: center;
      font-size: clamp(16px, 1.5vw, 20px);
      color: #74AFA0;
      letter-spacing: 0;
      padding: 10px 0;
      line-height: 1.5; }
    #plan_new .planlist_bnr .planbnr .box_include {
      display: block;
      background: #F1F7F5;
      padding: 10px;
      margin-bottom: 15px; }
      #plan_new .planlist_bnr .planbnr .box_include b {
        display: block;
        font-size: clamp(12px, 1.2vw, 15px);
        color: #74AFA0;
        text-align: center;
        font-family: "Noto Sans JP", sans-serif;
        margin-bottom: 8px;
        letter-spacing: 0.1em; }
      #plan_new .planlist_bnr .planbnr .box_include p {
        display: block;
        font-size: clamp(11px, 1vw, 13px);
        line-height: 1.3;
        font-family: "Noto Sans JP", sans-serif; }
    #plan_new .planlist_bnr .planbnr ul.price {
      margin: 0;
      padding: 0; }
      #plan_new .planlist_bnr .planbnr ul.price li {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        list-style-type: none;
        line-height: 1;
        margin-bottom: 10px; }
        #plan_new .planlist_bnr .planbnr ul.price li span {
          font-size: 11px;
          font-family: "Noto Sans JP", sans-serif;
          letter-spacing: 0.1em;
          padding-right: 10px; }
        #plan_new .planlist_bnr .planbnr ul.price li b {
          color: #74AFA0;
          font-size: clamp(20px, 2vw, 23px);
          letter-spacing: 0.1em; }
    #plan_new .planlist_bnr .planbnr p.small {
      display: block;
      text-align: center;
      padding: 10px 0 0 0; }
      #plan_new .planlist_bnr .planbnr p.small._right {
        text-align: end; }
    #plan_new .planlist_bnr .planbnr .btn {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      padding: 0 20px 20px; }
      #plan_new .planlist_bnr .planbnr .btn a {
        display: block;
        background: #74AFA0;
        color: #fff;
        font-size: 18px;
        text-align: center;
        padding: 10px;
        border-radius: 30px;
        width: 100%;
        font-family: "Noto Sans JP", sans-serif;
        letter-spacing: 0.1em;
        font-weight: bold;
        transition: all linear 0.3s; }
        #plan_new .planlist_bnr .planbnr .btn a:hover {
          background: #608B7D; }
  #plan_new .planlist_bnr._col2 {
    max-width: 800px;
    flex-wrap: wrap;
    margin-left: auto;
    margin-right: auto; }
    #plan_new .planlist_bnr._col2 .planbnr {
      width: 47%; }
      #plan_new .planlist_bnr._col2 .planbnr:not(:nth-last-of-type(-n+2)) {
        margin-bottom: 60px; }
      @media (max-width: 768px) {
        #plan_new .planlist_bnr._col2 .planbnr {
          width: 100%; }
          #plan_new .planlist_bnr._col2 .planbnr:not(:nth-last-of-type(-n+2)) {
            margin-bottom: 40px; } }
  @media (max-width: 768px) {
    #plan_new .planlist_bnr {
      flex-wrap: wrap;
      max-width: 350px;
      margin-left: auto;
      margin-right: auto; }
      #plan_new .planlist_bnr .planbnr {
        width: 100%;
        margin-bottom: 40px;
        padding: 15px 15px 60px 15px; }
        #plan_new .planlist_bnr .planbnr .icon_goushi {
          width: 80px;
          top: -30px;
          right: -10px; }
        #plan_new .planlist_bnr .planbnr .btn {
          padding: 0 15px 15px; }
          #plan_new .planlist_bnr .planbnr .btn a {
            font-size: 16px;
            padding: 7px; } }
#plan_new p._center {
  display: block;
  text-align: center;
  padding-top: clamp(20px, 3%, 40px); }
#plan_new .dokkyou {
  display: block;
  background: url("../../images/plan2/img_04.png") no-repeat #F1F7F5;
  background-size: 200px;
  background-position: top right;
  padding: 30px;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto; }
  #plan_new .dokkyou h4 {
    display: block;
    text-align: center;
    color: #74AFA0;
    font-size: clamp(18px, 2.5vw, 24px);
    margin-bottom: 0.8em; }
  #plan_new .dokkyou .dokkyou_wrap {
    display: flex;
    justify-content: center; }
    #plan_new .dokkyou .dokkyou_wrap ._box {
      display: flex;
      align-items: center;
      background: #fff;
      padding: 20px 30px;
      border-radius: 10px;
      box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
      margin: 0 15px; }
      #plan_new .dokkyou .dokkyou_wrap ._box b {
        display: block;
        color: #74AFA0;
        text-align: center;
        font-size: 22px;
        line-height: 1.3;
        letter-spacing: 0; }
        #plan_new .dokkyou .dokkyou_wrap ._box b span {
          display: block;
          font-family: "Noto Sans JP", sans-serif;
          font-size: 12px;
          color: #555;
          font-weight: normal; }
      #plan_new .dokkyou .dokkyou_wrap ._box em {
        color: #74AFA0;
        font-size: 22px;
        font-style: normal;
        font-weight: bold;
        letter-spacing: 0;
        margin-left: 40px; }
  @media (max-width: 768px) {
    #plan_new .dokkyou {
      padding: 30px 20px; }
      #plan_new .dokkyou h4 {
        text-shadow: 0px 0px 5px white, 0px 0px 5px white, 0px 0px 5px white, 0px 0px 5px white, 0px 0px 5px white, 0px 0px 5px white; }
      #plan_new .dokkyou .dokkyou_wrap {
        flex-wrap: wrap;
        width: fit-content;
        margin: 0 auto; }
        #plan_new .dokkyou .dokkyou_wrap ._box {
          width: 100%;
          padding: 10px;
          justify-content: center; }
          #plan_new .dokkyou .dokkyou_wrap ._box:not(:last-of-type) {
            margin-bottom: 15px; }
          #plan_new .dokkyou .dokkyou_wrap ._box b {
            font-size: 16px; }
            #plan_new .dokkyou .dokkyou_wrap ._box b span {
              font-size: 11px; }
          #plan_new .dokkyou .dokkyou_wrap ._box em {
            font-size: 18px;
            margin-left: 20px; } }
#plan_new .plan2_detail strong.catch {
  display: flex;
  flex-wrap: wrap;
  font-size: clamp(18px, 2vw, 28px);
  color: #74AFA0;
  letter-spacing: 0;
  margin-bottom: .5em;
  align-items: center; }
  #plan_new .plan2_detail strong.catch .box01 {
    display: block;
    width: fit-content;
    background: #7FAD9E;
    color: #fff;
    padding: 5px 20px;
    letter-spacing: 0.1em;
    border-radius: 30px;
    font-size: clamp(16px, 2vw, 20px);
    font-weight: bold;
    margin-left: 20px; }
  @media (max-width: 768px) {
    #plan_new .plan2_detail strong.catch {
      display: block; }
      #plan_new .plan2_detail strong.catch .box01 {
        margin: 10px 0 10px 0; } }
#plan_new .plan2_detail .price_waku {
  display: flex;
  justify-content: flex-end;
  padding: 15px;
  background: #F1F7F5;
  margin-bottom: 10px; }
  #plan_new .plan2_detail .price_waku .price {
    display: flex;
    align-items: center;
    margin-left: 20px; }
    #plan_new .plan2_detail .price_waku .price span {
      font-size: 11px;
      font-family: "Noto Sans JP", sans-serif;
      letter-spacing: 0.1em;
      padding-right: 10px;
      letter-spacing: 0; }
    #plan_new .plan2_detail .price_waku .price b {
      color: #74AFA0;
      font-size: clamp(20px, 2vw, 23px);
      letter-spacing: 0.1em; }
#plan_new .plan2_detail .top_wrap {
  display: flex;
  align-items: flex-start;
  margin: clamp(20px, 5%, 40px) 0 clamp(30px, 8%, 60px); }
  #plan_new .plan2_detail .top_wrap .photo {
    width: 50%;
    padding-right: 40px; }
    #plan_new .plan2_detail .top_wrap .photo img {
      width: 100%;
      height: auto; }
  #plan_new .plan2_detail .top_wrap .top_right {
    width: 50%; }
    #plan_new .plan2_detail .top_wrap .top_right h3 {
      display: block;
      font-size: clamp(18px, 2vw, 22px);
      letter-spacing: 0.1em;
      color: #74AFA0;
      margin-bottom: 20px; }
    #plan_new .plan2_detail .top_wrap .top_right .icons {
      width: 100%;
      display: flex;
      flex-wrap: wrap;
      margin-bottom: 20px; }
      #plan_new .plan2_detail .top_wrap .top_right .icons .icon {
        width: 20%;
        padding: 7px;
        font-size: 0; }
        #plan_new .plan2_detail .top_wrap .top_right .icons .icon img {
          margin: 0; }
    #plan_new .plan2_detail .top_wrap .top_right p.note {
      display: block;
      line-height: 1.4;
      text-align: center;
      font-size: clamp(12px, 0.9vw, 14px); }
#plan_new .plan2_detail .sogi_flow {
  background: #F1F7F5;
  padding: clamp(30px, 5%, 60px) 15px clamp(50px, 10%, 120px); }
  #plan_new .plan2_detail .sogi_flow._nobg {
    background: none; }
  #plan_new .plan2_detail .sogi_flow ul {
    display: flex;
    flex-wrap: wrap;
    padding: 0;
    margin: 0 auto;
    max-width: 1260px; }
    #plan_new .plan2_detail .sogi_flow ul li {
      list-style-type: none;
      width: 25%;
      padding: clamp(7px, 1.5%, 15px);
      margin-bottom: 15px; }
      #plan_new .plan2_detail .sogi_flow ul li .photo {
        width: 100%;
        height: auto;
        margin-bottom: 10px; }
        #plan_new .plan2_detail .sogi_flow ul li .photo img {
          width: 100%;
          height: auto; }
      #plan_new .plan2_detail .sogi_flow ul li b {
        display: block;
        font-size: clamp(15px, 1.5vw, 22px);
        text-align: center;
        color: #74AFA0;
        margin-bottom: 10px;
        letter-spacing: 0.1em; }
      #plan_new .plan2_detail .sogi_flow ul li p {
        display: block;
        letter-spacing: 0.1em;
        font-family: "Noto Sans JP", sans-serif;
        font-size: clamp(12px, 1vw, 14px);
        line-height: 1.5; }
        #plan_new .plan2_detail .sogi_flow ul li p span {
          display: block;
          line-height: 1.3; }
@media (max-width: 768px) {
  #plan_new .plan2_detail .top_wrap {
    flex-wrap: wrap; }
    #plan_new .plan2_detail .top_wrap .photo {
      width: 100%;
      padding-right: 0;
      text-align: center;
      margin-bottom: 30px; }
      #plan_new .plan2_detail .top_wrap .photo img {
        max-width: 400px; }
    #plan_new .plan2_detail .top_wrap .top_right {
      width: 100%; }
      #plan_new .plan2_detail .top_wrap .top_right h3 {
        text-align: center; }
      #plan_new .plan2_detail .top_wrap .top_right .icons {
        max-width: 500px;
        margin: 0 auto 15px; }
  #plan_new .plan2_detail .sogi_flow ul li {
    width: 33.3333%;
    padding: 8px; }
    #plan_new .plan2_detail .sogi_flow ul li .photo {
      margin-bottom: 5px; }
    #plan_new .plan2_detail .sogi_flow ul li b {
      margin-bottom: 5px; } }
@media (max-width: 640px) {
  #plan_new .plan2_detail .price_waku {
    flex-wrap: wrap;
    padding: 10px; }
    #plan_new .plan2_detail .price_waku .price {
      width: 100%;
      justify-content: flex-end; }
  #plan_new .plan2_detail .top_wrap .top_right {
    width: 100%; }
    #plan_new .plan2_detail .top_wrap .top_right .icons .icon {
      width: 25%; }
  #plan_new .plan2_detail .sogi_flow ul li {
    width: 50%; }
    #plan_new .plan2_detail .sogi_flow ul li .photo {
      margin-bottom: 3px; }
    #plan_new .plan2_detail .sogi_flow ul li b {
      margin-bottom: 3px; } }
