@charset "UTF-8";
/* _setting CSS */
html {
  font-size: 10px;
}

* {
  line-height: inherit;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  color: inherit;
  font-weight: inherit;
}
*:before, *:after {
  box-sizing: border-box;
}

/*
input[type=text],
input[type=number],
input[type=password],
input[type=tel] {
	-webkit-appearance: none;
}
*/
header, footer, nav, main, article, section, figure, aside {
  display: block;
}

body {
  line-height: 1.7;
  color: #323232;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
  font-size: 1.5rem;
  text-align: center;
  letter-spacing: 0.08em;
  -webkit-text-size-adjust: 100%;
  font-feature-settings: "palt";
}

::-moz-placeholder {
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

::placeholder {
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/*
@media all and (-ms-high-contrast:none) {
	body {
		font-family: 'メイリオ',Meiryo,'游ゴシック',YuGothic,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック','MS PGothic',sans-serif;
	}
}
*/
h1, h2, h3, h4, h5, h6, pre, code, address, caption, code, th, td, select, p, li {
  font-size: inherit;
  font-weight: inherit;
  font-style: normal;
}

em, strong {
  font-size: inherit;
}

em, strong, b {
  font-weight: bold;
}

h1, h2, h3, h4, h5, h6, p, li, dt, dd, th, td {
  text-align: left;
}

/* base style
------------------------------------------------------------------------- */
li {
  list-style: none;
}

fieldset, img, hr {
  border: none;
}

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

th {
  vertical-align: top;
}
th br {
  display: block;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

td {
  vertical-align: top;
  word-break: break-all;
}

a {
  border: none;
  color: inherit;
  text-decoration: none;
}

input[type=text],
input[type=number],
input[type=password],
input[type=tel],
textarea {
  box-shadow: none;
  border: 1px solid #ccc;
  color: inherit;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

textarea {
  resize: vertical;
}

label,
input[type=checkbox],
input[type=radio],
input[type=button],
input[type=submit],
button {
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  cursor: pointer;
}

button {
  display: block;
  border: none;
  background: none;
  outline: none;
}

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

i {
  font-style: normal;
}

/* max-width:750px | ~ 750px
------------------------------------------------------------------------- */
@media screen and (max-width: 1200px) {
  /* @media screen
  ------------------------------------------------------------------------- */
  html {
    font-size: 1.3333333333vw;
  }
  body, h1, h2, h3, h4, h5, h6, pre, code, address, caption, code, th, td, select, p, li, em, strong {
    font-size: 2.6rem;
  }
  img {
    max-width: 100%;
    height: auto;
  }
  iframe[src*=youtube] {
    max-width: 100%;
    height: 52vw;
  }
}
@font-face {
  font-family: "avenir_lt_std95_black";
  src: url("./font/avenir_lt_std_95_black-webfont.woff2") format("woff2"), url("./font/avenir_lt_std_95_black-webfont.woff") format("woff"), url("./font/avenir_lt_std_95_black-webfont.otf") format("opentype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url("./font/AnyConv.com__NotoSansJP-Light.woff2") format("woff2"), url("./font/NotoSansJP-Light.woff") format("woff"), url("./font/NotoSansJP-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url("./font/AnyConv.com__NotoSansJP-Regular.woff2") format("woff2"), url("./font/NotoSansJP-Regular.woff") format("woff"), url("./font/NotoSansJP-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url("./font/AnyConv.com__NotoSansJP-Medium.woff2") format("woff2"), url("./font/NotoSansJP-Medium.woff") format("woff"), url("./font/NotoSansJP-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url("./font/AnyConv.com__NotoSansJP-Bold.woff2") format("woff2"), url("./font/NotoSansJP-Bold.woff") format("woff"), url("./font/NotoSansJP-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
}
@media all and (min-width: 1201px) {
  .sp {
    display: none !important;
  }
}
@media screen and (max-width: 1200px) {
  .pc {
    display: none !important;
  }
}
.f_avenir {
  font-family: "avenir_lt_std95_black", sans-serif;
}

.f_up {
  text-transform: uppercase;
}

@media all and (min-width: 1201px) {
  .hov {
    transition: 0.3s opacity;
  }
  .hov:hover {
    opacity: 0.7;
  }
}

@media all and (min-width: 1201px) {
  .hov_wrap a {
    transition: 0.3s opacity;
  }
  .hov_wrap a:hover {
    opacity: 0.7;
  }
}

.over_wrap {
  overflow: hidden;
}

.fc_ff {
  color: #fff;
}

.fc_pink {
  color: #f67987;
}

.fc_navy {
  color: #233a4c;
}

.fc_bone {
  color: #e5dbc2;
}

.c_flex {
  display: flex;
}
.c_flex._jcsb {
  justify-content: center;
}
.c_flex._aic {
  align-items: center;
}
.c_flex._fdc {
  flex-direction: column;
}
.c_flex._fdcr {
  flex-direction: column-reverse;
}

@media all and (min-width: 1201px) {
  .c_flex_pc {
    display: flex;
  }
  .c_flex_pc._jcsb {
    justify-content: center;
  }
  .c_flex_pc._aic {
    align-items: center;
  }
  .c_flex_pc._fdc {
    flex-direction: column;
  }
  .c_flex_pc._fdcr {
    flex-direction: column-reverse;
  }
}

@media all and (min-width: 1201px) {
  .c_wrap_1 {
    width: 1020px;
    margin: 0 auto;
  }
}
@media all and (min-width: 1201px) {
  .c_wrap_2 {
    width: 1200px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 1200px) {
  .c_wrap .c_inner_sp_1 {
    padding: 0 6.6666666667vw;
  }
}
@media all and (min-width: 1201px) {
  .c_wrap .c_inner_1 {
    width: 1400px;
    margin: 0 auto;
  }
}
@media all and (min-width: 1201px) {
  .c_wrap .c_inner_2 {
    width: 1200px;
    margin: 0 auto;
  }
}

.c_list1 {
  display: grid;
  grid-auto-flow: dense;
}
@media all {
  .c_list1 {
    grid-template-columns: repeat(3, 1fr); /* 3列のグリッド */
    gap: 60px; /* 要素間の余白 */
    row-gap: 65px;
  }
}
@media screen and (max-width: 1200px) {
  .c_list1 {
    grid-template-columns: repeat(2, 1fr); /* 2列のグリッド */
    gap: 4.6%; /* 要素間の余白を5%に設定 */
    row-gap: 10vw; /* 各行の間の垂直余白を40pxに設定 */
    width: 100%;
    padding: 0 0 0vw;
  }
}
.c_list1::after {
  content: "";
  width: 300px;
}
@media screen and (max-width: 1200px) {
  .c_list1::after {
    width: 42.6666666667vw;
  }
}
.c_list1 li {
  position: relative;
  -moz-column-break-inside: avoid;
       break-inside: avoid;
}
@media all and (min-width: 1201px) {
  .c_list1 li {
    grid-column: span 1;
  }
}
@media screen and (max-width: 1200px) {
  .c_list1 li {
    grid-column: span 1;
  }
  .c_list1 li.size_l {
    grid-column: span 2;
  }
}
@media all and (min-width: 1201px) {
  .c_list1 li.size_l {
    grid-column: span 2;
  }
  .c_list1 li.size_l::before {
    left: 370px;
  }
  .c_list1 li.size_l a {
    display: flex;
    justify-content: space-between;
    padding: 28px;
    border-radius: 20px;
    background-color: rgba(106, 121, 255, 0.15);
  }
  .c_list1 li.size_l a .img {
    flex: 1;
    height: auto;
    margin: 0;
  }
  .c_list1 li.size_l a .img img {
    width: auto;
    height: auto;
    min-width: 100%;
    min-height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .c_list1 li.size_l a .text_wrap {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    position: relative;
    width: 185px;
    margin: 0 0 0 30px;
    padding: 0 0 55px;
  }
  .c_list1 li.size_l a .text_wrap .cat_date {
    display: block;
  }
  .c_list1 li.size_l a .text_wrap .cat_date .date {
    text-align: right;
  }
  .c_list1 li.size_l a .brn {
    bottom: 2px;
  }
}
@media screen and (max-width: 1200px) {
  .c_list1 li.size_l a {
    padding: 4vw;
    border-radius: 2.6666666667vw;
    background-color: rgba(106, 121, 255, 0.15);
  }
  .c_list1 li.size_l a .img {
    height: 41.3333333333vw;
  }
  .c_list1 li.size_l a .img img {
    width: 100% !important;
    height: 100% !important;
  }
  .c_list1 li.size_l a .text_wrap {
    padding: 0 0 10vw;
  }
  .c_list1 li.size_l a .text_wrap .detail {
    bottom: 4vw;
  }
}
.c_list1 li::before {
  content: "";
  position: absolute;
  top: -32px;
  right: -32px;
  width: 205px;
  height: 162px;
  background: url(../images/index/sec1_li_bg.png) no-repeat center center/100% 100%;
}
@media screen and (max-width: 1200px) {
  .c_list1 li::before {
    top: -5.8666666667vw;
    right: -2.6666666667vw;
    width: 21.8666666667vw;
    height: 17.3333333333vw;
  }
}
.c_list1 li a {
  display: block;
  height: 100%;
  position: relative;
  padding: 0 0 52px;
  color: #613abf;
  font-size: 1.1rem;
}
@media screen and (max-width: 1200px) {
  .c_list1 li a {
    padding: 0 0 10.4vw;
    font-size: 2rem;
  }
}
.c_list1 li a > span {
  display: block;
}
.c_list1 li a .img {
  margin: 0 0 10px;
  border: 1px solid #613abf;
  border-radius: 10px;
  overflow: hidden;
  background-color: #fff;
}
@media screen and (max-width: 1200px) {
  .c_list1 li a .img {
    margin: 0 0 1.3333333333vw;
    border-radius: 5px;
  }
}
.c_list1 li a .img img {
  width: 100%;
  height: 200px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1200px) {
  .c_list1 li a .img img {
    height: 28.4vw;
  }
}
.c_list1 li a .cat_date {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 0 5px;
}
@media screen and (max-width: 1200px) {
  .c_list1 li a .cat_date {
    display: block;
    margin: 0 0 0.2666666667vw;
  }
}
.c_list1 li a .cat_date .cat {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.c_list1 li a .cat_date .cat .cat_icon {
  display: inline-flex;
  margin: 0 15px 0 0;
  font-size: 1.4rem;
  letter-spacing: 0;
}
@media screen and (max-width: 1200px) {
  .c_list1 li a .cat_date .cat .cat_icon {
    font-size: 2rem;
    margin: 0 1.3333333333vw 0 0;
  }
}
.c_list1 li a .cat_date .cat .cat_icon::before {
  content: "●";
  scale: 0.8;
}
.c_list1 li a .cat_date .cat .cat_icon.event::before {
  color: #ffd264;
}
.c_list1 li a .cat_date .cat .cat_icon.partner::before {
  color: #73BEFF;
}
.c_list1 li a .cat_date .cat .cat_icon.campus_supporter::before {
  color: #FFA1A1;
}
.c_list1 li a .cat_date .cat .cat_icon.sdgsweeks::before {
  color: #C8F0B4;
}
.c_list1 li a .cat_date .cat .cat_icon.info::before {
  color: #5aaa6e;
}
.c_list1 li a .cat_date .cat .cat_icon.international::before {
  color: #64e1fa;
}
.c_list1 li a .cat_date .date {
  display: block;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1200px) {
  .c_list1 li a .cat_date .date {
    margin-top: 0;
    text-align: right;
  }
}
.c_list1 li a .title {
  font-size: 1.6rem;
  line-height: 1.75;
  font-weight: 500;
  text-decoration: underline;
}
@media screen and (max-width: 1200px) {
  .c_list1 li a .title {
    font-size: 2.4rem;
    line-height: 1.55;
  }
}
.c_list1 li a .detail {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  padding: 0 30px 0 0;
  width: 140px;
  height: 40px;
  background: url(../images/index/sec1_btn.png) no-repeat center center/100% 100%;
  color: #fff;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1200px) {
  .c_list1 li a .detail {
    width: 26.9333333333vw;
    height: 7.7333333333vw;
    padding: 0 5.0666666667vw 0 0;
    font-size: 2.03rem;
  }
}
.c_list1 li.new a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 80px;
  height: 80px;
  background: url(../images/news/icon_new.svg) no-repeat center center/100% 100%;
}
@media screen and (max-width: 1200px) {
  .c_list1 li.new a::before {
    width: 12vw;
    height: 12vw;
  }
}

.page_hd {
  position: relative;
  width: 100%;
  height: 435px;
  background: url(../images/partner/page_hd_bg.jpg) no-repeat center center/100% 100%;
}
@media screen and (max-width: 1200px) {
  .page_hd {
    height: auto;
    padding: 0;
    background: none;
  }
}
.page_hd .hd {
  padding: 87px 0 0;
  text-align: center;
}
@media screen and (max-width: 1200px) {
  .page_hd .hd {
    padding: 0;
  }
  .page_hd .hd picture {
    display: block;
    width: 100%;
    margin: 0 auto;
  }
  .page_hd .hd picture img {
    width: 100%;
  }
}

.c_btn1 {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  position: relative;
  margin: 0 auto;
  height: 50px;
  padding: 0 62px 0 30px;
  border-radius: 100px;
  border: 1px solid #613abf;
  background-color: #fff;
  color: #613abf;
  font-size: 1.6rem;
  font-weight: 500;
  transition: 0.3s opacity;
}
@media screen and (max-width: 1200px) {
  .c_btn1 {
    min-width: 57.6vw;
    height: 12.2666666667vw;
    padding: 0 17.8666666667vw 0 9.3333333333vw;
    font-size: 2.8rem;
    letter-spacing: 0.23em;
  }
}
.c_btn1::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 8px;
  width: 32px;
  height: 32px;
  background: url(../images/common/arrow3.svg) no-repeat center center/100% 100%;
  transform: translateY(-50%);
}
@media screen and (max-width: 1200px) {
  .c_btn1::before {
    right: 1.7333333333vw;
    width: 7.7333333333vw;
    height: 7.7333333333vw;
  }
}
@media all and (min-width: 1201px) {
  .c_btn1:hover {
    opacity: 0.7;
  }
}

.c_sec1 {
  padding: 0 0 105px;
  background: url(../images/common/c_bg1.jpg);
}
@media screen and (max-width: 1200px) {
  .c_sec1 {
    padding: 0 0 10.8vw;
  }
}
.c_sec1 .sec_hd {
  position: relative;
  top: -122px;
  margin-bottom: -92px;
  text-align: center;
}
@media screen and (max-width: 1200px) {
  .c_sec1 .sec_hd {
    top: 0;
    width: 31.2vw;
    margin: 0 auto 2.6666666667vw;
  }
}

.sec_news {
  padding-bottom: 60px;
}
@media screen and (max-width: 1200px) {
  .sec_news {
    padding: 0 0 10.6666666667vw;
  }
}
.sec_news .sec_hd {
  margin: 0 0 56px;
  padding: 20px 0;
  border-top: 1px solid #5032af;
  border-bottom: 1px solid #5032af;
  color: #5032af;
  font-size: 2.8rem;
  text-align: center;
  letter-spacing: 0.23em;
}
@media screen and (max-width: 1200px) {
  .sec_news .sec_hd {
    margin: 0 0 6.6666666667vw;
    padding: 4vw 0;
    border-top: none;
    border-bottom: 0.1333333333vw solid #5032af;
    font-size: 3.8rem;
    line-height: 1.7;
    letter-spacing: 0.28em;
  }
}
.sec_news .sec_mhd {
  margin: 0 0 65px;
  text-align: center;
}
@media screen and (max-width: 1200px) {
  .sec_news .sec_mhd {
    width: 60vw;
    margin: 0 auto 8.6666666667vw;
  }
}
.sec_news .c_list1 {
  margin: 0 0 20px;
}
@media screen and (max-width: 1200px) {
  .sec_news .c_list1 {
    margin: 0 0 2.6666666667vw;
    padding: 0 5.3333333333vw;
  }
}
.sec_news .more {
  text-align: center;
}
.sec_news .more a {
  width: 254px;
  height: 58px;
  font-size: 1.8rem;
}
@media screen and (max-width: 1200px) {
  .sec_news .more a {
    font-size: 2.8rem;
    width: auto;
    min-width: 45.8666666667vw;
    height: 12.2666666667vw;
  }
}
.sec_news .more a::before {
  width: 42px;
  height: 42px;
}
@media screen and (max-width: 1200px) {
  .sec_news .more a::before {
    width: 8.2666666667vw;
    height: 8.2666666667vw;
  }
}

.back_link {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  padding: 40px 0 16px;
  border-top: 1px solid #5032af;
}
@media screen and (max-width: 1200px) {
  .back_link {
    padding: 6.1333333333vw 0;
  }
}
.back_link a {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 254px;
  height: 58px;
  margin: 0 10px 20px;
  padding: 0 30px 0 62px;
  border-radius: 100px;
  border: 1px solid #613abf;
  background-color: #613abf;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 500;
  transition: 0.3s opacity;
  letter-spacing: 0.14em;
}
@media screen and (max-width: 1200px) {
  .back_link a {
    width: 45.8666666667vw;
    height: 12.2666666667vw;
    padding: 0 5.0666666667vw 0 9.3333333333vw;
    font-size: 2.8rem;
  }
}
.back_link a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 8px;
  width: 42px;
  height: 42px;
  background: url(../images/common/arrow4.svg) no-repeat center center/100% 100%;
  transform: translateY(-50%);
}
@media screen and (max-width: 1200px) {
  .back_link a::before {
    width: 8.8vw;
    height: 8.8vw;
  }
}
@media all and (min-width: 1201px) {
  .back_link a:hover {
    opacity: 0.7;
  }
}
.back_link .news {
  width: 344px;
}
@media screen and (max-width: 1200px) {
  .back_link .news {
    width: 72.5333333333vw;
  }
}

#ku_header {
  position: relative;
  z-index: 100;
}

@media screen and (max-width: 768px) {
  #ku_header #common_header {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  #ku_header #common_header ul {
    display: flex;
    flex-wrap: wrap;
    width: 200px;
    padding: 10px 0 0;
  }
  #ku_header #common_header ul li {
    margin: 0 0 10px 18px;
    line-height: 1;
    vertical-align: baseline;
  }
}

#header {
  position: relative;
  z-index: 10000;
}
#header .h_logo {
  position: absolute;
  top: 20px;
  left: 35px;
  z-index: 10;
}
@media screen and (max-width: 1200px) {
  #header .h_logo {
    left: 4vw;
    width: 16.8vw;
  }
}
#header #nav_open {
  position: fixed;
  top: 45px;
  right: 30px;
  z-index: 100;
  width: 52px;
  height: 52px;
  border-radius: 100%;
  background-color: #5032af;
  transition: 0.4s;
}
@media screen and (max-width: 1200px) {
  #header #nav_open {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
    top: calc(2.6666666667vw + 50px);
    right: 2.6666666667vw;
  }
}
#header #nav_open span, #header #nav_open::before, #header #nav_open::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 0;
  padding: 2px 0 0;
  overflow: hidden;
  translate: -50% -50%;
  background-color: #fff;
  transition: 0.4s;
}
@media screen and (max-width: 1200px) {
  #header #nav_open span, #header #nav_open::before, #header #nav_open::after {
    width: 4vw;
    padding: 1.5px 0 0;
  }
}
#header #nav_open::before {
  margin-top: -9px;
}
@media screen and (max-width: 1200px) {
  #header #nav_open::before {
    margin-top: -1.3333333333vw;
  }
}
#header #nav_open::after {
  margin-top: 9px;
}
@media screen and (max-width: 1200px) {
  #header #nav_open::after {
    margin-top: 1.3333333333vw;
  }
}
#header #nav_wrap {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 100;
  width: 492px;
  height: 100vh;
  background: url(../images/common/bg_menu.webp) no-repeat center right/492px 100%;
  opacity: 0;
  pointer-events: none;
  transition: 0.4s;
}
@media screen and (max-width: 1200px) {
  #header #nav_wrap {
    width: 100%;
    background-image: url(../images/common/sp_bg_menu.jpg);
    background-size: 100% 100%;
  }
}
#header #nav_wrap .inner {
  display: flex;
  justify-content: flex-end;
  position: relative;
  width: 100%;
  height: 100%;
}
#header #nav_wrap .inner .nav1 {
  width: 492px;
  padding: 13.26666667vh 0 0 71px;
}
@media screen and (max-width: 1200px) {
  #header #nav_wrap .inner .nav1 {
    width: 100%;
    padding: 32vw 13.3333333333vw 0 16.6666666667vw;
  }
}
#header #nav_wrap .inner .nav1 li {
  margin: 0 0 2vh;
}
@media screen and (max-width: 1200px) {
  #header #nav_wrap .inner .nav1 li {
    margin: 0 0 4.6666666667vw;
  }
}
#header #nav_wrap .inner .nav1 li a {
  display: flex;
  align-items: center;
  padding: 10px 0;
  font-size: 1.6rem;
  color: #fff;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 1200px) {
  #header #nav_wrap .inner .nav1 li a {
    padding: 1.3333333333vw 0;
    font-size: 2.8rem;
  }
}
#header #nav_wrap .inner .nav1 li a::before {
  content: "";
  display: block;
  width: 26px;
  height: 26px;
  margin: 0 12px 0 0;
  background: url(../images/common/arrow1.svg) no-repeat center center/contain;
}
@media screen and (max-width: 1200px) {
  #header #nav_wrap .inner .nav1 li a::before {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
    margin: 0 1.6vw 0 0;
  }
}
#header #nav_wrap .inner .nav1 li.tab a::after {
  content: "";
  display: block;
  width: 14px;
  height: 14px;
  margin: 0 0 0 8px;
  background: url(../images/news/icon_blank_p.svg) no-repeat center center/contain;
  filter: brightness(0) invert(1);
}
@media screen and (max-width: 1200px) {
  #header #nav_wrap .inner .nav1 li.tab a::after {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
    margin: 0 1.0666666667vw 0 0;
  }
}
@media all and (min-width: 1201px) {
  #header #nav_wrap .inner .nav1 li:nth-child(2) {
    padding-left: 20px;
  }
  #header #nav_wrap .inner .nav1 li:nth-child(3) {
    padding-left: 40px;
  }
  #header #nav_wrap .inner .nav1 li:nth-child(4) {
    padding-left: 60px;
  }
  #header #nav_wrap .inner .nav1 li:nth-child(5) {
    padding-left: 80px;
  }
  #header #nav_wrap .inner .nav1 li:nth-child(6) {
    padding-left: 100px;
  }
  #header #nav_wrap .inner .nav1 li:nth-child(7) {
    padding-left: 120px;
  }
}
#header #nav_wrap .inner .copy {
  position: absolute;
  right: 34px;
  bottom: 38px;
  color: #613abf;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1rem;
  letter-spacing: 0.14em;
}
@media screen and (max-width: 1200px) {
  #header #nav_wrap .inner .copy {
    width: 100%;
    right: 0;
    text-align: center;
    font-size: 1.8rem;
  }
}
#header.on #nav_wrap {
  opacity: 1;
  pointer-events: auto;
}
#header.on #nav_open {
  background-color: transparent;
}
#header.on #nav_open span {
  opacity: 0;
}
#header.on #nav_open::before {
  margin-top: 0;
  transform: rotate(35deg);
}
#header.on #nav_open::after {
  margin-top: 0;
  transform: rotate(-35deg);
}

