/* ==========================================================================
	root
========================================================================== */
:root {
  --base-pc-width:1500;
  --easeInQuad:cubic-bezier(.55, .085, .68, .53);
  --easeOutQuad:cubic-bezier(0.215, 0.61, 0.355, 1);
  --easeOutQuint:cubic-bezier(.25, .46, .45, .94);
  --easeOutSine:cubic-bezier(0.39, 0.575, 0.565, 1);
  --easeInOutQuad:cubic-bezier(0.45, 0, 0.55, 1);
  --easeInOutCubic:cubic-bezier(0.65, 0, 0.35, 1);
  --easePopUp:cubic-bezier(0.17, 0.88, 0.30, 1.28);
  --easeInCirc:cubic-bezier(0.55, 0, 1, 0.45);
  --theme-color:#d9c888;
  --theme-color02:#169a5a;
  --theme-color03:#2D96C1;
  --base-text-color:#1b140b;
  --base-border-color:#46443c;
  --base-border-color02:#e9e2c4;
  --menu-border-color01:#f36251;
  --menu-border-color02:#fead39;
  --menu-border-color03:#fead39;
  --base-color-orange:#ef8222;
  --base-color-blue:#65bac4;
  --base-color-sand:#d9c989;
  --base-color-green:#23684a;
  --base-color-green02:#62a768;
  --base-color-green03:#026736;
  --base-color-green04:#156b4c;
  --border:1px solid var(--base-border-color);
  --base-shadow:1px 1px 0 black,-1px 1px 0 black,1px -1px 0 black,-1px -1px 0 black;
  --hanten:scale(-1, 1); }

@media screen and (max-width: 800px) {
  :root {
    --fz10:clamp(10px,calc((10/400)*100vw),12px);
    --fz12:clamp(12px,calc((12/400)*100vw),14px);
    --fz13:clamp(13px,calc((13/400)*100vw),14px);
    --fz14:clamp(14px,calc((14/400)*100vw),16px);
    --fz15:clamp(15px,calc((15/400)*100vw),17px);
    --fz16:clamp(16px,calc((16/400)*100vw),18px);
    --fz17:clamp(17px,calc((17/400)*100vw),19px);
    --fz18:clamp(18px,calc((18/400)*100vw),20px);
    --fz19:clamp(19px,calc((19/400)*100vw),21px);
    --fz20:clamp(20px,calc((20/400)*100vw),22px);
    --fz21:clamp(21px,calc((21/400)*100vw),23px);
    --fz22:clamp(22px,calc((22/400)*100vw),24px);
    --fz24:clamp(24px,calc((24/400)*100vw),26px);
    --fz25:clamp(25px,calc((25/400)*100vw),27px);
    --fz26:clamp(26px,calc((26/400)*100vw),28px);
    --fz27:clamp(27px,calc((27/400)*100vw),29px);
    --fz28:clamp(28px,calc((28/400)*100vw),30px);
    --fz32:clamp(32px,calc((23/400)*100vw),35px);
    --fz35:clamp(35px,calc((25/400)*100vw),39px);
    --fz36:clamp(36px,calc((36/400)*100vw),40px);
    --fz38:clamp(38px,calc((38/400)*100vw),42px);
    --fz40:clamp(40px,calc((40/400)*100vw),44px);
    --fz45:clamp(45px,calc((45/400)*100vw),49px);
    --fz56:clamp(56px,calc((56/400)*100vw),60px); } }
/* ==========================================================================
	hasei_fv
========================================================================== */
#hasei_fv h1 {
  width: 590px; }

@media screen and (max-width: 800px) {
  #hasei_fv h1 {
    width: 77.5%; } }
