.sm-show,
.md-show,
.lg-show,
.sw-show,
.xl-show,
.fw-show,
.xxl-show {
  display: none;
}

.c-user-nav {
  -webkit-transition: -webkit-transform .3s .5s, width 0s .5s;
  transition: transform .3s .5s, width 0s .5s;
}

.c-user-nav a span {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
}

.is-gc-open .c-user-nav {
  -webkit-transform: translateX(60px);
  transform: translateX(60px);
  -webkit-transition: -webkit-transform .3s .5s, width 0s .5s;
  transition: transform .3s .5s, width 0s .5s;
  width: 60px;
}

.is-gc-open .c-user-nav span {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
}

.is-gc-open.is-user-nav-hover .c-user-nav {
  width: 220px;
}

.is-gc-open.is-user-nav-hover .c-user-nav span {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
}

.l-contents {
  padding-top: 0;
}

.l-contents__body {
  background-color: #f0f0f0;
  overflow: hidden;
}

.p-toppage__search {
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
}

.p-toppage__search__inn {
  bottom: 50px;
  left: 0;
  pointer-events: all;
  position: absolute;
  width: 100%;
}

.p-toppage__search form {
  background-color: #fff;
  margin-bottom: 1em;
  position: relative;
}

.p-toppage__search form:after {
  content: "\f002";
  display: block;
  font-family: FontAwesome;
  font-size: 1.71429rem;
  font-size: 27.428px;
  height: 44px;
  line-height: 44px;
  pointer-events: none;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  width: 44px;
  z-index: 1;
}

.p-toppage__search .gsc-search-box-tools .gsc-search-box .gsc-input {
  margin: 0;
  padding: 0;
  padding-right: 0;
}

.p-toppage__search .gsc-input-box {
  background-color: transparent;
  border: none;
  height: auto !important;
}

.p-toppage__search .gsc-input-box .gsib_a {
  padding: 0;
}

.p-toppage__search .gsc-input-box .gsib_b {
  display: none;
}

.p-toppage__search input.gsc-input,
.p-toppage__search #tmp_query-2 {
  border: none;
  box-sizing: border-box;
  font-size: 1.71429rem;
  font-size: 27.428px;
  font-weight: 300;
  height: 44px !important;
  margin: 0;
  outline: none;
  padding-left: 14px !important;
  vertical-align: middle;
  width: calc(100% - 47px);
}

.p-toppage__search input.gsc-input {
  font-size: 16px;
  font-size: 1rem;
}

.p-toppage__search input.gsc-input.is-inputed,
.p-toppage__search input.gsc-input:focus {
  font-size: 27.428px;
  font-size: 1.71429rem;
}

.p-toppage__search input.gsc-input {
  background-position: 1.5em center !important;
  margin-top: 0;
  width: 100%;
}

.p-toppage__search input.gsc-input::-webkit-input-placeholder {
  line-height: 1;
  position: relative;
}

.chrome .p-toppage__search input.gsc-input::-webkit-input-placeholder {
  top: -.1em;
}

.p-toppage__search input.gsc-input::-ms-input-placeholder {
  font-size: 14px;
}

.p-toppage__search .gsc-search-button {
  height: 44px;
  width: 47px;
}

.p-toppage__search input.gsc-search-button {
  background-color: transparent;
  border: none;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
  text-indent: -9999px;
}

.p-toppage__search #submit-2 {
  height: 44px;
  margin: 0;
  vertical-align: middle;
  width: 44px;
}

.p-toppage__search .gsc-control-cse {
  border: none;
  padding: 0;
}

.p-toppage__search .gsc-search-box {
  margin-bottom: 0;
}

.p-toppage__search .gsc-clear-button {
  display: none;
}

.p-toppage__hero {
  -webkit-filter: blur(0);
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur stdDeviation="0" /></filter></svg>#filter');
  filter: blur(0);
  overflow: hidden;
  position: relative;
  -webkit-transition: -webkit-filter .5s .5s, filter .5s .5s;
  transition: -webkit-filter .5s .5s, filter .5s .5s;
}

.p-toppage__hero .swiper-slide {
  height: 38vh;
  max-height: 220px;
  overflow: hidden;
  position: relative;
}

.p-toppage__hero .swiper-pagination {
  bottom: 10px;
  left: 0;
  padding-right: 20px;
  padding-top: 10px;
  text-align: right;
  width: 100%;
}

.p-toppage__hero .swiper-pagination-bullet {
  background-color: rgba(0, 0, 0, 0.1);
  border: solid 2px rgba(255, 255, 255, 0.2);
  border-radius: 11px;
  color: #fff;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  font-family: Roboto;
  font-size: 12px;
  font-weight: 600;
  line-height: 19px;
  margin-left: .75em;
  min-height: 21px;
  min-width: 21px;
  opacity: 1;
  text-align: center;
  width: auto;
}

.p-toppage__hero .swiper-pagination-bullet.is-search-sl {
  padding-left: .75em;
  padding-right: .75em;
}

.p-toppage__hero .swiper-pagination-bullet-active {
  background-color: #fff;
  color: #17194c;
}

.p-toppage__hero a {
  display: block;
}

.p-toppage__hero img {
  display: block;
  height: calc(100% - 42px);
  left: 50%;
  max-width: 1440px;
  position: absolute;
  top: 0;
  -webkit-transform: translateY(0) translateX(-50%);
  transform: translateY(0) translateX(-50%);
}

.p-top-contents {
  margin-top: 20px;
}

.p-top-contents h2 {
  line-height: 1.25;
  margin-top: .25em;
}

.p-top-contents h2 a {
  display: block;
  overflow: hidden;
  padding: 20px 50px 20px 20px;
  position: relative;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
}

.p-top-contents h2 a:hover {
  background-color: #17194c;
  color: #fff;
  -webkit-transition: background-color .3s, color .3s;
  transition: background-color .3s, color .3s;
}