#footer {
  position: relative;
  z-index: 2000;
  background-color: #fff;
  border-top: 1px solid #5032af;
}
#footer .bread {
  display: flex;
  align-items: center;
  padding: 10px 33px;
  border-bottom: 1px solid rgba(79, 50, 175, 0.532);
}
#footer .bread li {
  margin: 0 10px 0 0;
  font-size: 1.2rem;
  letter-spacing: 0.18em;
}
@media screen and (max-width: 1200px) {
  #footer .bread li {
    margin: 0 0.8vw 0 0;
    font-size: 2rem;
    letter-spacing: 0.14em;
  }
}
#footer .bread li a {
  color: #613abf;
  text-decoration: underline;
}
#footer .bread li::after {
  content: ">";
  margin: 0 0 0 10px;
}
@media screen and (max-width: 1200px) {
  #footer .bread li::after {
    margin: 0 0 0 0.8vw;
  }
}
#footer .bread li:last-child::after {
  display: none;
}
#footer .block1 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 22px 40px 22px 33px;
}
@media screen and (max-width: 1200px) {
  #footer .block1 {
    display: block;
    padding: 4vw 0 2.6666666667vw;
  }
}
@media screen and (max-width: 1200px) {
  #footer .block1 .logo_wrap h2 {
    width: 26vw;
    margin: 0 auto 2.6666666667vw;
  }
}
#footer .block1 .contact_wrap {
  padding: 3px 0 0;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1200px) {
  #footer .block1 .contact_wrap {
    padding: 1.3333333333vw 0 0;
  }
}
#footer .block1 .contact_wrap h3 {
  margin: 0 0 10px;
  color: #462d96;
  font-weight: 500;
  font-size: 1.4rem;
}
@media screen and (max-width: 1200px) {
  #footer .block1 .contact_wrap h3 {
    margin: 0 0 0.6666666667vw;
    font-size: 2.4rem;
    text-align: center;
  }
}
#footer .block1 .contact_wrap p {
  font-size: 1.2rem;
}
#footer .block1 .contact_wrap p a {
  color: #00aae6;
  text-decoration: underline;
}
@media screen and (max-width: 1200px) {
  #footer .block1 .contact_wrap p {
    font-size: 2rem;
    text-align: center;
  }
}
#footer .to_top {
  position: fixed;
  bottom: 60px;
  right: 45px;
  z-index: 9999;
  height: 65px;
  opacity: 0;
  pointer-events: none;
  transition: 1s opacity;
}
@media screen and (max-width: 1200px) {
  #footer .to_top {
    bottom: 4vw;
    right: 4vw;
  }
}
#footer .to_top.fix_210 {
  position: absolute;
  top: -80px;
}
@media screen and (max-width: 1200px) {
  #footer .to_top.fix_210 {
    top: -13.3333333333vw;
  }
}
#footer .to_top.on {
  opacity: 1;
  pointer-events: auto;
}
#footer .to_top a {
  display: block;
  position: relative;
  width: 60px;
  height: 0;
  padding: 58px 0 0;
  overflow: hidden;
  border-radius: 100%;
  border: 1px solid #5032af;
  background-color: #00dcaa;
  color: #fff;
  font-size: 1.2rem;
}
@media screen and (max-width: 1200px) {
  #footer .to_top a {
    width: 40px;
    padding: 38px 0 0;
    font-size: 2rem;
  }
}
@media all and (min-width: 1201px) {
  #footer .to_top a {
    transition: 0.3s opacity;
  }
  #footer .to_top a:hover {
    opacity: 0.7;
  }
}
#footer .to_top a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -32%;
  width: 12px;
  height: 12px;
  border-top: 1px solid #5032af;
  border-left: 1px solid #5032af;
  transform: rotate(45deg);
}
#footer .copy {
  padding: 10px 0;
  border-top: 1px solid #5032af;
  font-size: 1.1rem;
  text-align: center;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 1200px) {
  #footer .copy {
    padding: 1.3333333333vw 0;
    font-size: 2rem;
  }
}