/* ==========================================================================
	message
========================================================================== */
.message {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  flex-direction: row-reverse;
  padding-top: 200px;
  padding-bottom: 150px;
  z-index: 5; }
  .message .img_area {
    position: relative;
    width: 42.3076923077%;
    background: var(--theme-color);
    border: 1px solid var(--base-border-color);
    padding: 5px;
    border-radius: 10px;
    box-sizing: border-box; }
    .message .img_area .img {
      position: relative;
      width: 100%;
      height: 100%;
      overflow: hidden;
      border-radius: 30px; }
  .message .text_area {
    position: relative;
    flex: 1;
    margin-right: 5.3333333333vw;
    padding-top: clamp(30px, 3.3333333333vw, 64px); }
  .message h2 {
    font-size: clamp(68px, 4.6666666667vw, 84px);
    --lh:1.5;
    position: relative;
    /*
    overflow: hidden;
    */
    line-height: calc(var(--lh)* 1em);
    padding-top: .1px;
    padding-bottom: .1px;
    margin-bottom: 30px; }
    .message h2::before {
      content: '';
      display: block;
      height: 0;
      width: 0;
      /*
      margin-top: calc((1 - var(--lh)) * 0.5em);
      */
      margin-top: calc((1 - var(--lh))* .5em); }
    .message h2::after {
      content: '';
      display: block;
      height: 0;
      width: 0;
      margin-bottom: calc((1 - var(--lh))* .5em); }
  .message .en {
    display: block;
    font-size: clamp(20px, 1.4666666667vw, 26.4px);
    --lh:1.5;
    position: relative;
    /*
    overflow: hidden;
    */
    line-height: calc(var(--lh)* 1em);
    padding-top: .1px;
    padding-bottom: .1px;
    color: var(--theme-color02);
    margin-bottom: 60px; }
    .message .en::before {
      content: '';
      display: block;
      height: 0;
      width: 0;
      /*
      margin-top: calc((1 - var(--lh)) * 0.5em);
      */
      margin-top: calc((1 - var(--lh))* .5em); }
    .message .en::after {
      content: '';
      display: block;
      height: 0;
      width: 0;
      margin-bottom: calc((1 - var(--lh))* .5em); }
  .message .n_txt {
    font-size: clamp(18px, 1.3333333333vw, 24px);
    --lh:calc(48/20);
    position: relative;
    /*
    overflow: hidden;
    */
    line-height: calc(var(--lh)* 1em);
    padding-top: .1px;
    padding-bottom: .1px;
    margin-bottom: 65px; }
    .message .n_txt::before {
      content: '';
      display: block;
      height: 0;
      width: 0;
      /*
      margin-top: calc((1 - var(--lh)) * 0.5em);
      */
      margin-top: calc((1 - var(--lh))* .5em); }
    .message .n_txt::after {
      content: '';
      display: block;
      height: 0;
      width: 0;
      margin-bottom: calc((1 - var(--lh))* .5em); }
  .message .name_txt {
    font-size: clamp(24px, 1.7333333333vw, 31.2px);
    text-align: right;
    font-weight: 500; }
    .message .name_txt span {
      font-size: clamp(16px, 1.2vw, 21.6px);
      display: inlie-block;
      margin-right: 22px; }

@media screen and (max-width: 1050px) {
  .message {
    display: block;
    z-index: 5; }
    .message .img_area {
      width: 100%;
      aspect-ratio: 720/700; }
    .message .text_area {
      position: relative;
      width: 100%;
      margin: 0 auto;
      padding-top: 70px; }
    .message h2 {
      text-align: center; }
    .message .en {
      text-align: center; } }
@media screen and (max-width: 800px) {
  .message {
    padding-top: 20vw;
    padding-bottom: 100px; }
    .message .img_area {
      padding: 2.5px;
      border-radius: 5px; }
      .message .img_area .img {
        border-radius: 15px; }
    .message .text_area {
      padding-top: 15vw; }
    .message h2 {
      font-size: var(--fz38);
      margin-bottom: 20px; }
    .message .en {
      font-size: var(--fz15);
      margin-bottom: 60px; }
    .message .n_txt {
      font-size: var(--fz16);
      --lh:2;
      width: 79.8611111111%;
      margin: 0 auto 60px; }
    .message .name_txt {
      font-size: var(--fz20);
      text-align: center; }
      .message .name_txt span {
        font-size: var(--fz15);
        display: block;
        margin-bottom: 15px;
        margin-right: 0; } }
