@charset "UTF-8";
:root {
  --mainColor: #006253;
  --paleColor: #e5eced;
  --transpaColor: rgba(0, 98, 83, 0.85);
}

body.default {
  --mainColor: #006253;
  --paleColor: #e5eced;
  --transpaColor: rgba(0, 98, 83, 0.85);
}

body.ye {
  --mainColor: #da9412;
  --paleColor: #fbf4e6;
  --transpaColor: rgb(218 148 18 / 0.85);
}

body.sbl {
  --mainColor: #3893be;
  --paleColor: #eaf4f8;
  --transpaColor: rgb(56 147 190 / 0.85);
}

body.pk {
  --mainColor: #ed7b8e;
  --paleColor: #fdf1f3;
  --transpaColor: rgb(237 123 142 / 0.85);
}

body.rd {
  --mainColor: #c13b3b;
  --paleColor: #f8ebeb;
  --transpaColor: rgb(193 59 59 / 0.85);
}

body.gr {
  --mainColor: #68aa46;
  --paleColor: #eff6ec;
  --transpaColor: rgb(104 170 70 / 0.85);
}

/* COLOR

DEFAULT
#00434c //100%
#548187 //67%
#7fa1a5 //50%
#d8e2e4 //15%
#e5eced //10%

YELLOW ye
#da9412 //100%
#e6b760 //67%
#ecc988 //50%
#f9efdb //15%
#fbf4e6 //10%

SKYBLUE sbl
#3893be //100%
#7ab7d4 //67%
#9bc9de //50%
#e1eff5 //15%
#eaf4f8 //10%

PINK pk
#ed7b8e //100%
#f3a7b3 //67%
#f6bdc6 //50%
#fcebee //15%
#fdf1f3 //10%

RED rd
#c13b3b //100%
#d67c7c //67%
#e09d9d //50%
#f5e1e1 //15%
#f8ebeb //10%

GREEN gr
#68aa46 //100%
#9ac683 //67%
#b3d4a2 //50%
#e8f2e3 //15%
#eff6ec //10%

*/
/* pc・sp共通 */
/* TEXT */
.rq {
  color: #ff0000;
  font-weight: bold;
}

.str {
  color: var(--mainColor);
  font-weight: bold;
}

/* other */
.img-h0 {
  line-height: 0;
  margin-bottom: 0;
}

.image-cap {
  font-weight: 112.5%;
  text-align: center;
  font-weight: bold;
}

.parts-title {
  font-size: 125%;
  font-weight: bold;
  padding-bottom: 5px;
  border-bottom: 2px solid black;
  margin-bottom: 50px;
}