.p-top-contents h2 a:hover {
  color: inherit;
  text-decoration: none;
}

.p-top-contents h2 a:hover:after {
  color: #b39b39;
}

.p-top-contents h2 a:hover span {
  display: block;
}

.p-top-contents h2 a:hover span[lang=en] {
  color: #b39b39;
}

.p-top-contents h2 a:hover span[lang=ja] {
  color: #fff;
}

.p-top-contents h2 a:after {
  color: #e5e5e5;
  content: "\f105";
  font-family: FontAwesome;
  font-size: 54.857px;
  font-size: 3.42857rem;
  font-weight: 400;
  position: absolute;
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: color .3s;
  transition: color .3s;
}

.p-top-contents h2 span {
  display: block;
  -webkit-transition: color .3s;
  transition: color .3s;
}

.p-top-contents h2 span[lang=en] {
  color: #17194c;
  font-size: 17.142px;
  font-size: 1.07143rem;
  font-weight: normal;
}

.is-lang-en .p-top-contents h2 span[lang=en] {
  color: #222;
  font-size: 41.142px;
  font-size: 2.57143rem;
  font-weight: normal;
}

.p-top-contents h2 span[lang=ja] {
  color: #222;
  font-size: 41.142px;
  font-size: 2.57143rem;
  font-weight: normal;
}

.p-top-contents__u {
  margin-bottom: 10px;
  position: relative;
  -webkit-transition: margin-bottom 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  transition: margin-bottom 0.3s cubic-bezier(0.19, 1, 0.22, 1);
  width: 100%;
  z-index: 1;
}

.p-top-contents__u > h2 {
  margin-bottom: 0;
  margin-left: -20px;
  margin-right: -20px;
  margin-top: -20px;
}

.p-top-contents__u .p-img {
  background-color: #222;
  background-position: center;
  background-size: cover;
  height: 130px;
  margin-left: -20px;
  margin-right: -20px;
}

.p-top-contents__u .p-img img {
  display: none;
}

.p-top-contents__u .p-list {
  line-height: 1.25;
  z-index: 2;
}

.p-top-contents__u .p-list ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.p-top-contents__u .p-list li {
  margin-right: 3em;
  margin-top: 1.25em;
}

.p-top-contents__u .p-list span {
  display: block;
}

.p-top-contents__u .p-list span[lang=en] {
  font-family: Roboto Condensed;
  font-size: 17.142px;
  font-size: 1.07143rem;
  font-weight: 100;
}

.p-top-contents__u .p-list span[lang=ja] {
  font-size: 14.857px;
  font-size: .92857rem;
  font-weight: 400;
}

.p-top-contents__u .p-sw--p-list {
  background-color: #f7f7f7;
  border-radius: 100%;
  bottom: 20px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  cursor: pointer;
  display: block;
  height: 35px;
  position: absolute;
  right: 20px;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
  width: 35px;
}

.p-top-contents__u .p-sw--p-list:hover {
  background-color: #17194c;
}

.p-top-contents__u .p-sw--p-list:hover i {
  background-color: #fff;
}

.p-top-contents__u .p-sw--p-list i {
  background-color: #999;
  border-radius: 100%;
  display: block;
  height: 3px;
  left: 50%;
  position: absolute;
  top: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 3px;
}

.p-top-contents__u .p-sw--p-list i:nth-child(1) {
  -webkit-transform: translateX(-50%) translateY(-7px);
  transform: translateX(-50%) translateY(-7px);
}

.p-top-contents__u .p-sw--p-list i:nth-child(2) {
  -webkit-transform: translateX(-50%) translateY(-1px);
  transform: translateX(-50%) translateY(-1px);
}

.p-top-contents__u .p-sw--p-list i:nth-child(3) {
  -webkit-transform: translateX(-50%) translateY(5px);
  transform: translateX(-50%) translateY(5px);
}

.p-top-contents__u .p-sw--p-list:after {
  background-color: #b39b39;
  content: "";
  display: none;
  height: 30px;
  left: 50%;
  position: absolute;
  top: calc(100% + 25px);
  -webkit-transform: translateX(-50%) rotate(45deg);
  transform: translateX(-50%) rotate(45deg);
  visibility: hidden;
  width: 30px;
}

.p-top-contents__u .p-gc_copy.c-gnav-child {
  background-color: #fff;
  box-shadow: 0 1px 7px rgba(0, 0, 0, 0.07);
  display: none;
  height: 0;
  left: -20px;
  overflow: hidden;
  position: relative;
  top: 30px;
  -webkit-transform: translateX(0);
  transform: translateX(0);
  -webkit-transition: top .3s;
  transition: top .3s;
  width: calc(100% + 40px);
  z-index: 2;
}

.p-top-contents__u .p-gc_copy.c-gnav-child:before {
  background-color: #17194c;
  bottom: -10px;
  content: "";
  left: 50%;
  position: absolute;
  top: -10px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 200%;
  z-index: -1;
}

.p-top-contents__u .p-gc_copy.c-gnav-child .c-gc-u {
  margin-left: auto;
  margin-right: auto;
  max-width: 1160px;
}

.p-top-contents__u .p-gc_copy.c-gnav-child .c-gc-u > div {
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
}

.p-top-contents__u .p-gc_copy.c-gnav-child .c-gnav-child__hd {
  display: none;
  width: 100%;
}

.p-top-contents__u .p-gc_copy.c-gnav-child .c-gnav-child__hd h2 span[lang=en] {
  color: #b39b39;
  font-family: Roboto;
  margin-bottom: 0;
}

.p-top-contents__u .p-gc_copy.c-gnav-child .c-gnav-child__dm1 {
  background-color: rgba(0, 0, 0, 0.03);
  padding-bottom: 10px;
  padding-top: 10px;
  width: 50%;
}

