@charset "utf-8";

@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

/*簡体字*/
/*@import url(https://fonts.googleapis.com/earlyaccess/notosanssc.css);*/

/*繁体字*/
/*@import url(https://fonts.googleapis.com/earlyaccess/notosanstc.css);*/

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,
p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,
dfn,em,font,img,ins,kbd,q,s,samp,small,strike,tt,var,
dl,dt,dd,ol,ul,li,fieldset,form,glabel,legend,input {
  margin: 0;
  padding: 0;
  border: 0;
  /*outline: 0;*/
  font-weight: inherit;
  font-style: inherit;
  vertical-align: baseline;
  -webkit-font-smoothing: antialiased;
}
/*
:focus {
  outline: 0;
}
*/
.cp-all > img[src$=".svg"] {
  width: 100%;
}
ol,
ul {
  list-style: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
}
blockquote,
q {
  quotes: "" "";
}
img {
  vertical-align: top;
  max-width: 100%;
  height: auto;
}
a {
  text-decoration: none;
  color: #333;
}
a:hover, a:active {
  text-decoration: underline;
}
main a {
  /* color: #009143; */
  color: #007536;
  word-break: break-all;
}
input:focus, textarea:focus {
  outline: none;
}
input[type=submit],
input[type=reset],
button{
  cursor: pointer;
}
input[type=radio], input[type=checkbox] {
  display: none;
}
input :not(#cypochiform) {
  -webkit-appearance: none;
}
table{
  border-collapse: collapse;
  border-spacing: 0;
}
strong {
  font-weight: 700;
}
*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
html{
  font-size: 62.5%;
  line-height: 1.6;
}
body{
  font-family: "Noto Sans Japanese", Helvetica, Arial, メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
  -webkit-text-size-adjust: 100%;
  /*font-size: 16px;*/
  font-size: 1.6rem;
  font-weight: 300;
  background: #fff;
  color: #222;
  overflow-x: hidden;
}

/*----------------------------------
繁体字
----------------------------------*/
body.chinese_t{
  /*font-family:"Microsoft JhengHei", "微軟正黑體", 'PMingLiU' , sans-serif;*/
  font-family: 'Noto Sans TC',"Microsoft JhengHei", "微軟正黑體", 'PMingLiU' , sans-serif;
}

/*----------------------------------
簡体字
----------------------------------*/
body.chinese_s{
  /*font-family:"Microsoft YaHei", "微软雅黑",'SimSun', sans-serif;*/
  font-family: 'Noto Sans SC',"Microsoft YaHei", "微软雅黑",'SimSun', sans-serif;
}

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
  overflow:hidden;
  font-size:0.1em;
  line-height:0;
}
.clearfix {
  min-height: 1px;
}
* html .clearfix {
  height: 1px;/*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

.content-sitemap {
  display:none;
}

.ryumin-l {
  font-family: Ryumin Light KL, serif;
}

.chinese_s .ryumin-l {
  font-family: source-han-serif-sc, serif;
  font-weight: 300;
  font-style: normal;
}

.chinese_t .ryumin-l {
  font-family: source-han-serif-tc, serif;
  font-weight: 300;
  font-style: normal;
}

.ryumin-r {
  font-family: Ryumin Regular KL, serif;
}

.chinese_s .ryumin-r {
  font-family: source-han-serif-sc, serif;
  font-weight: 400;
  font-style: normal;
}

.chinese_t .ryumin-r {
  font-family: source-han-serif-tc, serif;
  font-weight: 400;
  font-style: normal;
}

.ryumin-m {
  font-family: Ryumin Medium KL, serif;
}

.chinese_s .ryumin-m {
  font-family: source-han-serif-sc, serif;
  font-weight: 500;
  font-style: normal;
}

.chinese_t .ryumin-m {
  font-family: source-han-serif-tc, serif;
  font-weight: 500;
  font-style: normal;
}

.tb-sp-only {
    display: none;
}

@media screen and (max-width: 1259px) {
  header .pc-only {
      display: none !important;
  }
}

@media screen and (max-width: 1023px) {
  .pc-only:not(header) {
      display: none !important;
  }
  .tb-sp-only {
      display: block;
  }
}

.cp-all ul > li{
  position: relative;
  margin: 5px 0;
  line-height: 1.8;
  margin-left: 38px;
  list-style-type: disc;
}
.cp-all ul li li {
  list-style-type: circle;
}

/*
.cp-all ul > li{
  position: relative;
  margin: 5px 0;
  padding-left: 38px;
  text-indent: -38px;
  line-height: 1.8;
}
.cp-all ul > li::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin: -3px 8px 0 23px;
  background: #333;
  border-radius: 50%;
  vertical-align: middle;
}
*/
.cp-all ul > li > a {
  padding: 3px 0 3px 40px;
  margin-left: -40px;
  text-decoration: none;
}
.cp-all ul > li > a:hover{
  text-decoration: underline;
}
.cp-all ol{
  counter-reset: list-number;
}
.cp-all ol > li{
  margin: 5px 0;
  padding-left: 38px;
  text-indent: -38px;
  line-height: 1.8;
}
.cp-all ol > li::before {
  content: counter(list-number)".";
  counter-increment: list-number;
  display: inline-block;
  min-width: 33px;
  text-align: right;
  margin-right: 5px;
}
.cp-all ol > li > a{
  text-decoration: none;
}
.cp-all ol > li > a:hover{
  text-decoration: underline;
}
.cp-space-S{
  height: 30px;
}
.cp-space-M{
  height: 60px;
}
.cp-space-L{
  height: 90px;
}
.cp-wp.cp-all {
  background: #FAFAFA;
  border: none;
  padding: 25px;
}

.cp-solid {
  margin-bottom: 50px;
}

a[target="_blank"]::after {
  content: "";
  display: inline-block;
  width: 14px;
  min-width: 14px;
  height: 14px;
  margin-left: 6px;
  margin-right: 6px;
  background: url(/albums/abm00000249.svg) center center no-repeat;
  background-size: 13px 13px;
}

.indexmenu-lists a[target="_blank"]::after,
.main-menu-area a[target="_blank"]::after{
  background: url(/albums/abm00000347.svg) center center no-repeat;
}

.cp-button-col1.cp-all li,
.cp-button-col2.cp-all li,
.cp-button-col3.cp-all li,
.cp-button-col4.cp-all li {
  list-style-type:none;
}

.cp-button-col1 ul li a[target="_blank"]:hover::after,
.cp-button-col2 ul li a[target="_blank"]:hover::after,
.cp-button-col3 ul li a[target="_blank"]:hover::after,
.cp-button-col4 ul li a[target="_blank"]:hover::after {
  background: url(/albums/abm00000347.svg) center center no-repeat;
}
a[href*=".pdf"]::after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 18px;
  margin-top: 6px;
  margin-left: 6px;
  background: url(/albums/abm00000248.svg) center center no-repeat;
  background-size: 16px 18px;
  vertical-align: top;
}
.cp-button-col1 ul li a[href*=".pdf"]:hover::after,
.cp-button-col2 ul li a[href*=".pdf"]:hover::after,
.cp-button-col3 ul li a[href*=".pdf"]:hover::after,
.cp-button-col4 ul li a[href*=".pdf"]:hover::after {
  background: url(/albums/abm00000348.svg) center center no-repeat;
}
a[href*=".xls"]::after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 18px;
  margin-top: 6px;
  margin-left: 6px;
  background: url(/albums/abm00000250.svg) center center no-repeat;
  background-size: 16px 18px;
  vertical-align: top;
}
.cp-button-col1 ul li a[href*=".xls"]:hover::after,
.cp-button-col2 ul li a[href*=".xls"]:hover::after,
.cp-button-col3 ul li a[href*=".xls"]:hover::after,
.cp-button-col4 ul li a[href*=".xls"]:hover::after {
  background: url(/albums/abm00000350.svg) center center no-repeat;
}

a[href*=".doc"]::after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 18px;
  margin-top: 6px;
  margin-left: 6px;
  background: url(/albums/abm00000251.svg) center center no-repeat;
  background-size: 16px 18px;
  vertical-align: top;
}
.cp-button-col1 ul li a[href*=".doc"]:hover::after,
.cp-button-col2 ul li a[href*=".doc"]:hover::after,
.cp-button-col3 ul li a[href*=".doc"]:hover::after,
.cp-button-col4 ul li a[href*=".doc"]:hover::after {
  background: url(/albums/abm00000349.svg) center center no-repeat;
}

.cp-img-r.cp-all a[target="_blank"]::after,
.cp-img-c.cp-all a[target="_blank"]::after,
.cp-col-01 a[target*="_blank"]::after,
.cp-col-02 a[target*="_blank"]::after,
.cp-col-03 a[target*="_blank"]::after,
.cp-col-04 a[target*="_blank"]::after,
.cp-img-l.cp-all a[href*=".pdf"]::after,
.cp-img-r.cp-all a[href*=".pdf"]::after,
.cp-img-c.cp-all a[href*=".pdf"]::after,
.cp-col-01 a[href*=".pdf"]::after,
.cp-col-02 a[href*=".pdf"]::after,
.cp-col-03 a[href*=".pdf"]::after,
.cp-col-04 a[href*=".pdf"]::after,
.cp-img-l.cp-all a[href*=".doc"]::after,
.cp-img-r.cp-all a[href*=".doc"]::after,
.cp-img-c.cp-all a[href*=".doc"]::after,
.cp-col-01 a[href*=".doc"]::after,
.cp-col-02 a[href*=".doc"]::after,
.cp-col-03 a[href*=".doc"]::after,
.cp-col-04 a[href*=".doc"]::after,
.cp-img-l.cp-all a[href*=".xls"]::after,
.cp-img-r.cp-all a[href*=".xls"]::after,
.cp-img-c.cp-all a[href*=".xls"]::after,
.cp-col-01 a[href*=".xls"]::after,
.cp-col-02 a[href*=".xls"]::after,
.cp-col-03 a[href*=".xls"]::after,
.cp-col-04 a[href*=".xls"]::after {
  content: none;
  display: none;
}

/*----------------------------------
header
----------------------------------*/
header {
  position: fixed;
  top: 0;
  left:0;
  width: 100%;
  z-index: 200;
  background: #fff;
}

@media screen and (max-width: 1280px) {
  header.active {
    overflow-y: scroll;
    height:100% !important;
  }
  
  .uni-top header {
    background: transparent;
  }

  .uni-top header .sp-hdr .logo-area,
  .uni-top header .sp-hdr .search{
    display: none;
  }

  
}

@media screen and (max-width: 1280px) {
  .top header {
    display:none;
  }
}

header .inner{
  padding-left: 20px;
  position: absolute;
  z-index: 200;
  width: 100%;
  top: 0;
  left: 0;
  background: #fff;
}

@media screen and (max-width: 1480px) {
  header .inner{
    padding-left: 10px;
  }
}

.logo-area {
  width: 409px;
  display: flex;
  float: left;
  margin-top: 30px;
}

@media screen and (max-width: 1763px) {
  .pc-only .logo-area {
      width: 361px;
  }
}

@media screen and (max-width: 1480px) {
  .pc-only .logo-area {
      width: 284px;
      display: block;
  }
}

.logo {
  width: 69px;
  /*display: table-cell;
  vertical-align: middle;*/
}

@media screen and (max-width: 1480px) {
  header .pc-only .logo {
    width: 50px;
    float: left;
  }
}

.univ-name-wrap {
  /*width: 361px;*/
  width: 340px;
  padding-top: 12px;
  padding-left: 10px;
  /*display: table-cell;
  vertical-align: middle;*/
}

@media screen and (max-width: 1763px) {
  .univ-name-wrap {
    width: 292px;
  }
}

@media screen and (max-width: 1480px) {
  header .pc-only .univ-name-wrap {
    width: calc(100% - 65px);
    float: left;
    padding-top: 6px;
  }
}

.univ-name-wrap a, .univ-name-wrap a:hover {
    text-decoration: none;
}

a .univ-name,
a .univ-name-en{
  text-decoration: none !important;
}

a:hover .univ-name,
a:hover .univ-name-en{
  text-decoration: none !important;
}

.univ-name{
  font-size:3.24rem;
  line-height: 1;
  font-family: Ryumin Medium KL, serif;
}
/*.chinese_s .univ-name{
  font-family: source-han-serif-sc, serif;
  font-weight: 500;
  font-style: normal;
}
.chinese_t .univ-name{
  font-family: source-han-serif-tc, serif;
  font-weight: 500;
  font-style: normal;
}*/
.univ-name-en {
  font-size:1.2rem;
  font-family: Ryumin Medium KL, serif;
  margin-bottom: 5px;
}
/*.chinese_s .univ-name-en {
  font-family: source-han-serif-sc, serif;
  font-weight: 500;
  font-style: normal;
}
.chinese_t.univ-name-en {
  font-family: source-han-serif-tc, serif;
  font-weight: 500;
  font-style: normal;
}*/

.visitor-menu {
  display: flex;
  font-size:1.3rem;
}

@media screen and (max-width: 1763px) {
  .visitor-menu {
    font-size:1.1rem;
  }
}

@media screen and (max-width: 1480px) {
  .univ-name-wrap .visitor-menu{
    display: none;
  }
}

.univ-name-wrap + .visitor-menu {
  display: none;
}

@media screen and (max-width: 1480px) {
  .univ-name-wrap + .visitor-menu {
    display: flex;
    clear: both;
  }
}

@media screen and (max-width: 1259px) {
  .univ-name-wrap + .visitor-menu {
    display: none;
  }
}

.visitor-menu li a {
  color:#666;
}

.univ-name-wrap .visitor-menu li a:hover {
    text-decoration: underline !important;
}

.visitor-menu li:after{
  content: '│';
  margin-right: 2px;
  margin-left: 2px;
}
.visitor-menu li:nth-child(3) a::after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 11px;
  margin-left: 2px;
  background: url(/albums/abm00000422.svg) center center no-repeat;
  background-size: 12px 11px;
  vertical-align: middle;
}

