@charset "UTF-8";

/* CSS Document */
html,
body {
  width: 100%;
  margin: 0;
  padding: 0;
  background-color: #FFFFFF;
  font-size: 16px;
  line-height: 210%;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Medium", YuGothic, Hiragino Kaku Gothic ProN, Arial, Meiryo, sans-serif;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}

.wrapper {
  width: 100%;
  margin: 0;
  padding: 0;
}

img {
  width: 100%;
  margin: 0;
  padding: 0;
  line-height: 70%;
}

a {
  text-decoration: none;
  color: #FF5640;
}

a:hover {
  text-decoration: none !important;
}

.sp-no {
  display: inline;
}

.pc-no {
  display: none;
}

.ud-font {
  font-family: fot-udkakugo-large-pr6n, sans-serif;
  font-weight: 600;
  font-style: normal;
}

.en-font {
  font-family: futura-pt, sans-serif;
  font-weight: 400;
  font-style: normal;
}

/***HEADER***/
.header {
  width: 100%;
  margin: 0;
  padding: 0;
  position: relative;
  overflow: hidden;
}

.hdr-wrap {
  width: 98%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 0;
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/***HEADER-TOP***/
.top-hdr {
  width: 100%;
  margin: 0;
  padding: 5px 0;
  position: relative;
  overflow: hidden;
  border-bottom: solid 1px #C1C1C1;
  font-size: 90%;
}

.top-hdr .th-left {
  width: 40%;
  max-width: 610px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.top-hdr .th-left .docs-btn {
  width: 30%;
  background-color: #00AAE5;
  text-align: center;
}

.top-hdr .th-left .docs-btn a {
  width: 100%;
  padding: 3px 0;
  color: #FFFFFF;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

.top-hdr .th-left .docs-btn a::before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 20px;
  margin: 0 5px 0 0;
  background-image: url("/_themes/2021_css/images/hdr_docs-icon.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.top-hdr .th-left .mail-btn {
  width: 10%;
  max-width: 40px;
  background-color: #005AA9;
  text-align: center;
}

.top-hdr .th-left .mail-btn img {
  width: 50%;
  margin: 0 auto;
}

.top-hdr .th-left .mail-btn a {
  width: 100%;
  display: block;
  padding: 3px 0;
}

.top-hdr .th-left ul.th-sub-linklist {
  width: 60%;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  justify-content: space-between;
  font-size: 80%;
}

.top-hdr .th-left ul.th-sub-linklist li.th-sub-linkitem {
  width: 30%;
  text-align: center;
}

.top-hdr .th-left ul.th-sub-linklist li.th-sub-linkitem a {
  color: #000000;
}

.top-hdr .th-right {
  width: 55%;
  max-width: 970px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.top-hdr .th-right .moji {
  width: 25%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.top-hdr .th-right .moji .moji-label {
  width: 33%;
  font-size: 80%;
  font-weight: bold;
  text-align: center;
}

.top-hdr .th-right .moji ul.moji-list {
  width: 60%;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 90%;
  font-weight: bold;
  text-align: center;
}

.top-hdr .th-right .moji ul.moji-list li.moji-item {
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: solid 1px #000000;
  padding: 0;
}

.top-hdr .th-right .moji ul.moji-list #blue {
  background-color: #102368;
  color: #FFFFFF;
}

.top-hdr .th-right .moji ul.moji-list #black {
  background-color: #000000;
  color: #FFFFFF;
}

.top-hdr .th-right .eng-btn {
  width: 15%;
  text-align: center;
  font-size: 130%;
  font-weight: bold;
}

.top-hdr .th-right .eng-btn a {
  color: #000000;
  display: inline-flex;
  align-items: center;
}

.top-hdr .th-right .eng-btn a::before {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  margin: 0 5px 0 0;
  background-image: url("/_themes/2021_css/images/hdr_en-icon.png");
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}

.top-hdr .th-right .searchbox {
  width: 30%;
  border: solid 1px #707070;
  padding: 0 0 0 5px;
}

.top-hdr .th-right .searchbox input {
  width: 80%;
  border: none;
}

.top-hdr .th-right .searchbox .searchbtn {
  width: 35px;
  height: 35px;
  float: right;
  margin: 0 0 0 -1px;
  padding: 0;
  line-height: 100%;
  border: none;
  background-size: contain;
  background-image: url("/_themes/2021_css/images/hdr_search-icon.png");
  background-repeat: no-repeat;
}

/***HEADER-MIDDLE***/
.mid-hdr {
  width: 100%;
  margin: 0;
  padding: 10px 0;
  position: relative;
  overflow: hidden;
}

.mid-hdr .mh-left {
  width: 12%;
  line-height: 100%;
}

.mid-hdr .mh-left a {
  width: 100%;
  display: block;
}

.mid-hdr .mh-right {
  width: 70%;
}

.mid-hdr .mh-right ul.mnav-list {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 100%;
}

.mid-hdr .mh-right ul.mnav-list li.mnav-item {
  text-align: center;
  font-weight: bold;
  opacity: 1.0;
  transition: .2s ease-in-out;
}

.mid-hdr .mh-right ul.mnav-list li.mnav-item:hover {
  opacity: 0.5;
}

.mid-hdr .mh-right ul.mnav-list li.mnav-item a {
  color: #000000;
}

/***HEADER-BOTTOM***/
.bot-hdr {
  width: 98%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 0;
  position: relative;
  overflow: hidden;
  background-color: #005AA9;
  color: #FFFFFF;
}

.bot-hdr ul.bnav-list {
  width: 98%;
  margin: 0 auto;
  padding: 0;
  position: relative;
  overflow: hidden;
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.bot-hdr ul.bnav-list li.bnav-item {
  width: 15%;
  text-align: center;
  font-size: 100%;
  font-weight: bold;
  display: flex;
  justify-content: space-between;
  align-items: center;
  opacity: 1.0;
  transition: .2s ease-in-out;
}

.bot-hdr ul.bnav-list li.bnav-item:hover {
  opacity: 0.5;
}

.bot-hdr ul.bnav-list li.bnav-item::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 20px;
  background-color: #FFFFFF;
  margin: 0;
}

.bot-hdr ul.bnav-list li.bnav-item:last-child::after {
  display: none;
}

.bot-hdr ul.bnav-list li.bnav-item a {
  width: 100%;
  display: block;
  color: #FFFFFF;
  padding: 15px 0;
}

/***MAIN***/
.main {
  width: 100%;
  margin: 0;
  padding: 0;
  position: relative;
  overflow: hidden;
}

section.main-sec {
  width: 98%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 0;
  position: relative;
  overflow: hidden;
}

.wrap {
  width: 98%;
  margin: 0 auto;
  padding: 100px 0;
  position: relative;
  overflow: hidden;
}

.flex-wrap {
  display: flex;
  justify-content: space-between;
}

.pagetop {
  width: 5%;
  max-width: 50px;
  position: fixed;
  right: 0;
  bottom: 445px;
  z-index: 10;
  line-height: 0%;
  opacity: 1.0;
  transition: .2s ease-in-out;
}

.pagetop:hover {
  opacity: 0.5;
}

.sticky {
  position: fixed;
  bottom: 10px;
}

/***FOOTER***/
.footer {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 0;
  position: relative;
  overflow: hidden;
}

.footer .ftr-bk {
  width: 100%;
  margin: 0;
  padding: 40px 0;
  position: relative;
  overflow: hidden;
  background-image: url("/_themes/2021_css/images/ftr_bk.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.ftr-wrap {
  width: 98%;
  margin: 0 auto;
  padding: 0;
  position: relative;
  overflow: hidden;
}

ul.ftr-link-list {
  width: 80%;
  max-width: 1000px;
  margin: 0 auto 60px;
  padding: 0;
  position: relative;
  overflow: hidden;
  list-style: none;
  display: flex;
  justify-content: space-between;
}

ul.ftr-link-list li.ftr-link-item {
  width: 20%;
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
}

ul.ftr-link-list li.ftr-link-item::after {
  content: "";
  width: 1px;
  height: 25px;
  background-color: #FFFFFF;
  display: block;
}

ul.ftr-link-list li.ftr-link-item:first-child::before {
  content: "";
  width: 1px;
  height: 25px;
  background-color: #FFFFFF;
  display: block;
}

ul.ftr-link-list li.ftr-link-item a {
  display: block;
  margin: 0 auto;
  color: #FFFFFF;
}

.ftr-logo {
  width: 50%;
  max-width: 200px;
  margin: 0 auto;
  padding: 0;
  position: relative;
  overflow: hidden;
}

.ftr-logo-sub {
  width: 100%;
  margin: 0 0 20px;
  padding: 0;
  position: relative;
  overflow: hidden;
  text-align: center;
  font-size: 140%;
  font-weight: bold;
  color: #FFFFFF;
}

ul.ftr-campus-list {
  width: 100%;
  margin: 0 0 40px;
  padding: 0;
  position: relative;
  overflow: hidden;
  list-style: none;
  text-align: center;
  color: #FFFFFF;
  font-size: 120%;
}

ul.ftr-campus-list li.ftr-campus-item {
  margin: 0 0 5px
}

ul.ftr-icon-list {
  width: 50%;
  max-width: 100px;
  margin: 0 auto;
  padding: 0;
  position: relative;
  overflow: hidden;
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

ul.ftr-icon-list li.ftr-icon-item {
  width: 25%;
}

.copyright {
  width: 100%;
  margin: 0;
  padding: 2px 0;
  position: relative;
  overflow: hidden;
  text-align: center;
  font-size: 90%;
  color: #005AA9;
  background-color: #FFFFFF;
}