.p-top-contents__u .p-gc_copy.c-gnav-child .c-gnav-child__dm1 a.is-show {
  background-color: rgba(0, 0, 0, 0.037);
}

.p-top-contents__u .p-gc_copy.c-gnav-child .c-gnav-child__dm1 i:after {
  color: rgba(23, 25, 76, 0.5);
}

.p-top-contents__u .p-gc_copy.c-gnav-child .c-gnav-child__dm2 {
  background-color: rgba(0, 0, 0, 0.06);
  padding-bottom: 10px;
  padding-top: 10px;
  width: 50%;
}

.p-top-contents__u .p-gc_copy.c-gnav-child .c-gnav-child__dm2 ul {
  -webkit-column-count: 1;
  -moz-column-count: 1;
  column-count: 1;
}

.p-top-contents__u .p-gc_copy.c-gnav-child ul a {
  color: #17194c;
}

.p-top-contents__u .p-gc_copy.c-gnav-child ul a:visited:hover,
.p-top-contents__u .p-gc_copy.c-gnav-child ul a:hover {
  color: #b39b39;
}

.p-top-contents__u .p-gc_copy.c-gnav-child ul a:visited {
  color: #17194c;
}

.p-top-contents__u.is-gcc-show {
  z-index: 2;
}

.p-top-contents__u.is-gcc-show .p-sw--p-list:after {
  visibility: visible;
}

.p-top-contents__u.is-gcc-show .p-gc_copy_inn {
  overflow: hidden;
  position: relative;
  z-index: 2;
}

.p-top-contents__u.is-gcc-show .p-gc_copy {
  height: auto;
  overflow: visible;
}

.p-top-contents__u.is-gcc-show .p-gc_copy .c-gc-u {
  background-color: #fff;
  height: auto;
  position: relative;
  -webkit-transition: height .3s 0, visibility 0 0;
  transition: height .3s 0, visibility 0 0;
  visibility: visible;
  z-index: 2;
}

.p-top-contents__u.is-gcc-show .p-gc_copy .c-gc-u > div {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
}

.p-top-contents__u.is-left .p-gc_copy {
  left: 0;
  right: auto;
}

.p-top-contents__u.is-right .p-gc_copy {
  left: auto;
  right: 0;
}

.p-news {
  background-color: #fff;
  position: relative;
}

.p-news:before {
  background-color: #f9f9f9;
  content: "";
  display: none;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 25%;
}

.p-news > div {
  position: relative;
}

.p-news__headlines {
  padding-bottom: 30px;
  padding-top: 30px;
  width: 100%;
}

.p-news__headlines h2 {
  color: #a98c17;
  line-height: 1.25;
  margin-top: 0;
}

.p-news__headlines h2 span {
  display: block;
}

.p-news__headlines h2 span[lang=en] {
  font-size: 68.571px;
  font-size: 4.28571rem;
  font-weight: 100;
}

.p-news__headlines h2 span[lang=ja] {
  font-size: 17.142px;
  font-size: 1.07143rem;
  font-weight: 300;
}

.p-news__hd {
  border-bottom: solid 2px #f0f0f0;
  position: relative;
}

.p-news__nav {
  border-bottom: solid 1px #f0f0f0;
  padding-bottom: 10px;
  padding-top: 10px;
}

.p-news__nav ul {
  display: flex;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  font-size: .78571rem;
  font-size: 12.571px;
  line-height: 1;
  list-style: none;
  margin: 0;
  padding: 0;
}

.p-news__nav li {
  margin-bottom: .75em;
  margin-right: 1em;
  margin-top: .5em;
}

.p-news__nav a {
  background-color: #f9f9f9;
  border-radius: 1em;
  box-shadow: 0 2px 0 rgba(0, 0, 0, 0.2);
  display: block;
  font-weight: 300;
  overflow: hidden;
  padding: .5em 1em .4em;
  position: relative;
  text-decoration: none;
  -webkit-transition: background-color .1s;
  transition: background-color .1s;
}

.p-news__nav a.is-current {
  background-color: #b39b39;
  box-shadow: none;
  color: #fff;
  font-weight: 500;
  top: 2px;
}

.p-news__nav a.is-current:hover {
  background-color: #b39b39;
}

.p-news__nav a:hover {
  background-color: #17194c;
  color: #fff;
  -webkit-transition: background-color .3s, color .3s;
  transition: background-color .3s, color .3s;
}

.p-news__nav a:active {
  box-shadow: none;
  top: 2px;
}

.p-news__list {
  padding-top: .5em;
}

.p-news__list dl {
  margin-bottom: 1.5em;
  margin-top: 1.75em;
}

.p-news__list dl.is-hide {
  display: none;
}

.p-news__list dt {
  font-size: 12.571px;
  font-size: .78571rem;
  line-height: 1;
  margin-bottom: .5em;
}

.p-news__list dt strong {
  background-color: #17194c;
  border-radius: 1em;
  color: #fff;
  font-weight: 400;
  margin-right: 1em;
  padding: .3em 1em .15em;
}

.p-news__list dt span {
  color: rgba(34, 34, 34, 0.7);
}

.p-news__list dd {
  font-size: 17.142px;
  font-size: 1.07143rem;
  font-weight: 400;
  line-height: 1.5;
  margin-left: 0;
}

.p-news__list dd [lang=en] {
  font-weight: 300;
  line-height: 1.5;
  margin-bottom: .1em;
}

.p-news__link {
  font-size: 13.714px;
  font-size: .85714rem;
  margin-top: 30px;
}

.p-news__link ul {
  margin: 0;
}

.p-news__link a {
  display: inline-block;
  font-weight: 300;
  line-height: 1.5;
}

