@charset "UTF-8";
html {
  font-size: 62.5%;
  background-color: #fffae9;
  overflow-x: hidden;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 14px;
  font-size: 3.5897435897vw;
  -webkit-text-size-adjust: 100%;
  color: #333333;
  line-height: 1.7142;
  background-color: #fff;
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

@media screen and (min-width: 814px) {
  body {
    font-size: 1.6rem;
    line-height: 1.75;
    padding-bottom: 0 !important;
  }
}
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
figure,
hr {
  padding: 0;
  margin: 0;
}

hr {
  border: 0;
}

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

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: 500;
}

img {
  vertical-align: bottom;
  width: 100%;
  height: auto;
}

.u-img-auto {
  width: auto;
  height: auto;
}

fieldset,
img,
a img {
  border: 0;
}

a {
  text-decoration: none;
  color: #333;
}

address,
caption,
cite,
code,
dfn,
em,
th,
var {
  font-weight: normal;
  font-style: normal;
}

ol,
ul {
  list-style: none;
}

table {
  border-collapse: collapse;
}

caption,
th {
  text-align: left;
}

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

abbr,
acronym {
  border: 0;
}

strong,
.txt-bo {
  font-weight: bold !important;
}

.u-pc {
  display: block !important;
}

.u-sp {
  display: none !important;
}

.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