.en-header .visitor-menu li:after,
.korean-header .visitor-menu li:after,
.chinese-s-header .visitor-menu li:after,
.chinese-t-header .visitor-menu li:after  {
  content: none;
  margin-right: 0;
  margin-left: 0;
}
.visitor-menu li:nth-child(4) {
  margin-right: 0;
  margin-left: 0;
}
.visitor-menu li:nth-child(4):after {
  content: none;
}

.hdr-menu-area {
  float: right;
  height: 140px;
  position: relative;
  width: calc(100% - 409px);
}

@media screen and (max-width: 1763px) {
  .hdr-menu-area {
    width: calc(100% - 361px);
  }
}

@media screen and (max-width: 1480px) {
  .hdr-menu-area {
    width: calc(100% - 284px);
  }
}

.gnav {
  margin-right: 440px;
  display: flex;
  justify-content: flex-end;
  width: calc(100% - 440px);
}

@media screen and (max-width: 1763px) {
  .gnav {
    margin-right: 396px;
    width: calc(100% - 396px);
  }
}

@media screen and (max-width: 1480px) {
  .gnav {
    margin-right: 320px;
    width: calc(100% - 320px);
  }
}

@media screen and (max-width: 1259px) {
    .gnav {
      display: none;
    }
}

.gnav li {
  float: left;
  margin-right: 4.0%;
  font-weight: 400;
  transition: 0.2s;
}

@media screen and (max-width: 1839px) {
  .gnav li {
  margin-right: 3.0%;
  }
}

@media screen and (max-width: 1763px) {
  .gnav li {
    font-size: 1.5rem;
    margin-right: 2.0%;
  }
}

@media screen and (max-width: 1480px) {
  .gnav li {
    font-size: 1.4rem;
    margin-right: 1.5%;
  }
}

.gnav.search-active li {
  display:none;
  opacity: 0;
  transition: 0.2s;
}

.gnav li.site-search-box {
  display:none;
  opacity: 0;
  width: 0px;
  margin-top: 55px;
  margin-right: 0;
  transition: 0.2s;
}

.gnav.search-active li.site-search-box {
  display:block;
  opacity: 1;
  width: 300px;
  position: relative;
}

.gnav.search-active li.site-search {
  display: block;
  opacity: 1;
}

.gnav li.site-search-box input {
  height: 36px;
  width: 300px;
  padding-left: 10px;
  padding-right: 10px;
}

.gnav li.site-search-box button {
  display: none;
}

.gnav li a{
  display: block;
  text-decoration: none;
  padding-top: 60px;
  padding-bottom: 50px;
  position: relative;
}
/*.gnav li a:hover:after,*/
.gnav li.about a.active:after,
.gnav li.university a.active:after,
.gnav li.campuslife a.active:after,
.gnav li.education a.active:after,
.gnav li.admission a.active:after,
.gnav li.news-all a.active:after,
.about .gnav li:nth-child(1) a:after,
.university .gnav li:nth-child(2) a:after,
.campuslife .gnav li:nth-child(3) a:after,
.education .gnav li:nth-child(4) a:after,
.admission .gnav li:nth-child(5) a:after,
.news-all .gnav li:nth-child(6) a:after{
  content: '';
  width: 40px;
  height: 2px;
  background: #006243;
  display: block;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  top: 30px;
}
.gnav li a:not(.site-search-box):hover:after {
  content: '';
  width: 40px;
  height: 2px;
  background: #006243;
  display: block;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  bottom:30px;
}
.gnav li a.has-icon.is-target:after,
.gnav li a.has-icon.is-target:hover:after{
  content: '';
  position: relative;
  top: 0;
  display: inline-block;
  margin-top: -5px;
  margin-left: 5px;
  margin-right: 5px;
  width: 13px;
  height: 13px;
  overflow: hidden;
  background: url(/albums/abm00000315.svg) no-repeat left top;
  vertical-align: middle;
  left: 5px;
  transform: translateX(-5px);
}

.gnav li.site-search {
    width: 36px;
    height: 36px;
    background: #006243;
    margin-right: 0;
    margin-top: 55px;
}

.gnav.search-active  li.site-search {
  background:#333;
}

.gnav li.site-search:hover:after {
    content: none;
}

.gnav li.site-search a{
    width: 36px;
    height: 36px;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    display: block;
    background: url(/albums/abm00000343.svg) no-repeat center center;
    background-size: 18px 18px;
    padding:0;
}
.sub-menu {
    width: 401px;
    position: absolute;
    top: 0;
    right: 0;
}

@media screen and (max-width: 1763px) {
  .sub-menu {
    width: 376px;
  }
}

@media screen and (max-width: 1480px) {
  .sub-menu {
    width: 300px;
  }
}

.sub-menu li.access,
.sub-menu li.request,
.sub-menu li.contact,
.sub-menu li.lang,
.sub-menu li.sub-menu-bt {
    width: 80px;
    float: left;
    border-left: 1px solid #CFCFCF;
    font-size: 1.2rem;
}


@media screen and (max-width: 1763px) {
  .sub-menu li.access,
  .sub-menu li.request,
  .sub-menu li.contact,
  .sub-menu li.lang,
  .sub-menu li.sub-menu-bt {
    width: 75px;
    font-size: 1.1rem;
  }
}

@media screen and (max-width: 1480px) {
  .sub-menu li.access,
  .sub-menu li.request,
  .sub-menu li.contact,
  .sub-menu li.lang,
  .sub-menu li.sub-menu-bt {
    width: 60px;
    font-size: 1.0rem;
    letter-spacing: -0.02rem;
  }
}

.sub-menu li.access a,
.sub-menu li.request a,
.sub-menu li.contact a,
.sub-menu li.lang .lang-inner a,
.sub-menu li.sub-menu-bt a {
  width: 100%;
  height: 140px;
  text-align: center;
  display: block;
  background: #F8F8F8;
  padding-top: 55px;
}

.sub-menu li.access a:hover,
.sub-menu li.request a:hover,
.sub-menu li.contact a:hover,
.sub-menu li.lang .lang-inner a:hover,
.sub-menu li.sub-menu-bt a:hover,
.sub-menu li.sub-menu-bt a.active,
.sub-menu li.lang .lang-inner a.active {
  text-decoration: none;
  background: #333333;
  color: #fff;
}

.sub-menu li a:hover{
  text-decoration: none;
  background: #333333;
  color: #fff;
}

.sub-menu li.access a:before {
    content: '';
    width: 22px;
    height: 27px;
    display: block;
    margin: 0 auto;
    background: url(/albums/abm00000317.svg) no-repeat center top;
}

.sub-menu li.access a:hover:before {
    content: '';
    width: 22px;
    height: 27px;
    display: block;
    margin: 0 auto;
    background: url(/albums/abm00000318.svg) no-repeat center top;
}

.sub-menu li.request a:before {
    content: '';
    width: 18px;
    height: 27px;
    display: block;
    margin: 0 auto;
    background: url(/albums/abm00000319.svg) no-repeat center center;
}

.sub-menu li.request a:hover:before {
    content: '';
    width: 18px;
    height: 27px;
    display: block;
    margin: 0 auto;
    background: url(/albums/abm00000320.svg) no-repeat center center;
}

.sub-menu li.contact a:before {
    content: '';
    width: 22px;
    height: 27px;
    display: block;
    margin: 0 auto;
    background: url(/albums/abm00000321.svg) no-repeat center center;
}

.sub-menu li.contact a:hover:before {
    content: '';
    width: 22px;
    height: 27px;
    display: block;
    margin: 0 auto;
    background: url(/albums/abm00000322.svg) no-repeat center center;
}

.lang-inner {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 100;
}

.sub-menu li.lang a .lang-icon {
  display: block;
  font-size: 2.1rem;
  line-height: 1;
  font-weight: 700;
  color: #006243;
  position: relative;
  padding-top: 0px;
  margin-bottom: 7px;
}
.sub-menu li.lang a.active .lang-icon,
.sub-menu li.lang a:hover .lang-icon {
  color: #fff;
}

.sub-menu li.lang a .lang-icon.en,
.sub-menu li.lang a .lang-icon.ch,
.sub-menu li.lang a .lang-icon.ch-big5,
.sub-menu li.lang a .lang-icon.ko,
.sptop-sub-menu li.lang a .lang-icon.en,
.sptop-sub-menu li.lang a .lang-icon.ch,
.sptop-sub-menu li.lang a .lang-icon.ch-big5,
.sptop-sub-menu li.lang a .lang-icon.ko {
  display:none;
}

.sub-menu li.sub-menu-bt {
  position: relative;
}
.sub-menu li.sub-menu-bt a span:not(.bt-name) {
  position: absolute;
  top: 50%;
  width: 30px;
  height: 3px;
  background: #006243;
  display: block;
  margin: 0 30%;
  transition: 0.2s;
}
.sub-menu li.sub-menu-bt a.active span:not(.bt-name) {
  background: #fff;
}
.sub-menu li.sub-menu-bt a:hover span:not(.bt-name) {
  background: #fff;
}

.sub-menu li.sub-menu-bt a span:last-child {
  margin-bottom: 0;
}

.sub-menu li.sub-menu-bt a span:nth-child(1) {
  margin-top: -12px;
}

.sub-menu li.sub-menu-bt a.active span:nth-child(1) {
  margin-top: -1px;
  transform: rotate(135deg);
}

.sub-menu li.sub-menu-bt a span:nth-child(2) {
  margin-top: 12px;
}

.sub-menu li.sub-menu-bt a.active span:nth-child(2) {
  opacity: 0;
}

.sub-menu li.sub-menu-bt a span:nth-child(3) {

}

.sub-menu li.sub-menu-bt a.active span:nth-child(3) {
  margin-top: -1px;
  transform: rotate(-135deg);
}

.sub-menu li.sub-menu-bt a span.bt-name {
  position: absolute;
  left: 50%;
  top: 93px;
  transform: translateX(-50%);
}

.sp-hdr {
    display: none;
}
@media screen and (max-width: 1280px) {
  .sp-hdr {
    display: flex;
    height: 60px;
  }

  .sp-hdr.active {
      background: #006243;
  }
    
  .sp-hdr .logo-area {
      width: auto;
      float:none;
      margin-top: 10px;
      margin-left: 20px;
      margin-bottom: 1px;
    }
    
    .sp-hdr .logo-area .logo {
      width: 40px;
    }
    
    /*.sp-hdr .logo-area .logo img {
      margin-top: -5px;
    }*/
    
    .sp-hdr.active .logo-area{
        display: none;
    }
    
    .sp-hdr .univ-name-wrap {
      width: auto;
      padding-top: 0px;
    }

    .sp-hdr.active .univ-name-wrap {
        display: none;
    }
    
    .sp-hdr .logo-area .univ-name{
      font-size: 2.7rem;
    }

    .sp-hdr .logo-area .univ-name-en{
      font-size: 1.0rem;
      margin-bottom: 0;
    }
    
    .sp-hdr .search-menu-area .search{
      width: 50px;
      height: 60px;
      right: 60px;
      position: absolute;
      cursor: pointer;
    }
    
    .sp-hdr.active .search-menu-area .search{
        display: none;
    }
    
   .sp-hdr .search-menu-area .icons-sp-search {
       content: '';
       width:50px;
       height: 60px;
       display: block;
       background: url(/albums/abm00000333.svg) no-repeat center center;
       background-size: 25px;
    }
    
}

.main-menu-bt {
  display: none;
}