@media all and (min-width: 751px) {
  /* BTN */
  .btn-type01 > a {
    display: inline-block;
    padding: 10px 15px 10px 37px;
    color: #ffffff;
    font-weight: bold;
    text-decoration: none !important;
    line-height: 1;
    text-decoration: none;
    background-position: 13px 11px;
    background-repeat: no-repeat;
    background-size: 15px auto;
    background-image: url(../images/common/btn-type01.png);
    background-color: var(--mainColor);
    border-radius: 6px;
  }
  .btn-type01 > a:hover {
    filter: alpha(opacity=60); /* IE 6,7*/
    -ms-filter: "alpha(opacity=60)"; /* IE 8,9 */
    -moz-opacity: 0.6; /* FF , Netscape */
    -khtml-opacity: 0.6; /* Safari 1.x */
    opacity: 0.6;
    zoom: 1; /*IE*/
  }
  body.ye .btn-type01 a {
    background-image: url(../images/common/btn-type01_ye.png);
  }
  body.sbl .btn-type01 a {
    background-image: url(../images/common/btn-type01_sbl.png);
  }
  body.pk .btn-type01 a {
    background-image: url(../images/common/btn-type01_pk.png);
  }
  body.rd .btn-type01 a {
    background-image: url(../images/common/btn-type01_rd.png);
  }
  body.gr .btn-type01 a {
    background-image: url(../images/common/btn-type01_gr.png);
  }
  .link-btn01 > a {
    display: inline-block;
    color: #ffffff;
    font-weight: bolder;
    background-color: var(--mainColor);
    padding: 5px 15px;
    text-decoration: none !important;
    transition: opacity 0.3s;
  }
  .link-btn01 > a:hover {
    opacity: 0.6;
  }
  /* title-level */
  .title-level01 {
    line-height: 1.7;
    margin-bottom: 55px;
    color: var(--mainColor);
    font-size: 187.5%; /* 30px */
    font-weight: bold;
    text-align: center;
  }
  .title-level02 {
    color: var(--mainColor);
    font-size: 125%; /* 20px */
    font-weight: bold;
    line-height: 1.7;
    margin-bottom: 20px;
  }
  .title-level02.type_bord {
    padding-bottom: 10px;
    border-bottom: 1px solid var(--mainColor);
  }
  .title-level03 {
    margin-bottom: 10px;
    color: var(--mainColor);
    font-size: 112.5%;
    font-weight: bold;
    letter-spacing: 1.5pt;
  }
  /* listmark */
  .listmark-num {
    counter-reset: list-num;
  }
  .listmark-num > li {
    counter-increment: list-num;
    position: relative;
    padding-left: 25px;
    margin-bottom: 5px;
  }
  .listmark-num > li:before {
    content: counter(list-num);
    height: 20px;
    width: 20px;
    color: #ffffff;
    background-color: var(--mainColor);
    font-size: 80%;
    border-radius: 50%;
    line-height: 1;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 6px;
    left: 0;
  }
  .numbering-list {
    counter-reset: numberting;
  }
  .numbering-list > li {
    position: relative;
    padding-left: 40px;
    margin-bottom: 40px;
  }
  .numbering-list > li:before {
    counter-increment: numberting 1;
    content: counter(numberting);
    color: #ffffff;
    background-color: var(--mainColor);
    border-radius: 50%;
    width: 30px;
    height: 30px;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 1px;
    left: 0;
  }
  .numbering-list > li .sub-box {
    padding-top: 3px;
  }
  .list-column02 > li {
    display: flex;
    align-items: flex-start;
    gap: 45px;
    border-bottom: 1px solid var(--mainColor);
    margin-bottom: 25px;
  }
  .list-column02 > li:last-of-type {
    margin-bottom: 0;
    border-bottom: none;
  }
  .list-column02 > li .year {
    display: inline-block;
    width: 80px;
  }
  .list-column02 > li .list-cnt {
    flex: 1;
  }
  .list-column02 > li .list-cnt *:last-child {
    margin-bottom: 0;
  }
  .list-column02 > li:not(:last-of-type) .list-cnt {
    margin-bottom: 25px;
  }
  .cnt02-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0 40px;
  }
  .cnt02-list > li {
    box-sizing: border-box;
    width: 460px;
    margin-bottom: 60px;
  }
  .cnt02-list > li .title-level02 {
    margin-bottom: 15px;
  }
  .cnt02-list > li .title-level02 .link-icon {
    color: var(--mainColor);
    text-decoration: none !important;
    padding-right: 30px;
    background-image: url(../images/common/linkicon-type01.png);
    background-size: 16px auto;
    background-repeat: no-repeat;
    background-position: center right;
  }
  .cnt02-list > li .address-info {
    margin-bottom: 5px;
  }
  body.ye .title-level02 .link-icon {
    background-image: url(../images/common/linkicon-type01_ye.png);
  }
  body.sbl .title-level02 .link-icon {
    background-image: url(../images/common/linkicon-type01_sbl.png);
  }
  body.pk .title-level02 .link-icon {
    background-image: url(../images/common/linkicon-type01_pk.png);
  }
  body.rd .title-level02 .link-icon {
    background-image: url(../images/common/linkicon-type01_rd.png);
  }
  body.gr .title-level02 .link-icon {
    background-image: url(../images/common/linkicon-type01_gr.png);
  }
  /* TABLE */
  table .t100p {
    width: 100%;
  }
  table .tls {
    text-align: center;
    letter-spacing: 1em;
    text-indent: 1em;
  }
  /* TYPE01 */
  /* TYPE02 */
  /* TYPE03 */
  /* box */
  .bd-box {
    padding: 20px 30px 10px;
    border: 1px solid var(--mainColor);
    box-sizing: border-box;
  }
  .box-type01 {
    padding: 20px 30px 10px;
    background-color: var(--paleColor);
    box-sizing: border-box;
  }
  /* AREA */
  .area-type01 {
    padding: 30px 0;
    background-color: var(--paleColor);
  }
  .imgwrap-box {
    width: 100%;
    min-width: 1100px;
    max-width: 1875px;
    margin: 0 auto 70px;
    position: relative;
  }
  .imgwrap-box .image-box {
    box-sizing: border-box;
    width: 50%;
    position: absolute;
    top: 0;
  }
  .imgwrap-box .image-box .image img {
    width: 100%;
    height: auto;
  }
  .imgwrap-box.image-left {
    left: 0;
  }
  .imgwrap-box.image-right .image-box {
    right: 0;
  }
  .imgwrap-box.image-left.size-w520 .text-box {
    margin-left: 45%;
  }
  .imgwrap-box.image-left.size-w520 .image-box {
    padding-right: 120px;
  }
  .imgwrap-box.image-right.size-w520 .text-box {
    margin-right: 45%;
  }
  .imgwrap-box.image-right.size-w520 .image-box {
    padding-left: 120px;
  }
  .variable-box {
    display: flex;
    gap: 50px;
  }
  .variable-box .stretch-box {
    flex: 1;
  }
  .river-box .river-item {
    float: right;
    margin: 0 0 10px 30px;
  }
  .river-box .river-item .image {
    line-height: 1;
  }
  .river-box .river-item.type02 {
    float: left;
    margin: 0 30px 10px 0;
  }
  .images-box02 {
    display: flex;
    justify-content: center;
  }
  .images-box02 .left-item {
    margin: 0 25px;
  }
  .images-box02 .right-item {
    margin: 0 25px;
  }
  .images-box02.both-ends {
    justify-content: space-between;
  }
  .images-box02.both-ends .left-item, .images-box02.both-ends .right-item {
    margin: 0;
  }
  .images-box02.both-ends.max-w1000 {
    max-width: 1000px;
    margin: 0 auto;
  }
  .images-fbox {
    display: flex;
    justify-content: center;
  }
  .images-fbox .item {
    margin: 0 20px;
  }
  /* 端揃え */
  .images-fbox.w-full {
    justify-content: space-between;
  }
  .images-fbox.w-full .item {
    margin: 0;
  }
  /* 均等 */
  .images-fbox.w-between {
    justify-content: space-around;
  }
  .images-fbox.w-between .item {
    margin: 0;
  }
  /* 縦の中央寄せ */
  .images-fbox.align-center {
    align-items: center;
  }
  .cnt-box03 {
    display: flex;
    justify-content: center;
  }
  .cnt-box03 .item {
    box-sizing: border-box;
    width: 33.333333%;
    padding: 0 25px;
  }
  .c_contact-box {
    text-align: center;
    padding: 30px 30px;
    border: 1px solid var(--mainColor);
    box-sizing: border-box;
  }
  .c_contact-box .title-level01 {
    margin-bottom: 30px;
  }
  .c_contact-box .name {
    font-size: 106.25%;
    font-weight: bold;
    margin-bottom: 5px;
  }
  .c_contact-box .address-box {
    margin-bottom: 5px;
  }
  .c_name_area {
    color: var(--mainColor);
    margin: 0;
  }
  .c_name_area .name {
    font-size: 162.5%;
  }
  .c_name_area02 {
    font-size: 125%; /* 20px */
    font-weight: bold;
    color: var(--mainColor);
    margin-bottom: 20px;
  }
  .c_name_area02 .post {
    font-size: 85%; /* 17px */
    display: inline-block;
    color: #ffffff;
    background-color: var(--mainColor);
    padding: 3px 20px;
    margin-right: 15px;
  }
  /* STAFF */
  .staff-box .staff-list > li {
    display: flex;
    gap: 50px;
  }
  .staff-box .staff-list > li:not(:last-of-type) {
    margin-bottom: 80px;
  }
  .staff-box .staff-list > li .image-box {
    width: 200px;
  }
  .staff-box .staff-list > li .text-box {
    flex: 1;
  }
  .staff-box .staff-list > li .text-box .names-info {
    color: var(--mainColor);
    font-weight: bold;
    margin-bottom: 25px;
  }
  .staff-box .staff-list > li .text-box .names-info .posit {
    margin-bottom: 0;
  }
  .staff-box .staff-list > li .text-box .names-info .name {
    font-size: 125%;
  }
  .staff-box .staff-list > li .text-box .names-info .name .name-en {
    font-size: 70%;
    margin-left: 20px;
  }
  .staff-box .staff-list > li .text-box .detail-box .item {
    display: flex;
    gap: 40px;
    margin-bottom: 10px;
  }
  .staff-box .staff-list > li .text-box .detail-box .item .s-head {
    width: 100px;
    color: var(--mainColor);
    font-weight: bold;
  }
  .staff-box .staff-list > li .text-box .detail-box .item .cnt_box {
    flex: 1;
  }
  .staff-box .staff-list > li .text-box .detail-box .item .cnt_box .qualif-list > li {
    position: relative;
    padding-left: 15px;
  }
  .staff-box .staff-list > li .text-box .detail-box .item .cnt_box .qualif-list > li:before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    background-color: #000;
    border-radius: 50%;
    position: absolute;
    top: 13px;
    left: 0;
  }
  /* NEWS */
  .news-box .news-list > dt {
    color: var(--mainColor);
    font-weight: bold;
    margin-bottom: 0;
    display: flex;
    gap: 20px;
    align-items: flex-start;
  }
  .news-box .news-list > dt .titles {
    flex: 1;
  }
  .news-box .news-list > dd {
    margin-bottom: 10px;
  }
  .news-box .news-list > dd:after {
    content: "";
    height: 0;
    display: block;
    clear: both;
  }
  .year-list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0 auto 50px;
    max-width: 750px;
  }
  .year-list > li {
    color: var(--mainColor);
    font-weight: bold;
    border-left: 1px solid var(--mainColor);
    margin-bottom: 20px;
  }
  .year-list > li:last-of-type {
    border-right: 1px solid var(--mainColor);
  }
  .year-list > li .link {
    padding: 0 20px;
    display: block;
    color: var(--mainColor);
    text-decoration: none !important;
  }
  .year-list > li .link .bord {
    display: block;
    position: relative;
  }
  .year-list > li .link .bord:after {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background-color: var(--mainColor);
    position: absolute;
    bottom: 0;
    left: 0;
    opacity: 0;
    transition: opacity 0.3s;
  }
  .year-list > li .link:hover .bord:after {
    opacity: 1;
  }
  .year-list > li.on .link .bord::after {
    opacity: 1;
  }
  .acheve-box .cat-title {
    font-size: 125%;
    font-weight: bold;
    color: var(--mainColor);
    margin-bottom: 20px;
  }
  .acheve-box .cat-list > li {
    margin-bottom: 30px;
  }
  .acheve-box .cat-list > li .acheve-title {
    font-weight: bold;
    padding: 7px 15px;
    background-color: var(--paleColor);
  }
  .acheve-box .cat-list > li .acheve-cnt {
    padding: 0 15px;
  }
  /* faq */
  .faq-area > li {
    margin-bottom: 60px;
  }
  .faq-area > li .question {
    font-size: 125%;
    font-weight: bold;
    color: var(--mainColor);
    padding-left: 50px;
    position: relative;
  }
  .faq-area > li .question:before {
    content: "Q";
    color: #ffffff;
    background-color: var(--mainColor);
    margin-bottom: 15px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    position: absolute;
    top: -3px;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .faq-area > li .answer {
    padding-left: 50px;
  }
  /* voice */
  .message-box .prof-box {
    text-align: center;
    margin-bottom: 20px;
  }
  .message-box .prof-box .parent-box {
    display: inline-block;
    margin: 0 auto;
    position: relative;
    line-height: 1;
  }
  .message-box .prof-box .parent-box .subtitle-box {
    width: 88px;
    height: 88px;
    font-weight: bold;
    color: #ffffff;
    text-align: center;
    background-color: var(--mainColor);
    border-radius: 50%;
    position: absolute;
    top: -10px;
    left: -60px;
  }
  .message-box .prof-box .parent-box .subtitle-box .sub-til {
    display: block;
    line-height: 1;
    padding: 18px 10px 6px;
    position: relative;
  }
  .message-box .prof-box .parent-box .subtitle-box .number {
    font-size: 200%;
    line-height: 1;
    display: block;
  }
  .message-box .prof-box .parent-box .image-box {
    line-height: 1;
  }
  .message-box .prof-box .parent-box .info-box {
    text-align: left;
    position: absolute;
    right: -35px;
    bottom: 10px;
    transform: translateX(100%);
  }
  .message-box .prof-box .parent-box .info-box .post {
    display: block;
    color: var(--mainColor);
    font-weight: bold;
    margin-bottom: 10px;
  }
  .message-box .prof-box .parent-box .info-box .name {
    display: block;
    font-size: 150%;
    color: var(--mainColor);
    font-weight: bold;
    margin-bottom: 20px;
  }
  /* RIPPLE */
  .ripple {
    position: relative;
    overflow: hidden;
  }
  .ripple .rp-effect {
    position: absolute;
    border-radius: 50%;
    opacity: 0.35;
    transform: scale(0);
    background: #FFF;
    animation: ripple 700ms;
    pointer-events: none;
  }
  @-webkit-keyframes ripple {
    to {
      opacity: 0;
      transform: scale(2);
    }
  }
  @keyframes ripple {
    to {
      opacity: 0;
      transform: scale(2);
    }
  }
  .blur {
    transition: all 0.2s ease-out;
    -webkit-filter: blur(4px);
    -moz-filter: blur(4px);
    -ms-filter: blur(4px);
    filter: blur(4px);
  }
  /* COLORSW */
  .colorsw-box {
    position: fixed;
    top: 225px;
    right: 0;
    width: 100px;
    z-index: 9999;
    background-color: #ffffff;
  }
  .colorsw-box .titles {
    margin: 5px 0;
    font-size: 85%;
    font-weight: bold;
    text-align: center;
  }
  .colorsw-box .colorsw {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
    margin-bottom: 0;
  }
  .colorsw-box .colorsw > li {
    width: 49px;
    height: 42px;
    cursor: pointer;
    background-color: #006253;
  }
  .colorsw-box .colorsw > li.default {
    background-color: #006253;
  }
  .colorsw-box .colorsw > li.ye {
    background-color: #da9412;
  }
  .colorsw-box .colorsw > li.sbl {
    background-color: #3893be;
  }
  .colorsw-box .colorsw > li.pk {
    background-color: #ed7b8e;
  }
  .colorsw-box .colorsw > li.rd {
    background-color: #c13b3b;
  }
  .colorsw-box .colorsw > li.gr {
    background-color: #68aa46;
  }
}
@media only screen and (max-width: 750px) {
  /* BTN */
  .btn-type01 a {
    display: inline-block;
    padding: 10px 15px 10px 37px;
    color: #ffffff;
    font-weight: bold;
    text-decoration: none !important;
    line-height: 1;
    text-decoration: none;
    background-position: 13px 10px;
    background-repeat: no-repeat;
    background-size: 15px auto;
    background-image: url(../images/common/btn-type01.png);
    background-color: var(--mainColor);
    border-radius: 6px;
  }
  .btn-type01 a :hover {
    filter: alpha(opacity=60); /* IE 6,7*/
    -ms-filter: "alpha(opacity=60)"; /* IE 8,9 */
    -moz-opacity: 0.6; /* FF , Netscape */
    -khtml-opacity: 0.6; /* Safari 1.x */
    opacity: 0.6;
    zoom: 1; /*IE*/
  }
  body.ye .btn-type01 a {
    background-image: url(../images/common/btn-type01_ye.png);
  }
  body.sbl .btn-type01 a {
    background-image: url(../images/common/btn-type01_sbl.png);
  }
  body.pk .btn-type01 a {
    background-image: url(../images/common/btn-type01_pk.png);
  }
  body.rd .btn-type01 a {
    background-image: url(../images/common/btn-type01_rd.png);
  }
  body.gr .btn-type01 a {
    background-image: url(../images/common/btn-type01_gr.png);
  }
  .link-btn01 a {
    display: inline-block;
    color: #ffffff;
    font-weight: bolder;
    background-color: var(--mainColor);
    padding: 8px 15px;
    text-decoration: none !important;
  }
  /* title-level */
  .title-level01 {
    color: var(--mainColor);
    font-size: 156.25%;
    font-weight: bold;
    line-height: 1.7;
    margin-bottom: 30px;
    text-align: center;
  }
  .title-level02 {
    color: var(--mainColor);
    font-size: 121.428571%; /* 17px */
    font-weight: bold;
    line-height: 1.7;
    margin-bottom: 15px;
  }
  .title-level02.type_bord {
    padding-bottom: 7px;
    border-bottom: 1px solid var(--mainColor);
  }
  .title-level03 {
    margin-bottom: 10px;
    color: var(--mainColor);
    font-size: 110.714285%; /* 15.5px */
    font-weight: bold;
    letter-spacing: 1.5pt;
  }
  /* listmark */
  .listmark-num {
    counter-reset: list-num;
  }
  .listmark-num > li {
    counter-increment: list-num;
    padding-left: 25px;
    margin-bottom: 5px;
    position: relative;
  }
  .listmark-num > li:before {
    content: counter(list-num);
    height: 20px;
    width: 20px;
    color: #ffffff;
    background-color: var(--mainColor);
    font-size: 80%;
    border-radius: 50%;
    line-height: 1;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 4px;
    left: 0;
  }
  .numbering-list {
    counter-reset: numberting;
  }
  .numbering-list > li {
    position: relative;
    padding-left: 35px;
    margin-bottom: 20px;
  }
  .numbering-list > li:before {
    counter-increment: numberting 1;
    content: counter(numberting);
    color: #ffffff;
    background-color: var(--mainColor);
    border-radius: 50%;
    width: 25px;
    height: 25px;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 2px;
    left: 0;
  }
  .numbering-list > li .sub-box {
    padding-top: 4px;
  }
  .list-column02 li {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    border-bottom: 1px solid var(--mainColor);
    margin-bottom: 15px;
  }
  .list-column02 li:last-of-type {
    margin-bottom: 0;
    border-bottom: none;
  }
  .list-column02 li .year {
    display: inline-block;
    width: 55px;
  }
  .list-column02 li .list-cnt {
    flex: 1;
  }
  .list-column02 li .list-cnt *:last-child {
    margin-bottom: 0;
  }
  .list-column02 li:not(:last-of-type) .list-cnt {
    margin-bottom: 15px;
  }
  .cnt02-list > li {
    margin-bottom: 45px;
  }
  .cnt02-list .title-level02 {
    margin-bottom: 10px;
  }
  .cnt02-list .title-level02 .link-icon {
    color: var(--mainColor);
    text-decoration: none !important;
    padding-right: 25px;
    background-image: url(../images/common/linkicon-type01.png);
    background-size: 14px auto;
    background-repeat: no-repeat;
    background-position: center right;
  }
  .cnt02-list .address-info {
    margin-bottom: 5px;
  }
  body.ye .title-level02 .link-icon {
    background-image: url(../images/common/linkicon-type01_ye.png);
  }
  body.sbl .title-level02 .link-icon {
    background-image: url(../images/common/linkicon-type01_sbl.png);
  }
  body.pk .title-level02 .link-icon {
    background-image: url(../images/common/linkicon-type01_pk.png);
  }
  body.rd .title-level02 .link-icon {
    background-image: url(../images/common/linkicon-type01_rd.png);
  }
  body.gr .title-level02 .link-icon {
    background-image: url(../images/common/linkicon-type01_gr.png);
  }
  /* TABLE */
  table .t100p {
    width: 100%;
  }
  table .tls {
    text-align: center;
    letter-spacing: 1em;
    text-indent: 1em;
  }
  /* TYPE01 */
  /* TYPE02 */
  /* TYPE03 */
  /* box */
  .bd-box {
    padding: 10px 15px;
    border: 1px solid var(--mainColor);
    box-sizing: border-box;
  }
  .box-type01 {
    padding: 10px 15px;
    background-color: var(--paleColor);
    box-sizing: border-box;
  }
  /* AREA */
  .area-type01 {
    padding: 10px 0;
    background-color: var(--paleColor);
  }
  .imgwrap-box .text-box {
    margin-bottom: 20px;
  }
  .imgwrap-box .image-box {
    width: 100%;
  }
  .imgwrap-box .image-box .image img {
    width: 100%;
    height: auto;
  }
  .variable-box {
    display: flex;
    flex-direction: column;
    gap: 20px 0;
  }
  .variable-box.sp-imgup {
    flex-direction: column-reverse;
  }
  .variable-box .image {
    line-height: 0;
    margin-bottom: 0;
  }
  .river-box .river-item {
    margin-bottom: 20px;
  }
  .river-box .river-item .image {
    line-height: 1;
  }
  .images-box02 .left-item {
    margin-bottom: 20px;
  }
  .images-fbox .item {
    margin-bottom: 20px;
  }
  .cnt-box03 .item {
    margin-bottom: 20px;
  }
  .c_contact-box {
    padding: 25px 15px;
    border: 1px solid var(--mainColor);
    box-sizing: border-box;
  }
  .c_contact-box .title-level01 {
    margin-bottom: 20px;
  }
  .c_contact-box .name {
    font-size: 106.25%;
    font-weight: bold;
    margin-bottom: 5px;
  }
  .c_contact-box .address-box {
    margin-bottom: 5px;
  }
  .c_name_area {
    text-align: center;
    color: var(--mainColor);
    margin: 0;
  }
  .c_name_area .name {
    font-size: 157.142857%; /* 22.5px */
  }
  .c_name_area02 {
    font-size: 125%; /* 20px */
    font-weight: bold;
    color: var(--mainColor);
    margin-bottom: 20px;
  }
  .c_name_area02 .post {
    font-size: 85%; /* 17px */
    display: inline-block;
    color: #ffffff;
    background-color: var(--mainColor);
    padding: 2px 20px;
    margin-right: 15px;
  }
  /* STAFF */
  .staff-box .staff-list > li:not(:last-of-type) {
    margin-bottom: 80px;
  }
  .staff-box .staff-list > li .image-box {
    text-align: center;
    margin-bottom: 15px;
  }
  .staff-box .staff-list > li .image-box .image {
    line-height: 0;
    margin-bottom: 0;
  }
  .staff-box .staff-list > li .text-box .names-info {
    color: var(--mainColor);
    font-weight: bold;
    margin-bottom: 30px;
    text-align: center;
  }
  .staff-box .staff-list > li .text-box .names-info .posit {
    margin-bottom: 0;
  }
  .staff-box .staff-list > li .text-box .names-info .name {
    font-size: 150%;
    line-height: 1.6;
  }
  .staff-box .staff-list > li .text-box .names-info .name .name-en {
    display: block;
    font-size: 70%;
  }
  .staff-box .staff-list > li .text-box .detail-box .item {
    display: flex;
    gap: 0 10px;
    margin-bottom: 10px;
  }
  .staff-box .staff-list > li .text-box .detail-box .item .s-head {
    width: 90px;
    color: var(--mainColor);
    font-weight: bold;
  }
  .staff-box .staff-list > li .text-box .detail-box .item .cnt_box {
    flex: 1;
  }
  .staff-box .staff-list > li .text-box .detail-box .item .cnt_box .qualif-list > li {
    position: relative;
    padding-left: 12px;
  }
  .staff-box .staff-list > li .text-box .detail-box .item .cnt_box .qualif-list > li:before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    background-color: #000;
    border-radius: 50%;
    position: absolute;
    top: 11px;
    left: 0;
  }
  /* NEWS */
  .news-box .news-list > dt {
    margin-bottom: 0;
    color: var(--mainColor);
    font-weight: bold;
  }
  .news-box .news-list > dt .times,
  .news-box .news-list > dt .titles {
    display: block;
    margin-bottom: 0;
  }
  .news-box .news-list > dd {
    margin-bottom: 10px;
  }
  .year-list {
    max-width: 450px;
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto 40px;
  }
  .year-list li {
    width: 33.333333%;
    color: var(--mainColor);
    font-weight: bold;
    border-right: 1px solid var(--mainColor);
    margin-bottom: 15px;
    text-align: center;
  }
  .year-list li:first-of-type {
    border-left: 1px solid var(--mainColor);
  }
  .year-list li:nth-child(3n+1) {
    border-left: 1px solid var(--mainColor);
  }
  .year-list li .link {
    padding: 0 25px;
    display: block;
    color: var(--mainColor);
    text-decoration: none !important;
  }
  .year-list li .link .bord {
    display: inline-block;
    padding: 5px 0;
    position: relative;
  }
  .year-list li .link .bord:after {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background-color: var(--mainColor);
    position: absolute;
    bottom: 0;
    left: 0;
    opacity: 0;
    transition: opacity 0.3s;
  }
  .year-list li .link:hover .bord:after {
    opacity: 1;
  }
  .year-list li.on .link .bord::after {
    opacity: 1;
  }
  .acheve-box .cat-title {
    font-size: 125%;
    font-weight: bold;
    color: var(--mainColor);
    margin-bottom: 15px;
  }
  .acheve-box .cat-list > li {
    margin-bottom: 20px;
  }
  .acheve-box .cat-list > li .acheve-title {
    font-weight: bold;
    padding: 7px 15px;
    background-color: var(--paleColor);
  }
  .acheve-box .cat-list > li .acheve-title .acheve-cnt {
    padding: 0 15px;
  }
  /* fqq */
  .faq-area > li {
    margin-bottom: 40px;
  }
  .faq-area > li .question {
    font-size: 125%;
    font-weight: bold;
    color: var(--mainColor);
    padding-left: 45px;
    position: relative;
  }
  .faq-area > li .question:before {
    content: "Q";
    color: #ffffff;
    background-color: var(--mainColor);
    margin-bottom: 15px;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    position: absolute;
    top: -1px;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .faq-area > li .answer {
    padding-left: 45px;
  }
  /* VOICE */
  .message-box .prof-box {
    text-align: center;
    margin-bottom: 20px;
  }
  .message-box .prof-box .parent-box {
    display: inline-block;
    margin: 0 auto;
    position: relative;
    line-height: 1;
  }
  .message-box .prof-box .parent-box .subtitle-box {
    width: 76px;
    height: 76px;
    font-weight: bold;
    color: #ffffff;
    text-align: center;
    background-color: var(--mainColor);
    border-radius: 50%;
    position: absolute;
    top: -10px;
    left: -60px;
  }
  .message-box .prof-box .parent-box .subtitle-box .sub-til {
    display: block;
    line-height: 1;
    padding: 16px 10px 5px;
    position: relative;
  }
  .message-box .prof-box .parent-box .subtitle-box .number {
    font-size: 200%;
    line-height: 1;
    display: block;
  }
  .message-box .prof-box .parent-box .image-box {
    line-height: 1;
    margin-bottom: 10px;
  }
  .message-box .prof-box .parent-box .info-box .post {
    display: block;
    color: var(--mainColor);
    font-weight: bold;
    margin-bottom: 10px;
  }
  .message-box .prof-box .parent-box .info-box .name {
    display: block;
    font-size: 150%;
    color: var(--mainColor);
    font-weight: bold;
    margin-bottom: 10px;
  }
  /* RIPPLE */
  .ripple {
    position: relative;
    overflow: hidden;
  }
  .ripple .rp-effect {
    position: absolute;
    border-radius: 50%;
    opacity: 0.35;
    transform: scale(0);
    background: #FFF;
    animation: ripple 700ms;
    pointer-events: none;
  }
  @-webkit-keyframes ripple {
    to {
      opacity: 0;
      transform: scale(2);
    }
  }
  @keyframes ripple {
    to {
      opacity: 0;
      transform: scale(2);
    }
  }
  /* COLORSW */
  .colorsw-box {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100px;
    z-index: 9999;
    background-color: #ffffff;
  }
  .colorsw-box .titles {
    margin: 5px 0;
    font-size: 85%;
    font-weight: bold;
    text-align: center;
  }
  .colorsw-box .colorsw {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
    margin-bottom: 0;
  }
  .colorsw-box .colorsw > li {
    width: 49px;
    height: 40px;
    cursor: pointer;
    background-color: #006253;
  }
  .colorsw-box .colorsw > li.default {
    background-color: #006253;
  }
  .colorsw-box .colorsw > li.ye {
    background-color: #da9412;
  }
  .colorsw-box .colorsw > li.sbl {
    background-color: #3893be;
  }
  .colorsw-box .colorsw > li.pk {
    background-color: #ed7b8e;
  }
  .colorsw-box .colorsw > li.rd {
    background-color: #c13b3b;
  }
  .colorsw-box .colorsw > li.gr {
    background-color: #68aa46;
  }
}

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