@charset "UTF-8";
/* reset
----------------------------------------------- */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video, input {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 1.6rem;
  line-height: 1.5;
  color: #313131;
  vertical-align: baseline;
  background: transparent;
}

html, body {
  font-size: 62.5%;
}

@media screen and (max-width: 768px) {
  html, body {
    font-size: 57.5%;
  }
}

@media screen and (max-width: 425px) {
  html, body {
    font-size: 52.5%;
  }
}

body {
  font-family: semplicitapro, ryo-gothic-plusn, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.1em;
  line-height: 1;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

span {
  font-size: inherit;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

a:link, a:visited {
  text-decoration: none;
}

a:active {
  color: inherit;
}

a {
  color: inherit;
  word-break: break-all;
}

img {
  vertical-align: middle;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

ins {
  background-color: #ffff99;
  color: #000000;
  text-decoration: none;
}

mark {
  background-color: #ffff99;
  color: #000000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

*, *:before, *:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}

/* base
----------------------------------------------- */
.cf:before, .cf:after {
  content: "";
  display: table;
}

.cf:after {
  clear: both;
}

.cf {
  zoom: 1;
}

.cf {
  overflow: hidden;
}

.txt-cap {
  padding-left: 1em;
  text-indent: -1em;
}

.cursor, label {
  cursor: pointer;
}

input[type="text"], input[type="password"], input[type="email"],
input[type="tel"], select, textarea {
  width: 100%;
  padding: 20px;
  border: solid 1px #cccccc;
  background-color: #ffffff;
  border-radius: 5px;
  line-height: 1;
  -webkit-appearance: none;
  -moz-appearance: none;
}

input[type="submit"] {
  width: 100%;
  border: none;
  border-radius: 0;
  -webkit-appearance: none;
  cursor: pointer;
}

table {
  background-color: #ffffff;
}

/* layout
----------------------------------------------- */
html {
  visibility: hidden;
}

html.wf-active, html.loading-delay {
  visibility: visible;
}

body {
  overflow-x: hidden;
}

main {
  margin-top: 90px;
}

@media screen and (max-width: 1000px) {
  main {
    margin-top: 135px;
  }
}

@media screen and (max-width: 768px) {
  main {
    margin-top: 0;
  }
}

@media screen and (max-width: 768px) {
  .l-article {
    padding-top: 50px;
  }
}

.l-content {
  width: 100%;
  max-width: 1010px;
  margin: 0 auto;
  padding: 5rem 20px;
}

@media screen and (max-width: 768px) {
  .l-content {
    padding: 4rem 20px;
  }
}

@media screen and (max-width: 425px) {
  .l-content {
    padding: 2.5rem 15px;
  }
}

.l-content.-wide {
  max-width: 1200px;
}

.l-content.-full {
  max-width: 100%;
  padding-right: 0;
  padding-left: 0;
}

/* header
----------------------------------------------- */
.l-header {
  width: 100%;
  padding: 0 20px;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  background-color: #ffffff;
  box-shadow: 0 0 10px rgba(68, 68, 68, 0.5);
  transition: 0.3s;
}

@media screen and (max-width: 768px) {
  .l-header {
    position: fixed;
    top: 0;
    left: -100%;
    z-index: 99;
  }
}

.l-header__inner {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  max-width: 1160px;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .l-header__inner {
    display: block;
    width: calc(100vw - 60px);
    height: 100vh;
    max-width: 300px;
    padding: 20px 20px 150px;
    overflow-y: scroll;
    position: fixed;
    top: 0;
    left: -100%;
    z-index: 99;
    background-color: #ffffff;
    box-shadow: 0 0 1rem 0.1rem rgba(0, 0, 0, 0.1);
    transition: 0.5s;
  }
  .l-header__inner.open {
    left: 0;
  }
}

.l-header__sp__inner {
  display: none;
}

@media screen and (max-width: 768px) {
  .l-header__sp__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 50px;
    padding: 0 20px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9;
    background-color: #ffffff;
    box-shadow: 0 0 1rem 0.1rem rgba(0, 0, 0, 0.1);
  }
}

@media screen and (max-width: 425px) {
  .l-header__sp__inner {
    padding: 0 15px;
  }
}

/* footer
----------------------------------------------- */
.l-footer__inner {
  padding: 10rem 20px;
}

@media screen and (max-width: 768px) {
  .l-footer__inner {
    padding: 8rem 20px;
  }
}

@media screen and (max-width: 425px) {
  .l-footer__inner {
    padding: 5rem 15px;
  }
}

.l-footer__inner.-top {
  background-color: #f2f6f9;
}

@media screen and (max-width: 768px) {
  .l-footer__inner.-top {
    display: none;
  }
}

.l-footer__inner.-bottom {
  background-color: #04204a;
}

.p-pagetop {
  display: none;
  position: fixed;
  bottom: 3rem;
  right: 2rem;
  z-index: 999;
  width: 8rem;
  height: 8rem;
  text-align: center;
}

.p-pagetop span {
  display: block;
  height: 100%;
  padding-top: 3.6rem;
  background-color: #004095;
  background-image: url(../images/common/arrow_top_w_01.png);
  background-repeat: no-repeat;
  background-position: top 2rem center;
  background-size: 1.5rem;
  border-radius: 50%;
  box-shadow: 0 0 1rem 0.5rem rgba(1, 2, 3, 0.1);
  color: #ffffff;
  font-size: 1.8rem;
  cursor: pointer;
  transition: 0.3s;
}

/*.c-h2 {
    margin-top: 3em;
    margin-bottom: 1.5em;
    padding: .5em 1em;
    background-color: $mainColor;
    border-right: 6px solid $subColor;
    font-size: 2.6rem;
    color: #ffffff;
    position: relative;

    @media screen and (max-width: 768px) {
        font-size: 2.4rem;
    }

    @media screen and (max-width: 425px) {
        font-size: 2.3rem;
    }

    &:first-of-type {
        margin-top: 0;
    }

    &.-margin__top {
        margin-top: 4em;
    }

    &::after {
        position: absolute;
        left: 0;
        top: 100%;
        content: '';
        border-bottom: 1.5rem solid transparent;
        border-right: 2rem solid $subColor;
    }
}
*/
.c-h2 {
  margin-top: 2em;
  margin-bottom: 0.75em;
  padding: 0.5em 1em;
  background: linear-gradient(to right, #f8f8f8 0%, #f8f8f8 99%, #fac600 99%, #fac600 100%);
  font-size: 3rem;
  position: relative;
  border: 1px solid #dddddd;
}

.c-h2::after {
  position: absolute;
  left: -1px;
  top: 100%;
  content: '';
  border-bottom: 1.5rem solid transparent;
  border-right: 2rem solid #fac600;
}

@media screen and (max-width: 768px) {
  .c-h2 {
    font-size: 2.8rem;
  }
}

@media screen and (max-width: 425px) {
  .c-h2 {
    font-size: 2.6rem;
  }
}

.c-h2:first-of-type {
  margin-top: 0;
}

.c-h2.-margin__top {
  margin-top: 2em;
}

.c-h3 {
  margin-top: 1.5em;
  margin-bottom: 0.75em;
  font-size: 2.6rem;
  position: relative;
  padding: 0 0 0.2em;
  border-bottom: 0.3rem solid #dddddd;
}

.c-h3:after {
  position: absolute;
  content: "";
  display: block;
  border-bottom: solid 0.3rem #fac600;
  bottom: -0.3rem;
  width: 20%;
}

@media screen and (max-width: 768px) {
  .c-h3 {
    font-size: 2.4rem;
  }
}

@media screen and (max-width: 425px) {
  .c-h3 {
    font-size: 2.2rem;
  }
}

.c-h4 {
  margin-top: 1em;
  margin-bottom: 0.5em;
  font-size: 2.2rem;
}

@media screen and (max-width: 768px) {
  .c-h4 {
    font-size: 2rem;
  }
}

@media screen and (max-width: 425px) {
  .c-h4 {
    font-size: 1.8rem;
  }
}

.c-fs__15 {
  font-size: 1.5rem;
}

.c-mainBtn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 28rem;
  height: 5.5rem;
  background-color: #004095;
  position: relative;
}

@media screen and (min-width: 769px) {
  .c-mainBtn:hover::before {
    right: 1.5rem;
  }
}

.c-mainBtn::before {
  font-family: "Font Awesome 5 Free";
  content: "\f054";
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 2rem;
  color: #00b5ff;
  transform: translateY(-50%);
  transition: 0.3s;
}

.c-mainBtn::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 1.2rem;
  left: 1.2rem;
  background-color: #f2f6f9;
  z-index: -1;
}

.c-mainBtn span {
  text-align: center;
  color: #ffffff;
  line-height: 1.4;
  font-weight: bold;
}

.c-mainBtn.--white {
  background-color: #ffffff;
}

.c-mainBtn.--white::after {
  display: none;
}

.c-mainBtn.--white span {
  color: #004095;
}

.c-moreBtn {
  display: inline-block;
  margin-top: 2rem;
  padding-right: 2rem;
  position: relative;
}

.c-moreBtn::before {
  font-family: "Font Awesome 5 Free";
  content: "\f054";
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 0;
  color: #00b5ff;
  transform: translateY(-50%);
}

.c-moreBtn span {
  font-size: 1.8rem;
  font-weight: bold;
  color: #004095;
}

.c-moreBtn.--white span {
  color: #ffffff;
}

.c-section__title {
  z-index: 1;
}

.c-section__title.-center {
  text-align: center;
}

.c-section__title.-center .c-section__name__en {
  margin-top: 1rem;
  margin-bottom: 0;
}

.c-section__name {
  font-size: 3.2rem;
  font-weight: bold;
  color: #004095;
  line-height: 1.3;
}

.c-section__name.-white {
  color: #ffffff;
}

.c-section__name__en {
  display: block;
  margin-bottom: 1rem;
  font-size: 1.4rem;
  color: #00b5ff;
}

.c-section__description {
  margin-top: 3rem;
  font-size: 2rem;
  font-weight: bold;
  line-height: 2;
}

.c-section__description.-white {
  color: #ffffff;
}

@media screen and (max-width: 768px) {
  .c-section__description br {
    display: none;
  }
}

.c-section__content.-top {
  margin-top: 6rem;
}

@media screen and (max-width: 768px) {
  .c-section__content.-top {
    margin-top: 5rem;
  }
}

@media screen and (max-width: 425px) {
  .c-section__content.-top {
    margin-top: 4rem;
  }
}

.c-pageTitle__wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
  background-color: #04204a;
}