@media screen and (max-width: 1280px) {
  .main-menu-bt {
    display: block;
    width: 60px;
    height: 60px;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 10;
  }

  .main-menu-bt a{
      display: block;
      background: #006243;
      width: 100%;
      height: 100%;
  }
    
  .main-menu-bt a.active{
      background: #333333;
  }
    
  .main-menu-bt span {
    position: absolute;
    top: 50%;
    display: block;
    width: 40%;
    height: 3px;
    margin: 0 30%;
    background: #fff;
    transition: 0.2s;
  }
    
    .main-menu-bt span:nth-child(1) {
      margin-top: -8px;
    }
    
    .main-menu-bt a.active span:nth-child(1) {
      margin-top: -1px;
      transform: rotate(135deg);
    }
    
    .main-menu-bt span:nth-child(2) {
      margin-top: -1px;
    }

    .main-menu-bt a.active span:nth-child(2) {
      opacity: 0;
    }
    
    .main-menu-bt span:nth-child(3) {
      margin-top: 6px;
    }

    .main-menu-bt a.active span:nth-child(3) {
      margin-top: -1px;
      transform: rotate(-135deg);
    }

    .top .main-menu-area {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        background: #006243;
        z-index: 5;
    }

    .main-menu-area {
        position: absolute;
        left: 0;
        top: 60px;
        width: 100%;
        /*background: #006243;*/
        z-index: 5;
    }
    
    .main-menu-area a {
      color: #fff;
    }
    
    .main-menu-area.active {
        display: block;
    }
    
    /*.top .main-menu-area .logo-area{
        width: auto;
        color: #fff;
        float: none;
        margin-bottom: 20px;
        margin-left: 20px;
        margin-right: 20px;
        margin-top: 60px;
    }*/
    
    .main-menu-area .logo-area{
        width: auto;
        color: #fff;
        float: none;
        margin-bottom: 20px;
        margin-left: 20px;
        margin-right: 20px;
        margin-top: 20px;
    }
    
    .main-menu-area .logo-area .logo{
        width: 40px;
    }

    .main-menu-area .logo-area .univ-name-wrap{
        width: auto;
        padding-top: 0px;
    }

    .main-menu-area .logo-area .univ-name-wrap .univ-name{
        font-size: 2.7rem;
    }

    .main-menu-area .logo-area .univ-name-wrap .univ-name-en{
        font-size: 1.0rem;
    }

    .main-menu-area .visitor-menu {
        display: block;
        font-size: 1.4rem;
        margin-left: 20px;
        margin-right: 20px;
    }
    
    .main-menu-area .visitor-menu li {
        margin-bottom: 8px;
    }

    .main-menu-area .visitor-menu li:last-child {
        margin-bottom: 12px;
    }
    
    .main-menu-area .visitor-menu li:after {
        content: none;
    }
    
    .main-menu-area .visitor-menu li a {
        color: #fff;
        display: block;
        position: relative;
    }
    
    .main-menu-area .visitor-menu li a:before,
    .sp-global .link-menu-add ul li a span.button:after {
        content: "";
        display: block;
        position: absolute;
        width: 9px;
        height: 9px;
        border-bottom: 2px solid #fff;
        border-right: 2px solid #fff;
        transform: rotate(-42deg);
        right: 10px;
        top: 50%;
        margin-top: -5px;
    }
    
  .main-menu-area .sp-site-search {
      padding: 0;
      background: none;
      border-bottom:0 none;
      margin-bottom: 40px;
      margin-left: 20px;
      margin-right: 20px;
  }

  .sp-site-search form{
      display: flex;
  }
  
  .sp-site-search label{
    width: calc(100% - 30px);
  }

  .sp-site-search input{
    width: 100%;
    height: 40px;
    padding-left: 10px;
    padding-right: 10px;
    border-radius: 0px;
    -webkit-appearance: none;
    font-family: "Noto Sans Japanese", Helvetica, Arial, メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
    background-color:#fff;  
    font-size:1.6rem;  
  }
  
  .sp-site-search input[type="text"]:focus{
    animation: none;
    background-color:#fff; 
  }

  .sp-site-search button{
    width: 30px;
    height: 40px;
    background-color: transparent;
    border: 0 none;
  }

  .main-menu-area .sp-site-search button{
    width: 40px;
    height: 40px;
    background-color: #333;
    border: 0 none;
  }
    
  .sp-site-search button i{
    display: block;
  }
    
   .sp-site-search button i:after{
       content: '';
       background: url(/albums/abm00000343.svg) no-repeat center center;
        width: 18px;
        height: 18px;
        display: block;
        margin: 0 auto;
        background-size: 18px 18px;
    }

/*.sptop-sub-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .sptop-sub-menu li{
    width: 25%;
    color: #fff;
    border-right: 1px solid #fff;
    text-align: center;
  }
*/
  .main-menu-area .sptop-sub-menu li{
    border-right: 1px solid rgba(0,0,0,0.10);
  }
    
    .sptop-sub-menu li:last-child{
      border-right: 0px none;
    }
    
    .sptop-sub-menu li a{
      display: block;
      height: 100%;
      color:#fff;
      background: #006243;
      padding: 10px 5px;
      font-size: 1.3rem;
    }
    
    .sptop-sub-menu li a:hover{
      text-decoration: none;  
    }
    
    .sptop-sub-menu li.access a:before{
      content: '';
      width: 22px;
      height: 27px;
      display: block;
      margin: 0 auto;
      background: url(../img/access-white.svg) no-repeat center top;
    }
    
    .sptop-sub-menu li.request a:before {
      content: '';
      width: 18px;
      height: 27px;
      display: block;
      margin: 0 auto;
      background: url(../img/request-white.svg) no-repeat center center;
    }
    
    .sptop-sub-menu li.contact a:before {
      content: '';
      width: 22px;
      height: 27px;
      display: block;
      margin: 0 auto;
      background: url(../img/contact-white.svg) no-repeat center center;
    }
    
    .sptop-sub-menu li.lang a .lang-icon {
      display: block;
      font-size: 2.1rem;
      line-height: 1;
      font-weight: 700;
      color: #fff;
      padding-top: 3px;
      padding-bottom: 2px;
    }
/*}*/

 .sptop-sub-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 67px;
    overflow: hidden;
  }
  
  .sptop-sub-menu.active {
    overflow: inherit;
  }

  .sptop-sub-menu li.access,
  .sptop-sub-menu li.request,
  .sptop-sub-menu li.contact,
  .sptop-sub-menu li.lang{
    width: 25%;
    color: #fff;
    border-right: 1px solid #66A18E;
    text-align: center;
    position: relative;
   }

  .main-menu-area .sptop-sub-menu li{
    border-right: 1px solid #004b33;
  }
    
  .sptop-sub-menu li:last-child{
    border-right: 0px none;
  }
    
    .sptop-sub-menu li a{
      display: block;
      height: 100%;
      color:#fff;
      background: #006243;
      padding: 10px 5px;
      font-size: 1.3rem;
    }
    
    .sptop-sub-menu li.access a:before{
      content: '';
      width: 22px;
      height: 27px;
      display: block;
      margin: 0 auto;
      background: url(/albums/abm00000318.svg) no-repeat center top;
    }
    
    .sptop-sub-menu li.request a:before {
      content: '';
      width: 18px;
      height: 27px;
      display: block;
      margin: 0 auto;
      background: url(/albums/abm00000320.svg) no-repeat center center;
    }
    
    .sptop-sub-menu li.contact a:before {
      content: '';
      width: 22px;
      height: 27px;
      display: block;
      margin: 0 auto;
      background: url(/albums/abm00000322.svg) no-repeat center center;
    }
    
    .sptop-sub-menu li.lang a .lang-icon {
      display: block;
      font-size: 2.1rem;
      line-height: 1;
      font-weight: 700;
      color: #fff;
      padding-top: 3px;
      padding-bottom: 2px;
    }


    .sptop-sub-menu li.lang .language-list {
    }
    
    .sptop-sub-menu li.lang .sp-sub-menu-lang-inner {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      z-index: 20;
      height: 67px;
    }
    
    .sptop-sub-menu li.lang .language-list {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      z-index: 10;
      transition: transform 0.4s;
      transform: translateY(0%);
    }
    
    .sptop-sub-menu li.lang .language-list.active {
      transform: translateY(-100%);
    }
    
    .sptop-sub-menu li.lang .language-list ul li {
      width: 100%;
    }
    
    .sptop-sub-menu li.lang .language-list ul li.jp {
      display:none;
    }
    
    .en .sptop-sub-menu li.lang .language-list ul li.jp,
    .ko .sptop-sub-menu li.lang .language-list ul li.jp,
    .chinese_s .sptop-sub-menu li.lang .language-list ul li.jp,
    .chinese_t .sptop-sub-menu li.lang .language-list ul li.jp {
      display:block;
    }

    .en .sptop-sub-menu li.lang .language-list ul li.en,
    .en .sptop-sub-menu li.lang .sp-sub-menu-lang-inner .jp {
      display:none;
    }
    
    .en .sptop-sub-menu li.lang .sp-sub-menu-lang-inner .en {
      display:block;
    }

    .ko .sptop-sub-menu li.lang .language-list ul li.ko,
    .ko .sptop-sub-menu li.lang .sp-sub-menu-lang-inner .jp {
      display:none;
    }
    
    .ko .sptop-sub-menu li.lang .sp-sub-menu-lang-inner .ko {
      display:block;
    }

    .chinese_s .sptop-sub-menu li.lang .language-list ul li.cn,
    .chinese_s .sptop-sub-menu li.lang .sp-sub-menu-lang-inner .jp {
      display:none;
    }
    
    .chinese_s .sptop-sub-menu li.lang .sp-sub-menu-lang-inner .ch {
      display:block;
    }
    
    .chinese_t .sptop-sub-menu li.lang .language-list ul li.cn-big,
    .chinese_t .sptop-sub-menu li.lang .sp-sub-menu-lang-inner .jp {
      display:none;
    }
    
    .chinese_t .sptop-sub-menu li.lang .sp-sub-menu-lang-inner .ch-big5 {
      display:block;
    }
    
    .sptop-sub-menu li.lang .language-list ul li a {
      background:#333;
    }
    
}



/*----------------------------------
スマホグローバルメニュー
----------------------------------*/
.sp-global {
  display: none;
}

@media screen and (max-width: 1280px) {
  .sp-global {
    display: block;
    border-top: 1px #004b33 solid;
    background: #006243;
  }
  .sp-global a{
    color:#fff;
    display: block;
  }
  
  .sp-global > ul > li {
    display:none;
  }
  
  .sp-global ul li.about,
  .sp-global ul li.university,
  .sp-global ul li.campuslife,
  .sp-global ul li.education,
  .sp-global ul li.admission,
  .sp-global ul li.news-all {
    display:block;
  }

  .en .sp-global ul li.about,
  .en .sp-global ul li.university,
  .en .sp-global ul li.campuslife,
  .en .sp-global ul li.education,
  .en .sp-global ul li.admission,
  .en .sp-global ul li.news-all,
  .chinese_s .sp-global ul li.about,
  .chinese_s .sp-global ul li.university,
  .chinese_s .sp-global ul li.campuslife,
  .chinese_s .sp-global ul li.education,
  .chinese_s .sp-global ul li.admission,
  .chinese_s .sp-global ul li.news-all,
  .chinese_t .sp-global ul li.about,
  .chinese_t .sp-global ul li.university,
  .chinese_t .sp-global ul li.campuslife,
  .chinese_t .sp-global ul li.education,
  .chinese_t .sp-global ul li.admission,
  .chinese_t .sp-global ul li.news-all,
  .ko .sp-global ul li.about,
  .ko .sp-global ul li.university,
  .ko .sp-global ul li.campuslife,
  .ko .sp-global ul li.education,
  .ko .sp-global ul li.admission,
  .ko .sp-global ul li.news-all {
    display:none;
  }
  
  .en .sp-global ul li.english {
    display:block;
  }
  
  .en .sp-global ul li.english a.a2.index {
    display:none;
  }

  .en .sp-global ul li.english ul.lv2 {
    display:block;
  }

  .ko .sp-global ul li.korean {
    display:block;
  }

  .ko .sp-global ul li.korean {
    display:block;
  }
  
  .ko .sp-global ul li.korean a.a2.index {
    display:none;
  }

  .ko .sp-global ul li.korean ul.lv2 {
    display:block;
  }
  
  .chinese_s .sp-global ul li.chinese_s {
    display:block;
  }

  .chinese_s .sp-global ul li.chinese_s {
    display:block;
  }
  
  .chinese_s .sp-global ul li.chinese_s a.a2.index {
    display:none;
  }

  .chinese_s .sp-global ul li.chinese_s ul.lv2 {
    display:block;
  }
  
  .chinese_t .sp-global ul li.chinese_t {
    display:block;
  }

  .chinese_t .sp-global ul li.chinese_t {
    display:block;
  }
  
  .chinese_t .sp-global ul li.chinese_t a.a2.index {
    display:none;
  }

  .chinese_t .sp-global ul li.chinese_t ul.lv2 {
    display:block;
  }
  
  .sp-global ul li.li2 a.index,
  .sp-global .link-menu-add ul li a {
        background: #00583c;
        display: block;
        border-bottom: 1px #004b33 solid;
        padding-left: 20px;
        padding-right: 20px;
        padding-top: 10px;
        padding-bottom: 10px;
        font-weight: 700;
        position: relative;
    }
    
  .sp-global ul li ul li.li3 a.index {
        background: #006243;
        position: relative;
        font-weight: 350;
    }

    .sp-global ul li.li2 > ul.lv2 {
        display: none;
    }  
    
    .sp-global a.index span.button,
    .sp-global .link-menu-add ul li a span.button {
        position: absolute;
        width: 30px;
        height: 30px;
        right: 15px;
        top: 11px;
    }
    
    .sp-global a.index span.button:before {
      content: "";
      position: absolute;
      top: 13px;
      right: 9px;
      width: 12px;
      height: 2px;
      background: #fff;
    }

    .sp-global a.index span.button.button:after {
      content: "";
      position: absolute;
      top: 8px;
      right: 14px;
      width: 2px;
      height: 12px;
      background: #fff;
      transition: 0.2s;
    }
    
    .sp-global a.index.active span.button:after {
        opacity: 0;
    }
    
    .sp-global ul li.li2 ul.lv2 li.li2 a,
    .sp-global ul li.li2 ul.lv2 li.li3 a{
        padding-left: 35px;
        padding-right: 20px;
        border-bottom: 1px #004b33 solid;
    }

    .en .sp-global ul li.li2 ul.lv2 li.li2 a,
    .en .sp-global ul li.li2 ul.lv2 li.li3 a,
    .ko .sp-global ul li.li2 ul.lv2 li.li2 a,
    .ko .sp-global ul li.li2 ul.lv2 li.li3 a,
    .chinese_s .sp-global ul li.li2 ul.lv2 li.li2 a,
    .chinese_s .sp-global ul li.li2 ul.lv2 li.li3 a,
    .chinese_t .sp-global ul li.li2 ul.lv2 li.li2 a,
    .chinese_t .sp-global ul li.li2 ul.lv2 li.li3 a{
        padding-left: 20px;
    }
    
    .sp-global ul li.li2 ul.lv2 li.li2 a,
    .sp-global ul li.li2 ul.lv2 li.li3 a{
        padding-top: 10px;
        padding-bottom: 10px;
        font-weight: 350;
    }

    .sp-global ul li.li2 ul.lv2 li.li3 a.index.head {
        display: block;
        position: relative;
    }
    
    .sp-global ul > ul.lv2 li.li3 a.index.head span.button {
        position: absolute;
        width: 20px;
        height: 20px;
        right: 20px;
        top: 18px;
    }
    
    .sp-global ul > ul.lv2 li.li3 a.index.head .button:before {
      content: "";
      position: absolute;
      top: 5px;
      right: 0;
      width: 12px;
      height: 2px;
      background: #fff;
    }

    .sp-global ul > ul.lv2 li.li3 a.index.head span.button:after {
      content: "";
      position: absolute;
      top: 0px;
      right: 5px;
      width: 2px;
      height: 12px;
      background: #fff;
      transition: 0.2s;
    }
    
    .sp-global ul > ul.lv2 li.li3 a.index.head.active-nav span.button:after {
        opacity: 0;
    }
    
    .sp-global .lv3-wrap {
        display: none;
    }

    .sp-global ul li.li2 ul.lv2 li.li3 ul.lv3 li.li3 a{
        padding-left: 55px;
        border-bottom: 1px #004b33 solid;
    }
    
}
/*----------------------------------
spハンバガーメニュー
----------------------------------*/
.main-menu-area {
  display: none;
}