/* ==========================================================================
	loopslide_area
========================================================================== */
.loop-slide_area {
  position: relative;
  display: flex;
  width: 100%;
  height: 540px;
  overflow: hidden;
  margin-bottom: 150px; }
  .loop-slide_area .slide_box {
    position: relative;
    display: flex;
    animation: loop-slide 80s infinite linear 1s both;
    z-index: 20; }
  .loop-slide_area .slides {
    position: relative;
    width: auto;
    height: 540px;
    margin-right: 5px;
    box-sizing: border-box; }
    .loop-slide_area .slides img {
      width: auto;
      height: 100%;
      border-radius: 5px; }

@media screen and (max-width: 800px) {
  .loop-slide_area {
    height: 270px;
    margin-bottom: 0; }
    .loop-slide_area .slides {
      height: 270px;
      margin-right: 2.5px; }
      .loop-slide_area .slides img {
        border-radius: 2.5px; } }
/* ==========================================================================
	c-info_area
========================================================================== */
.c-info_area {
  padding-top: 150px;
  padding-bottom: 120px;
  background: #fff;
  border-radius: 30px; }
  .c-info_area .info {
    position: relative;
    width: 85.7142857143%;
    margin: 0 auto 90px; }
  .c-info_area h2 {
    position: absolute;
    left: 0;
    top: 0;
    font-size: clamp(48px, 3.3333333333vw, 60px);
    font-weight: 500; }
  .c-info_area ul {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-left: calc(50px + 7.5%);
    box-sizing: border-box; }
    .c-info_area ul li {
      width: 48.1132075472%;
      padding-bottom: 30px;
      margin-bottom: 30px;
      border-bottom: 1px solid var(--base-border-color); }
      .c-info_area ul li:last-child {
        margin-bottom: 0; }
      .c-info_area ul li .g_txt {
        font-size: clamp(16px, 1.2vw, 21.6px);
        --lh:calc(50/30);
        position: relative;
        /*
        overflow: hidden;
        */
        line-height: calc(var(--lh)* 1em);
        padding-top: .1px;
        padding-bottom: .1px;
        font-weight: 500;
        color: var(--theme-color02);
        margin-bottom: 15px; }
        .c-info_area ul li .g_txt::before {
          content: '';
          display: block;
          height: 0;
          width: 0;
          /*
          margin-top: calc((1 - var(--lh)) * 0.5em);
          */
          margin-top: calc((1 - var(--lh))* .5em); }
        .c-info_area ul li .g_txt::after {
          content: '';
          display: block;
          height: 0;
          width: 0;
          margin-bottom: calc((1 - var(--lh))* .5em); }
      .c-info_area ul li .b_txt {
        font-size: clamp(16px, 1.2vw, 21.6px);
        --lh:calc(50/30);
        position: relative;
        /*
        overflow: hidden;
        */
        line-height: calc(var(--lh)* 1em);
        padding-top: .1px;
        padding-bottom: .1px; }
        .c-info_area ul li .b_txt::before {
          content: '';
          display: block;
          height: 0;
          width: 0;
          /*
          margin-top: calc((1 - var(--lh)) * 0.5em);
          */
          margin-top: calc((1 - var(--lh))* .5em); }
        .c-info_area ul li .b_txt::after {
          content: '';
          display: block;
          height: 0;
          width: 0;
          margin-bottom: calc((1 - var(--lh))* .5em); }
        .c-info_area ul li .b_txt .asterisk {
          display: inline-block;
          font-weight: 500;
          font-size: clamp(12px, 0.9333333333vw, 16.8px);
          margin-left: 8px;
          color: var(--theme-color02); }
        .c-info_area ul li .b_txt a {
          position: relative;
          display: inline-block;
          margin-right: 30px;
          transition: all 0.4s var(--easeInOutCubic); }
          .c-info_area ul li .b_txt a.b_link {
            margin-left: 34px;
            --b_color:var(--base-text-color);
            background-image: -webkit-gradient(linear, left top, right top, from(var(--b_color)), to(var(--b_color)));
            background-image: linear-gradient(90deg, var(--b_color), var(--b_color));
            background-repeat: no-repeat;
            background-position: 0px 90%;
            background-size: 100% 2px; }
            .c-info_area ul li .b_txt a.b_link:before {
              content: "";
              display: block;
              position: absolute;
              left: -34px;
              top: 4px;
              width: 22px;
              height: 22px;
              background: url(../img/common/blank_icon.png);
              background-size: cover; }
          @media (hover: hover) {
            .c-info_area ul li .b_txt a:hover {
              color: var(--theme-color02);
              background-size: 100% 0; } }
  .c-info_area .annotation {
    position: relative;
    text-align: right;
    font-size: clamp(14px, 1.0666666667vw, 19.2px); }
    .c-info_area .annotation span {
      color: var(--theme-color02); }
  .c-info_area .organization {
    width: 85.7142857143%;
    margin: 0 auto;
    background: var(--theme-color);
    border: 1px solid var(--base-border-color);
    padding: 5px;
    box-sizing: border-box;
    border-radius: 5px; }
    .c-info_area .organization .w_bg {
      position: relative;
      background: #fff;
      border-radius: 15px;
      text-align: center;
      padding: 160px 0 100px;
      border: 1px solid var(--base-border-color); }
    .c-info_area .organization h3 {
      display: flex;
      align-items: center;
      justify-content: center;
      position: absolute;
      left: 0;
      right: 0;
      top: -6px;
      margin: auto;
      width: 500px;
      height: 60px;
      background: var(--base-color-green);
      border-radius: 0 0 5px 5px;
      font-size: 28px;
      font-weight: 500;
      color: #fff;
      text-shadow: var(--base-shadow); }
    .c-info_area .organization .img_wrap {
      width: 95%;
      max-width: 1070px;
      margin: 0 auto; }