.p-news__side {
  background-color: #f9f9f9;
  margin-left: -10px;
  margin-right: -10px;
  padding-bottom: 30px;
  padding-left: 10px;
  padding-right: 10px;
  padding-top: 30px;
  width: calc(100% + 20px);
}

.p-news__tw {
  margin-bottom: 20px;
}

.p-news__tw #document.timeline-Widget {
  display: none;
}

.p-news__banners {
  text-align: center;
}

.p-news__banners ul {
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: center;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
}

.p-news__banners li {
  display: block;
  margin-bottom: 10px;
  margin-left: 10px;
  margin-right: 10px;
  margin-top: 10px;
  width: 280px;
}

.p-news__banners a {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.p-news__banners img {
  display: block;
}

.p-news .c-headline-parts {
  min-height: 4.5em;
  position: relative;
}

.p-news .c-headline-parts > ul {
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
}

.p-news .c-headline-parts > ul > li {
  display: inline-block;
  margin-bottom: .5em;
  margin-left: 0;
  margin-right: 2em;
}

.p-news .c-headline-parts > ul > li:nth-child(3) {
  margin-right: 0;
}

.p-top-banners {
  background-color: #17194c;
  color: #fff;
  padding-bottom: 30px;
  padding-top: 30px;
}

.p-top-banners h2 {
  line-height: 1.25;
  margin-top: .5em;
}

.p-top-banners h2 span[lang=en] {
  color: #b39b39;
  display: block;
  font-family: Roboto;
  font-size: 45.714px;
  font-size: 2.85714rem;
  font-weight: 100;
}

.p-top-banners h2 span[lang=ja] {
  font-size: 18.285px;
  font-size: 1.14286rem;
  font-weight: 500;
}

.p-top-banners h2 small {
  font-weight: 400;
}

.p-top-banners ul {
  list-style: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

.p-top-banners li {
  margin-bottom: 5px;
  margin-top: 5px;
}

.p-top-banners a {
  border: solid 2px rgba(255, 255, 255, 0.5);
  color: #fff;
  display: block;
  overflow: hidden;
  padding: 15px 20px 30px;
  position: relative;
  text-decoration: none;
  -webkit-transition: background-color .2s;
  transition: background-color .2s;
}

.p-top-banners a:hover {
  background-color: #fff;
  color: #17194c;
  -webkit-transition: background-color .3s, color .3s;
  transition: background-color .3s, color .3s;
}

.p-top-banners a:after {
  bottom: .75em;
  content: "\f105";
  font-family: FontAwesome;
  font-size: 45.714px;
  font-size: 2.85714rem;
  height: 0;
  line-height: 0;
  position: absolute;
  right: .75em;
  width: 0;
}

.p-top-banners a span {
  display: block;
  line-height: 1.5;
}

.p-top-banners a span[lang=en] {
  font-family: Roboto Condensed;
  font-size: 27.428px;
  font-size: 1.71429rem;
  font-weight: 300;
}

.p-top-banners a span[lang=ja] {
  font-size: 17.142px;
  font-size: 1.07143rem;
}

.p-ft-util-banner {
  padding-bottom: 30px;
  padding-top: 30px;
}

.p-ft-util-banner__u {
  width: 100%;
}

.p-ft-util-banner h2 {
  font-size: 17.142px;
  font-size: 1.07143rem;
  line-height: 1.25;
  margin-top: .25em;
}

.p-ft-util-banner h2 span {
  display: block;
}

.p-ft-util-banner h2 span[lang=en] {
  font-weight: 100;
}

.p-ft-util-banner h2 span[lang=ja] {
  font-weight: 400;
}

.p-ft-util-banner .p-banner {
  margin-bottom: 10px;
}

.p-ft-util-banner a {
  background-color: #f7f7f7;
  border-radius: 2px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  display: block;
  height: 6em;
  line-height: 1.25;
  overflow: hidden;
  position: relative;
  text-decoration: none;
}

.p-ft-util-banner a:hover {
  background-color: #17194c;
  color: #fff;
  -webkit-transition: background-color .3s, color .3s;
  transition: background-color .3s, color .3s;
}

.p-ft-util-banner a:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  width: 0;
}

.p-ft-util-banner a i {
  display: inline-block;
  font-style: normal;
  vertical-align: middle;
}

.p-ft-util-banner a.p-banner-1 strong {
  display: block;
  font-size: 21px;
}

.p-ft-util-banner a.p-banner-1 small {
  font-size: 12px;
}

.p-ft-util-banner a.p-banner-1 span {
  display: block;
}

.p-ft-util-banner a.p-banner-1 span[lang=en] {
  font-family: Roboto Condensed;
  font-weight: 100;
}

.p-ft-util-banner a.p-banner-1 span[lang=ja] {
  font-weight: 600;
}

.p-ft-util-banner a.p-banner-2 span {
  display: block;
}

.p-ft-util-banner a.p-banner-2 span[lang=en] {
  font-family: Roboto Condensed;
  font-weight: 100;
}

.p-ft-util-banner a.p-banner-2 span[lang=ja] {
  font-weight: 600;
}

.p-ft-util-banner__a {
  text-align: center;
}

@media print, screen and (min-width: 21em) {
  .xs-show {
    display: block;
  }
}

@media print, screen and (min-width: 35.5em) {
  .sm-show {
    display: block;
  }
  .p-toppage__search__inn {
    bottom: 40px;
  }
  .p-toppage__search form:after {
    font-size: 2.14286rem;
    height: 56px;
    line-height: 56px;
    width: 56px;
  }
  .p-toppage__search input.gsc-input,
  .p-toppage__search #tmp_query-2 {
    font-size: 2.14286rem;
    height: 56px !important;
    padding-left: 18px !important;
    width: calc(100% - 59px);
  }
  .p-toppage__search input.gsc-input {
    font-size: 1rem;
  }
  .p-toppage__search input.gsc-input.is-inputed,
  .p-toppage__search input.gsc-input:focus {
    font-size: 2.14286rem;
  }
  .p-toppage__search input.gsc-input {
    width: 100%;
  }
  .p-toppage__search .gsc-search-button {
    height: 56px;
    width: 59px;
  }
  .p-toppage__search #submit-2 {
    height: 56px;
    width: 56px;
  }
  .p-toppage__hero .swiper-slide {
    height: auto;
    max-height: none;
  }
  .p-toppage__hero .swiper-pagination {
    margin-left: 25px;
    margin-right: 25px;
    padding-right: 0;
    width: calc(100% - 50px);
  }
  .p-toppage__hero img {
    height: auto;
    left: auto;
    position: relative;
    top: auto;
    -webkit-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
    width: 100%;
  }
  .p-top-contents {
    margin-top: 20px;
  }
  .p-top-contents__u {
    margin-top: 20px;
  }
  .p-top-contents__u {
    width: calc(50% - 10px);
  }
  .p-top-contents__u .p-sw--p-list:after {
    display: block;
  }
  .p-top-contents__u .p-gc_copy.c-gnav-child {
    display: block;
    position: absolute;
    top: calc(100% + 20px);
    width: calc(200% + 20px);
  }
  .p-top-contents__u .p-gc_copy.c-gnav-child .c-gnav-child__hd {
    display: block;
    padding: 0;
    width: 25%;
  }
  .p-top-contents__u .p-gc_copy.c-gnav-child .c-gnav-child__hd h2 {
    margin-top: 0;
  }
  .p-top-contents__u .p-gc_copy.c-gnav-child .c-gnav-child__hd h2 a:after {
    display: none;
  }
  .p-top-contents__u .p-gc_copy.c-gnav-child .c-gnav-child__dm1 {
    padding-bottom: 30px;
    padding-top: 30px;
    width: 25%;
  }
  .p-top-contents__u .p-gc_copy.c-gnav-child .c-gnav-child__dm2 {
    display: block;
    padding-bottom: 30px;
    padding-top: 30px;
    width: 50%;
  }
  .p-top-contents__u .p-gc_copy.c-gnav-child .c-gnav-child__dm2 ul {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
  }
  .p-top-contents__u.is-gcc-show .p-sw--p-list {
    background-color: #b39b39;
  }
  .p-top-contents__u.is-gcc-show .p-sw--p-list i {
    background-color: #fff;
  }
  .p-news .c-headline-parts {
    min-height: 0;
  }
  .p-news .c-headline-parts {
    left: 0;
    position: absolute;
  }
  .p-news .c-headline-parts > ul {
    padding-left: 150px;
  }
  .p-news .c-headline-parts > ul > li {
    display: list-item;
    margin-left: 2.5em;
    margin-right: 0;
  }
}