/*1005*/
@media screen and (max-width: 1259px) {
  .main-menu-bt {
    display: block;
    width: 60px;
    height: 60px;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1001;
    opacity: 1.0;
    transition: 0.1s;
  }

  .main-menu-bt a{
      display: block;
      background: #006243;
      width: 100%;
      height: 100%;
  }

  .main-menu-bt a.active{
      background: #333333;
  }

  .main-menu-bt span{
    position: absolute;
    top: 50%;
    display: block;
    width: 40%;
    height: 3px;
    margin: 0 30%;
    background: #fff;
    transition: 0.2s;
  }

    .main-menu-bt span:nth-child(1) {
      margin-top: -8px;
    }

    .main-menu-bt a.active span:nth-child(1) {
      margin-top: -1px;
      transform: rotate(135deg);
    }

    .main-menu-bt span:nth-child(2) {
      margin-top: -1px;
    }

    .main-menu-bt a.active span:nth-child(2) {
      opacity: 0;
    }

    .main-menu-bt span:nth-child(3) {
      margin-top: 6px;
    }

    .main-menu-bt a.active span:nth-child(3) {
      margin-top: -1px;
      transform: rotate(-135deg);
    }

/*1005*/
    .top .main-menu-area {
      /*position: absolute;*/
      position: fixed;
      left: 0;
      top: 0;
      width: 100%;
      background: #006243;
      z-index: 1000;
      height: 100%;
      max-height: 100%;
      overflow-y:scroll;
    }

    .main-menu-area {
        position: absolute;
        left: 0;
        top: 0px;
        width: 100%;
        /*background: #006243;*/
        z-index: 5;
    }

    .main-menu-area.active {
      display: block;
    }
    
    .main-menu-inner {
      background: #006243;
    }
    
    /*.top .main-menu-area .logo-area{
        width: auto;
        color: #fff;
        float: none;
        margin-bottom: 20px;
        margin-left: 20px;
        margin-right: 20px;
        margin-top: 60px;
    }*/
    
    .main-menu-area .logo-area{
        width: auto;
        color: #fff;
        float: none;
        margin-bottom: 20px;
        margin-left: 20px;
        margin-right: 20px;
        margin-top: 10px;
    }
    
    .main-menu-area .logo-area .logo{
        width: 40px;
    }

    .main-menu-area .logo-area .univ-name-wrap{
        width: auto;
        padding-top: 0px;
    }

    .main-menu-area .logo-area .univ-name-wrap .univ-name{
        font-size: 2.7rem;
    }

    .main-menu-area .logo-area .univ-name-wrap .univ-name-en{
        font-size: 1.0rem;
    }

    .main-menu-area .visitor-menu {
        display: block;
        font-size: 1.4rem;
        margin-left: 20px;
        margin-right: 20px;
        padding-bottom: 12px;
    }
    
    .main-menu-area .visitor-menu li {
        margin-bottom: 8px;
    }

    .main-menu-area .visitor-menu li:last-child {
        margin-bottom: 0px;
    }

    .main-menu-area .visitor-menu li:after {
        content: none;
    }

    .main-menu-area .visitor-menu li a {
        color: #fff;
        display: block;
        position: relative;
    }

    .main-menu-area .visitor-menu li a:before {
        content: "";
        display: block;
        position: absolute;
        width: 9px;
        height: 9px;
        border-bottom: 2px solid #fff;
        border-right: 2px solid #fff;
        transform: rotate(-42deg);
        right: 10px;
        top: 50%;
        margin-top: -5px;
    }
    .main-menu-area .visitor-menu li:nth-child(3) a::after {
        content: "";
        display: inline-block;
        width: 12px;
        height: 11px;
        margin-left: 4px;
        margin-top: -2px;
        background: url(/albums/abm00000423.svg) center center no-repeat;
        background-size: 12px 11px;
        vertical-align: middle;
    }

}


/*----------------------------------
main
----------------------------------*/

main {
  display: block;
  line-height: 2;
  position: relative;
  padding-top: 140px;
}

@media screen and (max-width: 1259px) {
  main {
    padding-top: 60px;
  }
  .uni-top main,
  .top main {
    padding-top: 0px;
  }

}

/*----------------------------------
footer
----------------------------------*/
footer {
  background: #006243;
  color:#fff;
  font-size: 1.3rem;
  text-align: center;
  padding:40px 0;
}

footer a{
  color:#fff;
}

footer .logo-area {
  width: 277px;
  display: table;
  float: none;
  margin-top: 0;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 30px;
}

@media screen and (max-width: 1023px) {
  footer .logo-area {
    width: 100%;
    display: block;
  }
}

footer .logo {
  width: 69px;
  display: table-cell;
  vertical-align: middle;
}

@media screen and (max-width: 1023px) {
  footer .logo {
    width: 100%;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10px;
  }
}

footer .logo img{
  width: 69px;
}

footer .univ-name-wrap {
  width: 196px;
  padding-left: 10px;
  display: table-cell;
  vertical-align: middle;
}

@media screen and (max-width: 1023px) {
  footer .univ-name-wrap {
    width: 100%;
    padding-left: 0;
    display: block;
  }
}

footer .univ-name{
  font-size:3.21rem;
  line-height: 1;
  font-family: Ryumin Medium KL, serif;
}

.chinese_s footer .univ-name{
}

.chinese_t footer .univ-name{
}

@media screen and (max-width: 1023px) {
  footer .univ-name{
    margin-bottom: 10px;
  }
}

footer .address ul {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 10px;
  flex-wrap: wrap;
}

@media screen and (max-width: 1023px) {
  footer .address ul {
    margin-bottom: 0px;
  }
}

footer .address ul li{
  margin-right: 13px;
}

@media screen and (max-width: 1023px) {
  footer .address ul li:first-child{
    width: 100%;
    margin-right: 0;
  }
}

footer .text-link ul {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 10px;
}

@media screen and (max-width: 1023px) {
  footer .text-link ul {
    margin-bottom: 20px;
  }
}

footer .text-link ul li{
  margin-right: 13px;
}

.copylight {
  text-align: center;
}

@media screen and (max-width: 1023px) {
  .copylight {
    font-size: 1.1rem;
  }
}

.indexmenu-lists {
  position: absolute;
  width: 100%;
  left: 0;
  top: 140px;
  z-index: 145;
  padding: 40px 0;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 400;
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  -o-transition: transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
      transform: translateY(-100%);
  background-color: #006243;
  color: #fff;
  overflow-y: scroll;
  height: calc(100vh - 140px);
  overflow-x: hidden;
}

@media screen and (max-width: 1259px) {
  .indexmenu-lists {
    display: none;
  }
}

.indexmenu-lists.active {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
      transform: translateY(0);
}

.indexmenu-lists a{
  color: #fff;
}

.indexmenu-lists ul.lv1 {
  max-width: 1520px;
  margin: 0 auto !important;
}

.indexmenu-lists .link-menu-add ul {
  max-width: 1520px;
  margin: 0 auto !important;
}

@media screen and (max-width: 1520px) {
  .indexmenu-lists ul.lv1 {
    padding-left: 20px;
    padding-right: 20px;
  }
  .indexmenu-lists .link-menu-add ul {
    width: 100%;
    max-width: 1520px;
    margin: 0 20px 40px 20px !important;
  }
}

.indexmenu-lists ul.lv1 li.li1{
  display:none;  
}

.indexmenu-lists ul.lv1 > li {
  display:none;
}

.indexmenu-lists ul.lv1 > li.li2.about,
.indexmenu-lists ul.lv1 > li.li2.university,
.indexmenu-lists ul.lv1 > li.li2.campuslife,
.indexmenu-lists ul.lv1 > li.li2.education,
.indexmenu-lists ul.lv1 > li.li2.admission,
.indexmenu-lists ul.lv1 > li.li2.news-all {
  display:block;
  padding-bottom:20px;
}

.en .indexmenu-lists ul.lv1 > li.li2.about,
.en .indexmenu-lists ul.lv1 > li.li2.university,
.en .indexmenu-lists ul.lv1 > li.li2.campuslife,
.en .indexmenu-lists ul.lv1 > li.li2.education,
.en .indexmenu-lists ul.lv1 > li.li2.admission,
.en .indexmenu-lists ul.lv1 > li.li2.news-all,
.chinese_s .indexmenu-lists ul.lv1 > li.li2.about,
.chinese_s .indexmenu-lists ul.lv1 > li.li2.university,
.chinese_s .indexmenu-lists ul.lv1 > li.li2.campuslife,
.chinese_s .indexmenu-lists ul.lv1 > li.li2.education,
.chinese_s .indexmenu-lists ul.lv1 > li.li2.admission,
.chinese_s .indexmenu-lists ul.lv1 > li.li2.news-all,
.chinese_t .indexmenu-lists ul.lv1 > li.li2.about,
.chinese_t .indexmenu-lists ul.lv1 > li.li2.university,
.chinese_t .indexmenu-lists ul.lv1 > li.li2.campuslife,
.chinese_t .indexmenu-lists ul.lv1 > li.li2.education,
.chinese_t .indexmenu-lists ul.lv1 > li.li2.admission,
.chinese_t .indexmenu-lists ul.lv1 > li.li2.news-all,
.ko .indexmenu-lists ul.lv1 > li.li2.about,
.ko .indexmenu-lists ul.lv1 > li.li2.university,
.ko .indexmenu-lists ul.lv1 > li.li2.campuslife,
.ko .indexmenu-lists ul.lv1 > li.li2.education,
.ko .indexmenu-lists ul.lv1 > li.li2.admission,
.ko .indexmenu-lists ul.lv1 > li.li2.news-all {
 display:none;
}

.en .indexmenu-lists .li2.english.english2 {
 display:block;
}

.en .indexmenu-lists .li2.english.english2 > a {
  display: none;
}

.en .indexmenu-lists .li2.english.english2 .lv2-wrap,
.en .indexmenu-lists .li2.english.english2 .lv2-wrap a {
  display: block;
}

.chinese_s .indexmenu-lists .li2.chinese_s.chinese_s2 {
 display:block;
}

.chinese_s .indexmenu-lists .li2.chinese_s.chinese_s2 > a {
  display: none;
}

.chinese_s .indexmenu-lists .li2.chinese_s.chinese_s2 .lv2-wrap,
.chinese_s .indexmenu-lists .li2.chinese_s.chinese_s2 .lv2-wrap a {
  display: block;
}

.chinese_t .indexmenu-lists .li2.chinese_t.chinese_t2 > a {
  display: none;
}

.chinese_t .indexmenu-lists .li2.chinese_t.chinese_t2 {
 display:block;
}

.chinese_t .indexmenu-lists .li2.chinese_t.chinese_t2 .lv2-wrap,
.chinese_t .indexmenu-lists .li2.chinese_t.chinese_t2 .lv2-wrap a {
  display: block;
}

.ko .indexmenu-lists .li2.korean.korean2 {
 display:block;
}

.ko .indexmenu-lists .li2.korean.korean2 > a {
  display: none;
}

.ko .indexmenu-lists .li2.korean.korean2 .lv2-wrap,
.ko .indexmenu-lists .li2.korean.korean2 .lv2-wrap a {
  display: block;
}

.indexmenu-lists > ul.lv1 > li.li2 > a,
.indexmenu-lists .link-menu-add ul li a{
  display:block;
  border-top:1px rgba(0,0,0,0.20) solid;
  padding-top: 20px;
  font-size: 1.5rem;
  line-height: 1.2;
  font-weight: 700;
  position: relative;
  padding-left: 35px;
}

.indexmenu-lists a.index{
  position: relative;
  padding-left: 30px;
}

.indexmenu-lists > ul.lv1 > li.li2 > a > .button,
.indexmenu-lists .link-menu-add ul > li > a > .button {
  position: absolute;
  top: 18px;
  left: 0;
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background-color: #333333;
  cursor: pointer;
}

.indexmenu-lists .link-menu-add ul > li > a > .button:after {
  content: "";
  display: block;
  position: absolute;
  width: 9px;
  height: 9px;
  border-bottom: 2px solid #FFF;
  border-right: 2px solid #FFF;
  transform: rotate(-42deg);
  right: 10px;
  top: 50%;
  margin-top: -5px;
}

.indexmenu-lists li.li3 a.index .button {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background-color: #333333;
  cursor: pointer;
}

.indexmenu-lists > ul.lv1 > li.li2 > a > .button:before,
.indexmenu-lists li.li3 a.index .button:before {
  content: "";
  position: absolute;
  top: 11px;
  left: 6px;
  display: inline-block;
  width: 12px;
  height: 2px;
  background-color: #fff;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}

.indexmenu-lists > ul.lv1 > li.li2 > a.active > .button:before,
.indexmenu-lists li.li3 a.index.active .button:before {
  opacity: 0;
}

.indexmenu-lists > ul.lv1 > li.li2 > a > .button:after,
.indexmenu-lists li.li3 a.index .button:after {
  content: "";
  position: absolute;
  top: 11px;
  left: 6px;
  display: inline-block;
  width: 12px;
  height: 2px;
  background-color: #fff;
}

.indexmenu-lists > ul.lv1 > li.li2 > .lv2-wrap{
  border-top:1px rgba(0,0,0,0.20) solid;
  padding-top: 20px;
  margin-top: 20px;
  font-size: 1.5rem;
  font-weight: 350; 
}

.indexmenu-lists > ul.lv1 > li.li2 > .lv2-wrap ul.lv2{
  display: flex;
  flex-wrap: wrap;
}

.indexmenu-lists .gnav-wrap{
  width: 25%;
  padding-left: 35px;
}

.indexmenu-lists .gnav-wrap li a{
  margin-bottom: 20px;
  display: block;
}

.indexmenu-lists .lv3-wrap .lv3 .li3 a{
  padding-left: 30px;
}

.indexmenu-lists .lv2-wrap,
.indexmenu-lists .lv3-wrap,
.indexmenu-lists .lv4-wrap {
  display:none;
}

.indexmenu-lists > div:not(.link-menu-add) {
    margin-top: -41px;
}

.menu-head-outer {
    width: 100%;
    max-width: 1520px;
    margin: 0 auto 40px auto !important;
    font-size: 2.0rem;
    font-weight: 700;
}

@media screen and (max-width: 1520px){
.menu-head-outer {
    width: 100%;
    max-width: 1520px;
    margin: 0 20px 40px 20px !important;
}

.indexmenu-lists .menu-head {
    font-size: 2.0rem;
    font-weight: 700;
}

.indexmenu-lists .mega-head .button{
  position: absolute;
  top: 18px;
  left: 0;
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background-color: #333333;
  cursor: pointer;
}

.indexmenu-lists .mega-head .button::before{
  content: "";
  position: absolute;
  top: 11px;
  left: 6px;
  display: inline-block;
  width: 12px;
  height: 2px;
  background-color: #fff;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
      transform: rotate(90deg);
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}

.indexmenu-lists .mega-head .button::after{
  content: "";
  position: absolute;
  top: 11px;
  left: 6px;
  display: inline-block;
  width: 12px;
  height: 2px;
  background-color: #fff;
}

.indexmenu-lists .mega-head.active .button::before{
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
      transform: rotate(0deg);
}

.indexmenu-lists .mega-head-outer {
    width: 100%;
    max-width: 1720px;
    margin: 0 auto;
    padding: 0 100px;
}

.indexmenu-lists .outer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    max-width: 1720px;
    margin: 0 auto;
    padding: 20px 100px;
}


.indexmenu-lists .mega-list {
    display: none;
    width: calc( (100% - 90px) / 4 );
    margin: 0 0 61px 30px;
    line-height: 1.4;
}

.indexmenu-lists .mega-head {
    font-size: 1.5rem;
    position: relative;
    padding: 15px 0 15px 34px;
    border-top: 1px solid #004e36;
    border-bottom: 1px solid #004e36;
    font-weight: 700;
}
}