@media screen and (max-width: 800px) {
  .c-info_area.-w1400 {
    padding-top: 75px;
    padding-bottom: 0;
    width: 100%;
    border-radius: 0; }
    .c-info_area.-w1400 .info {
      position: relative;
      width: 100%;
      margin: 0;
      padding-bottom: 60px; }
    .c-info_area.-w1400 h2 {
      display: flex;
      justify-content: center;
      align-items: center;
      left: 0;
      width: 28%;
      top: 25px;
      font-size: var(--fz35); }
    .c-info_area.-w1400 ul {
      position: relative;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      padding-left: 28%;
      box-sizing: border-box; }
      .c-info_area.-w1400 ul li {
        width: 100%;
        padding-top: 30px;
        padding-right: 5vw;
        padding-bottom: 30px;
        margin-bottom: 0; }
        .c-info_area.-w1400 ul li:first-child {
          border-top: 1px solid var(--base-border-color); }
        .c-info_area.-w1400 ul li .g_txt {
          font-size: var(--fz16);
          margin-bottom: 12px; }
        .c-info_area.-w1400 ul li .b_txt {
          font-size: var(--fz15); }
          .c-info_area.-w1400 ul li .b_txt .asterisk {
            font-size: var(--fz14);
            margin-left: 4px; }
          .c-info_area.-w1400 ul li .b_txt a {
            margin-right: 15px; }
            .c-info_area.-w1400 ul li .b_txt a.b_link {
              margin-left: 30px; }
              .c-info_area.-w1400 ul li .b_txt a.b_link:before {
                left: -30px;
                top: 4px;
                width: 20px;
                height: 20px; }
    .c-info_area.-w1400 .annotation {
      margin-top: 40px;
      text-align: left;
      font-size: var(--fz15);
      padding-left: 28%;
      box-siizng: border-box; }
    .c-info_area.-w1400 .organization {
      width: 100%;
      padding: 2.5px;
      border-radius: 2.5px; }
      .c-info_area.-w1400 .organization .w_bg {
        padding: 95px 0 90px; }
      .c-info_area.-w1400 .organization h3 {
        font-size: var(--fz20);
        width: 270px;
        height: 50px;
        border-radius: 0 0 2.5px 2.5px; }
      .c-info_area.-w1400 .organization p {
        position: relative;
        display: table !Important;
        margin: 0 auto 30px;
        font-size: 16px;
        font-weight: 500;
        transform: translateX(20px);
        --b_color:var(--base-border-color);
        background-image: -webkit-gradient(linear, left top, right top, from(var(--b_color)), to(var(--b_color)));
        background-image: linear-gradient(90deg, var(--b_color), var(--b_color));
        background-repeat: no-repeat;
        background-position: 0px 90%;
        background-size: 100% 2px; }
        .c-info_area.-w1400 .organization p i {
          position: absolute;
          left: -48px;
          bottom: -5px;
          width: 29px;
          margin-right: 20px; }
      .c-info_area.-w1400 .organization .img_wrap {
        width: 92.5%;
        margin-left: 7.5%;
        padding-bottom: 15px;
        overflow-X: scroll; }
        .c-info_area.-w1400 .organization .img_wrap img {
          width: 768px; } }