@keyframes animate_svg_fill {
  0% {
    fill: transparent;
  }
  50% {
    fill: rgb(0, 0, 0);
  }
  100% {
    fill: transparent;
  }
}
.load {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
}
.load svg {
  position: absolute;
  top: 50%;
  left: 50%;
  max-width: 60%;
  transform: translate(-50%, -50%);
}
.load svg .cls-1 {
  fill: #000;
  stroke-width: 0px;
  fill: transparent;
}
.load.scf_on svg .svg-elem-1 {
  animation: animate_svg_fill 3s cubic-bezier(0.47, 0, 0.745, 0.715) 1s infinite;
}
.load.scf_on svg .svg-elem-2 {
  animation: animate_svg_fill 3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s infinite;
}
.load.scf_on svg .svg-elem-3 {
  animation: animate_svg_fill 3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s infinite;
}

@media screen {
  .scf,
  .scf_load {
    transition: opacity 0.8s, transform 0.8s;
  }
  .scf._scf_op,
  .scf .scf_c._scf_op,
  .scf_load._scf_op,
  .scf_load .scf_c._scf_op {
    opacity: 0;
  }
  .scf._scf_top,
  .scf .scf_c._scf_top,
  .scf_load._scf_top,
  .scf_load .scf_c._scf_top {
    transform: translateY(30px);
  }
  .scf._scf_left,
  .scf .scf_c._scf_left,
  .scf_load._scf_left,
  .scf_load .scf_c._scf_left {
    transform: translateX(100px);
  }
  .scf._scf_blcok_lr,
  .scf .scf_c._scf_blcok_lr, .scf._scf_blcok_rl,
  .scf .scf_c._scf_blcok_rl,
  .scf_load._scf_blcok_lr,
  .scf_load .scf_c._scf_blcok_lr,
  .scf_load._scf_blcok_rl,
  .scf_load .scf_c._scf_blcok_rl {
    display: inline-block;
    position: relative;
    white-space: nowrap;
    overflow: hidden;
  }
  .scf._scf_blcok_lr::after,
  .scf .scf_c._scf_blcok_lr::after, .scf._scf_blcok_rl::after,
  .scf .scf_c._scf_blcok_rl::after,
  .scf_load._scf_blcok_lr::after,
  .scf_load .scf_c._scf_blcok_lr::after,
  .scf_load._scf_blcok_rl::after,
  .scf_load .scf_c._scf_blcok_rl::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    width: 0;
    height: 100%;
    background: #00e696;
    transition: width 0.4s, left 0.8s 0.4s, opacity 0.2s 0.8s;
  }
  .scf._scf_blcok_lr .scf_inner,
  .scf .scf_c._scf_blcok_lr .scf_inner, .scf._scf_blcok_rl .scf_inner,
  .scf .scf_c._scf_blcok_rl .scf_inner,
  .scf_load._scf_blcok_lr .scf_inner,
  .scf_load .scf_c._scf_blcok_lr .scf_inner,
  .scf_load._scf_blcok_rl .scf_inner,
  .scf_load .scf_c._scf_blcok_rl .scf_inner {
    display: inline-block;
    opacity: 0;
    transition: opacity 0s 0.4s;
  }
  .scf._scf_blcok_lr._scf_color2::after,
  .scf .scf_c._scf_blcok_lr._scf_color2::after, .scf._scf_blcok_rl._scf_color2::after,
  .scf .scf_c._scf_blcok_rl._scf_color2::after,
  .scf_load._scf_blcok_lr._scf_color2::after,
  .scf_load .scf_c._scf_blcok_lr._scf_color2::after,
  .scf_load._scf_blcok_rl._scf_color2::after,
  .scf_load .scf_c._scf_blcok_rl._scf_color2::after {
    background: #008c64;
  }
  .scf._scf_blcok_lr._scf_color3::after,
  .scf .scf_c._scf_blcok_lr._scf_color3::after, .scf._scf_blcok_rl._scf_color3::after,
  .scf .scf_c._scf_blcok_rl._scf_color3::after,
  .scf_load._scf_blcok_lr._scf_color3::after,
  .scf_load .scf_c._scf_blcok_lr._scf_color3::after,
  .scf_load._scf_blcok_rl._scf_color3::after,
  .scf_load .scf_c._scf_blcok_rl._scf_color3::after {
    background: #fff;
  }
  .scf._scf_blcok_rl::after,
  .scf .scf_c._scf_blcok_rl::after,
  .scf_load._scf_blcok_rl::after,
  .scf_load .scf_c._scf_blcok_rl::after {
    left: auto !important;
    right: 0;
    transition: width 0.4s, right 0.8s 0.4s, opacity 0.2s 0.8s;
  }
  .scf._scf_blcok_tb,
  .scf .scf_c._scf_blcok_tb,
  .scf_load._scf_blcok_tb,
  .scf_load .scf_c._scf_blcok_tb {
    position: relative;
    overflow: hidden;
  }
  .scf._scf_blcok_tb::after,
  .scf .scf_c._scf_blcok_tb::after,
  .scf_load._scf_blcok_tb::after,
  .scf_load .scf_c._scf_blcok_tb::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    height: 0;
    background: #00e696;
    transition: height 0.3s, top 0.3s 0.3s, opacity 0.2s 0.5s;
  }
  .scf._scf_blcok_tb .scf_inner,
  .scf .scf_c._scf_blcok_tb .scf_inner,
  .scf_load._scf_blcok_tb .scf_inner,
  .scf_load .scf_c._scf_blcok_tb .scf_inner {
    opacity: 0;
    transition: opacity 0s 0.3s;
  }
  .scf._scf_blcok_bt,
  .scf_load._scf_blcok_bt {
    position: relative;
    overflow: hidden;
  }
  .scf._scf_blcok_bt::after,
  .scf_load._scf_blcok_bt::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    height: 0;
    background: #00e696;
    transition: height 0.3s, bottom 0.3s 0.3s, opacity 0.2s 0.5s;
  }
  .scf._scf_blcok_bt .scf_inner,
  .scf_load._scf_blcok_bt .scf_inner {
    opacity: 0;
    transition: opacity 0s 0.3s;
  }
  .scf.scf_on._scf_op,
  .scf.scf_on .scf_c._scf_op,
  .scf_load.scf_on._scf_op,
  .scf_load.scf_on .scf_c._scf_op {
    opacity: 1;
  }
  .scf.scf_on._scf_top,
  .scf.scf_on .scf_c._scf_left,
  .scf_load.scf_on._scf_top,
  .scf_load.scf_on .scf_c._scf_left {
    transform: translate(0);
  }
  .scf.scf_on._scf_left,
  .scf.scf_on .scf_c._scf_left,
  .scf_load.scf_on._scf_left,
  .scf_load.scf_on .scf_c._scf_left {
    transform: translate(0);
  }
  .scf.scf_on._scf_blcok_lr::after,
  .scf.scf_on .scf_c._scf_blcok_lr::after,
  .scf_load.scf_on._scf_blcok_lr::after,
  .scf_load.scf_on .scf_c._scf_blcok_lr::after {
    left: 200%;
    width: 100%;
    opacity: 0;
  }
  .scf.scf_on._scf_blcok_lr .scf_inner,
  .scf.scf_on .scf_c._scf_blcok_lr .scf_inner,
  .scf_load.scf_on._scf_blcok_lr .scf_inner,
  .scf_load.scf_on .scf_c._scf_blcok_lr .scf_inner {
    opacity: 1;
  }
  .scf.scf_on._scf_blcok_rl::after,
  .scf.scf_on .scf_c._scf_blcok_rl::after,
  .scf_load.scf_on._scf_blcok_rl::after,
  .scf_load.scf_on .scf_c._scf_blcok_rl::after {
    right: 200%;
    width: 100%;
    opacity: 0;
  }
  .scf.scf_on._scf_blcok_rl .scf_inner,
  .scf.scf_on .scf_c._scf_blcok_rl .scf_inner,
  .scf_load.scf_on._scf_blcok_rl .scf_inner,
  .scf_load.scf_on .scf_c._scf_blcok_rl .scf_inner {
    opacity: 1;
  }
  .scf.scf_on._scf_blcok_tb::after,
  .scf.scf_on .scf_c._scf_blcok_tb::after,
  .scf_load.scf_on._scf_blcok_tb::after,
  .scf_load.scf_on .scf_c._scf_blcok_tb::after {
    top: 100%;
    height: 100%;
    opacity: 0;
  }
  .scf.scf_on._scf_blcok_tb .scf_inner,
  .scf.scf_on .scf_c._scf_blcok_tb .scf_inner,
  .scf_load.scf_on._scf_blcok_tb .scf_inner,
  .scf_load.scf_on .scf_c._scf_blcok_tb .scf_inner {
    opacity: 1;
  }
  .scf.scf_on._scf_blcok_bt::after,
  .scf_load.scf_on._scf_blcok_bt::after {
    bottom: 100%;
    height: 100%;
    opacity: 0;
  }
  .scf.scf_on._scf_blcok_bt .scf_inner,
  .scf_load.scf_on._scf_blcok_bt .scf_inner {
    opacity: 1;
  }
}
@media screen and (max-width: 750px) {
  .scf._pc_scf,
  .scf_load._pc_scf {
    opacity: 1;
    transform: translate(0);
  }
}
@media print {
  body,
  html {
    width: 100% !important;
    min-width: 1200px !important;
    -webkit-print-color-adjust: exact;
  }
  * {
    transition: 0s !important;
    transition-delay: 0s !important;
  }
  @page {
    margin: 0;
    size: A4;
  }
}
@media print and (-ms-high-contrast: none) {
  @page {
    size: A4;
    margin: 0;
  }
  body {
    zoom: 0.8;
  }
}
@media print {
  .c_wrap_1 {
    width: 1020px;
    margin: 0 auto;
  }
  .c_wrap_2 {
    width: 1200px;
    margin: 0 auto;
  }
  .c_wrap .c_inner_1 {
    width: 1400px;
    margin: 0 auto;
  }
  .c_wrap .c_inner_2 {
    width: 1200px;
    margin: 0 auto;
  }
  #wrapper #contents .mv {
    position: relative;
    width: 100%;
    z-index: 100;
    height: 870px;
  }
  #wrapper #contents .mv #ku_header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  #wrapper #contents .mv.scf_on .op {
    opacity: 1;
  }
  #wrapper #contents .mv.scf_on .mv_bg .mv_bg_wrap {
    width: 200vw !important;
    height: 200vw !important;
    animation: none !important;
  }
  #wrapper #contents .mv .mv_inner {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100% !important;
    padding-top: 100vh;
  }
  #wrapper #contents .mv .ring {
    position: absolute;
    top: 0;
    left: 0;
    transform: none;
    width: 100%;
    height: 100%;
  }
  #wrapper #contents .mv .logo {
    position: absolute;
    top: calc(50% - 85px);
    left: 50%;
    transform: translate(-50%, -56%);
    width: 407px;
    height: 243px;
    background: url(../images/index/mv_img1.svg) no-repeat center center/100%;
  }
  #wrapper #contents .mv .bg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    width: 100vw;
    height: 100vh;
    background: url(../images/index/mv_bg3.png) no-repeat center top/cover;
  }
  #wrapper #contents .mv .h_logo {
    position: absolute;
    top: 50px;
    left: 60px;
    z-index: 11;
  }
  #wrapper #contents .mv .copy {
    position: absolute;
    top: 270px;
    left: 60px;
    z-index: 11;
  }
  #wrapper #contents .mv .text {
    position: absolute;
    top: 500px;
    left: calc(50% + 410px);
    z-index: 10;
    transform: translate(-50%, -50%);
    width: 370px;
    height: 308px;
    background: url(../images/index/mv_img3.png) no-repeat center center/100%;
  }
  #wrapper #contents .mv .op {
    opacity: 0;
    transition: 1s 1.5s opacity;
  }
  #wrapper #contents .mv .op.op2 {
    transition: 1s 3s opacity;
  }
  #wrapper #contents .mv .op.op3 {
    transition: 1s 6s opacity;
  }
  #wrapper #contents .mv .op.op4 {
    transition: 1s 7s opacity;
  }
  #wrapper #contents .mv .mv_check1 {
    position: absolute;
    top: 700px;
    left: 0;
    z-index: 10;
    width: 10px;
    height: 10px;
    background: #000;
    pointer-events: none;
    opacity: 0;
  }
  #wrapper #contents .mv .mv_check1 .mv_bg .mv_bg_wrap {
    width: 200vw !important;
    height: 200vw !important;
  }
  #wrapper #contents .mv .mv_check1 + .sec1 {
    transition: 0s !important;
    margin-top: 10px !important;
    opacity: 1 !important;
  }
  #wrapper #contents .mv .mv_check2 {
    position: absolute;
    top: 1300px;
    left: 0;
    z-index: 10;
    width: 10px;
    height: 10px;
    background: #820c0c;
    pointer-events: none;
    opacity: 0;
  }
  #wrapper #contents .mv .over_wrap {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    background: url(../images/index/mv_bg1.jpg) no-repeat center center/cover;
  }
  #wrapper #contents .mv .mv_bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    overflow: hidden;
  }
  #wrapper #contents .mv .mv_bg .mv_bg_wrap {
    position: absolute;
    top: 0 !important;
    left: 0 !important;
    transform: none !important;
    width: 100% !important;
    height: 100% !important;
    border-radius: 0 !important;
    overflow: hidden;
    transition: 1s;
  }
  #wrapper #contents .mv .mv_bg .mv_bg_wrap .scroll {
    position: absolute;
    top: calc(50% + 200px);
    left: 50%;
    z-index: 100;
    transform: translate(-50%, -50%);
    color: #fff;
    font-size: 1.6rem;
    text-indent: 0.22em;
    letter-spacing: 0.22em;
  }
  #wrapper #contents .mv .mv_bg .mv_bg_wrap .scroll span {
    position: absolute;
    top: calc(100% + 5px);
    left: 50%;
    transform: translateX(-50%);
    width: 1px;
    height: 50px;
    overflow: hidden;
  }
  #wrapper #contents .mv .mv_bg .mv_bg_wrap .scroll span::after {
    content: "";
    position: absolute;
    top: -100px;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    animation: scrollLineMove 2s linear infinite;
  }
  #wrapper #contents .mv .mv_bg .mv_bg_wrap:after {
    content: "";
    position: absolute;
    top: 0 !important;
    left: 0 !important;
    transform: none !important;
    width: 100vw;
    height: 100%;
    background: url(../images/index/mv_bg2_2.jpg) no-repeat center top/1280px auto;
  }
}/*# sourceMappingURL=common.css.map */