/*----------------------------------
メガメニュー
----------------------------------*/
.mega-menu-lists {
  position: absolute;
  width: 100%;
  left: 0;
  top: 140px;
  z-index: 145;
  padding: 40px 0;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 400;
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  -o-transition: transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
      transform: translateY(-100%);
  background-color: #006243;
  color: #fff;
  overflow-y: scroll;
  height: calc(100vh - 140px);
}

@media screen and (max-width: 1259px) {
  .mega-menu-lists {
      display: none;
  }
}

.mega-menu-lists.active {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
      transform: translateY(0);
}

.mega-menu-lists a{
  color: #fff;
}

.mega-menu-lists ul.lv1 {
  max-width: 1520px;
  margin: 0 auto !important;
}

@media screen and (max-width: 1520px) {
  .mega-menu-lists ul.lv1 {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.mega-menu-lists ul.lv1 li.li1{
  display:none;  
}

.mega-menu-lists ul.lv1 > li {
  display:none;
}

.mega-menu-lists ul.lv1 > li.li2.about,
.mega-menu-lists ul.lv1 > li.li2.university,
.mega-menu-lists ul.lv1 > li.li2.campuslife,
.mega-menu-lists ul.lv1 > li.li2.education,
.mega-menu-lists ul.lv1 > li.li2.admission,
.mega-menu-lists ul.lv1 > li.li2.news-all {
  display: none;
  padding-bottom: 20px;
}


.mega-menu-lists ul.lv1 > li.li2.about.active,
.mega-menu-lists ul.lv1 > li.li2.university.active,
.mega-menu-lists ul.lv1 > li.li2.campuslife.active,
.mega-menu-lists ul.lv1 > li.li2.education.active,
.mega-menu-lists ul.lv1 > li.li2.admission.active,
.mega-menu-lists ul.lv1 > li.li2.news-all.active {
  display: block;
}

.mega-menu-lists > ul.lv1 > li.li2 > a,
.mega-menu-lists .link-menu-add ul li a{
  display:block;
  padding-top: 20px;
  font-size: 1.5rem;
  line-height: 1.2;
  font-weight: 700;
  position: relative;
  padding-left: 0px;
}

.mega-menu-lists a.index{
  position: relative;
  padding-left: 30px;
}

.mega-menu-lists > ul.lv1 > li.li2 > a > .button {
  display: none;
}

.mega-menu-lists .link-menu-add ul > li > a > .button:after {
  content: "";
  display: block;
  position: absolute;
  width: 9px;
  height: 9px;
  border-bottom: 2px solid #FFF;
  border-right: 2px solid #FFF;
  transform: rotate(-42deg);
  right: 10px;
  top: 50%;
  margin-top: -5px;
}

.mega-menu-lists li.li3 a.index .button {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background-color: #333333;
  cursor: pointer;
}

.mega-menu-lists > ul.lv1 > li.li2 > a > .button:before,
.mega-menu-lists li.li3 a.index .button:before {
  content: "";
  position: absolute;
  top: 11px;
  left: 6px;
  display: inline-block;
  width: 12px;
  height: 2px;
  background-color: #fff;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}

.mega-menu-lists > ul.lv1 > li.li2 > a.active > .button:before,
.mega-menu-lists li.li3 a.index.active .button:before {
  opacity: 0;
}

.mega-menu-lists > ul.lv1 > li.li2 > a > .button:after,
.mega-menu-lists li.li3 a.index .button:after {
  content: "";
  position: absolute;
  top: 11px;
  left: 6px;
  display: inline-block;
  width: 12px;
  height: 2px;
  background-color: #fff;
}

.mega-menu-lists > ul.lv1 > li.li2 > .lv2-wrap{
  border-top:1px rgba(0,0,0,0.20) solid;
  border-bottom:1px rgba(0,0,0,0.20) solid;
  padding-top: 20px;
  padding-bottom: 20px;
  margin-top: 20px;
  font-size: 1.5rem;
  font-weight: 350; 
}

.mega-menu-lists > ul.lv1 > li.li2 > .lv2-wrap ul.lv2{
  display: flex;
  flex-wrap: wrap;
}

.mega-menu-lists .gnav-wrap{
  width: 25%;
  padding-left: 35px;
}


.mega-menu-lists .gnav-wrap li a{
  margin-bottom: 20px;
  display: block;
}

.mega-menu-lists .lv3-wrap .lv3 .li3 a,
.mega-menu-lists .lv4-wrap .lv4 .li4 a{
  padding-left: 30px;
}


.mega-menu-lists .lv3-wrap,
.mega-menu-lists .lv4-wrap {
  display:none;
}

.mega-menu-lists > div {
    margin-top: -41px;
}

.menu-head-outer {
  width: 100%;
  max-width: 1520px;
  margin: 0 auto 40px auto !important;
  font-size: 2.0rem;
  font-weight: 700;
}

@media screen and (max-width: 1520px){

  .menu-head-outer {
    width: 100%;
    max-width: 1520px;
    margin: 0 20px 40px 20px !important;
  }

  .mega-menu-lists .menu-head {
    font-size: 2.0rem;
    font-weight: 700;
  }

  .mega-menu-lists .mega-head .button{
    position: absolute;
    top: 18px;
    left: 0;
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background-color: #333333;
    cursor: pointer;
  }

  .mega-menu-lists .mega-head .button::before{
    content: "";
    position: absolute;
    top: 11px;
    left: 6px;
    display: inline-block;
    width: 12px;
    height: 2px;
    background-color: #fff;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
        transform: rotate(90deg);
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
  }

  .mega-menu-lists .mega-head .button::after{
    content: "";
    position: absolute;
    top: 11px;
    left: 6px;
    display: inline-block;
    width: 12px;
    height: 2px;
    background-color: #fff;
  }

  .mega-menu-lists .mega-head.active .button::before{
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
      transform: rotate(0deg);
  }

  .mega-menu-lists .mega-head-outer {
    width: 100%;
    max-width: 1720px;
    margin: 0 auto;
    padding: 0 100px;
  }

  .mega-menu-lists .outer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    max-width: 1720px;
    margin: 0 auto;
    padding: 20px 100px;
  }
  .mega-menu-lists .mega-list {
    display: none;
    width: calc( (100% - 90px) / 4 );
    margin: 0 0 61px 30px;
    line-height: 1.4;
  }

  .mega-menu-lists .mega-head {
    font-size: 1.5rem;
    position: relative;
    padding: 15px 0 15px 34px;
    border-top: 1px solid #004e36;
    border-bottom: 1px solid #004e36;
    font-weight: 700;
  }
}


/*----------------------------------
2層3層 レイアウト背景
----------------------------------*/
body.index.max,
body.under{
    background-color: #f9f9f9;
}

body.index.max .contents {
    padding-bottom: 100px;
}

body.under .contents {
  max-width: 1400px;
  background-color: #fff;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  margin-top: -100px;
  padding-top: 100px;
  padding-bottom: 130px;
  padding-left: 110px;
  padding-right: 110px;
  display: -webkit-flex;
  display: flex;    
}
body.event-detail .contents,
body.news-detail .contents {
  padding-left: 220px;
  padding-right: 220px;
}


body.under.news.news-all.news-index .contents,
body.under.news.news-all.event .contents,
body.under.news.news-all.voice .contents,
body.under.news.news-all.kenkyusi .contents,
body.under.news.news-all.syoseki .contents,
body.under.news.albums.news-all .contents{
  padding-top: 5px;
}

@media screen and (max-width: 1400px) {
  body.under .contents {
    padding-left: 40px;
    padding-right: 40px;
    padding-top: 40px;
  }
}

body.under.albums .contents {
  background-color: #F9F9F9;
}
body.under.albums .contents::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100px;
  background-color: #FFF;
}

@media screen and (max-width: 1023px) {
  body.index.max .contents,
  body.under .contents,
  body.under.news.news-all.news-index .contents,
  body.under.news.news-all.event .contents,
  body.under.news.news-all.voice .contents,
  body.under.news.news-all.kenkyusi .contents,
  body.under.news.albums.news-all .contents {
    display: block;
    /*flex-direction: column;*/
    margin-top: 0;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 40px;
  }
  
  body.under.albums .contents::before{
    content: none;
  }
}

.contents-inner {
  max-width: 860px;
  width: 100%;
}


@media screen and (max-width: 1023px) {
  .contents-inner {
    max-width: 100%;
  }
}

.under.news .contents-inner {
  max-width: 100%;
  width: 100%;
}
/*----------------------------------
2層、3層 SPローカルナビ
----------------------------------*/
.sp-contents-nav {
    display: none;
}

@media screen and (max-width: 1023px) {
  .sp-contents-nav{
      display: block;
  }

  .sp-contents-nav .sp-local-navi li a{
      display: block;
      padding-top: 10px;
      padding-bottom: 12px;
      padding-left: 20px;
      padding-right: 20px;
      background: #006243;
      border-bottom: 1px #004b33 solid;
      color: #fff;
      position: relative;
  }

  .sp-local-navi li ul.lv2 li:first-child {
    display: none;
  }

  .sp-contents-nav .sp-local-navi li ul.lv2{
      display: none;
  }
  
  .sp-contents-nav .sp-local-navi li ul.lv2.active .lv2{
      display: block;
  }

  .sp-contents-nav .sp-local-navi .li2 a.index .button{
      width: 30px;
      height: 30px;
      position: absolute;
      right: 20px;
  }

  .sp-contents-nav .sp-local-navi .li2 a.index .button:before{
    content: "";
    position: absolute;
    top: 15px;
    right: 9px;
    width: 12px;
    height: 2px;
    background: #fff;        
  }

  .sp-contents-nav .sp-local-navi .li2 a.index .button:after{
    content: "";
    position: absolute;
    top: 10px;
    right: 14px;
    width: 2px;
    height: 12px;
    background: #fff;
    transition: 0.2s;
  }
  
  .sp-contents-nav .sp-local-navi .li2 a.index.active .button:after {
      opacity: 0;
  }

  .sp-contents-nav .sp-local-navi li .lv3-wrap {
      display: none;
  }
  .sp-contents-nav .sp-local-navi li .lv3-wrap ul li a{
      padding-left: 40px;
  }
  
  .sp-contents-nav .sp-local-navi li .lv4-wrap {
      display: none;
  }
  .sp-contents-nav .sp-local-navi li .lv4-wrap ul li a{
      padding-left: 55px;
  }
}

/*----------------------------------
3層 PCローカルナビ
----------------------------------*/
.side {
  max-width: 240px;
  width: 100%;
  margin-left: 6.77%;
  font-weight: 350;
  line-height: 1.8;
}

.under .side,
.under.news .side {
  display: block;
}

body.under.news .side {
  display: none;
}


@media screen and (max-width: 1023px) {  
  .under .side,
  .under.news .side {
    display: none;
  }
}

.local-navi a {
  display: block;
  color: #222;
}

.local-navi a:hover {
  text-decoration: none;
}

.lv2-wrap {
    font-weight: 350;
}

.side .local-navi > .li2 > a.index{
  font-size: 2.4rem;
  font-family: Ryumin Medium KL, serif;
}


.chinese_s .side .local-navi > .li2 > a.index{
  font-family: source-han-serif-sc, serif;
  font-weight: 500;
  font-style: normal;
}

.chinese_t .side .local-navi > .li2 > a.index{
  font-family: source-han-serif-tc, serif;
  font-weight: 500;
  font-style: normal;
}

.side .local-navi > .li2 > .lv2-wrap.active {
  border-top: 2px solid #006243;
  margin-top: 20px;
  padding-top: 20px;
}

.local-navi > .li2 ul li {
  margin-bottom: 10px;
}

.local-navi > .li2 ul li:last-child {
  margin-bottom: 0px;
}

.local-navi > .li2 ul li a {
  position: relative;
  padding-right: 15px;
}

.local-navi > .li2 > .lv2-wrap > .lv2 > .li2 > a:hover:after,
.local-navi > .li2 > .lv2-wrap > .lv2 > .li3 > a:hover:after,
.local-navi > .li2 > .lv2-wrap > .lv2 > .li2 > a.active:after,
.local-navi > .li2 > .lv2-wrap > .lv2 > .li3 > a.active:after{
  position: absolute;
  content:'';
  display: block;
  width: 100%;
  height: 1px;
  background: #999;
  bottom: -5px;
}

.local-navi > .li2 ul li a.active-nav:hover:after {
}

.local-navi .li2 .lv2-wrap .lv2 .li3 a.index span.button,
.local-navi .li2 .lv2-wrap .lv2 .li3 a.index.active span.button {
  position: absolute;
  top: 8px;
  right: 0;
  width: 15px;
  height: 15px;
  background: #006243;
}

.local-navi .li2 .lv2-wrap .lv2 .li3 a.index span.button:before,
.local-navi .li2 .lv2-wrap .lv2 .li3 a.index.active span.button:before {
  content: "";
  position: absolute;
  top: 7px;
  right: 4px;
  width: 7px;
  height: 1px;
  background: #fff;
}

.local-navi .li2 .lv2-wrap .lv2 .li3 a.index span.button:after,
.local-navi .li2 .lv2-wrap .lv2 .li3 a.index.active span.button:after {
  content: "";
  position: absolute;
  top: 4px;
  right: 7px;
  width: 1px;
  height: 7px;
  background: #fff;
  transition: 0.2s;
}

.local-navi .li2 .lv2-wrap .lv2 .li3 .lv3-wrap .lv3 .li4 span.button {
  right: -10px;
}

.local-navi .li2 .lv2-wrap .lv2 .li3 a.index.active span.button:after,
.local-navi div.active .active li a span.button:after{
  opacity: 0;
}

.local-navi .li3 .lv3-wrap .lv3 .li4 a.index span.button,
.local-navi .li3 .lv3-wrap .lv3 .li4 a.index.active span.button {
  position: absolute;
  top: 8px;
  right: 0;
  width: 15px;
  height: 15px;
  background: transparent;
}

.local-navi .li3 .lv3-wrap .lv3 .li4 a.index span.button:before,
.local-navi .li3 .lv3-wrap .lv3 .li4 a.index.active span.button:before {
  content: "";
  position: absolute;
  top: 7px;
  right: 2px;
  width: 11px;
  height: 1px;
  background: #222;
}

.local-navi .li3 .lv3-wrap .lv3 .li4 a.index span.button:after,
.local-navi .li3 .lv3-wrap .lv3 .li4 a.index.active span.button:after {
  content: "";
  position: absolute;
  top: 2px;
  right: 7px;
  width: 1px;
  height: 11px;
  background: #222;
  opacity: 1;
  transition: 0.2s;
}

.local-navi .li3 .lv3-wrap .lv3 .li4 .lv4-wrap .lv4 .li5 span.button {
  right: -10px;
}

.local-navi .li3 .lv3-wrap .lv3 .li4 a.index.active span.button:after{
  opacity: 0;
}

.side .local-navi .lv3-wrap {
  display: none;
  background: #f2f2f2;
  padding: 15px 20px;
  margin-top: 5px;
}

.side .local-navi .lv3-wrap.active {
  display: block;
}

.local-navi .li2 ul li .lv3-wrap ul li a{
  padding-right: 0;
  padding-left: 15px;
}

.local-navi .li2 ul li .lv3-wrap ul li a:hover:after{
  content:none;
}

.local-navi .li2 ul li .lv3-wrap ul li a {
  padding-right: 0;
  padding-left: 13px;
  position: relative;
}

.local-navi .li2 ul li .lv3-wrap ul li a:hover:after,
.local-navi .li2 ul li .lv3-wrap ul li a.active:after{
  position: absolute;
  content: '';
  display: inline-block;
  left: 0px;
  top: 12px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #222;
}

.side .local-navi .lv4-wrap{
  display: none;
  padding-left: 15px;
}
.side .local-navi .lv4-wrap.active{
  display: block;
}

/*----------------------------------
2層INDEX ディレクトリータイトル
----------------------------------*/
.index.max .visual-title-wrap {
  position: relative;
  height: 600px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

@media screen and (max-width: 1280px) {
  .index.max .visual-title-wrap {
    height: 230px;
  }
}

.index.max .visual-title-wrap .visual-title:not(.visitor) {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 520px;
  height: 220px;
  padding: 0;
  background: #fff;
  color: #222;
  text-align: center;
  transition: left 0.2s;
}

@media screen and (max-width: 1280px) {
  .index.max .visual-title-wrap .visual-title:not(.visitor) {
    width: 280px;
    height: 130px;
  }
}
.index.max .visual-title-wrap .visual-title .directory {
  font-size: 4.0rem;
}
.index.max .visual-title-wrap .visual-title .directory-en {
  font-size: 1.3rem;
}
.index.max .visual-title-wrap .visual-title .visual-subtitle {
  font-size: 1.6rem;
  transform: rotate(.03deg);
}
@media screen and (max-width: 1280px) {
  .index.max .visual-title-wrap .visual-title .directory {
    font-size: 28px;
    font-size: 2.8rem;
  }
  .index.max .visual-title-wrap .visual-title .visual-subtitle {
    font-size: 14px;
    font-size: 1.4rem;
  }
}


/*----------------------------------
3層INDEX ディレクトリータイトル
----------------------------------*/
.under .visual-title-wrap,
.index.max.visitor .visual-title-wrap  {
  height: 320px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}
@media screen and (max-width: 1023px) {
  .under .visual-title-wrap,
  .index.max.visitor .visual-title-wrap {
    height: 180px;
  }
}
.under .visual-title-wrap .visual-title,
.index.max.visitor .visual-title-wrap .visual-title {
  color: #222;
  padding-top: 100px;
  max-width: 1400px;
  margin: 0 auto;
}

@media screen and (max-width: 1400px) {
.under .visual-title-wrap .visual-title,
.index.max.visitor .visual-title-wrap .visual-title {
  padding-left: 40px;
  padding-right: 20px;
}
}

@media screen and (max-width: 1023px) {
  .under .visual-title-wrap .visual-title,
  .index.max.visitor .visual-title-wrap .visual-title {
    padding-top: 60px;
  }
}
.under .visual-title-wrap .visual-title .directory,
.index.max.visitor .visual-title-wrap .visual-title .directory {
  font-size: 3.2rem;
  line-height: 1;
}
.under .visual-title-wrap .visual-title .directory-en,
.index.max.visitor .visual-title-wrap .visual-title .directory-en {
  font-size: 1.3rem;
}

.under .visual-title-wrap.white,
.under .visual-title-wrap.white .visual-title .directory,
.under .visual-title-wrap.white .visual-title .directory-en {
  color: #fff;
}


/*----------------------------------
１層目
----------------------------------*/

body.under.sou1.max .contents-inner {
  max-width: 100%;
}
#formTable input[type="radio"],
#formTable input[type="checkbox"] {
  display: inline-block;
}

/*========================================
テキスト
=========================================*/
.cp-text-col1 {
  margin-bottom:20px;
}

/*========================================
table
=========================================*/
.cp-all table th,
.cp-all table td {
  padding: 10px;
  border: 1px solid #999999;
  font-size: 1.4rem;
}

/*========================================
見出し
=========================================*/

h1.cp-h1-text {
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1.8;
  font-family: Ryumin Regular KL, serif;
  margin-bottom: 60px;
}

.chinese_s h1.cp-h1-text {
  font-family: source-han-serif-sc, serif;
  font-weight: 300;
  font-style: normal;
}

.chinese_t h1.cp-h1-text {
  font-family: source-han-serif-tc, serif;
  font-weight: 300;
  font-style: normal;
}

.news.news-all.news-index h1.cp-h1-text {
}

h2.cp-h2-text {
  font-size: 28px;
  font-size: 2.8rem;
  line-height: 1.8;
  font-family: Ryumin Regular KL, serif;
  margin-top: 60px;
  margin-bottom: 60px;
}

.chinese_s h2.cp-h2-text {
  font-family: source-han-serif-sc, serif;
  font-weight: 300;
  font-style: normal;
}

.chinese_t h2.cp-h2-text {
  font-family: source-han-serif-tc, serif;
  font-weight: 300;
  font-style: normal;
}

h3.cp-h3-text {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.8;
  font-family: Ryumin Regular KL, serif;
  margin-top: 50px;
  margin-bottom: 30px;
}

h4.cp-h4-text {
  font-size: 18px;
  font-size: 1.8rem;
  margin-top: 50px;
  margin-bottom: 15px;
  font-weight: 700;
}

.cp-text-col1 {
  margin-bottom: 50px;
}

@media screen and (max-width:1024px) {
  h1.cp-h1-text {
    font-size: 34px;
    font-size: 3.4rem;
    line-height: 1.8;
  }

}


/*========================================
テキスト＋画像  画像+テキスト
=========================================*/
.cp-ti, .cp-it {
    margin-top: 40px;
    margin-bottom: 40px;
}

.cp-ti .cp-text {
  width: calc(100% - 48.83%);
  float:left;
  padding-right: 40px;
}

.cp-ti .cp-img {
 width: 48.83%;
 float:right;
}

.cp-it .cp-text {
  width: calc(100% - 48.83%);
  float:right;
  padding-left: 40px;
}

.cp-it .cp-img {
 width: 48.83%;
 float:left;
}

@media screen and (max-width:1024px) {
  .cp-ti .cp-text {
    width: 100%;
    float:none;
    padding-right: 0;
    margin-bottom: 15px;
  }

  .cp-ti .cp-img {
    width: 100%;
    float:none;
    text-align: center;
  }

  .cp-it .cp-text {
    width: 100%;
    float:none;
    padding-left: 0;
    margin-bottom: 15px;
  }

  .cp-it .cp-img {
    width: 100%;
    float:none;
    text-align: center;
  }
  
  .cp-ti .cp-img img,
  .cp-it .cp-img img {
    width: 100%;
  }
}
/*========================================
テキスト段組み
=========================================*/
.cp-text-col2,
.cp-text-col3,
.cp-text-col4{
  display:flex;
}

@media screen and (max-width:1024px) {
  .cp-text-col2,
  .cp-text-col3,
  .cp-text-col4{
    flex-direction: column;
  }
}

.cp-text-col2 .cp-text-l,
.cp-text-col2 .cp-text-r,
.cp-text-col3 .cp-text-l,
.cp-text-col3 .cp-text-r,
.cp-text-col4 .cp-text-l,
.cp-text-col4 .cp-text-r{
  float: none;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.cp-text-col2 .cp-text-l {
  margin-right: 2.325%;
}
.cp-text-col3 .cp-text-l {
  margin-right: 2.325%;
}
.cp-text-col4 .cp-text-l {
  margin-right: 2.325%;
}

@media screen and (max-width:1024px) {
  .cp-text-col2 .cp-text-l,
  .cp-text-col3 .cp-text-l,
  .cp-text-col4 .cp-text-l {
    margin-right: 0;
  }

}

/*========================================
画像
=========================================*/

.cp-img-l,
.cp-img-r {
  margin-bottom: 50px;
}

.cp-img-r {
  float: none;
  text-align: right;
}

.cp-img-c {
  margin: 0 auto 50px;
}


@media screen and (max-width:1024px) {
  .cp-img-l,
  .cp-img-r,
  .cp-img-c{
    text-align: center;
  }
}

/*========================================
画像段組み
=========================================*/

.cp-img-col2,
.cp-img-col3,
.cp-img-col4{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 40px;
  margin-bottom: 40px;
}

.cp-img-col2 + .cp-img-col2,
.cp-img-col2 + .cp-img-col3,
.cp-img-col2 + .cp-img-col4,
.cp-img-col3 + .cp-img-col2,
.cp-img-col3 + .cp-img-col3,
.cp-img-col3 + .cp-img-col4,
.cp-img-col4 + .cp-img-col2,
.cp-img-col4 + .cp-img-col3,
.cp-img-col4 + .cp-img-col4{
  margin-top: -20px;
}

p.cp-col-01,
p.cp-col-02,
p.cp-col-03,
p.cp-col-04{
  text-align: center;
}
.cp-img-col2 .cp-ii,
.cp-img-col3 .cp-ii,
.cp-img-col4 .cp-ii{
  text-align: center;
}

.cp-img-col2.clearfix::after,
.cp-img-col3.clearfix::after,
.cp-img-col4.clearfix::after{
  content: none;
}
.cp-img-col2 .cp-col-01,
.cp-img-col2 .cp-col-02,
.cp-img-col3 .cp-col-01,
.cp-img-col3 .cp-col-02,
.cp-img-col3 .cp-col-03,
.cp-img-col4 .cp-col-01,
.cp-img-col4 .cp-col-02,
.cp-img-col4 .cp-col-03,
.cp-img-col4 .cp-col-04{
  float: none;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.cp-img-col2 .cp-col-01{
  margin-right: 2.325%;
}
.cp-img-col2 .cp-col-02{}

.cp-img-col3 .cp-col-01,
.cp-img-col3 .cp-col-02{
  margin-right: 2.325%;
}
.cp-img-col3 .cp-col-03{}

.cp-img-col4 .cp-col-01,
.cp-img-col4 .cp-col-02,
.cp-img-col4 .cp-col-03{
  margin-right: 2.325%;
}

@media screen and (max-width:1024px) {
  .cp-text-col2,
  .cp-text-col3,
  .cp-text-col4{
    display: block;
  }
  .cp-text-col2 .cp-text-l,
  .cp-text-col3 .cp-text-l,
  .cp-text-col4 .cp-text-l {
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
  }
  .cp-text-col2 .cp-text-r,
  .cp-text-col3 .cp-text-r,
  .cp-text-col4 .cp-text-r {
    width: 100%;
  }
  .cp-img-col2,
  .cp-img-col3,
  .cp-img-col4{
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    text-align: center;
  }
  .cp-img-col2 .cp-col-01,
  .cp-img-col2 .cp-col-02,
  .cp-img-col3 .cp-col-01,
  .cp-img-col3 .cp-col-02,
  .cp-img-col3 .cp-col-03,
  .cp-img-col4 .cp-col-01,
  .cp-img-col4 .cp-col-02,
  .cp-img-col4 .cp-col-03,
  .cp-img-col4 .cp-col-04{
    -webkit-box-flex: 1;
        -ms-flex: auto;
            flex: auto;
  }
  .cp-img-col2 .cp-col-01{
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
  }
  .cp-img-col2 .cp-col-02{
    width: 100%;
  }
  .cp-img-col3 .cp-col-01,
  .cp-img-col3 .cp-col-02{
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
  }
  .cp-img-col3 .cp-col-03{
    width: 100%;
  }
  .cp-img-col4 .cp-col-01{
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
  }
  .cp-img-col4 .cp-col-02{
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
  }
  .cp-img-col4 .cp-col-03{
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
  }
  .cp-img-col4 .cp-col-04{
    width: 100%;
  }
}

/*========================================
囲み
=========================================*/
.cp-wp {
  background: #f9f9f9;
  padding: 20px;
  border: 0 none;
  margin-top: 60px;
  margin-bottom: 60px;
}

/*========================================
外部サービスコード
20200722追加
=========================================*/

.cp-external iframe {
  border-radius: 5px;
  max-width: 100%;
}


/*========================================
パンくず
=========================================*/

.breads {
  position: absolute;
  top: 160px;
  right: 4%;
  max-width: 1400px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  text-align: right;
}

@media screen and (max-width: 1400px) {
  .breads {
    padding-right:20px;
  }
}

.breads > li {
  display: inline-block;
  font-size: 15px;
  color: #555555;
  margin-right: 5px;
}
.breads > li:last-child {
  margin-right: 0;
}
.breads > li > a {
  color: #555555;
}

.under .visual-title-wrap.white + .breads > li,
.under .visual-title-wrap.white + .breads > li a {
  color: #fff;
}


@media screen and (max-width: 1259px) {
  .breads {
    display: none;
  }
}


/*========================================
FORM
=========================================*/

#formTtl {
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 15px;
  clear: both;
}
#formTxt {
  margin-bottom: 20px;
}
#formTxtError {
  color: #fd0008;
  margin-bottom: 20px;
}
.errorMsg {
  background: none repeat scroll 0 0 #fd0008;
  color: #fff;
  float: left;
  font-size: 11px;
  margin: 3px;
  padding: 2px 3px;
}
hr.horizonType, hr.longType, hr.lineType {
  margin: 15px 0;
  width: 100%;
}
hr.longType, hr.horizonType {
  background: none repeat scroll 0 0 #e7e7e9;
  color: #e7e7e9;
}
hr.lineType {
  background: none repeat scroll 0 0 #e6e6e6;
  color: #e6e6e6;
}
#formTable {
  border-collapse: collapse;
  border-spacing: 0;
  color: #333;
  width: 100%;
}
#formTable th, #formTable td {
  border: 1px solid #bbb;
  padding: 10px;
  vertical-align: top;
}
#formTable td:first-child {
  border-top: 1px solid #bbb;
}
#formTable th {
  overflow: hidden;
  width: 18%;
}
@media screen and (max-width: 1280px) {
  #formTable th,
  #formTable td {
    width: 100%;
    display: block;
  }
  .formTel .telInput {
    display: table-cell !important;
    width: 70px !important;
  }
  .formTel .telArea {
    display: table-cell !important;
    width: 30px !important;
  }
}
#formTable table td, #formTable table th {
  border: medium none !important;
  padding: 0 !important;
}
#formTable th[colspan="2"], #formTable td[colspan="2"] {
  background: none repeat scroll 0 0 #fff;
  border: medium none;
}
#formTable input[type="text"], #formTable select, #formTable textarea {
  border: 1px solid #bbb;
  border-radius: 4px;
}
.horizonType th, .horizonType td {
  display: block;
}
.horizonType .formBtn td {
  display: inline-block;
}
#formTable .formName > tbody > tr > td > div > div:first-child {
  width: 250px !important;
  margin-right: 20px;
  display: block;
}
#formTable .formName > tbody > tr > td > div > div:last-child {
  width: 250px !important;
  margin-left: 20px;
  display: block;
}
#formTable #q_3_date select,
#formTable #q_3_month select {
  width: 10%;
  margin-right: 10px;
}
#formTable #q_3_day select {
  width: 10%;
}