@media print, screen and (min-width: 48em) {
  .md-show {
    display: block;
  }
  .md-hide {
    display: none;
  }
  .p-toppage__hero .swiper-pagination {
    margin-left: 30px;
    margin-right: 30px;
    width: calc(100% - 60px);
  }
  .p-top-contents__u .p-gc_copy.c-gnav-child .c-gnav-child__hd {
    padding-left: 20px;
    padding-top: 25px;
  }
  .p-top-contents__u .p-gc_copy.c-gnav-child .c-gnav-child__hd h2 {
    margin-top: .25em;
  }
  .p-news__side {
    margin-left: -30px;
    margin-right: -30px;
    padding-left: 30px;
    padding-right: 30px;
    width: calc(100% + 60px);
  }
  .p-top-banners li {
    margin-bottom: 0;
    margin-top: 0;
  }
  .p-ft-util-banner {
    padding-bottom: 50px;
    padding-top: 50px;
  }
  .p-ft-util-banner .p-banner {
    margin-bottom: 0;
  }
}

@media print, screen and (min-width: 64em) {
  .lg-show {
    display: block;
  }
  .p-toppage__search__inn {
    bottom: 70px;
  }
  .p-toppage__search form:after {
    font-size: 2.85714rem;
    height: 76px;
    line-height: 76px;
    width: 76px;
  }
  .p-toppage__search input.gsc-input,
  .p-toppage__search #tmp_query-2 {
    font-size: 2.71429rem;
    height: 76px !important;
    padding-left: 24px !important;
    width: calc(100% - 80px);
  }
  .p-toppage__search input.gsc-input {
    font-size: 1rem;
  }
  .p-toppage__search input.gsc-input.is-inputed,
  .p-toppage__search input.gsc-input:focus {
    font-size: 2.71429rem;
  }
  .p-toppage__search input.gsc-input {
    width: 100%;
  }
  .p-toppage__search .gsc-search-button {
    height: 76px;
    width: 80px;
  }
  .p-toppage__search #submit-2 {
    height: 76px;
    width: 76px;
  }
  .p-toppage__hero .swiper-pagination {
    bottom: 25px;
    margin-left: 50px;
    margin-right: 50px;
    padding-top: 25px;
    width: calc(100% - 100px);
  }
  .p-news:before {
    display: block;
  }
  .p-news__headlines {
    padding-bottom: 60px;
    padding-right: 70px;
    padding-top: 50px;
    width: calc(100% - 310px);
  }
  .p-news__side {
    margin-left: 0;
    margin-right: 0;
    padding-bottom: 60px;
    padding-left: 30px;
    padding-right: 0;
    padding-top: 60px;
    width: 310px;
  }
  .p-news__banners li {
    margin-left: 0;
    margin-right: 0;
    margin-top: 0;
  }
  .p-news .c-headline-parts > ul > li {
    margin-right: 0;
  }
  .p-news .c-headline-parts > ul > li:nth-child(3) {
    margin-right: 0;
  }
  .p-ft-util-banner__u.mod-r {
    width: 38%;
  }
}