.c-pageTitle__wrap::before {
  content: "";
  display: none;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.c-pageTitle__wrap.teacher::after, .c-pageTitle__wrap.students::after, .c-pageTitle__wrap.general::after, .c-pageTitle__wrap.corporation::after, .c-pageTitle__wrap.member::after {
  content: '©︎ACCU';
  display: block;
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  color: #ffffff;
  font-size: 1rem;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  z-index: 1;
}

.c-pageTitle__wrap.teacher {
  background-image: url(../images/target/teacher_01.jpg) !important;
}

.c-pageTitle__wrap.students {
  background-image: url(../images/target/students_01.jpg) !important;
}

.c-pageTitle__wrap.general {
  background-image: url(../images/target/general_01.jpg) !important;
}

.c-pageTitle__wrap.corporation {
  background-image: url(../images/target/corporation_01.jpg) !important;
}

.c-pageTitle__wrap.member {
  background-image: url(../images/target/member_01.jpg) !important;
}

.c-pageTitle__wrap.-mainImg {
  height: 70vh;
  justify-content: flex-start;
  align-items: flex-end;
}

.c-pageTitle__wrap.-mainImg .c-section__title {
  width: 100%;
  text-align: left;
}

.c-pageTitle__wrap.-mainImg .c-section__title h1 {
  width: 80%;
  margin: 0 auto 0 0;
  text-align: left;
}

@media screen and (max-width: 600px) {
  .c-pageTitle__wrap.-mainImg .c-section__title h1 {
    width: 100%;
  }
}

.c-pageTitle__inner {
  max-width: 1010px;
  margin: 0 auto;
  padding: 8rem 20px;
}

@media screen and (max-width: 768px) {
  .c-pageTitle__inner {
    padding: 6rem 20px;
  }
}

@media screen and (max-width: 425px) {
  .c-pageTitle__inner {
    padding: 4rem 20px;
  }
}

.c-pageTitle {
  text-align: center;
  color: #ffffff;
  font-size: 3.6rem;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.8);
}

@media screen and (max-width: 768px) {
  .c-pageTitle {
    font-size: 3.2rem;
  }
}

@media screen and (max-width: 425px) {
  .c-pageTitle {
    font-size: 2.8rem;
  }
}

.c-breadcrumb {
  background-color: #04204a;
}