@media all and (min-width: 680px) {
  .horizonType th,
  .horizonType td {
    display: table-cell;
  }
  #formTable #q_3_date select,
  #formTable #q_3_month select {
    width: 20%;
  }
}
.horizonType th {
  background: none repeat scroll 0 0 #e7e7e9;
}
@media all and (min-width: 680px) {
  .horizonType th {
    width: 33.3333%;
  }
}
.horizonType table td {
  display: block;
}
.longType th, .longType td {
  display: block;
}
.longType th {
  background: none repeat scroll 0 0 #e7e7e9;
}
.longType td {
  padding-left: 34px;
}
.longType table td {
  display: block;
}

.lineType td, .lineType th {
  border: 1px solid #e6e6e6;
}
.lineType th {
  background: none repeat scroll 0 0 #fff;
}
.lineType2 th {
  border-bottom: 1px solid #bbb;
  border-top: 1px solid #bbb;
}
.note {
  font-size: 10px;
}
.formError {
  color: #fd0008;
}
.tableTtl {
  float: left;
  margin-right: 20px;
  text-align: left;
}
.longType .tableTtl {
  padding-right: 5px;
}
.tableMust {
  float: right;
  text-align: right;
  width: 3em;
}
.mustArea {
  background: none repeat scroll 0 0 #fd0008;
  color: #fff;
  font-size: 14px;
  padding: 2px 3px;
}
.nameArea {
  vertical-align: middle;
  width: 40px;
}
.nameInput {
  width: 150px;
}
.nameInput input {
  width: 130px;
}
.formInput input {
  width: 60%;
}
.formTel tbody tr td {
  display: table-cell;
}
.formPost {
  margin-bottom: 5px;
}
.formPost tbody tr td {
  display: table-cell;
}
.postArea1 {
  width: 23px;
}
.postArea2 {
  text-align: center;
  width: 15px;
}
.postInput1,
.postInput1 input {
  width: 70px;
}
.postInput2, .postInput2 input {
  width: 80px;
}
.formCity {
  margin-bottom: 5px;
}
.cityArea {
  vertical-align: middle;
  width: 60px;
}
.formPlace {
  width: 100%;
}
.placeInput input {
  width: 60%;
}
.telArea {
  text-align: center;
  width: 23px;
}
.telInput,
.telInput input {
  width: 70px;
}
.formMail {
  width: 100%;
}
.mailArea {
  color: #fd0008;
}
.mailInput input {
  width: 60%;
}