@media print, screen and (min-width: 72.5em) {
  .sw-show {
    display: block;
  }
}

@media print, screen and (min-width: 80em) {
  .xl-show {
    display: block;
  }
  .c-user-nav {
    right: 0;
    width: 220px;
  }
  .p-news .c-headline-parts > ul > li {
    margin-right: 2.5em;
  }
  .p-news .c-headline-parts > ul > li:nth-child(3) {
    margin-right: 2.5em;
  }
}

@media print, screen and (min-width: 85em) {
  .fw-show {
    display: block;
  }
}

@media print, screen and (min-width: 90em) {
  .xxl-show {
    display: block;
  }
  .p-toppage__hero .swiper-slide {
    height: 710px;
  }
  .p-toppage__hero img {
    left: 50%;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
  }
}

@media (max-width: 63.9999em) {
  .lg-down-show {
    display: block;
  }
}

@media (max-width: 47.9999em) {
  .md-down-show {
    display: block;
  }
}

@media (max-width: 35.4999em) {
  .sm-down-show {
    display: block;
  }
  .p-top-contents__u {
    margin-bottom: 10px !important;
  }
  .p-top-contents__u .p-gc_copy.c-gnav-child .c-gc-u {
    width: 200%;
  }
  .p-top-contents__u.is-gcc-show .p-gc_copy .c-gc-u {
    max-height: 60vh;
  }
}

@media (max-width: 20.9999em) {
  .xs-down-show {
    display: block;
  }
}

.p-top-mainVisual {
  background-color: #f0f0f0;
  padding: 10px 0 0;
}

@media print, screen and (min-width: 35.5em) {
  .p-top-mainVisual {
    padding: 60px 0 0;
  }
}

@media print, screen and (min-width: 64em) {
  .p-top-mainVisual {
    padding: 120px 50px 0;
  }
}

.p-top-mainVisual_container {
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  max-width: 1160px;
}

@media print, screen and (min-width: 64em) {
  .p-top-mainVisual_container {
    flex-direction: row;
  }
}

.p-top-mainVisual_aside {
  background-color: #333;
  order: 2;
  padding: 20px 10px;
}

@media print, screen and (min-width: 35.5em) {
  .p-top-mainVisual_aside {
    padding: 40px 25px;
  }
}

@media print, screen and (min-width: 48em) {
  .p-top-mainVisual_aside {
    padding: 40px 30px;
  }
}

@media print, screen and (min-width: 64em) {
  .p-top-mainVisual_aside {
    flex: 0 0 25%;
    max-width: 25%;
    order: 1;
    padding: 20px;
  }
}

.p-top-mainVisual_banner {
  margin-left: -10px;
  overflow: hidden;
}

.p-top-mainVisual_banner_item {
  display: block;
  float: left;
  line-height: 1.25;
  margin-bottom: 10px;
  margin-left: 10px;
  transition: background-color .3s,color .3s;
}

.p-top-mainVisual_banner_item span {
  display: inline-block;
  width: 100%;
}

.p-top-mainVisual_banner_item-toyowebstyle {
  background-color: #b39b39;
  color: #fff;
  padding: 2em 0;
  text-align: center;
  width: calc(100% - 10px);
}

@media print, screen and (min-width: 64em) {
  .p-top-mainVisual_banner_item-toyowebstyle {
    padding: 1.75em 0;
  }
}

@media print, screen and (min-width: 80em) {
  .p-top-mainVisual_banner_item-toyowebstyle {
    padding: 3em 0;
  }
}

.p-top-mainVisual_banner_item-toyowebstyle:hover {
  background-color: #8c7a2d;
  color: #fff;
}

.p-top-mainVisual_banner_item-toyowebstyle span[lang="ja"] {
  font-size: 1em;
}

@media print, screen and (min-width: 80em) {
  .p-top-mainVisual_banner_item-toyowebstyle span[lang="ja"] {
    font-size: 1.25em;
  }
}

.p-top-mainVisual_banner_item-toyowebstyle span[lang="en"] {
  font-size: 1.75em;
}

@media print, screen and (min-width: 80em) {
  .p-top-mainVisual_banner_item-toyowebstyle span[lang="en"] {
    font-size: 2em;
  }
}

.p-top-mainVisual_banner_item-normal {
  background-color: #222;
  color: #fff;
  padding: 1em;
  position: relative;
  text-align: left;
  width: calc(50% - 10px);
}

@media print, screen and (min-width: 64em) {
  .p-top-mainVisual_banner_item-normal {
    width: calc(100% - 10px);
  }
}

@media print, screen and (min-width: 80em) {
  .p-top-mainVisual_banner_item-normal {
    padding: 1.5em 1em;
  }
}

.p-top-mainVisual_banner_item-normal:after {
  content: "\f054";
  font-family: "fontawesome";
  line-height: 1;
  position: absolute;
  right: 10px;
  top: calc(50% - .5em);
}

.p-top-mainVisual_banner_item-normal:hover {
  background-color: #090909;
  color: #fff;
}

.p-top-mainVisual_banner_item-normal span[lang="ja"] {
  font-size: 1.14285714286em;
}

.p-top-mainVisual_banner_item-normal span[lang="en"] {
  font-size: .85714285714em;
  opacity: .5;
}

.p-top-mainVisual_search .gsc-search-box-tools .gsc-search-box .gsc-input {
  padding: 0;
}

.p-top-mainVisual_search .gsc-input-box {
  border: none;
}

.p-top-mainVisual_search .cse .gsc-search-button-v2,
.p-top-mainVisual_search .gsc-search-button-v2 {
  background-color: #b39b39;
  border: none;
  border-radius: 0;
  margin: 0;
  padding: 14px;
  transition: background-color .3s,color .3s;
}

