/* import */
@import url('https://fonts.googleapis.com/css2?family=Albert+Sans:ital,wght@0,100..900;1,100..900&Noto+Sans+JP:wght@100..900&family=Red+Hat+Display:ital,wght@0,300..900;1,300..900&display=swap');

/* common */
* {box-sizing:border-box;}
html, html a, * {-webkit-font-smoothing:antialiased; font-smoothing:antialiased; text-rendering:optimizeLegibility;}
body {position:relative; margin:0; padding:0; padding-right:0 !important; color:#222; -webkit-text-size-adjust:none; font-family:'Albert Sans', 'Noto Sans JP', sans-serif; font-weight:500; font-size:1.04vw; line-height:1.75; letter-spacing:0; word-wrap:break-word;}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {margin:0; line-height:1.5; font-weight:700; font-family:'Albert Sans', 'Noto Sans JP', sans-serif; color:#222; letter-spacing:0;}
p {margin:0;}
p:not(:last-child) {margin-bottom:1.56vw;}
ul, ol {margin:0; padding:0 0 0 1.5em;}
a {color:#222; transition:all .2s ease-in-out;}
a:link, a:visited {text-decoration:none;}
a:hover:not(.button) {text-decoration:none; color:#222;}
figure {margin:0;}
img {vertical-align:middle;}
button {background:none; border:none; color:inherit; transition:all .2s ease-in-out; cursor:pointer;}
small {font-weight:500;}
mark {background:linear-gradient(transparent 55%, #bde4e4 55%); padding:0 .15em;}
hr {margin-top:3.13vw; padding-top:3.13vw; border:none; border-top:1px solid #000;}

/* util */
.wrapper {}
body.home #content {padding-top:10.42vw;}
.container {position:relative; z-index:10; max-width:71.15vw; width:71.15vw; margin:auto; padding:0;}
.container-fluid {width:100%; margin:auto; padding:0;}
.container-sm {max-width:50vw; width:50vw;}
.img-fluid {max-width:100%; height:auto;}
.img-full {width:100%; height:auto;}
.button {position:relative; display:inline-flex; flex-direction:column; justify-content:center; align-items:center; width:17.71vw; height:3.39vw; padding:0 1.56vw; border-radius:3.39vw; background-color:#bfc5cc; border:none; color:#fff; font-size:1.04vw; font-weight:600; cursor:pointer;}
.button i {position:absolute; top:50%; right:1.56vw; transform:translateY(-50%);}
.button:hover {color:#fff;}
.button.wi {align-items:flex-start; padding:0 4.95vw 0 1.56vw;}
.button.wi::before {position:absolute; right:1.04vw; content:''; width:3.91vw; height:1.3vw; background:#fff url(../images/arrow-blue.png) center center / 1.2vw auto no-repeat; border-radius:1.3vw;}
.button.wi.button-blue {background-color:#0859a8;}
.button.wi.button-blue:hover {background-color:#a2abb5; color:#222;}
.button.wi.button-blue::before {background-color:#fff;}
.button.wi.button-blue:hover::before {background-color:#0859a8; background-image:url(../images/arrow-white.png);}
.button.wi.button-red {background-color:#fa3e37;}
.button.wi.button-red:hover {background-color:#b5a2a2; color:#222;}
.button.wi.button-red::before {background-color:#fff; background-image:url(../images/arrow-red.png);}
.button.wi.button-red:hover::before {background-color:#fa3e37; background-image:url(../images/arrow-white.png);}
.button.sm {width:13.02vw;}
.button.md {width:21.88vw;}
.button.lg {width:36.46vw; height:4.17vw; border-radius:4.17vw; font-size:1.46vw;}
.button.fluid {width:100%; flex-basis:100%;}
.button.x2 {width:19.79vw;}
.text-blue {color:#0859a8;}
.text-center {text-align:center;}
.breadcrumbs {margin-bottom:2.6vw; padding:1.04vw 0;}
.breadcrumb {display:flex; justify-content:flex-end; align-items:center; font-size:0.94vw; line-height:1;}
.breadcrumb span > a {color:#000;}
.breadcrumb span > span {color:#0859a8;}
.breadcrumb i {margin:0 0.52vw; font-size:0.63vw;}
.pager {min-height:1.56vw;}
.pagination {display:flex; justify-content:center; margin-top:3.13vw;}
.pagination ul {display:flex; justify-content:center; gap:1.04vw; list-style:none; padding-left:0;}
.pagination ul > li {}
.pagination ul > li > span,
.pagination ul > li > a {display:flex; justify-content:center; align-items:center; width:3.13vw; height:3.13vw; border-radius:3.13vw;}
.pagination ul > li > span,
.pagination ul > li > a:hover {background-color:#0859a8; color:#fff;}

/* header */
.header {position:fixed; top:0; left:0; width:100%; background-color:rgba(255, 255, 255, 0); z-index:9999; transition:all .2s ease-in-out;}
.header.scrolling {background-color:rgba(255, 255, 255, 0);}
.header-inner {display:flex; justify-content:space-between; align-items:center; height:6.25vw; padding:0 2.6vw;}
.header-brand {width:4.17vw; margin:0 auto 0 0; padding:0; z-index:100;}
.header-brand-link {display:block; line-height:1;}
.button-hamburger {display:none;}
.header-nav {}
.header-nav-global {display:flex; align-items:center; gap:1.56vw; padding:1.04vw 3.13vw; list-style:none; background-color:#fff; border:1px solid #fff; border-radius:3.65vw; box-shadow:0 0 1.56vw rgba(0, 0, 0, .175);}
.header-nav-global > li {line-height:1.15;}
.header-nav-global > li > a {font-size:1.04vw; font-weight:700;}
.header-nav-global > li > a small {display:block; color:#0859a8; font-size:0.63vw;}
.header-nav-global > li > a:hover {color:#2e446d;}
.header-nav-global > .button-contact > a {display:flex; justify-content:center; align-items:center; height:2.6vw; padding:0 1.56vw; background-color:#fff; color:#2e446d; border-radius:1.56vw;}
.header-nav-global > .button-contact > a:hover {background-color:#2e446d !important; color:#fff !important;}

/* mod */
.section {position:relative; margin-bottom:7.81vw; z-index:10;}
.heading {position:relative; margin-bottom:3.13vw; font-weight:700;}
.heading-en {position:relative; display:inline-block; margin-bottom:1.04vw; color:#0859a8; font-size:2.6vw; line-height:1;}
.heading-en span {position:relative;}
.heading-en::before {position:absolute; left:0; bottom:0.26vw; content:''; width:100%; height:0.42vw; background:url(../images/bg-heading.png) center center / auto 100% repeat-x;}
.heading-ja {display:block; font-size:2.5vw; line-height:1.5;}
.content {}
.more {display:flex; flex-wrap:wrap; justify-content:center; margin-top:2.08vw; gap:1.04vw;}
.fadeUp {animation-name:fadeUpAnime; animation-duration:0.5s; animation-fill-mode:forwards; opacity:0;}
@keyframes fadeUpAnime {from {opacity:0; transform:translateY(2.6vw);} to {opacity:1; transform:translateY(0);}}

/* content */
.hero {position:relative; z-index:10; overflow:hidden;}
.hero-list {display:flex;}
.hero-list__item {flex:1;}
.hero-list__item:nth-child(1) {flex:0 0 19.95vw;}
.hero-list__item:nth-child(3) {flex:0 0 65.63vw;}
.hero-list__item.text {display:flex; align-items:center; padding:0; writing-mode:vertical-rl; font-size:2.71vw; font-weight:700; line-height:1.75; letter-spacing:0.26vw;}
.hero .more {margin-top:1.04vw;}

.card-list {display:grid; grid-template-columns:repeat(3, 1fr); gap:1.04vw;}
.card-list.mb {margin-bottom:2.6vw;}
.card-list__item {padding:1.04vw; background-color:#fff; border-radius:0.52vw; border:1px solid #222;}
.card-list__item figure {margin-bottom:1.04vw; border:1px solid #222; border-radius:0.52vw; overflow:hidden;}
.card-list__item figure img {}
.card-list__item h3 {margin-bottom:1.04vw; font-size:1.46vw;}
.card-list__item .meta {display:flex; justify-content:space-between; align-items:center; gap:0.52vw; margin-bottom:1.04vw;}
.card-list__item .meta > span {display:inline-flex; justify-content:center; align-items:center; min-width:7.29vw; height:1.82vw; padding:0; background-color:#c3c3c3; border-radius:1.82vw; font-size:0.73vw; line-height:1;}
.card-list__item .meta > time {font-size:0.73vw;}

.about {padding:7.81vw 0; background:url(../images/about-bg.jpg) center center / 37.5vw auto no-repeat;}
.about-title {padding-left:1.04vw;}
.about-title span {display:inline-block; padding:0.52vw 1.04vw; background-color:#0859a8; border:1px solid #222; border-bottom:none; border-radius:0.52vw 0.52vw 0 0; color:#fff; font-size:1.56vw; font-weight:700; line-height:1;}
.about-title span i {margin-right:0.26vw;}
.about-text {padding:1.04vw 1.56vw; background-color:#fff; border:1px solid #222; border-radius:0.52vw;}
.about-text p {font-size:1.2844036697247707vw; font-weight:700;}
.about-content p {line-height:2; font-size:1.14vw}

.content-title {position:relative; margin-bottom:1.82vw; padding-left:2.6vw; font-size:1.56vw;}
.content-title::before {position:absolute; top:50%; left:0; content:''; width:1.67vw; height:1.15vw; background:url(../images/heading-arrow.png) center center / 100% auto no-repeat; transform:translateY(-50%);}
.content-title-h2 {margin-bottom:2.5vw; font-size:1.56vw;}
.card-list.search {grid-template-columns:repeat(4, 1fr); margin-bottom:2.6vw;}
.card-list.search .card-list__item {text-align:center;}
.card-list.search .card-list__item h4 {height:5.1vw; margin-bottom:0.52vw; text-align:left; font-size:1.46vw;}
.card-list.search .card-list__item h4 i {margin-right:0.26vw;}
.card-list.search .card-list__item h4 span {font-size:1.2vw;}
.card-list.search .card-list__item figure {border-radius:50%;}
.card-list.search .card-list__item .arrow {position:relative; padding-right:4.43vw;}
.card-list.search .card-list__item .arrow::before {position:absolute; top:50%; right:0; content:''; width:3.91vw; height:1.3vw; background:#0859a8 url(../images/arrow-white.png) center center / 1.2vw auto no-repeat; border-radius:1.3vw; transform:translateY(-50%);}
.card-list.support {grid-template-columns:repeat(2, 1fr);}
.card-list.support .card-list__item {padding:1.56vw; gap:1.04vw;}
.card-list.institution {grid-template-columns:repeat(1, 1fr);}
.card-list.institution .card-list__item {padding:1.56vw;}
.card-list.institution .card-list__item-wrap {display:flex; justify-content:space-between; gap:2.6vw;}
.card-list.institution .card-list__item figure {flex:0 0 31.25;}
.card-list__item-tag {display:flex; flex-wrap:wrap; gap:0.52vw; margin-bottom:1.04vw; padding-left:0; list-style:none;}
.card-list__item-tag > li {}
.card-list__item-tag > li a {display:flex; justify-content:center; align-items:center; height:2.08vw; padding:0 1.04vw; border:1px solid #0859a8; border-radius:2.08vw; color:#0859a8; line-height:1;}
.card-list__item-tag > li a:hover {background-color:#0859a8; color:#fff;}
.card-list__item-tag > li a i {margin-right:0.26vw;}
.card-list__item-description {margin-bottom:1.04vw; font-size:0.94vw;}
.card-list__item-time {margin-bottom:1.56vw; font-size:0.94vw;}
.card-list__item-contact {display:flex; gap:1.04vw; font-size:0.94vw;}
.card-list__item-contact > span {color:#0859a8; font-weight:700;}
.card-list__item-contact > span i {margin-right:0.26vw;}
.card-list__item-more {margin-top:1.04vw; text-align:right;}
.card-list__item-text p a span {color:#0859a8; text-decoration-line:underline; text-decoration-color:#0859a8; text-decoration-style:solid;}
.card-list__item-text p a span:hover {text-decoration-line:none;}

.content-search {position:relative; padding:7.81vw 0;}
.content-search::before {position:absolute; content:''; top:0; left:0; width:100%; height:100%; background-color:#f1f5f5; border-radius:14.06vw;}
.search-form-list {display:flex; gap:1.04vw;}
.search-form-list__item {width:100%;}

.link .card-list {grid-template-columns:repeat(4, 1fr);}
.link .card-list .card-list__item figure {margin-bottom:0; border:none;}

.footer {position:relative; padding:7.81vw 0 2.6vw;}
.footer::before {position:absolute; content:''; top:0; left:0; width:100%; height:100%; background-color:#f1f5f5; border-radius:14.06vw 14.06vw 0 0;}
.footer-nav {margin-bottom:5.21vw;}
.footer-nav-row {display:flex; justify-content:space-between;}
.footer-nav-row__col {flex:1;}
.footer-nav-list {display:flex; flex-direction:column; justify-content:center; gap:1.04vw; margin-bottom:2.6vw; padding-left:0; list-style:none;}
.footer-nav-list__item > a {position:relative; padding-right:4.43vw; font-weight:600;}
.footer-nav-list__item > a::before {position:absolute; top:50%; right:0; content:''; width:3.91vw; height:1.3vw; background:#0859a8 url(../images/arrow-white.png) center center / 1.2vw auto no-repeat; border-radius:1.3vw; transform:translateY(-50%);}
.footer-nav-brand figure {margin-bottom:1.04vw; max-width:10.42vw;}
.footer-nav-brand p {margin-bottom:1.56vw; font-size:1.25vw; font-weight:700;}
.footer-nav-brand h3 {font-size:1.25vw;}
.footer-nav-brand address {font-style:normal;}
.footer-content-search-title {margin-bottom:1.04vw;}
.footer-content-search-list {display:flex; flex-wrap:wrap; gap:1.04vw;}
.footer-content-search-list__item {display:inline-flex; justify-content:center; align-items:center; height:2.08vw; padding:0 1.3vw; background-color:#fff; border:1px solid #222; border-radius:2.08vw; line-height:1;}
.footer-content-search-list__item:hover {background-color:#0859a8; color:#fff !important;}
.footer-copyright {text-align:center; font-size:0.94vw;}

.-pc {display:block;}
.-sp {display:none;}

/* page */
.page-header {position:relative; z-index:10;}
.page-header-bg {position:absolute; top:2.6vw; left:0; width:100%; height:100%; overflow:hidden;}
.page-header-bg-wrapper {transition-timing-function:linear;}
.page-header-bg-slide {width:auto; white-space:nowrap; flex-shrink:0; font-size:19.79vw; font-weight:900; color:#f1f5f5; line-height:1;}
.page-header-title {padding-top:22.4vw; font-weight:700; line-height:1;}
.page-header-title > span {display:block;}
.page-header-title .heading-ja {margin-bottom:0.52vw; font-size:3.13vw;}
.page-header-title .heading-en {font-size:2.08vw;}

.support-search {margin-bottom:2.6vw;}

.form-group:not(:last-child) {margin-bottom:1.56vw;}
.form-group-row {display:flex; flex-direction:column; gap:0.54vw;}
.form-group-row-label {display:flex; align-items:center; gap:0.54vw;}
.form-group-row-label span {display:inline-flex; justify-content:center; align-items:center; height:1.3vw; padding:0 0.52vw; border-radius:1.3vw; font-size:0.73vw; line-height:1;}
.form-group-row-label .required {background-color:#dcdbf1;}
.form-group-row-label .no-required {background-color:#f1f1f1;}
.form-group-row-content {}
.form-control {width:100%; padding:1.56vw 2.08vw; background-color:#fff; border:1px solid #222; border-radius:0.52vw; font-size:1.04vw; outline:none;}
textarea.form-control {min-height:7.81vw;}
.wpcf7-spinner {display:block !important;}

.single-news-heding {margin-bottom:1.04vw;}
.single-news-meta {margin-bottom:1.56vw;}
.single-news-thumbnail {margin-bottom:1.56vw;}

@media (max-width:767px) {
    /* common */
    body {min-width:inherit; font-size:14px;}
    p:not(:last-child) {margin-bottom:20px;}

    /* util */
    .container,
    .container-fluid,
    .header-inner {width:auto; min-width:inherit; max-width:inherit; padding-left:20px; padding-right:20px;}
    .button {width:100%; height:50px; padding:0 20px; border-radius:50px; font-size:14px;}
    .button.wi {padding:0 50px 0 20px;}
    .button.wi::before {right:15px; width:45px; height:18px; background-size:12px auto; border-radius:20px;}
    .button.md {width:100%; height:50px; border-radius:50px; font-size:14px;}
    .button.lg {width:100%; height:50px; border-radius:50px; font-size:14px;}
    .breadcrumbs {padding:20px 0; overflow-x:auto;}
    .breadcrumb {justify-content:flex-start; white-space:nowrap; font-size:12px;}
    .breadcrumb i {margin:0 5px; font-size:10px;}

    /* header */
    .header {min-width:inherit; height:60px;}
    .header-inner {align-items:center; height:60px; margin-right:0; padding:0 0 0 20px;}
    .header-brand {width:40px; margin:0 auto 0 0;}
    .button-hamburger {position:relative; display:block; width:60px; height:60px; margin:0; padding:0; background:#0859a8; border:none; border-radius:0; cursor:pointer; z-index:100;}
    .button-hamburger-bar {position:absolute; content:''; left:50%; width:20px; height:2px; background-color:#fff; border-radius:2px; transition:all .2s ease-in-out; transform:translateX(-50%);}
    .button-hamburger .button-hamburger-bar:nth-child(1) {top:calc(50% - 7px);}
    .button-hamburger .button-hamburger-bar:nth-child(2) {top:calc(50% - 1px);}
    .button-hamburger .button-hamburger-bar:nth-child(3) {top:calc(50% + 5px);}
    .button-hamburger.open .button-hamburger-bar:nth-child(1) {transform:rotate(45deg); top:calc(50% - 1px); width:15px; left:calc(50% - 7.5px); height:2px;}
    .button-hamburger.open .button-hamburger-bar:nth-child(2) {opacity:0;}
    .button-hamburger.open .button-hamburger-bar:nth-child(3) {transform:rotate(-45deg); top:calc(50% - 1px); width:15px; left:calc(50% - 7.5px); height:2px;}
    .header-nav {display:none; position:absolute; top:60px; left:0; width:100%; padding:20px 0; background-color:#fff;}
    .header-nav-global {align-items:flex-start; justify-content:inherit; flex-direction:column; gap:0; padding:0; background-color:transparent; border:none; border-radius:0; box-shadow:none;}
    .header-nav-global > li {display:flex; flex:1; width:100%; flex-direction:column;}
    .header-nav-global > li:not(:last-child) {border-bottom:1px solid #ddd;}
    .header-nav-global > li > a {display:flex; width:100%; flex-direction:row; align-items:center; gap:10px; height:auto; padding:20px; font-size:20px; color:#2e446d;}
    .header-nav-global > li > a small {font-size:14px;}
    .header-nav-global > li > a:hover {background-color:transparent; color:#2e446d;}
    .header-nav-global > .button-contact > a {width:100%; flex-direction:row; justify-content:flex-start; align-items:center; gap:15px; height:auto; padding:20px; font-size:16px;}
    .header-nav-global > .button-contact > a:hover {background-color:transparent !important; color:#2e446d !important;}

    body.home #content {padding-top:80px;}

    /* mod */
    .section {margin-bottom:50px;}
    .heading {margin-bottom:30px;}
    .heading-en {margin-bottom:5px; font-size:20px;}
    .heading-ja {font-size:16px;}
    .heading-ja small {font-size:20px;}
    .more {margin-top:30px; gap:10px; flex-direction:column;}

    .hero-list {flex-direction:column; gap:15px;}
    .hero-list__item.text {font-size:25px; letter-spacing:2px; writing-mode:inherit;}
    .hero-list__item:nth-child(1) {display:none;}
    .hero-list__item:nth-child(3) {flex:1;}
    .hero-list__item:nth-child(3) img {width:150%;}
    .hero .more {margin-top:20px;}
    .content-title {margin-bottom:10px; padding-left:15px; font-size:18px;}
    .content-title::before {width:10px; height:7px;}
    .card-list__item .meta {gap:10px; margin-bottom:10px;}
    .card-list__item .meta > span {min-width:90px; height:20px; border-radius:20px; font-size:10px;}
    .about {padding:100px 0; background-size:700px auto;}
    .about-title {padding-left:10px;}
    .about-title span {padding:10px 15px; border-radius:10px 10px 0 0; font-size:14px;}
    .about-title span i {margin-right:5px;}
    .about-text {padding:10px; border-radius:10px;}
    .about-text p {font-size:14px;}
    .content-search::before {border-radius:30px;}
    .card-list.search {grid-template-columns:repeat(2, 1fr); gap:10px; margin-bottom:20px;}
    .card-list.search .card-list__item h4 {height:auto; margin-bottom:10px; font-size:14px;}
	.card-list.search .card-list__item h4 span {font-size:12px;}
    .card-list.search .card-list__item .arrow {padding-right:25px;}
    .card-list.search .card-list__item .arrow::before {width:20px; height:10px; background-size:10px auto; border-radius:8px;}
    .card-list__item .meta > time {font-size:10px;}
    .card-list.mb {margin-bottom:20px;}
    .button.wi {flex-basis:inherit;}
    .link .card-list {grid-template-columns:repeat(2, 1fr); gap:10px;}
    .footer-nav-row {flex-direction:column; gap:20px;}
    .footer-nav-row__col:nth-child(1) {order:10;}
    .footer-nav-brand figure {max-width:80px; margin-bottom:10px;}
    .footer-nav-brand h3 {font-size:14px;}
    .footer-content-search-title {margin-bottom:10px;}
    .footer-content-search-list {gap:10px;}
    .footer-content-search-list__item {height:25px; padding:0 10px; border-radius:25px;}
    .footer-content-search-list__item i {margin-right:5px;}
    .search-form-list {gap:10px;}
    .floating {height:50px;}
    .floating-text {top:0; gap:20px;}
    .floating-text-inner {font-size:50px;}
    .about .content p {margin-bottom:10px; line-height:2;}
    .about .content p:not(:last-child) {margin-bottom:10px;}
    .feature {padding-top:50px; padding-bottom:50px;}
    .card-list {grid-template-columns:repeat(1, 1fr); gap:20px;}
    .card-list__item {padding:10px; border-radius:10px; box-shadow:0 0 10px rgba(137, 147, 167, .2);}
    .card-list__item figure {margin-bottom:15px; border-radius:10px;}
    .card-list__item figure img {border-radius:10px;}
    .card-list__item h3 {margin-bottom:10px; font-size:18px;}
    .card-list__item .tags {margin-bottom:10px; gap:10px;}
    .card-list__item .tags > span {height:18px; padding:0 5px; border-radius:18px; font-size:10px;}
    .card-list__item h4 {margin-bottom:10px; font-size:16px;}
    .card-list__item h4 span {height:25px; padding:0 10px; border-radius:25px;}
    .news-list__item {align-items:flex-start; gap:0 10px; padding:10px 50px 10px 0;}
    .news-list__item::before {width:45px; height:18px; background-size:12px auto; border-radius:20px;}
    .news-list__item time {font-size:12px;}
    .news-list__item h3 {font-size:12px;}
    
    hr {margin-top:30px; padding-top:20px;}
    .content-title-h2 {margin-bottom:20px; font-size:18px;}
    .support-search {margin-bottom:30px;}
    .card-list.support {grid-template-columns:repeat(1, 1fr);}
    .card-list.support .card-list__item {padding:20px; gap:20px;}
    .card-list__item-tag {gap:10px; margin-bottom:10px;}
    .card-list__item-tag > li a {height:20px; padding:0 10px; border-radius:20px; font-size:12px;}
    .card-list__item-description {margin-bottom:10px; font-size:14px;}
    .card-list__item-time {margin-bottom:10px; font-size:14px;}
    .card-list__item-contact {flex-direction:column; gap:0; font-size:12px;}
    .card-list__item-contact > span i {margin-right:5px;}
    .card-list__item-more {margin-top:10px;}
    .button.sm {width:160px;}
    .pagination {margin-top:30px;}
    .pagination ul {gap:10px;}
    .pagination ul > li > span, .pagination ul > li > a {width:30px; height:30px; border-radius:30px;}
    .card-list.institution .card-list__item {padding:20px;}
    .card-list.institution .card-list__item-wrap {flex-direction:column; gap:0;}

    .contact {margin-bottom:0; padding-top:50px; padding-bottom:50px;}

    .flow-row {grid-template-columns:repeat(1, 1fr); gap:30px; margin-bottom:50px;}
    .flow-heading {margin-bottom:20px; width:250px; height:35px; border-radius:35px; font-size:14px;}
    .flow-list__item {min-height:inherit; padding:20px; border-radius:10px; box-shadow:0 0 10px rgba(137, 147, 167, .2);}
    .flow-list__item:not(:last-child) {margin-bottom:50px;}
    .flow-list__item:not(:last-child)::before,
    .flow-list-last .flow-list__item::before {bottom:-35px; font-size:20px;}
    .flow-list__item h4 {font-size:14px;}
    .flow-list__item p {font-size:12px;}
    .flow-list-last .flow-list__item::before {top:-35px;}

    .contact-list {gap:20px;}
    .contact-list__item {flex-direction:column; align-items:flex-start; gap:10px; padding:20px; border-radius:10px; box-shadow:0 0 10px rgba(137, 147, 167, .2);}
    .contact-list__item h3 {padding-left:10px; border-left-width:5px; font-size:16px;}
    .contact-list__item p i {margin-right:10px;}

    .footer {padding:50px 0 20px;}
    .footer-nav {margin-bottom:50px;}
    .footer-nav-list {flex-direction:column; gap:0; padding-left:0;}
    .footer-nav-list__item {border-bottom:1px solid #ddd;}
    .footer-nav-list__item > a {display:block; padding:10px 50px 10px 0;}
    .footer-nav-list__item > a::before {width:45px; height:18px; background-size:12px auto; border-radius:20px;}
    .footer-copyright {font-size:12px;}

    .page-header {height:150px; border-bottom-width:3px;}
    .page-header-title .heading-en {margin-bottom:5px; font-size:16px;}
    .page-header-title .heading-ja {font-size:20px;}
    .page-header-title .heading-ja small {font-size:16px;}

    .page-description {margin-bottom:20px; font-size:14px;}
    .nav-local-category {margin-bottom:10px;}
    .nav-local-category-list {flex-direction:column; gap:10px;}
    .nav-local-category-list__item-link {width:auto; height:40px; padding:0 10px; border-radius:40px; font-size:14px;}
    .keyword-search {display:block; margin-bottom:20px;}
    .keyword-search input {width:100%; height:40px; padding:0 10px; border-radius:40px; font-size:14px;}
    .keyword-search button {right:5px; width:30px; height:30px; border-radius:30px; font-size:12px;}
    .category-description {margin-bottom:20px; padding:20px; border-radius:10px;}
    .category-description h3 {font-size:14px;}
    .category-description p {font-size:12px;}
    .nav-local-tag {margin-bottom:30px;}
    .nav-local-tag-list {gap:10px;}
    .nav-local-tag-list__item > a {height:25px; padding:0 10px; border-radius:25px; font-size:12px;}
    .nav-local-tag-list__item > a:hover {box-shadow:0 0 10px rgba(137, 147, 167, .2);}

    .company-card {margin:0 0 20px; padding:20px; border-top-width:5px; border-radius:10px; box-shadow:0 0 10px rgba(137, 147, 167, .2);}
    .company-card-header {flex-direction:column; gap:10px; margin-bottom:20px; padding-bottom:20px;}
    .company-card-header figure {flex:1; border-radius:10px;}
    .company-card-header .text h1 {padding:0; font-size:16px;}
    .company-card-header .tags {gap:10px;}
    .company-card-header .tags > span {height:25px; padding:0 10px; border-radius:25px; font-size:12px;}
    .company-card-content h2 {margin-bottom:20px; font-size:16px;}
    .company-card-content h2.no-design span {height:25px; padding:0 10px; border-radius:25px;}
    .company-card-content h3 {font-size:14px; margin-bottom:10px; padding-left:10px;}
    .company-card-content .table th,
    .company-card-content .table td {padding:5px 10px;}
    .company-card-content .table th {padding:5px 10px;}
    .company-card-content p {}
    .company-card-content:not(:last-child) {margin-bottom:30px;}
    .company-card-content .gallery-list {grid-template-columns:repeat(2, 1fr); gap:10px; margin-top:10px; margin-bottom:20px;}
    .company-card-content .gallery-list__item {border-radius:10px;}

    .news-card {margin:0 0 20px; padding:20px; border-top-width:5px; border-radius:10px; box-shadow:0 0 10px rgba(137, 147, 167, .2);}
    .news-card-content h1 {font-size:16px; margin-bottom:20px;}
    .news-card-content h2 {font-size:14px; margin-bottom:20px;}
    .news-card-content h3 {font-size:14px; margin-bottom:10px; padding-left:10px;}
    .news-card-content .meta {margin-bottom:20px; padding-bottom:5px;}
    
    .form-group:not(:last-child) {margin-bottom:20px;}
    .form-group-row {gap:5px;}
    .form-group-row-label {gap:10px;}
    .form-group-row-label span {height:18px; padding:0 10px; border-radius:18px; font-size:10px;}
    .form-control {padding:15px 20px; border-radius:10px; font-size:14px;}
    textarea.form-control {min-height:120px;}

    .-pc {display:none;}
    .-sp {display:block;}
}

.bg-about {background:url(../images/higashimikawa-map.png) center right / 26.46vw auto no-repeat;}
.bg-about .about-text {padding:0; background:none; border:none; line-height:2;}
@media (max-width:767px) {
    .bg-about {background:none;}
}