@media screen and (max-width: 1280px) {
  .formPost .postInput1,
  .formPost .postInput2 {
    display: table-cell !important;
    width: 70px !important;
  }
  .formPost .postArea1,
  .formPost .postArea2 {
    display: table-cell !important;
    width: 30px !important;
  }
}

.formBtn {
  margin: 0 auto;
  margin-top: 40px;
}
.formBtn input {
  font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro",Meiryo,sans-serif;
  margin: 10px;
  border: none;
}
.formBtn input:hover {
  opacity: 0.7;
  border: none;
}
.btnSubmit, .btnRewrite, #formTable.lineType .btnSubmit, #formTable.lineType .btnRewrite {
  padding-right: 10px;
}
#submitPage .btnSubmit {
  padding-right: 0;
}
.btnSubmit input {
  background: none repeat scroll 0 0 #bcc2bc;
  border: medium none;
  cursor: pointer;
  height: 37px;
  overflow-y: hidden;
  padding-top: 37px;
}
.submit {
  -webkit-appearance: none;
  border-radius: 0;
  background: none repeat scroll 0 0 #006243;
  border-radius: 4px;
  color: #fff;
  cursor: pointer;
  font-size: 16px;
  font-weight: bold;
  padding: 15px 40px;
  text-align: center;
  display: block;
  margin: 0 auto !important;
}
.level3 .submit{
  margin: 0 auto !important;
}
.reset {
  -webkit-appearance: none;
  border-radius: 0;
  background: none repeat scroll 0 0 #bcc2bc;
  border: 1px solid #bcc2bc;
  border-radius: 4px;
  color: #383d38;
  cursor: pointer;
  font-size: 16px;
  font-weight: bold;
  margin-top: 0 !important;
  padding: 15px 40px;
  text-align: center;
}
.btnRewrite input {
  background: none repeat scroll 0 0 #bcc2bc;
  border: medium none;
  cursor: pointer;
  height: 37px;
  overflow-y: hidden;
  padding-top: 37px;
}
.btnSend input {
    background: none repeat scroll 0 0 #e0611d;
    border: medium none;
    cursor: pointer;
    height: 37px;
    overflow-y: hidden;
    padding-top: 37px;
}

.btnReturn input {
  background: none repeat scroll 0 0 #bcc2bc;
  border: medium none;
  border-radius: 5px;
  color: #fff;
  cursor: pointer;
  font-weight: bold;
  height: 37px;
  overflow-y: hidden;
  width: 120px;
}

.btnReset input {
  background: none repeat scroll 0 0 #bcc2bc;
  border: medium none;
  cursor: pointer;
  height: 37px;
  overflow-y: hidden;
  padding-top: 37px;
}

.formSex {
  width: 100%;
}

.sexInput {
  width: 50%;
}

.sexInput input {
  margin-right: 0.5em;
}

.fromEnquete .EnqueteTitle, .fromEnquete .EnqueteAnswer {
  padding: 10px;
}

.fromEnquete .EnqueteAnswer p {
  line-height: 200%;
}

.formCheck {
  width: 100%;
}

.checkInput {
  width: auto;
}

.checkInput input {
  margin-right: 0.5em;
}

#formTable td.formPrivacy {
  padding: 0;
}

#formTable div.formPrivacy {
  overflow-y: scroll;
  padding: 10px 20px;
}

span.edit_success {
  color: #61915d;
  font-weight: bold;
}

input[type="text"] {
  border: 1px solid #bbbbbb;
}

input:hover, textarea:hover {
  border: 1px solid #bbbbbb;
}

input:focus, textarea:focus {
  border: 1px solid #4790ff;
}

.formErrorContent {
  background: none repeat scroll 0 0 #fd0008;
  border-radius: 0;
  box-shadow: none;
  color: white;
  font-weight: bold;
  margin-top: 5px;
  max-width: 140px;
  padding: 5px;
}

.formErrorArrow, .formErrorClose {
  display: none;
}

@media all and (max-width: 678px) {
  #formTable .formName > tbody > tr > td > div > div:first-child {
    width: 100% !important;
    margin-right: 0;
  }
  #formTable .formName > tbody > tr > td > div > div:last-child {
    width: 100% !important;
    margin-left: 0;
  }
}

#formTable .formCheck .checkInput #rdo_q_0_2 + label + input {
  margin-left: 15px;
  width: 55%;
}

.breads-hide {
  display: none;
}

/*PC-lang*/
.sub-menu .language-list {
  width: 79px;
  position: absolute;
  top: 140px;
  right: 81px;
  text-align: center;
  top: 140px;
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  -o-transition: transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
      transform: translateY(-100%);
  z-index: 90;
}

@media screen and (max-width: 1763px) {
  .sub-menu .language-list {
    width: 74px;
    right: 76px;
  }
}

@media screen and (max-width: 1480px) {
  .sub-menu .language-list {
    width: 59px;
    right: 60px;
  }
}

@media screen and (max-width: 1259px) {
  .sub-menu .language-list {
    display:none;
  }
}

.sub-menu .language-list.active {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
      transform: translateY(0);
}

.sub-menu .language-list ul li.jp {
  display: none;
}

.en .sub-menu .language-list ul li.jp,
.ko .sub-menu .language-list ul li.jp,
.chinese_s .sub-menu .language-list ul li.jp,
.chinese_t .sub-menu .language-list ul li.jp {
  display: block;
}

.en .sub-menu .language-list ul li.en,
.ko .sub-menu .language-list ul li.ko,
.chinese_s .sub-menu .language-list ul li.cn,
.chinese_t .sub-menu .language-list ul li.cn-big {
  display: none;
}

.sub-menu .language-list a{
  display: block;
  text-align: center;
  line-height: 1;
  font-size: 2.1rem;
  color:#fff;
  font-weight: 700;
  background: #333;
  text-decoration: none;
  padding-top: 10px;
  padding-bottom: 10px;
}

.language-list a[target="_blank"]::after {
   content:none;
}

.language-list a:hover{
  text-decoration: none;
  background: #006243;
}

body.en .inner.pc-only .sub-menu .lang .lang-inner .jp,
body.en .inner.pc-only .sub-menu .lang .lang-inner .en {
  display: none;
}

body.en .inner.pc-only .sub-menu .lang .lang-inner .en {
  display: block;
}

body.ko .inner.pc-only .sub-menu .lang .lang-inner .jp,
body.ko .inner.pc-only .sub-menu .lang .lang-inner .en{
  display: none;
}

body.ko .inner.pc-only .sub-menu .lang .lang-inner .ko {
  display: block;
}

body.ko .sub-menu li.lang a .lang-icon.jp {
  display: none;
}

body.chinese_s .inner.pc-only .sub-menu .lang .lang-inner .jp,
body.chinese_s .inner.pc-only .sub-menu .lang .lang-inner .ch{
  display: none;
}

body.chinese_s .inner.pc-only .sub-menu .lang .lang-inner .ch {
  display: block;
}

body.ch .language-list li.cn,
body.ch .inner.pc-only .sub-menu .lang .jp{
  display: none;
}

body.ch .inner.pc-only .sub-menu .lang .ch {
 display: block;
}

body.chinese_t .inner.pc-only .sub-menu .lang .lang-inner .jp{
  display: none;
}

body.chinese_t .inner.pc-only .sub-menu .lang .lang-inner .ch-big5 {
  display: block;
}