.p-top-mainVisual_search .cse .gsc-search-button-v2:hover,
.p-top-mainVisual_search .gsc-search-button-v2:hover {
  background-color: #8c7a2d;
}

.p-top-mainVisual_search .gsib_a {
  padding: 11px;
}

.p-top-mainVisual_search .gsst_a {
  padding: 10px;
}

.p-top-mainVisual_search .gsst_a .gscb_a {
  color: #999;
  transition: background-color .3s,color .3s;
}

.p-top-mainVisual_search .gsst_a .gscb_a:hover {
  color: gray;
}

.p-top-mainVisual_search form.gsc-search-box,
.p-top-mainVisual_search table.gsc-search-box {
  margin-bottom: 0;
}

.p-top-mainVisual_slider {
  order: 1;
  position: relative;
}

@media print, screen and (min-width: 64em) {
  .p-top-mainVisual_slider {
    flex: 0 0 75%;
    max-width: 75%;
    order: 2;
  }
}

.p-top-mainVisual_slider .swiper-pagination {
  bottom: 20px;
  padding: 0;
  position: absolute;
  right: 20px;
  z-index: 1;
}

.p-top-mainVisual_slider .swiper-pagination-bullet {
  background-color: #fff;
  color: #666;
  font-size: .71428571428em;
  height: auto;
  line-height: 1.5em;
  margin-left: .5em;
  opacity: 1;
  width: 1.5em;
}

.p-top-mainVisual_slider .swiper-pagination-bullet-active {
  background-color: #17194c;
  color: #fff;
}

.p-top-notice {
  background-color: #fff;
  padding: 20px 0;
}

@media print, screen and (min-width: 64em) {
  .p-top-notice {
    padding: 30px 0;
  }
}

.p-top-notice_block {
  background-color: #fff;
  border: 2px solid #e63b3b;
}

@media print, screen and (min-width: 64em) {
  .p-top-notice_block {
    border-width: 4px;
    display: flex;
  }
}

.p-top-notice_header {
  background-color: #e63b3b;
  color: #fff;
  font-size: 1.28571429em;
  line-height: 1.25;
  margin: 0;
  padding: .5em 10px;
  text-align: center;
}

@media print, screen and (min-width: 64em) {
  .p-top-notice_header {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 1em 20px;
  }
}

.p-top-notice_header i {
  margin-right: .5em;
}

@media print, screen and (min-width: 64em) {
  .p-top-notice_header i {
    font-size: 1.55555556em;
    margin-bottom: .25em;
    margin-right: 0;
  }
}

.p-top-notice_header i.fa-exclamation-triangle:before {
  content: "\f071";
}

@media print, screen and (min-width: 64em) {
  .p-top-notice_header span {
    display: inline-block;
    white-space: nowrap;
    width: 100%;
  }
}

@media print, screen and (min-width: 64em) {
  .p-top-notice_header span[lang="en"] {
    font-size: .666666667em;
  }
}

.p-top-notice_header span[lang="en"] + [lang="ja"]:before {
  content: " / ";
}

@media print, screen and (min-width: 64em) {
  .p-top-notice_header span[lang="en"] + [lang="ja"]:before {
    display: none;
  }
}

.p-top-notice_body {
  flex: 1 1 auto;
  font-size: 1.28571429em;
  padding: 0 10px;
}

@media print, screen and (min-width: 64em) {
  .p-top-notice_body {
    padding: 0 20px;
  }
}

.p-top-target {
  background-color: #17194c;
  padding: 20px 0;
}

@media print, screen and (min-width: 64em) {
  .p-top-target {
    padding: 30px 0;
  }
}

.p-top-target_list {
  display: flex;
  flex-wrap: wrap;
  margin-left: -10px;
}

@media print, screen and (min-width: 64em) {
  .p-top-target_list {
    flex-wrap: nowrap;
  }
}

.p-top-target_item {
  background-color: #fff;
  color: #333;
  display: flex;
  flex-direction: column;
  font-size: 1.16666667em;
  line-height: 1.25;
  margin-bottom: 10px;
  margin-left: 10px;
  padding: 20px 10px;
  position: relative;
  text-align: center;
  transition: background-color .3s,color .3s;
  width: calc(33.3333% - 10px);
}

@media print, screen and (min-width: 64em) {
  .p-top-target_item {
    flex: 1 1 auto;
    margin-bottom: 0;
    width: 100%;
  }
}

.p-top-target_item:hover {
  background-color: #a99765;
  color: #fff;
  text-decoration: none;
}

.p-top-target_item:hover:after {
  border-color: transparent transparent #fff transparent;
}

.p-top-target_item:hover i {
  color: #fff;
}

.p-top-target_item:after {
  border-color: transparent transparent #a99765 transparent;
  border-style: solid;
  border-width: 0 0 10px 10px;
  bottom: 5px;
  content: "";
  height: 0;
  position: absolute;
  right: 5px;
  transition: border-color .3s,color .3s;
  width: 0;
}

.p-top-target_item:nth-child(1), .p-top-target_item:nth-child(2) {
  justify-content: center;
  padding: 20px 20px 20px 4em;
  text-align: left;
  width: calc(50% - 10px);
}

@media print, screen and (min-width: 64em) {
  .p-top-target_item:nth-child(1), .p-top-target_item:nth-child(2) {
    padding: 20px;
    text-align: center;
    width: 100%;
  }
}

.p-top-target_item:nth-child(1) i, .p-top-target_item:nth-child(2) i {
  left: .5em;
  line-height: 1;
  position: absolute;
  top: calc(50% - .5em);
}

@media print, screen and (min-width: 64em) {
  .p-top-target_item:nth-child(1) i, .p-top-target_item:nth-child(2) i {
    position: static;
  }
}

.p-top-target_item i {
  color: #17194c;
  font-size: 2.28571429em;
  margin-bottom: .5em;
  transition: background-color .3s,color .3s;
}