/* ==========================================================================
	map_area
========================================================================== */
.map_area {
  position: relative;
  width: 86.6666666667%;
  margin: 120px auto 200px; }
  .map_area .map_info {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    .map_area .map_info + .map_info {
      margin-top: 20px; }
    .map_area .map_info .text_area {
      display: flex;
      align-items: center;
      width: 50%; }
    .map_area .map_info h4 {
      font-size: 36px;
      margin-bottom: 20px;
      --lh:1.5;
      position: relative;
      /*
      overflow: hidden;
      */
      line-height: calc(var(--lh)* 1em);
      padding-top: .1px;
      padding-bottom: .1px; }
      .map_area .map_info h4::before {
        content: '';
        display: block;
        height: 0;
        width: 0;
        /*
        margin-top: calc((1 - var(--lh)) * 0.5em);
        */
        margin-top: calc((1 - var(--lh))* .5em); }
      .map_area .map_info h4::after {
        content: '';
        display: block;
        height: 0;
        width: 0;
        margin-bottom: calc((1 - var(--lh))* .5em); }
    .map_area .map_info .n_txt {
      font-size: 20px;
      --lh:calc(32,20);
      position: relative;
      /*
      overflow: hidden;
      */
      line-height: calc(var(--lh)* 1em);
      padding-top: .1px;
      padding-bottom: .1px;
      margin-bottom: 30px; }
      .map_area .map_info .n_txt::before {
        content: '';
        display: block;
        height: 0;
        width: 0;
        /*
        margin-top: calc((1 - var(--lh)) * 0.5em);
        */
        margin-top: calc((1 - var(--lh))* .5em); }
      .map_area .map_info .n_txt::after {
        content: '';
        display: block;
        height: 0;
        width: 0;
        margin-bottom: calc((1 - var(--lh))* .5em); }
    .map_area .map_info .contact-info {
      position: relative;
      padding-left: 160px;
      box-sizing: border-box; }
    .map_area .map_info .gb_txt {
      display: block;
      position: absolute;
      left: 0;
      top: 0;
      font-size: 17px;
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      height: 34px;
      width: 140px;
      background: var(--theme-color02);
      border-radius: 22px; }
    .map_area .map_info .en {
      position: relative;
      display: table;
      padding-left: 50px;
      font-size: 28px;
      letter-spacing: -0.02em;
      color: var(--theme-color02);
      padding-bottom: 5px; }
      .map_area .map_info .en:before {
        content: "";
        display: block;
        position: absolute;
        left: 0px;
        bottom: 15px;
        width: 37px;
        height: 16px;
        background: url(../img/common/foot_tel.png);
        background-size: cover; }
      .map_area .map_info .en.fax:before {
        width: 40px;
        height: 15px;
        background-image: url(../img/common/fax_icon.png); }
  .map_area .map {
    position: relative;
    width: 49.2307692308%;
    aspect-ratio: 730/340;
    border-radius: 30px;
    border: 1px solid var(--base-border-color);
    overflow: hidden; }
    .map_area .map iframe {
      display: block;
      width: 100%;
      height: 200%;
      position: absolute;
      top: -50%;
      left: 0; }

@media screen and (max-width: 1100px) {
  .map_area .map_info {
    display: block; }
    .map_area .map_info + .map_info {
      margin-top: 40px; }
    .map_area .map_info .text_area {
      display: block;
      width: 100%; }
    .map_area .map_info h4 {
      text-align: center; }
    .map_area .map_info .n_txt {
      text-align: center; }
    .map_area .map_info .contact-info {
      width: 460px;
      margin: 0 auto 30px; }
  .map_area .map {
    width: 100%; } }
@media screen and (max-width: 800px) {
  .map_area {
    width: 100%;
    margin: 15px auto 40px; }
    .map_area .map_info {
      padding-top: 60px;
      padding-bottom: 60px; }
      .map_area .map_info + .map_info {
        margin-top: 0;
        border-top: 1px solid var(--base-border-color); }
      .map_area .map_info h4 {
        font-size: var(--fz25);
        margin-bottom: 15px; }
      .map_area .map_info .n_txt {
        font-size: var(--fz16);
        --lh:calc(50,32);
        margin-bottom: 20px; }
      .map_area .map_info .contact-info {
        width: auto;
        display: table;
        padding-left: 110px;
        margin: 0 auto;
        max-width: 385px;
        width: 100%; }
        .map_area .map_info .contact-info + .contact-info {
          margin-top: 10px; }
      .map_area .map_info .gb_txt {
        font-size: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        height: 30px;
        width: 100px;
        top: -3px; }
      .map_area .map_info .en {
        padding-left: 50px;
        font-size: var(--fz20);
        padding-bottom: 5px; }
        .map_area .map_info .en:before {
          bottom: 10px; }
    .map_area .map {
      position: relative;
      width: 90%;
      aspect-ratio: 720/400;
      border-radius: 7.5px;
      margin: 20px auto 0; } }
/* ==========================================================================
	news
========================================================================== */
.news {
  position: relative;
  z-index: 10;
  overflow: hidden;
  padding-bottom: 150px; }
  .news .circle {
    position: absolute;
    right: -280px;
    top: -190px;
    width: 858px;
    animation: rotateRight 100s linear infinite;
    z-index: 1; }
  .news .inr {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    z-index: 10; }
  .news .tit_area {
    position: relative;
    width: 180px;
    padding-top: 40px; }
    .news .tit_area h2 {
      font-size: 80px;
      font-weight: 800;
      padding: 20px 0;
      background: #fff;
      width: 120px;
      border: 1px solid var(--base-border-color); }
    .news .tit_area p {
      position: absolute;
      left: 122px;
      top: 40px;
      padding: 10px;
      background: var(--theme-color);
      color: #fff;
      font-size: 28px;
      text-shadow: 1px 1px 0 black, -1px 1px 0 black, 1px -1px 0 black, -1px -1px 0 black;
      border: 1px solid var(--base-border-color);
      border-left: none; }
  .news .link_area {
    position: relative;
    flex: 1;
    margin-left: calc((80/1300)*100%); }
    .news .link_area .list_link {
      display: block;
      padding: 40px 0; }
      .news .link_area .list_link:not(:first-child) {
        border-top: 1px solid var(--base-border-color); }
      @media (hover: hover) {
        .news .link_area .list_link:hover .cate:before {
          background: var(--theme-color02); }
        .news .link_area .list_link:hover .cate span {
          color: #fff; }
        .news .link_area .list_link:hover .n_txt {
          color: var(--theme-color02); }
        .news .link_area .list_link:hover .day {
          color: var(--theme-color02); } }
    .news .link_area .cd_area {
      margin-bottom: 20px; }
    .news .link_area .cate {
      position: relative;
      display: inline-block;
      padding: 5px 15px 6px;
      box-sizing: border-box;
      background: var(--theme-color02);
      border-radius: 17px;
      margin-right: 25px;
      transition: color 0.4s var(--easeInOutCubic); }
      .news .link_area .cate:before {
        content: "";
        display: block;
        width: calc(100% - 10px);
        height: calc(100% - 2px);
        background: #fff;
        position: absolute;
        left: 0;
        right: 0;
        top: 1px;
        margin: auto;
        border-radius: 15px;
        z-index: 1;
        transition: background 0.4s var(--easeInOutCubic); }
      .news .link_area .cate span {
        position: relative;
        font-size: 16px;
        font-weight: 500;
        color: var(--base-text-color);
        z-index: 1;
        transition: color 0.4s var(--easeInOutCubic); }
    .news .link_area .day {
      font-size: 18px;
      transition: color 0.4s var(--easeInOutCubic); }
    .news .link_area .n_txt {
      font-size: 28px;
      font-weight: 500;
      --lh:1.5;
      position: relative;
      /*
      overflow: hidden;
      */
      line-height: calc(var(--lh)* 1em);
      padding-top: .1px;
      padding-bottom: .1px;
      transition: color 0.4s var(--easeInOutCubic); }
      .news .link_area .n_txt::before {
        content: '';
        display: block;
        height: 0;
        width: 0;
        /*
        margin-top: calc((1 - var(--lh)) * 0.5em);
        */
        margin-top: calc((1 - var(--lh))* .5em); }
      .news .link_area .n_txt::after {
        content: '';
        display: block;
        height: 0;
        width: 0;
        margin-bottom: calc((1 - var(--lh))* .5em); }
    .news .link_area .link_btn {
      margin-left: calc(100% - 380px); }

@media screen and (max-width: 800px) {
  .news {
    padding-top: 0;
    padding-bottom: 100px; }
    .news .circle {
      right: -210px;
      top: -90px;
      width: 400px; }
    .news .inr {
      position: relative;
      width: 85%;
      display: block; }
    .news .tit_area {
      position: relative;
      width: 290px;
      margin: 0 auto 50px;
      padding-top: 0; }
      .news .tit_area h2 {
        font-size: var(--fz45);
        padding: 0 15px;
        width: auto; }
      .news .tit_area p {
        position: absolute;
        left: auto;
        right: 0;
        top: calc(100% - 5px);
        padding: 0px 15px;
        width: auto;
        font-size: var(--fz17);
        border: 1px solid var(--base-border-color); }
    .news .link_area {
      position: relative;
      width: 100%;
      margin-left: 0; }
      .news .link_area .list_link {
        padding: 30px 0; }
      .news .link_area .cd_area {
        margin-bottom: 15px; }
      .news .link_area .cate {
        padding: 2px 10px 2px;
        margin-right: 15px; }
        .news .link_area .cate:before {
          width: calc(100% - 5px); }
        .news .link_area .cate span {
          font-size: var(--fz12); }
      .news .link_area .day {
        font-size: var(--fz13); }
      .news .link_area .n_txt {
        font-size: var(--fz16); }
      .news .link_area .link_btn {
        margin: 57px 0 0 10px;
        width: calc(100% - 10px); } }

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