.pagetop {
  position: fixed;
  bottom: 100px;
  right: 10px;
  width: 46px;
  height: 46px;
  border-radius: 23px;
  font-size: 1.0rem;
  line-height: 11px;
  color: #fff;
  text-align: center;
  background-color: rgba(0,0,0,0.3);
  display: none;
  cursor: pointer;
}
.pagetop:focus {
  background-color: rgba(0,0,0,0.8);
}
.pagetop:before {
  width: 12px;
  height: 12px;
  top: 20px;
  left: 17px;
  content: "";
  position: absolute;
  border-top: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.pagetop:after {
  width: 12px;
  height: 12px;
  top: 20px;
  left: 17px;
  content: "";
  position: absolute;
  border-left: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

/*----------------------------------
伝道者の声用
----------------------------------*/
body.under.dendosya .contents {
  display: block !important;
}
body.under.dendosya .contents .contents-min-wrap {
  display: -webkit-flex;
  display: flex;
  width: 100%;
}
body.under.dendosya.news .contents-inner {
  width: 73%;
}
body.under.dendosya.news .voice-side,
body.under.dendosya.news .teacher-side {
  width: 20%;
  margin-left: 7%;
}
@media screen and (max-width: 1280px) {
  body.under.dendosya .contents .contents-min-wrap {
    display: block;
  }
  body.under.dendosya.news .contents-inner {
    width: 100%;
  }
  body.under.dendosya.news .voice-side,
  body.under.dendosya.news .teacher-side {
    width: 100%;
    margin-left: 0;
    margin-top: 20px;
  }
}


body.under.dendosya .tabLink.cp-all{
  margin-bottom: 40px;
  width: 100%;
  border-bottom: #CCC 1px solid;
}
body.under.dendosya .tabLink.cp-all > ul {
  display: flex;
  width: 80%;
  table-layout: fixed;
  background-color: #fff;
  border-collapse: collapse;
  margin: 0 auto;
}
body.under.dendosya .tabLink.cp-all > ul > li {
  position: relative;
  width: calc( 100%/2 );
  vertical-align: middle;
  border: 1px solid #BCBCBC;
  margin: 0;
  padding: 0;
  text-indent: 0;
  margin-right: 0;
  border-bottom: none;
}
body.under.dendosya .tabLink.cp-all > ul > li:last-child {
  margin-right: 0;
}
body.under.dendosya .tabLink.cp-all > ul > li a {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  height: 100%;
  margin: 0;
  padding: 20px 5px;
  text-indent: 0;
  cursor: pointer;
  color: #202121;
  line-height: 1.5;
}
body.under.dendosya .tabLink.cp-all > ul > li::before{
  content: none;
}
body.under.dendosya .voice-tab .tabLink.cp-all > ul > li:first-child a,
body.under.dendosya .teacher-tab .tabLink.cp-all > ul > li:last-child a,
body.under.dendosya .tabLink.cp-all > ul > li a:hover,
body.under.dendosya .tabLink.cp-all > ul > li a.active{
  background-color: #006243;
  color: #fff;
  text-decoration: none;
}
@media screen and (max-width: 1279px) {
  body.under.dendosya .tabLink.cp-all > ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
  }
  body.under.dendosya .tabLink.cp-all > ul > li{
    width: 50%;
    margin: 0 0 -1px -1px;
  }
}
.voice-side .dendosya-min-wrap,
.teacher-side .dendosya-min-wrap {
  width: 100%;
  margin-bottom: 20px;
}

.voice-side .dendosya-min-wrap a,
.teacher-side .dendosya-min-wrap a {
  display: block;
}

.voice-side .dendosya-min-wrap a:hover,
.teacher-side .dendosya-min-wrap a:hover {
  text-decoration: none;
}

.voice-side .dendosya-min-wrap .left-img,
.teacher-side .dendosya-min-wrap .left-img {
  max-width: 60px;
  width: 100%;
  display: inline-block;
}
.voice-side .dendosya-min-wrap .right-text,
.teacher-side .dendosya-min-wrap .right-text {
  width: 60%;
  display: inline-block;
  vertical-align: top;
  margin-left: 10px;
  line-height: 1.8;
  color: #222;
}
.voice-side .dendosya-min-wrap .right-text .year-text,
.teacher-side .dendosya-min-wrap .right-text .year-text {
  display: none;
}
.voice-side .dendosya-min-wrap .right-text .title-text,
.teacher-side .dendosya-min-wrap .right-text .title-text {
  font-size: 1.4rem;
  font-weight: 600;
}
.voice-side .dendosya-min-wrap .right-text .name-text,
.teacher-side .dendosya-min-wrap .right-text .name-text {
  font-size: 13px;
  font-size: 1.3rem;
}

.news-head-nav-wrap{
  /*position: absolute;
  top: 450px;
  left: 0;
  width: 100%;
  transform: translateY(-100%);
  padding: 0px 234px;
  transition: padding 0.2s;
  z-index: 1;
  padding-left: 110px;
  padding-right: 110px;*/
  margin-bottom: 50px;
}
.news-head-nav{
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  padding: 23px 0 12px 0;
  border-bottom: none;
}


/**アルバム用**/
body.under.news.album .news-head-nav-wrap {
  top: 460px;
  left: 50%;
  transform: translateY(-100%) translateX(-50%);
  width: 1400px;
  background-color: #FFF;
}

body.under.album .news-head-nav-wrap .news-head-nav {
  background-color: #FFF;
}


.news-head-nav .title .ja {
  display: block;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
}
.news-head-nav .title .en {
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 500;
}
.news-head-nav li {
  display: inline-block;
}
.news-head-nav li a {
  position: relative;
  display: inline-block;
  padding: 10px;
  margin: 0 12px;
  color: #222;
  font-size: 15px;
  font-size: 1.5rem;
}
.news-head-nav li:first-child a {
  padding-left: 0;
  margin-left: 0;
}
.news-head-nav li a:hover{
  text-decoration: none;
}
.news-index .news-head-nav li:nth-child(1) a::before,
.event .news-head-nav li:nth-child(2) a::before,
.voice .news-head-nav li:nth-child(3) a::before,
.kenkyusi .news-head-nav li:nth-child(4) a::before,
.syoseki .news-head-nav li:nth-child(5) a::before,
.albums .news-head-nav li:nth-child(6) a::before,
.news-head-nav li a.current::before,
.news-head-nav li a:hover::before{
  position: absolute;
  bottom: 0;
  left: calc(50% - 16px);
  content: "";
  display: block;
  width: 32px;
  height: 1px;
  background-color: #006243;
}
@media screen and (max-width: 1023px) {
  .news-head-nav-wrap{
    display: none;
  }
}


/*----------------------------------
ヘッダー多言語
----------------------------------*/
.en ul.sub-menu li.request,
.en ul.sub-menu li.contact,
.ko ul.sub-menu li.request,
.ko ul.sub-menu li.contact,
.chinese_s ul.sub-menu li.request,
.chinese_s ul.sub-menu li.contact,
.chinese_t ul.sub-menu li.request,
.chinese_t ul.sub-menu li.contact {
  display:none;
}

.en header .sub-menu,
.ko header .sub-menu,
.chinese_s header .sub-menu,
.chinese_t header .sub-menu {
  width: 241px;
}

@media screen and (max-width: 1763px) {
  .en header .sub-menu,
  .ko header .sub-menu,
  .chinese_s header .sub-menu,
  .chinese_t header .sub-menu {
    width: 225px;
  }
  
  .en .sub-menu .language-list,
  .ko .sub-menu .language-list,
  .chinese_s .sub-menu .language-list,
  .chinese_t .sub-menu .language-list {
    width: 74px;
    right: 75px;
  }

}


@media screen and (max-width: 1480px) {
  .en header .sub-menu,
  .ko header .sub-menu,
  .chinese_s header .sub-menu,
  .chinese_t header .sub-menu {
    width: 180px;
  }

  .en .sub-menu .language-list,
  .ko .sub-menu .language-list,
  .chinese_s .sub-menu .language-list,
  .chinese_t .sub-menu .language-list {
    width: 59px;
    right: 60px;
  }

}

.en header .gnav,
.ko header .gnav,
.chinese_s header .gnav,
.chinese_t header .gnav {
  margin-right: 260px;
  width: calc(100% - 260px);
}

@media screen and (max-width: 1763px) {
  .en header .gnav,
  .ko header .gnav,
  .chinese_s header .gnav,
  .chinese_t header .gnav {
    margin-right: 245px;
    width: calc(100% - 245px);
  }
}

@media screen and (max-width: 1480px) {
  .en header .gnav,
  .ko header .gnav,
  .chinese_s header .gnav,
  .chinese_t header .gnav {
    margin-right: 200px;
    width: calc(100% - 200px);
  }

}

.en header .gnav li,
.ko header .gnav li,
.chinese_s header .gnav li,
.chinese_t header .gnav li {
  min-width: 40px;
  text-align: center;
}
/* 20200714追加 */
.en header .gnav li a:hover:after,
.ko header .gnav li a:hover:after,
.chinese_s header .gnav li a:hover:after,
.chinese_t header .gnav li a:hover:after,
.en header .gnav li a:focus:after,
.ko header .gnav li a:focus:after,
.chinese_s header .gnav li a:focus:after,
.chinese_t header .gnav li a:focus:after {
  content: '';
  width: 40px;
  height: 2px;
  background: #006243;
  display: block;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  top: 30px;
}

body.kyukou {
  background-color:#fff;
}

body.kyukou main {
  padding: 20px;
}
@media screen and (max-width: 1023px) {
  .naviactive {
    overflow: hidden;
  }

  body.naviactive > main > .main-menu-bt {
    opacity: 0;
   transition: 0.5s;
  }

}

.mega-menu-off {
  margin-top: 0 !important;
  width: 100%;
  height: 100%;
}

.link-menu-add.library ul li {
  display: none;
}

.link-menu-add ul li {
  padding-bottom: 20px;
}

.link-menu-add.library ul li:nth-child(1) {
  display: block;
}

.en .link-menu-add.library ul li:nth-child(1) {
  display: none;
}
.en .link-menu-add.library ul li:nth-child(2) {
  display: block;
}

.chinese_s .link-menu-add.library ul li:nth-child(1) {
  display: none;
}
.chinese_s .link-menu-add.library ul li:nth-child(3) {
  display: block;
}

.chinese_t .link-menu-add.library ul li:nth-child(1) {
  display: none;
}
.chinese_t .link-menu-add.library ul li:nth-child(4) {
  display: block;
}

.ko .link-menu-add.library ul li:nth-child(1) {
  display: none;
}
.ko .link-menu-add.library ul li:nth-child(5) {
  display: block;
}

/*----------------------------------
ニュース・イベント詳細
----------------------------------*/
.date-category-area{
  display: -ms-flex;
  display: flex;
  /*margin-top: 30px;*/
  margin-bottom: 5px;
  font-weight: 500;
}
.date-category-area .date{
  margin-right: 15px;
}
.date-category-area .category > span{
  margin-right: 8px;
}
.date-category-area + h1.cp-h1-text{
  margin-bottom: 40px;
}
@media screen and (max-width: 1023px) {
  .date-category-area{
    -ms-flex-direction: column;
    flex-direction: column;
  }
}


/*----------------------------------
プリント用
----------------------------------*/

@media only print {
  header,
  footer,
  .sp-contents-nav,
  .side,
  .main-menu-area,
  .indexmenu-lists,
  #language-list {
    display: none !important;
  }

  @page {
    /* margin: 10; */
  }
 
  body,
  body.index.max,
  body.under {
    background-color:#fff;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    overflow-x: auto;
  }
  
  main {
    padding-top:0;
  }
  
  .contents,
  body.under .contents {
    max-width:100% !important;
    width:100% !important;
    padding:0 !important;
    margin:0 !important;
    display: block;
    /*position: inherit !important;
    transform: inherit !important;
    left: inherit !important;
    overflow-y: auto;*/
  }
  
  .contents-inner {
    max-width:100% !important;
    width:100% !important;
  }
  
  .contents-inner > div{
    max-width:100% !important;
    width:100% !important;
  }
  
  .col2-contents {
    flex-direction: column;
  }
  
  .col2-contents .col2 {
    width: 100%;
  }
  
  .btn-wrap-link-wrap {
    position: relative;
    z-index: 3;
  }

  .col2-contents .col2 .btn-wrap ul li a:hover {
    text-decoration: none;
    background: none;
  }

  .col2-contents .col2 .btn-wrap ul li a::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: '';
    background: #006243;
    transform-origin: right top;
    transform: scale(1, 1);
    z-index:1;
  }

  .col2-contents .col2 .btn-wrap ul li a::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: '';
    background: #0E8756;
    transform-origin: right top;
    transform: scale(0, 1);
    transition: transform 0.3s ease-in-out 0.1s;
    z-index:2;
  }

  .col2-contents .col2 .btn-wrap ul li a:hover::after,
  .col2-contents .col2 .btn-wrap ul li a:focus::after {
    transform-origin: left top;
    transform: scale(1, 1);
  }
    .btn-wrap-link-wrap {
    position: relative;
    z-index: 3;
  }

  .col1-contents .col1 .btn-wrap ul li a:hover {
    text-decoration: none;
    background: none;
  }

  .col1-contents .col1 .btn-wrap ul li a::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: '';
    background: #006243;
    transform-origin: right top;
    transform: scale(1, 1);
    z-index:1;
  }

  .col1-contents .col1 .btn-wrap ul li a::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: '';
    background: #0E8756;
    transform-origin: right top;
    transform: scale(0, 1);
    transition: transform 0.3s ease-in-out 0.1s;
    z-index:2;
  }

  .col1-contents .col1 .btn-wrap ul li a:hover::after,
  .col1-contents .col1 .btn-wrap ul li a:focus::after {
    transform-origin: left top;
    transform: scale(1, 1);
  }
  
  .col1-contents .col1 .btn-wrap ul li {
    width: 48.29%;
  }
  
  .col1-contents .col1 .btn-wrap ul li .link-desc {
    font-size: 1.8rem;
  }
  
  .top .bt-area ul li a,
  .uni-top .bt-area ul li a {
    font-size: 1.4rem;
  }
  
  .index.max .visual-title-wrap,
  .under .visual-title-wrap,
  .index.max.visitor .visual-title-wrap {
    height: 230px;
  }
  
  .index.max .visual-title-wrap .visual-title:not(.visitor) {
    width: 280px;
    height: 130px;
  }
  
  .max-banner-2colm-wrap {
    flex-direction: column;
  }
  
  .max-banner-2colm-wrap .max-banner-2colm{
    width: 100%;
  }
  
}