.p-top-target_item i.fa-pencil:before {
  content: "\f040";
}

.p-top-target_item i.fa-book:before {
  content: "\f02d";
}

.p-top-target_item i.fa-graduation-cap:before {
  content: "\f19d";
}

.p-top-target_item i.fa-users:before {
  content: "\f0c0";
}

.p-top-target_item i.fa-building:before {
  content: "\f1ad";
}

.p-top-target_item span {
  display: inline-block;
  width: 100%;
}

.p-top-target_item span[lang="en"] {
  font-size: .714285714em;
  opacity: .5;
}

.p-top-personalizeLink {
  background-color: #fff;
  border-bottom: 1px solid #ccc;
  border-top: 1px solid #ccc;
}

@media print, screen and (min-width: 64em) {
  .p-top-personalizeLink {
    padding: 1.5rem 0;
  }
}

.p-top-personalizeLink_block > ._label {
  display: block;
  font-weight: bold;
  line-height: 1.3334;
  padding: 1.5rem;
  position: relative;
  text-align: center;
}

@media print, screen and (min-width: 64em) {
  .p-top-personalizeLink_block > ._label {
    color: #333;
    margin-bottom: 1rem;
    padding: 0;
    pointer-events: none;
  }
}

.p-top-personalizeLink_block > ._label:after {
  content: "\f054";
  font-family: "fontawesome";
  font-weight: normal;
  line-height: 1;
  position: absolute;
  right: 0;
  top: calc(50% - .5em);
}

@media print, screen and (min-width: 64em) {
  .p-top-personalizeLink_block > ._label:after {
    display: none;
  }
}

.p-top-personalizeLink_block > ._label span {
  display: block;
}

.p-top-personalizeLink_block > ._label span[lang="en"] {
  font-size: .833rem;
}

@media print, screen and (min-width: 64em) {
  .p-top-personalizeLink_block > ._label span[lang="en"] {
    font-size: .7143rem;
  }
}

.is-lang-en .p-top-personalizeLink_block > ._label span[lang="en"] {
  font-size: 1.1667rem;
}

@media print, screen and (min-width: 64em) {
  .is-lang-en .p-top-personalizeLink_block > ._label span[lang="en"] {
    font-size: .8571rem;
  }
}

.p-top-personalizeLink_block > ._label span[lang="ja"] {
  font-size: 1.1667rem;
}

@media print, screen and (min-width: 64em) {
  .p-top-personalizeLink_block > ._label span[lang="ja"] {
    font-size: .8571rem;
  }
}

.p-top-personalizeLink_block > ._link {
  align-items: center;
  display: none;
  justify-content: center;
  line-height: 1.3334;
}

@media print, screen and (min-width: 64em) {
  .p-top-personalizeLink_block > ._link {
    display: flex;
  }
}

.p-top-personalizeLink_block > ._link > ._item {
  position: relative;
}

@media print, screen and (min-width: 64em) {
  .p-top-personalizeLink_block > ._link > ._item {
    max-width: 16em;
  }
}

.p-top-personalizeLink_block > ._link > ._item + ._item {
  margin-left: 2em;
}

.p-top-personalizeLink_block > ._link > ._item + ._item:before {
  content: "\f054";
  font-family: "fontawesome";
  font-size: .7143rem;
  font-weight: normal;
  left: -1.5em;
  line-height: 1;
  opacity: .3334;
  position: absolute;
  top: calc(50% - .5em);
}

.p-top-personalizeLink_block > ._link > ._item span {
  display: block;
}

.p-top-personalizeLink_block > ._link > ._item span[lang="en"] {
  font-size: .833rem;
}

.is-lang-en .p-top-personalizeLink_block > ._link > ._item span[lang="en"] {
  font-size: 1rem;
}

.p-top-personalizeLink_block > ._link > ._item span[lang="en"] + [lang="ja"] {
  margin-top: .3334em;
}

.p-top-personalizeLink_block > ._link > ._item span[lang="ja"] {
  font-size: 1rem;
}

.c-box-admissions {
  background-color: #fff;
  border: 2px solid #17194c;
  box-shadow: 0 1px 7px rgba(0, 0, 0, 0.03);
}

.c-box-admissions h2 {
  background-color: #17194c;
  margin: 0;
  padding: 20px;
}

.c-box-admissions h2 span[lang="en"], .c-box-admissions h2 span[lang="ja"] {
  color: #fff;
}

.is-lang-en .c-box-admissions h2 span[lang="en"] {
  color: #fff;
  font-size: 17.142px;
  font-size: 1.07143rem;
  font-weight: normal;
}

.c-box-admissions .p-band {
  background-color: #a99765;
  color: #fff;
  padding: 5px 20px;
  text-align: center;
}

.c-box-admissions .p-list ul {
  height: 100%;
}

.c-box-admissions .p-list li {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  margin: 0;
}

.c-box-admissions .p-list li a {
  display: block;
  padding: 20px;
  position: relative;
  transition: background-color .3s;
}

.c-box-admissions .p-list li a:after {
  color: #e5e5e5;
  content: "\f105";
  font-family: "fontawesome";
  font-size: 2.28571428571em;
  line-height: 1;
  position: absolute;
  right: 20px;
  top: calc(50% - .5em);
  transition: color .3s;
}

.c-box-admissions .p-list li a:hover {
  background-color: #17194c;
  text-decoration: none;
}

.c-box-admissions .p-list li a:hover:after {
  color: #a99765;
}

.c-box-admissions .p-list li a:hover span[lang="ja"] {
  color: #fff;
}

.c-box-admissions .p-list li a span[lang="en"] {
  color: #a99765;
  font-size: 1em;
}

.c-box-admissions .p-list li a span[lang="ja"] {
  font-size: 1.42857143em;
  transition: color .3s;
}