.c-breadcrumb__list {
  display: flex;
  flex-wrap: wrap;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.c-breadcrumb__item {
  position: relative;
  font-size: 1.4rem;
}

.c-breadcrumb__item:nth-child(n+2) {
  margin-left: 1em;
  padding-left: 2em;
}

.c-breadcrumb__item:nth-child(n+2)::before {
  content: "－";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  color: #ffffff;
}

.c-breadcrumb__item a span {
  text-decoration: underline;
}

.c-breadcrumb__item span {
  display: block;
  padding: .25em 0;
  color: #ffffff;
}

.c-subNav__wrap {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.c-subNav {
  display: flex;
  flex-wrap: wrap;
}

.c-subNav__item {
  margin: .5rem 0;
  position: relative;
  border-left: 1px solid #dddddd;
}

.c-subNav__item:last-child {
  border-right: 1px solid #dddddd;
}

.c-subNav__item a {
  display: inline-block;
  padding: 0 2rem;
  font-size: 1.6rem;
  font-weight: bold;
  white-space: nowrap;
}

.c-cat__btn {
  display: inline-block;
  margin-right: 1rem;
  padding: .3em .8em;
  color: #ffffff;
  font-size: 1.4rem;
  border-radius: 2em;
}

.c-cat__btn.-blue {
  background-color: #a0d100;
  border: 1px solid #a0d100;
  color: #000000;
}

.c-cat__btn.-sky {
  background-color: #00b5ff;
  border: 1px solid #00b5ff;
}

.c-cat__btn.-green {
  background-color: #00c2b1;
  border: 1px solid #00c2b1;
}

.c-cat__btn.-hashtag {
  background-color: #ffffff;
  border: 1px solid #004095;
  border-radius: 0;
}

a.c-cat__btn {
  color: #000000;
  font-weight: normal;
}

a.c-cat__btn.-blue {
  background-color: #ffffff;
  border: 1px solid #a0d100;
}

a.c-cat__btn.-sky {
  background-color: #ffffff;
  border: 1px solid #00b5ff;
}

a.c-cat__btn.-green {
  background-color: #ffffff;
  border: 1px solid #00c2b1;
}

@media screen and (min-width: 769px) {
  a.c-cat__btn:hover {
    color: #ffffff;
  }
  a.c-cat__btn:hover.-blue {
    background-color: #a0d100;
  }
  a.c-cat__btn:hover.-sky {
    background-color: #00b5ff;
  }
  a.c-cat__btn:hover.-green {
    background-color: #00c2b1;
  }
  a.c-cat__btn:hover.-hashtag {
    color: #000000;
    opacity: 0.7;
  }
}

.c-pageContent__wrap {
  border-top: 1px solid #dddddd;
  border-bottom: 1px solid #dddddd;
  background: url(../images/common/bg_01.png) no-repeat right center/50rem;
}

.c-pageContent h2 {
  margin-top: 2em;
  margin-bottom: 0.75em;
  padding: 0.5em 1em;
  background: linear-gradient(to right, #f8f8f8 0%, #f8f8f8 99%, #fac600 99%, #fac600 100%);
  font-size: 3rem;
  position: relative;
  border: 1px solid #dddddd;
}

.c-pageContent h2::after {
  position: absolute;
  left: -1px;
  top: 100%;
  content: '';
  border-bottom: 1.5rem solid transparent;
  border-right: 2rem solid #fac600;
}

@media screen and (max-width: 768px) {
  .c-pageContent h2 {
    font-size: 2.8rem;
  }
}

@media screen and (max-width: 425px) {
  .c-pageContent h2 {
    font-size: 2.6rem;
  }
}

.c-pageContent h2:first-of-type {
  margin-top: 0;
}

.c-pageContent h2.-margin__top {
  margin-top: 2em;
}

.c-pageContent h3 {
  margin-top: 1.5em;
  margin-bottom: 0.75em;
  font-size: 2.6rem;
  position: relative;
  padding: 0 0 0.2em;
  border-bottom: 0.3rem solid #dddddd;
}

.c-pageContent h3:after {
  position: absolute;
  content: "";
  display: block;
  border-bottom: solid 0.3rem #fac600;
  bottom: -0.3rem;
  width: 20%;
}

@media screen and (max-width: 768px) {
  .c-pageContent h3 {
    font-size: 2.4rem;
  }
}

@media screen and (max-width: 425px) {
  .c-pageContent h3 {
    font-size: 2.2rem;
  }
}

.c-pageContent h4 {
  margin-top: 1em;
  margin-bottom: 0.5em;
  font-size: 2.2rem;
  text-align: left;
}

@media screen and (max-width: 768px) {
  .c-pageContent h4 {
    font-size: 2rem;
  }
}

@media screen and (max-width: 425px) {
  .c-pageContent h4 {
    font-size: 1.8rem;
  }
}

.c-pageContent a {
  line-height: 2;
}

.c-pageContent p, .c-pageContent li, .c-pageContent strong {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  line-height: 1.5;
}

.c-pageContent p a, .c-pageContent li a, .c-pageContent strong a {
  color: #004095;
  text-decoration: underline;
}

@media screen and (min-width: 769px) {
  .c-pageContent p a:hover, .c-pageContent li a:hover, .c-pageContent strong a:hover {
    opacity: .7;
  }
}

.c-pageContent > ol, .c-pageContent > ul {
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.c-pageContent ul {
  list-style: disc;
  padding-left: 2rem;
}

.c-pageContent ol {
  padding-left: 2rem;
}

.c-pageContent hr {
  margin: 5rem 0;
  opacity: 0;
  vertical-align: middle;
}

@media screen and (max-width: 768px) {
  .c-pageContent hr {
    margin: 4rem 0;
  }
}

@media screen and (max-width: 425px) {
  .c-pageContent hr {
    margin: 2.5rem 0;
  }
}

.c-pageContent th {
  vertical-align: middle;
}

.c-pageContent .wp-block-table.is-style-stripes th, .c-pageContent .wp-block-table.is-style-stripes td {
  line-height: 1.5;
  font-size: 1.3rem;
}

.c-pageContent figure {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

.c-pageContent > div {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

.c-pageContent .--note {
  margin-top: 3rem;
  padding: 2rem;
  background-color: #f8f8f8;
  border: 1px solid #dddddd;
  border-radius: 1rem;
}

.c-pageContent .--note h2, .c-pageContent .--note h3, .c-pageContent .--note h4 {
  margin-top: 0;
}

.c-pageContent .--note h4 {
  font-size: 1.8rem;
}

.c-pageContent .--note p {
  font-size: 1.4rem;
}

.c-pageContent img {
  height: auto;
}

.c-pageLink {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 4rem;
}

.c-pageLink__item {
  margin-bottom: 1rem;
  margin-right: 2rem;
}

.c-pageLink__item a {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1rem 5rem;
  text-align: center;
  background-color: #004095;
  font-size: 1.4rem;
  position: relative;
}

.c-pageLink__item a::after {
  font-family: "Font Awesome 5 Free";
  content: "\f054";
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 2rem;
  color: #ffffff;
  transform: translateY(-50%) rotate(90deg);
  font-size: 1rem;
}

@media screen and (min-width: 769px) {
  .c-pageLink__item a:hover {
    background-color: #04204a;
  }
}

.c-pageLink__item a span {
  color: #ffffff;
}

.c-card {
  display: flex;
  flex-wrap: wrap;
}

.c-card__item {
  display: flex;
  width: 30%;
  margin-right: calc(10% / 2);
  padding-bottom: 3rem;
  border-bottom: 1px solid #dddddd;
}

.c-card__item:nth-child(3n) {
  margin-right: 0;
}

.c-card__item:nth-child(n+4) {
  margin-top: 5rem;
}

@media screen and (max-width: 768px) {
  .c-card__item {
    width: 48%;
    margin-right: 4%;
  }
  .c-card__item:nth-child(3n) {
    margin-right: 4%;
  }
  .c-card__item:nth-child(2n) {
    margin-right: 0;
  }
  .c-card__item:nth-child(n+3) {
    margin-top: 4rem;
  }
}

@media screen and (max-width: 600px) {
  .c-card__item {
    width: 100%;
    margin-right: 0;
  }
  .c-card__item:nth-child(3n) {
    margin-right: 0;
  }
  .c-card__item:nth-child(n+2) {
    margin-top: 3rem;
  }
}

.c-card__inner {
  flex: 1;
}

.c-card__img {
  width: 17rem;
  margin-right: 3rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.c-card__img.-works {
  width: 220px;
}

.c-card__img img {
  width: 100%;
  height: auto;
}

.c-activity__card {
  display: flex;
  flex-wrap: wrap;
}

.c-activity__card .c-activity__card__item {
  width: 48%;
  margin-right: 4%;
  box-shadow: 0 0 1rem 0.1rem rgba(0, 0, 0, 0.1);
  background-color: #ffffff;
}

.c-activity__card .c-activity__card__item > a {
  display: block;
}

.c-activity__card .c-activity__card__item:nth-child(2n) {
  margin-right: 0;
}

.c-activity__card .c-activity__card__item:nth-child(n+3) {
  margin-top: 5rem;
}

@media screen and (max-width: 600px) {
  .c-activity__card .c-activity__card__item {
    width: 100%;
    margin-right: 0;
  }
  .c-activity__card .c-activity__card__item:nth-child(2n) {
    margin-right: 0;
  }
  .c-activity__card .c-activity__card__item:nth-child(n+2) {
    margin-top: 3rem;
  }
}

.c-activity__card .c-card__img {
  width: 100%;
}

.c-activity__card .c-card__inner {
  padding: 0 2rem 2rem;
}

.c-activity__card .c-tag__list {
  margin-top: 2rem;
  text-align: left;
}

.c-activity__card .c-card__text {
  margin-top: 2rem;
}

.c-activity__card .c-card__name {
  font-size: 2.2rem;
}

.c-join__card__img {
  width: 100%;
  margin-bottom: 2rem;
}

.c-card__title {
  color: #004095;
  font-size: 1.5rem;
  font-weight: bold;
}

.c-card__name {
  font-size: 2.2rem;
}

.c-card__name.-chairman {
  margin-top: 1rem;
  font-size: 2rem;
}

.c-card__affiliation {
  margin-top: 2rem;
  line-height: 2;
  font-size: 1.4rem;
}

.c-card__box {
  margin-top: 2rem;
  padding: 2rem;
  border: 1px solid #dddddd;
  background-color: #ffffff;
}

.c-card__box p {
  line-height: 2;
  font-size: 1.5rem;
}

.c-tax__navi__wrap:nth-child(n+2) {
  margin-top: 2rem;
}

.c-tax__navi {
  display: flex;
  flex-wrap: wrap;
}

.c-tax__navi:first-child {
  margin-top: -1rem;
}

.c-tax__navi:nth-child(n+2) {
  margin-top: 1.5rem;
  padding-top: .5rem;
  border-top: 1px dashed #dddddd;
}

.c-tax__navi a {
  white-space: nowrap;
}

.c-tax__navi__title {
  margin-bottom: -1em;
  font-weight: bold;
}

.c-tax__navi__item {
  margin-top: 1rem;
}

.c-case__card__item {
  display: flex;
  margin-top: 5rem;
  padding-bottom: 5rem;
  border-bottom: 1px solid #dddddd;
}

@media screen and (max-width: 600px) {
  .c-case__card__item {
    display: block;
    margin-top: 4rem;
    padding-bottom: 4rem;
  }
}

.c-case__card__item .c-card__img {
  width: 350px;
  margin-right: 4rem;
  background-image: url(../images/common/dummy_02.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
}

@media screen and (max-width: 600px) {
  .c-case__card__item .c-card__img {
    width: 100%;
    height: 50vw;
  }
}

.c-case__card__item .c-card__img::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 1.2rem;
  left: 1.2rem;
  background-color: #f2f6f9;
  z-index: -1;
}

@media screen and (max-width: 600px) {
  .c-case__card__item .c-card__img::after {
    display: none;
  }
}

.c-case__card__item .c-card__text {
  flex: 1;
}

@media screen and (max-width: 600px) {
  .c-case__card__item .c-card__text {
    margin-top: 2rem;
  }
}

.c-case__card__item .c-card__name {
  font-size: 2.2rem;
  padding-bottom: 0.5em;
  border-bottom: 0.3rem dotted #fac600;
}

.c-case__card__item .c-card__affiliation {
  margin-bottom: 3rem;
}

.c-join__card__item {
  display: block;
}

.c-tag__btn {
  margin-right: .5rem;
  margin-bottom: .5rem;
  font-size: 1.2rem;
}

.c-post__header {
  margin-bottom: 3rem;
}

.c-post__header .c-tag__list {
  text-align: left;
}

.c-post__info {
  display: flex;
  flex-wrap: wrap;
  padding-bottom: .3em;
  border-bottom: 1px solid #dddddd;
}

.c-post__date {
  margin-right: 1.5rem;
  margin-bottom: .5em;
  font-size: 1.6rem;
}

.c-news__card__item {
  display: flex;
  align-items: flex-start;
  padding: 3rem 0;
  border-top: 1px solid #dddddd;
}

.c-news__card__item:last-of-type {
  border-bottom: 1px solid #dddddd;
}

.c-card__info {
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 600px) {
  .c-works__card__item {
    display: block;
  }
}

@media screen and (max-width: 600px) {
  .c-works__card__item .c-card__inner {
    width: 100%;
    margin-top: 2rem;
  }
}

.c-content__description {
  margin-bottom: 6rem;
  line-height: 2;
}

@media screen and (max-width: 768px) {
  .c-content__description {
    margin-bottom: 5rem;
  }
}

@media screen and (max-width: 425px) {
  .c-content__description {
    margin-bottom: 4rem;
  }
}

.c-content__description > a {
  text-decoration: underline;
  font-weight: bold;
  color: #004095;
}

.c-faq__answer p {
  font-size: 1.5rem;
  line-height: 2;
}

.c-commonTable table {
  width: 100%;
}

.c-commonTable table th, .c-commonTable table td {
  padding: 1.5rem 1rem;
  border: 1px solid #dddddd;
  vertical-align: middle;
}

.c-commonTable table th a, .c-commonTable table td a {
  text-decoration: underline;
}

.c-commonTable table th {
  text-align: center;
}

.c-commonTable.--w200 table {
  table-layout: auto;
}

.c-commonTable.--w200 th {
  width: 130px;
}

.c-commonTable.--w100 table {
  table-layout: auto;
}

.c-commonTable.--w100 td:first-child {
  width: 80px;
}

.c-commonTable.-reportTable tr td:nth-child(1) {
  width: 22rem;
}

.c-commonTable.-reportTable tr td:nth-child(3) {
  width: 10rem;
}

.c-commonTable.-threeColumns th, .c-commonTable.-threeColumns td {
  width: 33.333%;
  word-break: break-all;
}

.is-style-table-th-gray table {
  width: 100%;
}

.is-style-table-th-gray table tr td:first-child {
  width: 180px;
  text-align: center;
}

@media screen and (max-width: 600px) {
  .is-style-table-th-gray table tr td:first-child {
    width: 160px;
  }
}

@media screen and (max-width: 425px) {
  .is-style-table-th-gray table tr td:first-child {
    width: 120px;
  }
}

.is-style-table-th-gray table tr td:nth-child(2) {
  min-width: 120px;
  text-align: center;
}

.is-style-table-th-gray table tr td:last-child {
  background-color: #ffffff;
  text-align: left;
}

.is-style-table-th-gray table th, .is-style-table-th-gray table td {
  padding: 1.5rem 1rem;
  border: 1px solid #dddddd;
  vertical-align: middle;
  background-color: #f2f6f9;
}

.is-style-table-th-gray table th {
  text-align: center;
  color: #000000;
}

/* -----------------------------------------------
 ページネーション
----------------------------------------------- */
.c-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 5rem 0;
}

.c-pagination .page-numbers {
  display: block;
  width: 4rem;
  height: 4.5rem;
  margin: 0 0.5rem;
  line-height: 4.5rem;
  text-align: center;
  font-weight: bold;
  color: #004095;
  border: solid 1px #004095;
}

.c-pagination .current {
  border: solid 1px #004095;
  background-color: #004095;
  color: #ffffff;
}

@media screen and (min-width: 769px) {
  .c-pagination a:hover {
    background-color: #004095;
    color: #ffffff;
  }
}

body {
  text-align: justify;
}

#wrapper {
  position: relative;
}

a {
  transition: 0.3s;
}

/* header
----------------------------------------------- */
.p-header__sp__menu {
  width: 30px;
  height: 100%;
  position: relative;
}

.p-header__sp__menu .p-bar {
  display: block;
  width: 100%;
  height: 2px;
  background-color: #004095;
  position: absolute;
  right: 0;
  transition: 0.5s;
}

.p-header__sp__menu .p-bar:nth-child(1) {
  top: 1.8rem;
}

.p-header__sp__menu .p-bar:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}

.p-header__sp__menu .p-bar:nth-child(3) {
  bottom: 1.8rem;
}

@media (max-width: 768px) {
  .p-header__sp__menu.open .p-bar:nth-child(1) {
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .p-header__sp__menu.open .p-bar:nth-child(2) {
    opacity: 0;
  }
  .p-header__sp__menu.open .p-bar:nth-child(3) {
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
}

.p-header__sp__logo {
  display: inline-block;
  height: 30px;
}

.p-header__sp__logo img {
  width: auto;
  height: 100%;
}

.p-header__logo {
  display: flex;
  align-items: center;
}

.p-header__logo img {
  width: 200px;
}

@media screen and (max-width: 1000px) {
  .p-header__logo img {
    width: 170px;
  }
}

.p-gNav {
  display: flex;
  flex: 1 2 auto;
  align-items: center;
  margin-left: 2rem;
  padding: 2rem 0;
}

@media screen and (max-width: 768px) {
  .p-gNav {
    display: block;
    margin-left: 0;
  }
}

.p-gNav__item {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-grow: 1;
  border-left: 1px solid #dddddd;
}

@media screen and (max-width: 1000px) {
  .p-gNav__item:last-child {
    border-right: 1px solid #dddddd;
  }
}

@media screen and (max-width: 768px) {
  .p-gNav__item {
    border: none !important;
  }
}

.p-gNav__item a {
  display: block;
  width: 100%;
  padding: 0.8rem 0;
  text-align: center;
  font-weight: bold;
  font-size: 1.4rem;
}

@media screen and (max-width: 768px) {
  .p-gNav__item a {
    text-align: left;
    font-size: 1.8rem;
  }
}

.p-gNav__item a span {
  display: block;
  font-size: 1.2rem;
  font-weight: bold;
  color: #7d7d7d;
  transition: 0.3s;
}

.p-subNav {
  display: flex;
  flex: 1 0 auto;
  max-width: 220px;
}

@media screen and (max-width: 1000px) {
  .p-subNav {
    width: 100%;
    max-width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .p-subNav {
    display: block;
  }
}

.p-subNav__item {
  width: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  background-repeat: no-repeat;
  background-position: right top;
  background-size: 40%;
}

@media screen and (max-width: 1000px) {
  .p-subNav__item {
    background-size: 12%;
  }
}

@media screen and (max-width: 768px) {
  .p-subNav__item {
    width: 100%;
    background-size: 20%;
  }
}

.p-subNav__item:first-child {
  background-color: #fff156;
  background-image: url(../images/common/support_ribbon_01.png);
}

.p-subNav__item:first-child a {
  color: #004095;
}

.p-subNav__item:last-child {
  background-color: #004095;
  background-image: url(../images/common/join_ribbon_01.png);
}

@media screen and (max-width: 768px) {
  .p-subNav__item:last-child {
    margin-top: 1rem;
  }
}

.p-subNav__item:last-child a {
  color: #ffffff;
}

@media screen and (max-width: 1000px) {
  .p-subNav__item:last-child a br {
    display: none;
  }
}

.p-subNav__item:last-child a span {
  color: #ffffff;
}

.p-subNav__item a {
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
  line-height: 1.2;
}

@media screen and (max-width: 1000px) {
  .p-subNav__item a {
    padding: 1.2rem 0;
  }
}

@media screen and (max-width: 768px) {
  .p-subNav__item a {
    padding: 1.5rem 0;
  }
}

.p-subNav__item a span {
  display: block;
  margin-top: 0.3em;
  font-size: 1.2rem;
  font-weight: bold;
  transition: 0.3s;
}

@media screen and (max-width: 1000px) {
  .p-subNav__item a span {
    display: inline-block;
    margin-left: 0.5em;
  }
}

.p-miniNav {
  margin-top: 3rem;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  border-top: 1px solid #dddddd;
  border-bottom: 1px solid #dddddd;
}

.p-miniNav__item a {
  display: block;
  padding: 0.5rem 0;
  font-size: 1.5rem;
}

.p-header__contact__mainBtn {
  display: none;
}

@media screen and (max-width: 768px) {
  .p-header__contact__mainBtn {
    display: flex;
    width: 100%;
    margin-top: 3rem;
  }
  .p-header__contact__mainBtn::after {
    display: none;
  }
}

.l-header.scroll .p-gNav {
  padding: 1rem 0;
  transition: 0.3s;
}

.l-header.scroll .p-gNav__item a span {
  height: 0;
  opacity: 0;
}

@media screen and (max-width: 1000px) {
  .l-header.scroll .p-subNav {
    display: none;
  }
}

.l-header.scroll .p-subNav a span {
  height: 0;
  opacity: 0;
}

/* footer
----------------------------------------------- */
.p-footer {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  max-width: 1160px;
  margin: 0 auto;
}

@media screen and (max-width: 1000px) {
  .p-footer.-top {
    display: block;
  }
}

.p-footerNav {
  display: flex;
  flex: 1;
}

@media screen and (max-width: 1000px) {
  .p-footerNav {
    width: 100%;
  }
}

@media screen and (max-width: 600px) {
  .p-footerNav {
    display: block;
  }
}

.p-footerNav__list {
  width: 100%;
  margin-right: 3rem;
  padding: 3rem 3rem 3rem 0;
  border-right: 1px solid #dddddd;
}

@media screen and (max-width: 1000px) {
  .p-footerNav__list:first-child {
    padding-left: 3rem;
    border-left: 1px solid #dddddd;
  }
  .p-footerNav__list:last-child {
    margin-right: 0;
  }
}

.p-footerNav__item {
  margin-bottom: 3rem;
}

.p-footerNav__title {
  font-weight: bold;
  color: #004095;
}

.p-footerNav__subMenu__title {
  margin-top: 1rem;
  font-size: 1.4rem;
}

.p-footerSubNav {
  max-width: 350px;
  padding: 3rem 0;
}

@media screen and (max-width: 1000px) {
  .p-footerSubNav {
    max-width: 100%;
  }
}

.p-footerSubNav__list {
  display: flex;
  flex-wrap: wrap;
}

.p-footerSubNav__item {
  width: 48%;
  margin-right: 4%;
  margin-bottom: 1.5rem;
}

@media screen and (max-width: 1000px) {
  .p-footerSubNav__item {
    width: 31%;
    margin-right: 3.5%;
  }
  .p-footerSubNav__item:nth-child(3n) {
    margin-right: 0;
  }
}

.p-footerSubNav__item:nth-child(even) {
  margin-right: 0;
}

@media screen and (max-width: 1000px) {
  .p-footerSubNav__item:nth-child(even) {
    margin-right: 3.5%;
  }
}

.p-footerSubNav__item a {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.5rem 0;
  text-align: center;
  background-color: #ffffff;
  border: 1px solid #444444;
  font-size: 1.4rem;
  position: relative;
}

@media screen and (min-width: 769px) {
  .p-footerSubNav__item a:hover {
    opacity: 0.7;
  }
}

.p-footerSubNav__item a::after {
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 1rem;
  color: #00b5ff;
  transform: translateY(-50%);
  font-size: 1rem;
}

.p-contact__mainBtn {
  width: 100%;
  margin-top: 2rem;
}

.p-footer.-bottom {
  justify-content: space-between;
}

@media screen and (max-width: 600px) {
  .p-footer.-bottom {
    display: block;
    text-align: center;
  }
}

.p-footer__logo img {
  height: 6rem;
}

@media screen and (max-width: 425px) {
  .p-footer__logo img {
    width: 100%;
    height: auto;
  }
}

.p-footer__address {
  margin-top: 2rem;
  line-height: 1.8;
  color: #ffffff;
}

.p-footer__tel {
  margin-top: 1rem;
  line-height: 1.8;
  color: #ffffff;
}

.p-footer__copyright {
  margin-top: 6rem;
  color: #00b5ff;
}

.p-footer__sns {
  display: flex;
}

@media screen and (max-width: 600px) {
  .p-footer__sns {
    display: none;
  }
}

.p-footer__sns__item {
  margin-left: 2rem;
}

.p-footer__sns__item a img {
  width: 35px;
}

/* mainVisual
----------------------------------------------- */
.p-top__mainVisual {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 70vw;
  max-height: 900px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .p-top__mainVisual {
    height: 100vw;
  }
}

.p-top__movie {
  width: auto;
  height: 100%;
}

/* news
----------------------------------------------- */
.p-news__content {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 768px) {
  .p-news__content {
    display: block;
  }
}

.p-news {
  margin-right: 5rem;
}

@media screen and (max-width: 768px) {
  .p-news {
    margin-right: 0;
  }
}

.p-news__list {
  flex: 1 0 auto;
  width: 100%;
  max-width: 520px;
  height: 370px;
  padding-right: 2rem;
  overflow-y: scroll;
}

@media screen and (max-width: 768px) {
  .p-news__list {
    max-width: 100%;
    height: 300px;
  }
}

@media screen and (max-width: 425px) {
  .p-news__list {
    padding-right: 0;
  }
}

.p-news__item {
  display: flex;
  align-items: flex-start;
  padding: 2rem 0;
  border-bottom: 1px solid #dddddd;
}

.p-news__item:first-child {
  padding-top: 0;
}

.p-news__item:last-child {
  padding-bottom: 0;
  border-bottom: none;
}

.p-news__img {
  width: 10rem;
  margin-right: 2rem;
  background-color: #dddddd;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.p-news__text {
  flex: 1;
}

.p-news__info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 1rem;
}

.p-news__cat__btn {
  font-size: 1rem;
}

.p-news__date {
  color: #444444;
}

.p-news__title {
  display: inline-block;
  margin-top: 1rem;
  font-size: 1.5rem;
  font-weight: bold;
}

.p-news__mainBtn {
  margin: 4rem auto 0;
}

.p-twitter {
  width: 350px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .p-twitter {
    width: 100%;
    margin-top: 6rem;
  }
}

/* project
----------------------------------------------- */
.p-project__list {
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
  .p-project__list {
    display: block;
  }
}

.p-project__item {
  width: 32%;
  margin-right: 2%;
}

.p-project__item:nth-child(3n) {
  margin-right: 0;
}

.p-project__item:nth-child(n+4) {
  margin-top: 5rem;
}

@media screen and (max-width: 768px) {
  .p-project__item {
    display: flex;
    width: 100%;
    margin-right: 0;
  }
  .p-project__item:nth-child(n+2) {
    margin-top: 2rem;
  }
}

.p-project__img {
  width: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

@media screen and (max-width: 768px) {
  .p-project__img {
    width: 25rem;
  }
}

@media screen and (max-width: 600px) {
  .p-project__img {
    width: 18rem;
  }
}

@media screen and (max-width: 600px) {
  .p-project__img {
    width: 15rem;
  }
}

.p-project__title {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 2.5rem 5rem 2.5rem 2rem;
  background-color: #f2f6f9;
  position: relative;
}

@media screen and (min-width: 769px) {
  .p-project__title:hover {
    background-color: #004095;
  }
  .p-project__title:hover span {
    color: #ffffff;
  }
}

@media screen and (max-width: 768px) {
  .p-project__title {
    flex: 1;
    padding: 2rem 5rem 2rem 2rem;
  }
}

.p-project__title::after {
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 2rem;
  color: #00b5ff;
  transform: translateY(-50%);
  font-size: 1.2rem;
}

.p-project__title span {
  font-size: 1.6rem;
  font-weight: bold;
  color: #004095;
  transition: 0.3s;
}

/* about
----------------------------------------------- */
.p-about__fullContent {
  position: relative;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.p-about__fullContent::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.p-about {
  text-align: center;
  position: relative;
  z-index: 1;
}

.p-about__title {
  font-size: 9rem;
  font-weight: bold;
  line-height: 1;
}

@media screen and (max-width: 768px) {
  .p-about__title {
    font-size: 5.5rem;
  }
}

@media screen and (max-width: 425px) {
  .p-about__title {
    font-size: 5rem;
  }
}

svg.p-about__title__wrap {
  height: 5rem;
  overflow: visible;
  text-align: center;
  filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.5));
}

.-background {
  fill: white;
}

@media screen and (max-width: 768px) {
  .-background {
    stroke-width: 1px;
  }
}

.p-about__description {
  margin-top: 5rem;
  font-size: 3rem;
  font-weight: bold;
  color: #ffffff;
  line-height: 2;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}

@media screen and (max-width: 768px) {
  .p-about__description {
    margin-top: 4rem;
    font-size: 2rem;
  }
}

.p-about__mainBtn {
  margin: 5rem auto 0;
}

.p-about__about {
  background: url(../images/about/bg_map_01.png) no-repeat center center/contain;
}

.p-recruit__tab {
  display: flex;
  margin-bottom: 3rem;
  padding-left: 1.5rem;
  border-bottom: 1px solid #444444;
}

.p-recruit__tab__item {
  margin: 0 0.5rem -1px 0;
  border: 1px solid #444444;
  background-color: #ffffff;
  cursor: pointer;
  opacity: 0.7;
  transition: 0.3s;
}

@media screen and (min-width: 769px) {
  .p-recruit__tab__item:hover {
    background-color: #f2f6f9;
  }
}

.p-recruit__tab__item span {
  display: block;
  padding: 1rem 1.5rem;
  text-align: center;
  font-size: 1.6rem;
  font-weight: bold;
}

.p-recruit__tab__item.current {
  pointer-events: none;
  border-bottom: none;
  opacity: 1;
}

/* activity
----------------------------------------------- */
.p-activity__fullContent {
  margin-top: 10rem;
  position: relative;
}

@media screen and (max-width: 768px) {
  .p-activity__fullContent {
    margin-top: 8rem;
  }
}

@media screen and (max-width: 425px) {
  .p-activity__fullContent {
    margin-top: 5rem;
  }
}

.p-activity__fullContent::before {
  content: '';
  display: block;
  width: 68%;
  height: 52rem;
  min-width: 100rem;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background-color: #004095;
  background-image: url(../images/top/worldmap_01.png);
  background-repeat: no-repeat;
  background-position: right top;
  background-size: cover;
}

@media screen and (max-width: 1000px) {
  .p-activity__fullContent::before {
    min-width: 100%;
  }
}

.p-activity__fullContent::after {
  content: '';
  display: block;
  width: 75%;
  height: 60%;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: -2;
  background-color: #f2f6f9;
}

.p-activity__section__header {
  position: relative;
}

.p-activity__moreBtn {
  display: inline-block;
  margin-left: 8rem;
  position: absolute;
  bottom: 3.5rem;
  left: 50rem;
}

@media screen and (min-width: 769px) {
  .p-activity__moreBtn:hover::before {
    opacity: 0.7;
  }
}

@media screen and (max-width: 1000px) {
  .p-activity__moreBtn {
    margin-top: 4rem;
    margin-left: 0;
    position: relative;
    left: 0;
    bottom: 0;
  }
}

.p-activity__moreBtn span {
  color: #ffffff;
  text-decoration: underline;
}

.p-activity__moreBtn::after {
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: -4rem;
  color: #ffffff;
  transform: translateY(-50%);
  font-size: 1.2rem;
}

.p-activity__moreBtn::before {
  content: '';
  width: 4rem;
  height: 4rem;
  position: absolute;
  top: 50%;
  right: -3.5rem;
  transform: translateY(-50%) translateX(50%);
  background-color: #f2f6f9;
  border-radius: 50%;
  opacity: 0.5;
  transition: 0.3s;
}

.p-activity__list {
  display: flex;
  flex-wrap: wrap;
}

.p-activity__item {
  width: 32%;
  margin-right: 2%;
  box-shadow: 0 0 1rem 0.1rem rgba(0, 0, 0, 0.1);
  background-color: #ffffff;
  transition: 0.3s;
}

@media screen and (min-width: 769px) {
  .p-activity__item:hover {
    box-shadow: 0 0 2rem 1rem rgba(0, 0, 0, 0.1);
  }
}

.p-activity__item:nth-child(3n) {
  margin-right: 0;
}

.p-activity__item:nth-child(n+4) {
  margin-top: 4rem;
}

@media screen and (max-width: 768px) {
  .p-activity__item {
    width: 48%;
    margin-right: 4%;
  }
  .p-activity__item:nth-child(3n) {
    margin-right: 4%;
  }
  .p-activity__item:nth-child(2n) {
    margin-right: 0;
  }
  .p-activity__item:nth-child(n+3) {
    margin-top: 2.5rem;
  }
}

@media screen and (max-width: 600px) {
  .p-activity__item {
    width: 100%;
    margin-right: 0 !important;
  }
  .p-activity__item:nth-child(n+2) {
    margin-top: 2.5rem;
  }
}

.p-activity__img {
  width: 100%;
  background-color: #dddddd;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.p-activity__text {
  padding: 3rem 3rem 5rem;
  position: relative;
}

@media screen and (max-width: 768px) {
  .p-activity__text {
    padding: 2.5rem 2.5rem 4.5rem;
  }
}

@media screen and (max-width: 425px) {
  .p-activity__text {
    padding: 2rem 2rem 4rem;
  }
}

.p-activity__text::after {
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  position: absolute;
  bottom: 3rem;
  right: 3rem;
  color: #00b5ff;
  transform: translateY(50%);
  font-size: 1.4rem;
}

.p-activity__title {
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  color: #004095;
}

.p-activity__description {
  margin-top: 2rem;
  line-height: 2;
}

/* case
----------------------------------------------- */
.p-case__fullContent {
  overflow-x: hidden;
}

.p-case__section__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

@media screen and (max-width: 768px) {
  .p-case__section__header {
    display: block;
  }
}

.p-case__mainBtn {
  margin-left: 4rem;
}

@media screen and (max-width: 768px) {
  .p-case__mainBtn {
    margin-top: 4rem;
    margin-left: 0;
  }
}

.p-case__section__content {
  position: relative;
}

.p-case {
  margin: 0 -9999px;
  padding: 0 calc(9999px - ((100vw - 100%) / 2));
}

.p-case__item {
  padding: 0 0.2%;
}

.p-case__item a {
  width: 100%;
  display: block;
  background-color: #dddddd;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  position: relative;
}

.p-case__name {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 2rem 5rem 2rem 2rem;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0.8) 100%);
  position: absolute;
  bottom: 0;
  left: 0;
}

.p-case__name span {
  color: #ffffff;
  font-size: 1.5rem;
  font-weight: bold;
}

.p-case__name::after {
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 2rem;
  color: #00b5ff;
  transform: translateY(-50%);
  font-size: 1.2rem;
}

.p-join__content {
  background-color: #dddddd;
}

/* support
----------------------------------------------- */
.p-support__fullContent {
  position: relative;
}

.p-support__content {
  position: relative;
}

.p-support__section__name {
  color: #000000;
}

.p-support__section__name__big {
  font-size: 5.4rem;
  color: #00b5ff;
}

.p-support__section__content {
  width: 70%;
  margin-top: 5rem;
  background-color: #dddddd;
}

@media screen and (max-width: 1160px) {
  .p-support__section__content {
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .p-support__section__content {
    margin-top: 3rem;
  }
}

@media screen and (max-width: 425px) {
  .p-support__section__content {
    margin-top: 2rem;
  }
}

.p-support__section__content__img {
  background-color: #dddddd;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
}

@media screen and (max-width: 1160px) {
  .p-support__section__content__img {
    width: 100%;
    height: 50vw;
    position: relative;
    top: initial;
    right: initial;
  }
}

.p-support__section__content__img::after {
  content: '©︎ACCU';
  display: block;
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  color: #ffffff;
  font-size: 1rem;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  z-index: 1;
}

.p-support {
  width: 600px;
  position: absolute;
  top: 10rem;
  right: 0;
  background-color: #ffffff;
  background-image: url(../images/common/support_ribbon_01.png);
  background-repeat: no-repeat;
  background-position: top right;
  background-size: 18%;
  box-shadow: 0 0 1rem 0.1rem rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 1160px) {
  .p-support {
    width: 100%;
    position: static;
    top: 0;
    right: 0;
    background-size: 12%;
  }
}

@media screen and (max-width: 768px) {
  .p-support {
    background-size: 18%;
  }
}

.p-support__inner {
  padding: 7rem;
}

@media screen and (max-width: 1160px) {
  .p-support__inner {
    padding: 5rem;
  }
}

@media screen and (max-width: 768px) {
  .p-support__inner {
    padding: 3rem;
  }
}

.p-support__description {
  margin-top: 3rem;
  line-height: 1.8;
}

.p-support__note {
  margin-top: 2rem;
  color: #444444;
  font-size: 1.4rem;
}

.p-support__btn {
  display: flex;
  border-top: 1px solid #dddddd;
}

.p-support__btn__item {
  width: 50%;
}

.p-support__btn__item a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  position: relative;
  text-align: center;
}

.p-support__btn__item a::after {
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  position: absolute;
  top: 50%;
  right: 3rem;
  color: #00b5ff;
  transform: translateY(-50%);
  font-size: 1.2rem;
}

.p-support__btn__item a span {
  display: block;
  padding: 4rem 0;
  font-size: 1.8rem;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .p-support__btn__item a span {
    padding: 2rem 0;
  }
}

.p-support__btn__item:last-child {
  border-left: 1px solid #dddddd;
}

/* join
----------------------------------------------- */
.p-join__section__content {
  margin-top: 0 !important;
}

.p-join__list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.p-join__item {
  display: flex;
  width: 32%;
  margin-right: 2%;
  box-shadow: 0 0 1rem 0.1rem rgba(0, 0, 0, 0.1);
}

.p-join__item:nth-child(3n) {
  margin-right: 0;
}

.p-join__item:nth-child(n+4) {
  margin-top: 3rem;
}

.p-join__item:last-child {
  margin-right: 0;
}

@media screen and (max-width: 1000px) {
  .p-join__item {
    width: 48%;
    margin-right: 4%;
  }
  .p-join__item:nth-child(3n) {
    margin-right: 4%;
  }
  .p-join__item:nth-child(2n) {
    margin-right: 0;
  }
  .p-join__item:nth-child(n+3) {
    margin-top: 3rem;
  }
}

@media screen and (max-width: 600px) {
  .p-join__item {
    width: 100%;
    margin-right: 0 !important;
  }
  .p-join__item:nth-child(n+2) {
    margin-top: 3rem;
  }
}

.p-join__item a {
  display: flex;
  width: 100%;
}

@media screen and (min-width: 769px) {
  .p-join__item a:hover .p-join__img span {
    transform: scale(1.05);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
}

.p-join__img {
  width: 50%;
  overflow: hidden;
  position: relative;
}

.p-join__img::before {
  content: '©︎ACCU';
  display: block;
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  color: #ffffff;
  font-size: 1rem;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  z-index: 1;
}

.p-join__img span {
  display: block;
  background-color: #dddddd;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  transition: 0.3s;
}

.p-join__text {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50%;
  background-color: #ffffff;
  text-align: center;
}

.p-join__title {
  font-size: 1.6rem;
  font-weight: bold;
}

.p-join__title span {
  display: block;
  margin-top: 0.5rem;
  font-size: 1.3rem;
}

.p-join__title span.-yellow {
  color: #fac600;
}

.p-join__title span.-green {
  color: #00cec0;
}

.p-join__title span.-sky {
  color: #00b5ff;
}

.p-join__title span.-chartreuse {
  color: #a0d100;
}

.p-join__title span.-navy {
  color: #004095;
}

/* footerSupport
----------------------------------------------- */
.p-footerSupport {
  display: flex;
  flex-wrap: wrap;
}

.p-footerSupport__content {
  padding-bottom: 0;
}

.p-footerSupport__item {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50%;
  padding: 10rem 0;
  position: relative;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

@media screen and (max-width: 768px) {
  .p-footerSupport__item {
    padding: 7rem 0;
  }
}

@media screen and (max-width: 600px) {
  .p-footerSupport__item {
    width: 100%;
  }
}

@media screen and (min-width: 769px) {
  .p-footerSupport__item:hover::before {
    background-color: rgba(0, 0, 0, 0.1);
  }
}

.p-footerSupport__item::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  transition: 0.3s;
}

.p-footerSupport__title {
  padding-bottom: 5rem;
  font-size: 2.6rem;
  color: #ffffff;
  text-align: center;
  position: relative;
  z-index: 1;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}

.p-footerSupport__title span {
  display: block;
  color: #00b5ff;
  font-size: 1.2rem;
}

.p-footerSupport__title::before {
  font-family: "Font Awesome 5 Free";
  content: '\f138';
  font-weight: 900;
  position: absolute;
  bottom: 0;
  left: 50%;
  color: #ffffff;
  transform: translateX(-50%);
  font-size: 2.6rem;
}

/* banner
----------------------------------------------- */
.p-banner__list {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 600px) {
  .p-banner__list {
    display: block;
  }
}

.p-banner__item {
  width: 31%;
}

@media screen and (min-width: 1001px) {
  .p-banner__item {
    width: 300px;
  }
}

@media screen and (max-width: 600px) {
  .p-banner__item {
    width: 100%;
  }
  .p-banner__item:nth-child(n+2) {
    margin-top: 3rem;
  }
}

.p-banner__item a {
  display: block;
}

.p-banner__item a img {
  object-fit: contain;
}

/* about
----------------------------------------------- */
.p-about__file {
  padding-left: 0 !important;
}

.p-about__file__item {
  padding-left: 4rem;
  list-style: none;
  background: url(../images/about/icon_pdf_01.png) no-repeat top left/2em;
}

.wp-block-table.-history table th, .wp-block-table.-history table td {
  border: 1px solid #dddddd;
}

.wp-block-table.-history table th {
  width: 180px;
}

@media screen and (max-width: 768px) {
  .wp-block-table.-history table th {
    width: 160px;
  }
}

@media screen and (max-width: 425px) {
  .wp-block-table.-history table th {
    width: 130px;
  }
}

.p-activity__slide {
  margin-top: 8rem;
  position: relative;
}

.p-activity__slide__item {
  margin: 0 1rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

/* contact
----------------------------------------------- */
.p-form__wrap {
  padding: 5rem;
  background-color: #f2f6f9;
}

@media screen and (max-width: 768px) {
  .p-form__wrap {
    padding: 3rem;
  }
}

@media screen and (max-width: 425px) {
  .p-form__wrap {
    padding: 3rem 2rem;
  }
}

.p-formItem {
  display: flex;
  flex-wrap: wrap;
}

.p-formItem:nth-child(n+2) {
  margin-top: 3rem;
}

.p-formItem__head {
  width: 200px;
}

@media screen and (max-width: 768px) {
  .p-formItem__head {
    width: 180px;
  }
}

@media screen and (max-width: 600px) {
  .p-formItem__head {
    display: flex;
    align-items: center;
    width: 100%;
    margin-bottom: 1rem;
  }
}

.p-formItem__title {
  font-size: 1.6rem;
  font-weight: bold;
}

@media screen and (max-width: 600px) {
  .p-formItem__title br {
    display: none;
  }
}

.p-require {
  margin-top: 0.5rem;
  font-size: 1rem;
}

@media screen and (max-width: 600px) {
  .p-require {
    margin-top: 0;
    margin-left: 1rem;
  }
}

.p-inputItem {
  flex: 1;
}

.p-inputItem input, .p-inputItem textarea, .p-inputItem select {
  padding: 1rem;
  font: 400 1.5rem semplicitapro, ryo-gothic-plusn, sans-serif;
  color: #000000;
}

.p-inputItem.--five input {
  width: 5em;
}

.p-inputItem.--half input {
  width: 50%;
}

.p-form__note {
  margin-top: 1.5rem;
  font-size: 1.3rem;
}

.p-form__zip input {
  width: calc(100% - 3em);
  max-width: 320px;
  margin-left: 0.8rem;
}

.p-form__prefecture,
.p-form__city,
.p-form__address {
  margin-top: 1rem;
}

@keyframes ripple {
  0% {
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0);
  }
  50% {
    box-shadow: 0 0 0 15px rgba(0, 0, 0, 0.1);
  }
  100% {
    box-shadow: 0 0 0 15px rgba(0, 0, 0, 0);
  }
}

.md-radio label {
  display: inline-block;
  align-items: center;
}

.md-radio label input[type="radio"],
.md-radio label input[type="checkbox"] {
  display: none;
}

.md-radio label input[type="radio"]:checked + span:before,
.md-radio label input[type="checkbox"]:checked + span:before {
  border-color: #004095;
  animation: ripple 0.2s linear forwards;
}

.md-radio label input[type="radio"]:checked + span:after,
.md-radio label input[type="checkbox"]:checked + span:after {
  transform: scale(1);
}

.md-radio label input[type="radio"].radio + span:before,
.md-radio label input[type="radio"].radio + span:after,
.md-radio label input[type="checkbox"].radio + span:before,
.md-radio label input[type="checkbox"].radio + span:after {
  border-radius: 50%;
}

.md-radio label input[type="radio"].checkbox + span:before,
.md-radio label input[type="radio"].checkbox + span:after,
.md-radio label input[type="checkbox"].checkbox + span:before,
.md-radio label input[type="checkbox"].checkbox + span:after {
  border-radius: 20%;
}

.md-radio label span {
  padding-left: 30px;
  position: relative;
  cursor: pointer;
  vertical-align: bottom;
  font-size: 1.5rem;
}

.md-radio label span:before, .md-radio label span:after {
  position: absolute;
  content: '';
  transition: all .3s ease;
  transition-property: transform, border-color;
  border-radius: 50%;
}

.md-radio label span:before {
  left: 0;
  top: 0;
  width: 20px;
  height: 20px;
  border: 2px solid #444444;
  background: #ffffff;
}

.md-radio label span:after {
  top: 5px;
  left: 5px;
  width: 10px;
  height: 10px;
  transform: scale(0);
  background: #004095;
}

.p-submitBtn {
  text-align: center;
  color: #ffffff;
  line-height: 1.4;
  font-size: 1.6rem;
  font-weight: bold;
}

.p-submitBtn::after {
  display: none;
}

.p-backBtn {
  margin-top: 2rem;
  transform: scale(0.8);
  background-color: #dddddd;
  color: #000000;
}

@media screen and (min-width: 769px) {
  .p-backBtn:hover::before {
    right: initial;
    left: 1.5rem;
  }
}

.p-backBtn::before {
  content: "\f053";
  right: initial;
  left: 2rem;
}

.p-pledge {
  padding: 3rem 2rem;
  background-color: #ffffff;
  border: 1px solid #444444;
}

.p-pledge__list {
  margin-left: 3.5em;
}

.p-pledge__list li {
  list-style-type: none;
  counter-increment: cnt;
  position: relative;
}

.p-pledge__list li::before {
  content: "（" counter(cnt) "）";
  display: inline-block;
  margin-left: -3.5em;
  /* サイトに合せて調整 */
  width: 3em;
  /* サイトに合せて調整 */
  text-align: right;
  position: absolute;
  top: 0;
  left: 0;
}

.mw_wp_form_confirm .p-formItem {
  padding-bottom: 3rem;
  border-bottom: 1px solid #dddddd;
}

.mw_wp_form_confirm .p-pledge {
  display: none;
}

.--hide {
  display: none;
}

@media screen and (min-width: 769px) {
  .u-hover--opacity:hover {
    opacity: 0.7;
  }
}

.u-fullContent.-lightBlue {
  background-color: #f2f6f9;
}

.u-fullContent.-lightGray {
  background-color: #dddddd;
}

.u-asp__1by1::before {
  content: '';
  display: block;
  padding-top: 100%;
}

.u-asp__16by9::before {
  content: '';
  display: block;
  padding-top: 56.25%;
}

.u-asp__4by3::before {
  content: '';
  display: block;
  padding-top: 75%;
}

.u-asp__3by2::before {
  content: '';
  display: block;
  padding-top: 66.666%;
}

.u-item769 {
  display: block;
}

@media screen and (max-width: 768px) {
  .u-item769 {
    display: none;
  }
}

.u-item768 {
  display: none;
}

@media screen and (max-width: 768px) {
  .u-item768 {
    display: block;
  }
}

.u-item601 {
  display: block;
}

@media screen and (max-width: 600px) {
  .u-item601 {
    display: none;
  }
}

.u-item426 {
  display: block;
}

@media screen and (max-width: 425px) {
  .u-item426 {
    display: none;
  }
}

.u-item425 {
  display: none;
}

@media screen and (max-width: 425px) {
  .u-item425 {
    display: block;
  }
}

.u-semplicita {
  font-family: semplicitapro, sans-serif;
  font-weight: 600;
  font-style: normal;
}

.blocks-gallery-grid {
  padding-left: 0 !important;
}

/*.wp_social_bookmarking_light {
    margin: -8rem 0 -3rem !important;

    @media screen and (max-width: 768px) {
        margin: -6rem 0 -5rem !important;
    }

    @media screen and (max-width: 425px) {
        margin: -4rem 0 -5rem !important;
    }
}*/
.chronology tr td:nth-child(1) {
  width: 6em !important;
  padding-right: 0;
  text-align: center;
}

.chronology tr td:nth-child(2) {
  width: 6em !important;
  padding-left: 0;
  text-align: center;
}

.-pdf {
  padding-left: 4rem;
  list-style: none;
  background: url(../images/about/icon_pdf_01.png) no-repeat top left/2em;
  line-height: 2;
  color: #004095;
}

.ui-datepicker {
  width: auto !important;
}

.u-img__copyright,
.u-img__copyright__wrap .wp-block-media-text__media {
  position: relative;
}

.u-img__copyright::after,
.u-img__copyright__wrap .wp-block-media-text__media::after {
  content: '©︎ACCU';
  display: block;
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  color: #ffffff;
  font-size: 1rem;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  z-index: 1;
}

@media screen and (max-width: 600px) {
  .wp-block-media-text .wp-block-media-text__content {
    padding: 2rem 0 0;
  }
}

#autozip {
  display: none !important;
}

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