a {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

a:hover {
  opacity: 0.8;
}

.mt-0 {
  margin-top: 0 !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

@media screen and (max-width: 813px) {
  .u-pc {
    display: none !important;
  }
  .u-sp {
    display: block !important;
  }
  a:hover {
    opacity: 1;
  }
}
hr {
  margin: 0;
}

@media only screen and (min-width: 814px) {
  img {
    image-rendering: -webkit-optimize-contrast;
  }
}
.l-wrap {
  position: relative;
  width: 100%;
}

.l-inner {
  position: relative;
  margin-left: 8.9743589744%;
  margin-right: 8.9743589744%;
}

.l-cont {
  position: relative;
  width: 82.0512820513%;
  margin-left: auto;
  margin-right: auto;
}

.l-cont-wd {
  position: relative;
  width: 91.2820512821%;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 813px) {
  .l-inner.c-inr-wd {
    margin-left: 4.358974359%;
    margin-right: 4.358974359%;
  }
  .l-inner .c-inr-wd {
    margin-left: -5.3125%;
    margin-right: -5.3125%;
  }
  .l-cont.c-wrap-wd, .l-cont .c-wrap-wd {
    margin-left: -5.625%;
    margin-right: -5.625%;
  }
  .l-cont.c-sp100-wide, .l-cont .c-sp100-wide {
    margin-left: -10.9375%;
    margin-right: -10.9375%;
  }
  .l-cont-wd.c-sp100-wide, .l-cont-wd .c-sp100-wide {
    margin-left: -4.7752808989%;
    margin-right: -4.7752808989%;
  }
  .l-page-wrap {
    padding-top: 18.75%;
    padding-bottom: 18.75%;
  }
}
@media screen and (min-width: 814px) {
  .l-wrap {
    max-width: 1200px;
    min-width: 1040px;
    margin-left: auto;
    margin-right: auto;
  }
  .l-inner {
    margin-left: 6.6666666667%;
    margin-right: 6.6666666667%;
  }
  .l-cont, .l-cont-wd {
    max-width: 1200px;
    min-width: 1040px;
    width: 72.2222222222%;
  }
  .l-page-wrap {
    padding-top: 12.0192307692%;
    padding-bottom: 13.4615384615%;
  }
}
.js_isTablet .l-header, .js_isTablet .l-footer {
  padding-left: 10px;
  padding-right: 10px;
}

/* flexbox*/
.c-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.c-flex_jb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.c-flex_ac {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.c-flex_jb-ac {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.c-flex_jb-fe {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.c-flex_jb-rv {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.c-flex_jb-ac-rv {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.fw-wrap {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.fd-column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.l-header {
  position: relative;
  background-color: #fffae9;
}
.l-header_in {
  padding-top: 11px;
  padding-bottom: 11px;
  /*.l-inner {
  	margin-left: 0;
  	margin-right: 0;
  }*/
}
.l-header_logo {
  width: 26.8333333333%;
  z-index: 10;
}

@media screen and (min-width: 814px) {
  .l-header_in .l-inner {
    margin-left: 0;
    margin-right: 0;
    z-index: 10;
  }
}
@media screen and (max-width: 813px) {
  .l-header_in {
    padding-top: 6px;
    padding-bottom: 6px;
  }
  .l-header_in.l-wrap {
    max-width: 100%;
    min-width: auto;
  }
  .l-header_logo {
    width: 50%;
  }
}
/* drawer */
.h-nav .drawer-menu {
  width: 100%;
}
.h-nav .drawer-menu li {
  text-align: center;
  line-height: 1;
}
.h-nav .drawer-menu li a {
  display: block;
  text-decoration: none;
}
.h-nav .drawer-menu li .current {
  border-bottom: 1px solid #fcc80e;
}
.h-nav .drawer-menu li.u-sp {
  display: none;
}

@media screen and (min-width: 814px) {
  .h-nav {
    width: 58.3333333333%;
  }
  .h-nav #nav-placeholder {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .h-nav .drawer-menu {
    padding: 16px 5.7142857143%;
    background-color: #fff;
    border-radius: 40px;
    -webkit-box-shadow: 0px 1px 4px 0px rgba(12, 12, 13, 0.1);
            box-shadow: 0px 1px 4px 0px rgba(12, 12, 13, 0.1);
  }
  .h-nav .drawer-menu li {
    line-height: 1.75;
  }
}
@media screen and (max-width: 813px) {
  .drawer-overlay {
    background-color: rgba(0, 0, 0, 0.4);
    z-index: 100;
  }
  .drawer-open .h-nav {
    opacity: 1;
  }
  .drawer-hamburger {
    position: fixed;
    width: 28px;
    padding: 0;
    z-index: 100;
  }
  .drawer--right .drawer-hamburger,
  .drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
    top: 18px;
    right: 16px;
  }
  .drawer--right .drawer-nav {
    right: -90%;
  }
  .drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before {
    background-color: #333;
  }
  .drawer-hamburger-icon:before {
    top: -10px;
  }
  .drawer-hamburger-icon:after {
    top: 10px;
  }
  .drawer--right.drawer-open .drawer-hamburger {
    right: 84% !important;
    top: 20px !important;
    width: 30px;
    z-index: 1000;
  }
  .drawer--right.drawer-open .drawer-hamburger .drawer-hamburger-icon:after, .drawer--right.drawer-open .drawer-hamburger .drawer-hamburger-icon:before {
    background-color: #fff;
  }
  .drawer-nav {
    width: 76.1538%;
    z-index: 1000;
  }
  .l-header .h-nav .drawer-menu {
    display: block;
  }
  .l-header .h-nav .drawer-menu li {
    font-size: 16px;
    font-size: 4.1025641026vw;
    text-align: left;
  }
  .l-header .h-nav .drawer-menu li a, .l-header .h-nav .drawer-menu li .current, .l-header .h-nav .drawer-menu li#closedrawer {
    padding: 18px 0 18px 8%;
  }
  .l-header .h-nav .drawer-menu li .current {
    display: inline-block;
  }
  .l-header .h-nav .drawer-menu li#closedrawer {
    background-color: #fffae9;
    color: #fcc80e;
    text-align: center;
    padding-left: 0;
  }
  .l-header .h-nav .drawer-menu > li + li {
    border-top: #ccc 1px solid;
  }
}
body.js_isTablet .c-pagettl {
  overflow: hidden;
}

.l-footer {
  padding: 32px 0;
  background-color: #fffae9;
}
.l-footer-inner {
  text-align: center;
}
.l-footer_logo {
  width: 51.2820512821%;
  margin: 0 auto 25px;
}

.p-ft_add {
  margin-bottom: 16px;
  line-height: 2;
}

.p-ft_link {
  margin-bottom: 24px;
  line-height: 2;
}

.c-copyright {
  font-size: 12px;
  font-size: 3.0769230769vw;
  line-height: 1.66666;
}

@media screen and (max-width: 1040px) {
  .c-pagetop_btn {
    display: none !important;
  }
}
@media screen and (min-width: 814px) {
  .l-footer {
    padding-top: 30px;
    padding-bottom: 65px;
  }
  .l-footer-inner {
    text-align: left;
  }
  .l-footer_logo {
    width: 26.5%;
    margin: 0 0 16px;
  }
  .p-ft_add {
    margin-bottom: 0;
    line-height: 1.75;
  }
  .p-ft_link {
    margin-bottom: 24px;
    line-height: 1.75;
    text-align: right;
  }
  .c-copyright {
    font-size: 12px;
    line-height: 2.3333;
    text-align: center;
  }
  .c-pagetop_btn {
    display: none;
    position: fixed;
    bottom: 56px;
    right: 41px;
    width: 48px;
    height: 48px;
    cursor: pointer;
    z-index: 1000;
    border: none;
    background: transparent;
  }
}
.txt-fg {
  font-family: "franklin-gothic-atf", sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
}

.txt-min {
  font-family: "游明朝体", YuMincho, "游明朝", "Yu　Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 500;
}

.txt-en {
  font-family: "Lato", sans-serif;
  font-weight: 700;
}

.c-btn {
  display: block;
}
.c-btn a {
  height: 100%;
  position: relative;
  display: block;
  padding: 3.8647342995% 11.5942028986%;
  font-size: 16px;
  font-size: 4.1025641026vw;
  color: #333333;
  line-height: 1.75;
  letter-spacing: 0.032em;
  font-weight: 700;
  text-align: left;
  background-color: #D9231D;
  color: #fff;
  border-radius: 24px;
  -webkit-box-shadow: 0px 1px 4px 0px rgba(12, 12, 13, 0.1);
          box-shadow: 0px 1px 4px 0px rgba(12, 12, 13, 0.1);
}
.c-btn a::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 9.6618357488%;
  width: 7.729468599%;
  height: 100%;
  background: url(../img/common/arw_gr.png) center no-repeat;
  background-size: contain;
}

.c-link_btn {
  font-weight: 700;
}
.c-link_btn a {
  padding-bottom: 10px;
  border-bottom: 1px solid #fcc80e;
}

.c-arw_r::after {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-left: 8px;
  vertical-align: top;
  background: url(../img/common/arw_y_r.png) 0 0 no-repeat;
  background-size: contain;
}

@media screen and (min-width: 814px) {
  .c-btn a {
    font-size: 18px;
  }
}
.bg-circle {
  position: absolute;
  display: block;
  border-radius: 50%;
}
.bg-circle_wrap {
  position: absolute;
  width: 100%;
  top: 0;
  bottom: 0;
}
.l-page-header .bg-circle {
  background-color: rgba(255, 255, 255, 0.6);
}

/* heading */
.l-page-header {
  position: relative;
  background-color: #fffae9;
}
.l-page-header .circle01 {
  top: 0;
  left: -17.1875%;
  width: 45.3125%;
  padding-top: 45.3125%;
  -webkit-transform: translateY(-40.6896551724%);
          transform: translateY(-40.6896551724%);
}
.l-page-header .circle02 {
  top: 0;
  left: 52.5%;
  width: 32.8125%;
  padding-top: 32.8125%;
  -webkit-transform: translateY(-78.0952380952%);
          transform: translateY(-78.0952380952%);
}
.l-page-header .circle03 {
  top: 0;
  right: -20%;
  width: 42.5%;
  padding-top: 42.5%;
  -webkit-transform: translateY(36.0294117647%);
          transform: translateY(36.0294117647%);
}

.p-page_heading {
  padding-top: 2.5641025641%;
  padding-bottom: 8.7179487179%;
  line-height: 2;
  text-align: center;
}
.p-page_ttl {
  position: relative;
  color: #fcc80e;
  font-size: 40px;
  font-size: 10.2564102564vw;
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: 0.04em;
  z-index: 1;
}
.p-page_sttl {
  margin-top: -2.5%;
}

.c-sec-ttl {
  font-size: 24px;
  font-size: 6.1538461538vw;
  text-align: center;
  line-height: 1.11666;
  margin-bottom: 14.6875%;
}
.c-sec-ttl span {
  border-bottom: 2px solid #fcc80e;
  padding-bottom: 3px;
}
.c-wrap-wd .c-sec-ttl {
  margin-bottom: 13.202247191%;
}

@media screen and (min-width: 814px) {
  .bg-circle_wrap {
    max-width: 1200px;
    min-width: 1040px;
    width: 72.2222222222%;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .l-page-header .circle01 {
    top: 0;
    left: -22.5%;
    width: 20.9615384615%;
    padding-top: 20.9615384615%;
    -webkit-transform: translateY(-64.2201834862%);
            transform: translateY(-64.2201834862%);
  }
  .l-page-header .circle02 {
    top: 0;
    left: auto;
    right: -19.2307692308%;
    width: 20.3846153846%;
    padding-top: 20.3846153846%;
    -webkit-transform: translateY(-56.1320754717%);
            transform: translateY(-56.1320754717%);
  }
  .l-page-header .circle03 {
    top: 0;
    right: 13.1730769231%;
    width: 29.2307692308%;
    padding-top: 29.2307692308%;
    -webkit-transform: translateY(10.1973684211%);
            transform: translateY(10.1973684211%);
  }
  .l-page-header .circle04 {
    top: 0;
    left: 11.1538461538%;
    width: 18.2692307692%;
    padding-top: 18.2692307692%;
    -webkit-transform: translateY(44.7368421053%);
            transform: translateY(44.7368421053%);
  }
  .p-page_heading {
    padding-top: 0;
    /*padding-top: 40 / 1200 *100%;*/
    padding-bottom: 0;
    /*padding-bottom: 60 / 1200 *100%;*/
    z-index: 1;
  }
  .p-page_ttl {
    padding-top: 40px;
    padding-top: 3.3333333333%;
    font-size: 7.3rem;
  }
  .p-page_sttl {
    margin-top: -12px;
    font-size: 2rem;
    padding-bottom: 60px;
    padding-bottom: 5%;
  }
  .c-sec-ttl {
    font-size: 2.8rem;
    margin-bottom: 4.5192307692%;
  }
  .c-sec-ttl span {
    padding-bottom: 2px;
  }
}
/* tag */
.c-tag {
  display: inline-block;
  padding: 4px 8px;
  color: #fff;
  font-size: 16px;
  font-size: 4.1025641026vw;
  line-height: 1.75;
  font-weight: 700;
  letter-spacing: 0.01em;
}

.tag-school {
  background-color: #fcc80e;
}

.tag-home {
  background-color: #84E4F9;
}

.tag-society {
  background-color: #82EF71;
}

@media screen and (min-width: 814px) {
  /* tag */
  .c-tag {
    font-size: 1.8rem;
    line-height: 1.5555;
  }
}
.bg-word_en {
  position: relative;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  color: #ffecbb;
  font-size: 77.55px;
  font-size: 19.8846153846vw;
  line-height: 0.8;
  z-index: 1;
}
.bg-word_en.u-sp {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media screen and (min-width: 814px) {
  .bg-word_en {
    position: absolute;
    bottom: 0;
    font-size: 10.8rem;
    line-height: 1.1;
    letter-spacing: 0.04em;
    -webkit-transform: translateY(12%);
            transform: translateY(12%);
  }
  .bg-word_en.u-sp {
    display: none !important;
  }
}
/*-----------------------
	top
-----------------------*/
.p-top-mv .bg-circle, .p-top-program .bg-circle {
  background-color: rgba(255, 255, 255, 0.6);
}
.p-top-about .bg-circle {
  background-color: #fffae9;
}

.bg-pic {
  position: absolute;
  display: block;
}

.bg-about_pic .pict01 {
  top: -38.6666666667%;
  right: 5.3370786517%;
  width: 20.5056179775%;
}
.bg-about_pic .pict02 {
  top: -45.3333333333%;
  left: 5.3370786517%;
  width: 22.4719101124%;
}
.bg-about_pic .pict03 {
  top: 96%;
  right: 0.8426966292%;
  width: 17.4157303371%;
}

/*-- mv --*/
.p-top-mv {
  padding-top: 15px;
  background-color: #fffae9;
}
.p-top-mv_inner {
  position: relative;
  z-index: 1;
}
.p-top-mv_logo {
  margin-bottom: 6.875%;
  text-align: center;
}
.p-top-mv_logo img {
  width: 87.5%;
}
.p-top-mv_ttl {
  margin-bottom: 24px;
}
.p-top-mv_ttl-l {
  font-size: 34.01px;
  font-size: 8.7205128205vw;
  line-height: 1.6327;
}
.p-top-mv_ttl-l span {
  border-bottom: 2px solid #fcc80e;
  padding-bottom: 6px;
}
.p-top-mv_ttl-s {
  display: block;
  margin-bottom: 5px;
  font-size: 13.88px;
  font-size: 3.558974359vw;
  line-height: 1.4;
  letter-spacing: 0.07492em;
}
.p-top-mv_txt {
  margin-bottom: 24px;
}
.p-top-mv_btn {
  width: 64.6875%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 10.625%;
}
.p-top-mv .circle02 {
  top: 1.3245033113%;
  left: -5.1282051282%;
  width: 37.1794871795%;
  padding-top: 37.1794871795%;
}
.p-top-mv .circle03 {
  top: 33.9072847682%;
  right: -3.8461538462%;
  width: 48.7179487179%;
  padding-top: 48.7179487179%;
}
.p-top-mv .circle04 {
  top: 65.9602649007%;
  left: -10.2564102564%;
  width: 48.7179487179%;
  padding-top: 48.7179487179%;
}

@media screen and (min-width: 814px) {
  .p-top-mv {
    padding-top: 3.75%;
  }
  .p-top-mv_inner {
    margin-bottom: 14.5833333333%;
  }
  .p-top-mv_heading {
    position: relative;
    width: 50%;
    margin-top: 12.0192307692%;
  }
  .p-top-mv_logo {
    width: 50%;
    margin-bottom: 0;
    padding-top: 2.5%;
  }
  .p-top-mv_logo img {
    width: 100%;
  }
  .p-top-mv_ttl-l {
    font-size: 4.9rem;
    line-height: 1.63265;
  }
  .p-top-mv_ttl-s {
    margin-bottom: 5px;
    font-size: 2rem;
  }
  .p-top-mv_btn {
    width: 239px;
    margin-left: 0;
    margin-bottom: 0;
  }
  .p-top-mv .circle01 {
    top: 48.4848484848%;
    left: -16.6666666667%;
    width: 23.3333333333%;
    padding-top: 23.3333333333%;
  }
  .p-top-mv .circle02 {
    top: 0%;
    left: 36.3333333333%;
    width: 32.75%;
    padding-top: 32.75%;
  }
  .p-top-mv .circle03 {
    top: 44.9035812672%;
    right: -8.1666666667%;
    width: 24.8333333333%;
    padding-top: 24.8333333333%;
  }
  .p-top-mv .circle04 {
    top: 72.0385674931%;
    left: 36.5%;
    width: 15.8333333333%;
    padding-top: 15.8333333333%;
  }
}
/*-- about --*/
.p-top-about {
  margin-bottom: 48.7179487179%;
  /*overflow: hidden;*/
}
.p-top-about_inner {
  padding-top: 15.3846153846%;
}
.p-top-about_img {
  position: relative;
  margin-top: 32.8125%;
}
.p-top-about_img_p {
  width: 88.7640449438%;
}
.p-top-about_img_txt {
  position: absolute;
  top: -0.8em;
  right: 0;
  font-size: 38.41px;
  font-size: 9.8487179487vw;
  letter-spacing: 0.15em;
  line-height: 1.3001;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
  border-right: #fcc80e 2px solid;
}
.p-top-about_img_txt span {
  font-size: 26.89px;
  font-size: 6.8948717949vw;
  line-height: 1.48568;
}

@media screen and (min-width: 814px) {
  .p-top-about {
    margin-bottom: 0;
  }
  .p-top-about_inner {
    padding-top: 16.25%;
    margin-bottom: 31.1666666667%;
  }
  .p-top-about_right {
    width: 39.6153846154%;
  }
  .p-top-about_txt {
    width: 53.3653846154%;
    font-size: 1.8rem;
    line-height: 1.8888;
  }
  .p-top-about_img {
    width: 100%;
    margin-top: 0;
  }
  .p-top-about_img_p {
    position: relative;
    width: 100%;
  }
  .p-top-about_img_txt {
    top: -0.8em;
    right: 0;
    font-size: 5rem;
    -webkit-transform: translateX(74.6268656716%);
            transform: translateX(74.6268656716%);
  }
  .p-top-about_img_txt span {
    font-size: 3.5rem;
  }
  .bg-about_pic {
    z-index: -1;
  }
  .bg-about_pic .pict01 {
    top: -48.4745762712%;
    left: -51.4563106796%;
    right: 0;
    width: 31.5533980583%;
  }
  .bg-about_pic .pict02 {
    top: 21.3559322034%;
    left: -30.8252427184%;
    width: 22.3300970874%;
  }
  .bg-about_pic .pict03 {
    top: -44.7457627119%;
    right: 30.8252427184%;
    width: 20.6310679612%;
  }
  .bg-about_pic .pict04 {
    top: 96.6101694915%;
    left: 32.2815533981%;
    width: 30.5825242718%;
  }
  .bg-about_pic .circle01 {
    top: -30.1694915254%;
    right: -17.2330097087%;
    width: 25.9708737864%;
    padding-top: 25.9708737864%;
  }
  .bg-about_pic .circle02 {
    top: 91.186440678%;
    right: -28.1553398058%;
    width: 39.0776699029%;
    padding-top: 39.0776699029%;
  }
  .bg-about_pic .circle03 {
    top: 100.6779661017%;
    left: -36.6504854369%;
    width: 39.0776699029%;
    padding-top: 39.0776699029%;
  }
}
/*-- community --*/
.p-top-community {
  margin-bottom: 31.0256410256%;
  background-color: #fcc80e;
}
.p-top-community .bg-world {
  position: absolute;
  top: 0;
  left: 50%;
  width: 84.2696629213%;
  -webkit-transform: translate(-50%, -39.1167192429%);
          transform: translate(-50%, -39.1167192429%);
}
.p-top-community .bg-world_btm {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 84.2696629213%;
  -webkit-transform: translate(-50%, 100%);
          transform: translate(-50%, 100%);
}

.p-top-comm_head {
  position: absolute;
  top: 0;
  left: 50%;
  width: 73.0337078652%;
  -webkit-transform: translate(-50%, -18.5%);
          transform: translate(-50%, -18.5%);
}
.p-top-comm_block {
  padding-top: 50.5617977528%;
  padding-bottom: 4.4943820225%;
}
.p-top-comm_box {
  position: relative;
  padding: 6.7415730337% 5.0561797753%;
  background-color: #fff;
  border-radius: 16px;
}
.p-top-comm_box:not(:first-child) {
  margin-top: 4.4943820225%;
}
.p-top-comm_heading {
  margin-top: 4.4943820225%;
  font-size: 16px;
  font-size: 4.1025641026vw;
  line-height: 1.75;
  font-weight: 700;
}
.p-top-comm_txt {
  margin-top: 4.4943820225%;
}

@media screen and (min-width: 814px) {
  .p-top-community {
    margin-bottom: 220px;
    margin-bottom: 15.2777777778%;
  }
  .p-top-community .bg-world {
    width: 53.6666666667%;
    -webkit-transform: translate(-50%, -41.5451895044%);
            transform: translate(-50%, -41.5451895044%);
  }
  .p-top-community .bg-world_btm {
    width: 52.5%;
    -webkit-transform: translate(-50%, 100%);
            transform: translate(-50%, 100%);
  }
  .p-top-comm_block {
    padding-top: 18.75%;
    padding-bottom: 4.3333333333%;
  }
  .p-top-comm_head {
    width: 34.5%;
    -webkit-transform: translate(-50%, -29.6875%);
            transform: translate(-50%, -29.6875%);
  }
  .p-top-comm_box {
    position: relative;
    width: 48.9423076923%;
    padding: 2.3076923077%;
  }
  .p-top-comm_box:not(:first-child) {
    margin-top: 2.3076923077%;
  }
  .p-top-comm_box:not(:nth-child(2)) {
    margin-top: 2.3076923077%;
  }
  .p-top-comm_heading {
    margin-top: 3.4782608696%;
    font-size: 1.8rem;
    line-height: 1.5555;
  }
  .p-top-comm_txt {
    margin-top: 3.4782608696%;
  }
}
/* vsb */
.p-top-vsb-inner {
  line-height: 19.62px;
}
.p-top-vsb_heading {
  margin-bottom: 7.8651685393%;
  text-align: center;
}
.p-top-vsb_ttl {
  display: inline-block;
  font-size: 18px;
  font-size: 4.6153846154vw;
  margin-top: 10px;
}
.p-top-vsb_ttl span {
  border-bottom: 2px solid #fcc80e;
  padding-bottom: 5px;
}
.p-top-vsb_ttl_icon {
  width: 25.8426966292%;
  margin: 0 auto 3.3707865169%;
}
.p-top-vsb_list li, .p-top-vsb_list2 li {
  font-weight: 700;
  text-align: center;
}
.p-top-vsb_list li span, .p-top-vsb_list2 li span {
  display: block;
  width: 100%;
}
.p-top-vsb_item span {
  padding: 5.8988764045% 0;
  background-color: #fffae9;
  border: #fcc80e 0.7px solid;
}
.p-top-vsb_item::after {
  content: "";
  display: block;
  width: 100%;
  padding-top: 11.2359550562%;
  background: url(../img/common/arw_y_flow.png) center no-repeat;
  background-size: contain;
}
.p-top-vsb_item:last-child::after {
  padding-top: 0;
  background-image: none;
}
.p-top-vsb_list2 li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 30.3370786517%;
  padding: 3.0898876404% 0;
  background-color: #fcc80e;
}
.p-top-vsb_box {
  margin-top: 15.3846153846%;
  padding: 10.2564102564% 0;
  text-align: center;
  background-color: #F7F7F5;
  background-image: url(../img/common/bg_world_w.png);
  background-repeat: no-repeat;
  background-position: -60% 0;
  background-size: contain;
  /*overflow: hidden;*/
}
.p-top-vsb_box_icon {
  width: 10.2564102564%;
  margin: 0 auto 4.1025641026%;
}
.p-top-vsb_box_txt {
  margin-bottom: 2.5641025641%;
  font-size: 18px;
  font-size: 4.6153846154vw;
  line-height: 2;
}
.p-top-vsb_btn {
  width: 53.0769230769%;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (min-width: 814px) {
  .p-top-vsb-inner {
    line-height: 19.62px;
  }
  .p-top-vsb_heading {
    margin-bottom: 7.874015748%;
    font-size: 2.4rem;
  }
  .p-top-vsb_ttl {
    font-size: 2.8rem;
    margin-top: 10px;
  }
  .p-top-vsb_ttl span {
    padding-bottom: 4px;
  }
  .p-top-vsb_ttl_icon {
    width: 26.3779527559%;
    margin: 0 auto 2.3622047244%;
  }
  .p-top-vsb_list, .p-top-vsb_list2 {
    padding: 0 25.5769230769%;
  }
  .p-top-vsb_item span {
    padding: 5.905511811% 0;
    border-bottom-width: 1px;
  }
  .p-top-vsb_item::after {
    padding-top: 9.842519685%;
  }
  .p-top-vsb_item:last-child::after {
    padding-top: 0;
  }
  .p-top-vsb_list2 li {
    width: 30.5118110236%;
    padding: 5.905511811% 0;
  }
  .p-top-vsb_box {
    width: 82.8846153846%;
    margin-top: 8.3945435467%;
    margin-left: auto;
    margin-right: auto;
    padding-top: 5.2884615385%;
    padding-bottom: 4.8076923077%;
    background-position: -15% 0;
  }
  .p-top-vsb_box_icon {
    width: 6.610703043%;
    margin-bottom: 3.3578174187%;
  }
  .p-top-vsb_box_txt {
    margin-bottom: 3.3578174187%;
    font-size: 2.8rem;
    line-height: 1.785;
  }
  .p-top-vsb_btn {
    width: 25.0786988458%;
  }
}
/* news / activities */
.l-col-wrap {
  padding-top: 18.75%;
  padding-bottom: 18.75%;
}

.p-top-news_btn, .p-top-activities_btn {
  text-align: center;
}

/* news */
.p-top-news {
  width: 100%;
}
.p-top-news_list {
  margin-bottom: 12.5%;
}
.p-top-news_list li + li {
  margin-top: 5.625%;
  padding-top: 5.625%;
  border-top: 1px dashed #fcc80e;
}
.p-top-news_item dt {
  margin-bottom: 4px;
  font-size: 12px;
  font-size: 3.0769230769vw;
  line-height: 2.33333;
}

/* activities */
.p-top-activities {
  margin-top: 18.75%;
}
.p-top-activities_box {
  margin-bottom: 12.5%;
}
.p-top-activities_box dt {
  margin-bottom: 4px;
  font-size: 12px;
  font-size: 3.0769230769vw;
  line-height: 2.33333;
}
.p-top-activities_img {
  margin-bottom: 5%;
}
.p-top-activities_img img {
  border-radius: 8px;
}

@media screen and (min-width: 814px) {
  /* news / activities */
  .l-col-wrap {
    padding-top: 80px;
    padding-top: 7.6923076923%;
    padding-bottom: 9.6153846154%;
  }
  .p-top-news dt, .p-top-activities dt {
    font-size: 1.4rem;
    line-height: 2;
  }
  .p-top-news dd, .p-top-activities dd {
    font-size: 1.6rem;
  }
  /* news */
  .p-top-news {
    width: 48.8461538462%;
    margin-bottom: 0;
    /*padding-top: 80 / 1040 *100%;*/
  }
  .p-top-news_ttl {
    margin-bottom: 9.2519685039%;
  }
  .p-top-news_list {
    margin-bottom: 7.874015748%;
  }
  .p-top-news_list li + li {
    margin-top: 4.7244094488%;
    padding-top: 4.7244094488%;
  }
  /* activities */
  .p-top-activities {
    width: 31.7307692308%;
    margin-top: 0;
    /*padding-top: 80 / 1040 *100%;*/
  }
  .p-top-activities_ttl {
    margin-bottom: 14.2424242424%;
  }
  .p-top-activities_box {
    margin-bottom: 12.1212121212%;
  }
  .p-top-activities_img {
    margin-bottom: 5.4545454545%;
  }
}
/* greeting */
.p-top-greeting {
  position: relative;
  background-color: #fffae9;
}
.p-top-greeting_inner {
  padding-top: 15.3846153846%;
  padding-bottom: 15.3846153846%;
}
.p-top-greeting_img {
  margin-top: 6.25%;
  margin-bottom: 6.25%;
}
.p-top-greeting_img img {
  border-radius: 8px;
}
.p-top-greeting_txt {
  margin-top: 1em;
}
.p-top-greeting_name {
  margin-top: 5%;
  text-align: right;
}
.p-top-greeting_name span {
  font-size: 18px;
  font-size: 4.6153846154vw;
  font-weight: 700;
  line-height: 1.4;
}

@media screen and (min-width: 814px) {
  .p-top-greeting_inner {
    padding-top: 7.6923076923%;
    padding-bottom: 7.6923076923%;
  }
  .p-top-greeting .c-flex_jb p {
    width: 57.4038461538%;
  }
  .p-top-greeting_img {
    width: 40.1923076923%;
    margin: 0;
  }
  .p-top-greeting_name {
    margin-top: 1.5384615385%;
  }
  .p-top-greeting_name span {
    font-size: 2rem;
    line-height: 1.4;
  }
  .p-top-greeting_en {
    position: absolute;
    right: 0;
    bottom: 0;
  }
}
/* overview */
.p-top-overview_inner {
  padding-top: 18.75%;
  padding-bottom: 18.75%;
}
.p-top-overview_item {
  margin-bottom: 5.625%;
  padding-bottom: 5.625%;
  border-bottom: 1px dashed #fcc80e;
}
.p-top-overview_item dl {
  line-height: 2;
}
.p-top-overview_item dt {
  width: 7.5em;
  font-weight: 700;
}
.p-top-overview_item dd {
  width: calc(100% - 7.5em);
}

@media screen and (min-width: 814px) {
  .p-top-overview_inner {
    margin-left: 17.0192307692%;
    margin-right: 17.0192307692%;
    padding-top: 9.6153846154%;
    padding-bottom: 9.6153846154%;
  }
  .p-top-overview_ttl {
    margin-bottom: 6.8513119534%;
  }
  .p-top-overview_item {
    margin-bottom: 3.4985422741%;
    padding-bottom: 3.4985422741%;
  }
  .p-top-overview_item dl {
    line-height: 156/28;
  }
  .p-top-overview_item dt {
    width: 7.5em;
  }
}
/* contact */
.p-top-contact {
  background-color: #fcc80e;
}
.p-top-contact_inner {
  padding-top: 12.5%;
  padding-bottom: 12.5%;
}
.p-top-contact_ttl.c-sec-ttl span {
  border-bottom-color: #fff;
}
.p-top-contact p {
  font-size: 18px;
  font-size: 4.6153846154vw;
  font-weight: 700;
  text-align: center;
}

@media screen and (min-width: 814px) {
  .p-top-contact_inner {
    width: 76.7307692308%;
    padding-top: 7.6923076923%;
    padding-bottom: 7.6923076923%;
  }
  .p-top-contact p {
    font-size: 2.4rem;
  }
}
/* program */
.p-top-program {
  position: relative;
  padding-bottom: 12.8205128205%;
  background-color: #fffae9;
}
.p-top-program_head {
  position: relative;
  padding-top: 12.5%;
}
.p-top-program_ttl {
  margin-left: auto;
  margin-right: auto;
}
.p-top-program_txt {
  margin-bottom: 6.25%;
}
.p-top-program .p-top-slider {
  /*overflow: hidden;*/
}
.p-top-program .p-top-slider_item {
  width: 80vw;
  margin: 0 auto;
}
.p-top-program .c-slide_img {
  margin-bottom: 18px;
}
.p-top-program .c-slide_img img {
  border-radius: 8px;
}
.p-top-program .c-slide_ttl {
  margin-bottom: 8px;
  font-weight: 700;
}
.p-top-program .c-slide_txt {
  /*height: 7em;*/
  width: 100%;
}
.p-top-program_btn {
  margin-top: 11.25%;
  text-align: center;
}

.bg-program_pic {
  position: relative;
  /*z-index: -1;*/
}
.bg-program_pic .pict01 {
  top: 0;
  left: -8.75%;
  width: 27.5%;
  -webkit-transform: translateY(14.7727272727%);
          transform: translateY(14.7727272727%);
}
.bg-program_pic .pict02 {
  top: 0;
  right: -9.375%;
  width: 18.75%;
  -webkit-transform: translateY(103.3333333333%);
          transform: translateY(103.3333333333%);
}

@media screen and (min-width: 814px) {
  .p-top-program {
    padding-bottom: 5.8333333333%;
  }
  .p-top-program_head {
    padding-top: 7.6923076923%;
    margin-bottom: 3.8461538462%;
  }
  .p-top-program_ttl {
    margin-left: 0;
    margin: 0 auto 0 0;
  }
  .p-top-program_txt {
    width: 520px;
    margin-bottom: 0;
  }
  .p-top-program .p-top-slider_item {
    width: 41vw;
  }
  .p-top-program_btn {
    margin-top: 3.3333333333%;
  }
  .bg-program_pic .pict01 {
    left: -4.7115384615%;
    width: 11.5384615385%;
    -webkit-transform: translateY(21.6666666667%);
            transform: translateY(21.6666666667%);
  }
  .bg-program_pic .pict02 {
    right: 0;
    left: 39.0384615385%;
    width: 8.8461538462%;
    -webkit-transform: translateY(139.1304347826%);
            transform: translateY(139.1304347826%);
  }
  .bg-program_pic .pict03 {
    bottom: 0;
    right: 50%;
    width: 8.75%;
    -webkit-transform: translate(265.0793650794%, 34.9206349206%);
            transform: translate(265.0793650794%, 34.9206349206%);
  }
  .bg-program_pic .circle01 {
    top: 0;
    right: -5.7692307692%;
    width: 15.4807692308%;
    padding-top: 15.4807692308%;
    -webkit-transform: translateY(48.4472049689%);
            transform: translateY(48.4472049689%);
  }
}
/* slider */
.p-top-slider {
  width: 100%;
  margin: 　0 auto;
}
.p-top-slider img {
  width: 100%;
  height: auto;
}
.p-top-slider .slick-slide {
  -webkit-transform: scale(0.875);
          transform: scale(0.875);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  opacity: 0.8;
}
.p-top-slider .slick-slide.slick-center {
  -webkit-transform: scale(1);
          transform: scale(1);
  opacity: 1;
}

/* slick arw */
.slide-btn {
  position: absolute;
  width: 4vw;
  height: 10%;
  top: 33%;
  cursor: pointer;
  z-index: 999;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: contain;
}

.prev-arw {
  left: 21.5vw;
  background-image: url(../img/common/arw_prev.png);
}

.next-arw {
  right: 21.5vw;
  background-image: url(../img/common/arw_next.png);
}

@media screen and (max-width: 813px) {
  .slide-btn {
    width: 12.307vw;
    height: 13%;
    top: 26%;
  }
  .prev-arw {
    left: 0;
  }
  .next-arw {
    right: 0;
  }
}
.p-top-overview_prof {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.p-top-overview_prof li {
  /*width: 216px;*/
  width: 32%;
  text-align: center;
}

.p-top-riji_pic {
  margin-bottom: 8px;
}

@media screen and (max-width: 813px) {
  .p-top-overview_prof {
    display: block;
    width: 100%;
  }
  .p-top-overview_prof li {
    width: 70%;
    margin: 8px 0;
  }
  .p-top-riji_pic {
    margin-bottom: 4px;
  }
}
.link-text {
  text-decoration: underline;
}
.link-text:hover {
  text-decoration: none;
}

.none {
  display: none;
}

.p-col3_box {
  width: 100%;
}
.p-col3_box:not(:first-child) {
  margin-top: 12.5%;
}
.p-col3_box dt {
  margin-bottom: 4px;
  font-size: 12px;
  font-size: 3.0769230769vw;
  line-height: 2.33333;
}
.p-col3_img {
  margin-bottom: 5%;
}
.p-col3_img img {
  border-radius: 8px;
}

@media screen and (min-width: 814px) {
  .p-col3_box {
    width: 31.7307692308%;
  }
  .p-col3_box:nth-child(-n+4) {
    margin-top: 0;
  }
  .p-col3_box:nth-child(n+4) {
    margin-top: 7.6923076923%;
  }
  .p-col3_box:not(:nth-child(3n)) {
    margin-right: 2.3076923077%;
  }
  .p-col3_box dt {
    margin-bottom: 8px;
    font-size: 1.4rem;
    line-height: 2;
  }
  .p-col3_box dd {
    font-size: 1.6rem;
  }
  .p-col3_ttl {
    margin-bottom: 14.2424242424%;
  }
  .p-col3_img {
    margin-bottom: 4.8484848485%;
  }
}
/* article */
.p-article_ttl {
  margin-bottom: 16px;
  padding-bottom: 16px;
  font-size: 16px;
  font-size: 4.1025641026vw;
  line-height: 1.8;
  border-bottom: 1px solid #fcc80e;
}
.p-article_date {
  margin-bottom: 7.5%;
  font-size: 12px;
  font-size: 3.0769230769vw;
  text-align: right;
}
.p-article_img {
  width: 100%;
  margin-top: 5.625%;
}
.p-article_img.c-pic_2 > *:last-child {
  margin-top: 5.625%;
}
.p-article_img img {
  border-radius: 8px;
}
.p-article_cap {
  margin-top: 8px;
  font-size: 12px;
  font-size: 3.0769230769vw;
  text-align: center;
}
.p-article_txt {
  margin-top: 5.625%;
}
.p-article_btn {
  margin-top: 12.5%;
  text-align: center;
}

@media screen and (min-width: 814px) {
  /*article*/
  .p-article_ttl {
    margin-bottom: 1.8604651163%;
    padding-bottom: 2.7906976744%;
    font-size: 2rem;
    line-height: 1.8;
  }
  .p-article_date {
    margin-bottom: 3.7209302326%;
    font-size: 1.4rem;
  }
  .p-article_img {
    margin-top: 2.7906976744%;
  }
  .p-article_img.c-pic_1 {
    width: 48.8372093023%;
    margin-left: auto;
    margin-right: auto;
  }
  .p-article_img.c-pic_2 > * {
    width: 48.8372093023%;
  }
  .p-article_img.c-pic_2 > *:last-child {
    margin-top: 0;
  }
  .p-article_img.c-pic_100 {
    width: 100%;
  }
  .p-page-news .p-article_img {
    width: 38.3720930233%;
    margin-left: auto;
    margin-right: auto;
  }
  .p-article_cap {
    margin-top: 15px;
    font-size: 1.4rem;
  }
  .p-article_txt {
    margin-top: 3.7209302326%;
  }
  .p-article_btn {
    margin-top: 9.3023255814%;
  }
}
/* news */
.p-news_list li {
  padding-bottom: 5.625%;
  border-bottom: 1px dashed #fcc80e;
}
.p-news_list li:not(:last-child) {
  margin-bottom: 5.625%;
}
.p-news_item dt {
  margin-bottom: 4px;
  font-size: 12px;
  font-size: 3.0769230769vw;
  line-height: 2.33333;
}

@media screen and (min-width: 814px) {
  .p-page-news, .p-page-article {
    width: 82.6923076923%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
  }
  .p-news.l-page-wrap {
    padding-top: 6.7307692308%;
  }
  .p-news_ttl {
    margin-bottom: 4.5192307692%;
  }
  .p-news_list li {
    padding-bottom: 2.3076923077%;
    margin-top: 2.3076923077%;
  }
  .p-news_list dt {
    width: 9.8837209302%;
    margin-right: 2.3255813953%;
    font-size: 1.4rem;
  }
  .p-news_list dd {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    font-size: 1.6rem;
    line-height: 1.75;
  }
}
.p-page-policy {
  margin-top: 60px;
  margin-top: 15.3846153846%;
  margin-bottom: 15.3846153846%;
}

.p-privacy_dl {
  margin-top: 20px;
  line-height: 2;
}
.p-privacy_dl dt {
  font-size: 17px;
  font-size: 4.358974359vw;
  color: #fcc80e;
  font-weight: 700;
  letter-spacing: 0.1em;
  margin-bottom: 15px;
  padding-bottom: 8px;
  border-bottom: 1px solid #e2e2e2;
}

.p-privacy_contact {
  background-color: #F3F3F3;
  margin-top: 30px;
  padding: 25px 6%;
  border-radius: 10px;
  line-height: 1.9;
}
.p-privacy_contact dl {
  display: table;
  margin-top: 8px;
  width: 100%;
}
.p-privacy_contact dt, .p-privacy_contact dd {
  display: table-cell;
}
.p-privacy_contact dt {
  width: 25%;
  font-weight: bold;
}
.p-privacy_contact dd {
  width: 75%;
}

@media screen and (max-width: 813px) {
  .p-policy_heading .p-page_ttl {
    line-height: 1.2;
  }
  .p-policy_heading .p-page_sttl {
    margin-top: 0;
  }
}
@media screen and (min-width: 814px) {
  .p-page-policy {
    margin-top: 7.6923076923%;
    margin-bottom: 13.4615384615%;
  }
  .p-privacy_dl {
    margin-top: 40px;
  }
  .p-privacy_dl dt {
    font-size: 2rem;
  }
  .p-privacy_contact {
    width: 60%;
    margin-top: 60px;
    padding: 25px 35px;
    border-radius: 20px;
    line-height: 1.9;
  }
  .p-privacy_contact h2 {
    font-weight: bold;
  }
  .p-privacy_contact dl {
    margin-top: 5px;
  }
  .p-privacy_contact dt {
    width: 13%;
  }
  .p-privacy_contact dd {
    width: 87%;
  }
}