@charset "UTF-8";

a {
  cursor: pointer;
  transition: 0.2s;
}

a:hover {
  opacity: 0.8;
}

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

.en {
  font-family: 'Cormorant Unicase', serif;
  font-weight: bold;
  font-size: 1.2rem;
}

.mincho {
  font-family: "Yu Mincho", "YuMincho", serif !important;
}

.blueTxt {
  color: #0046C6;
}

body {
  position: relative;
  font-size: 18px;
  color: #333;
  font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, 'MS PGothic', arial, helvetica, sans-serif;
}

header.pc {
  position: fixed;
  top: 0;
  right: 0;
  border-left: 1px solid #eee;
  width: 200px;
  height: 100vh;
  z-index: 99;
}

header.pc ul li {
  font-family: 'Cormorant Unicase', serif;
  font-weight: bold;
  letter-spacing: 0.12rem;
}

header.pc ul li ul {
  position: absolute;
  right: 200px;
  top: -1400px;
  height: 100vh;
  background-color: rgba(0, 70, 198, 0.7);
  width: 180px;
  transition: 1s;
  padding-top: 100px;
}

header.pc ul li ul li a {
  padding: 40px 0;
  color: #fff;
  text-align: center;
  display: block;
}

header.pc ul li:hover ul {
  top: 0;
}

header.pc ul li a {
  transition: 0.6;
  padding: 30px 0 30px 20px;
  display: block;
  font-size: 1.3rem;
}

header.pc ul li a:hover {
  color: #0046C6;
}

header.pc ul li:last-child a {
  background: linear-gradient(-135deg, #0046C6, #2482FF);
  color: #fff;
  padding: 30px 0;
  text-align: center;
}

header.pc ul li a span:first-child {
  display: block;
  font-size: 0.6em;
  padding-bottom: 5px;
  color: #fff;
}

header.pc ul li a span:last-child {
  background-color: #fff;
  color: #0046C6;
  display: inline-block;
  padding: 10px 20px;
}

header.pc ul li img {
  width: 60%;
  display: inline-block;
}


.mvArea01 {
  height: 100vh;
  background-size: cover !important;
  background-attachment: fixed !important;
  position: relative;
}

.mvArea01 h1 {
  font-size: 7.1rem;
  font-family: 'Cormorant Unicase', serif;
  color: #0046C6;
  letter-spacing: 3rem !important;
  line-height: 8rem !important;
}

.mvArea01 h1 span {
  font-family: "Yu Mincho", "YuMincho", serif;
  font-size: 2.1rem;
}


.mvArea02 {
  height: 50vh;
  background-size: cover !important;
  background-attachment: fixed !important;
}

h2 {
  font-family: "Yu Mincho", "YuMincho", serif !important;
  line-height: 4rem !important;
  text-align: center;
  padding-top: 80px !important;
  font-size: 2rem;
}

h2 span {
  font-family: 'Cormorant Unicase', serif;
  font-size: 5rem;
  display: block;
}

.type02Title h2 {
  padding-bottom: 70px;
  letter-spacing: 1rem;
}

.contents {
  width: calc(100% - 200px);
  z-index: 2;
}

.linkBtn {
  text-align: center;
}

.linkBtn a {
  background: linear-gradient(-135deg, #0046C6, #2482FF);
  color: #fff;
  font-family: 'Cormorant Unicase', serif;
  font-size: 1.3rem;
  font-weight: bold;
  padding: 24px 0;
  width: 420px;
  display: inline-block;
  position: relative;
  letter-spacing: 0.3rem;
}


.linkBtn a::after {
  content: '';
  display: inline-block;
  width: 25px;
  height: 25px;
  background-image: url(/lib/cmn_img/btnPlusIcon.png);
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.linkBtn02 {
  text-align: center;
}

.linkBtn02 a {
  background: #111;
  color: #fff;
  font-family: 'Cormorant Unicase', serif;
  font-size: 1.3rem;
  font-weight: bold;
  padding: 20px 140px;
  display: inline-block;
  position: relative;
  letter-spacing: 0.3rem;
}


.linkBtn02 a::after {
  content: '';
  display: inline-block;
  width: 25px;
  height: 25px;
  background-image: url(/lib/cmn_img/btnPlusIcon.png);
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.linkBtn03 {
  text-align: center;
}

.linkBtn03 a {
  color: #fff;
  font-family: 'Cormorant Unicase', serif;
  font-size: 1.3rem;
  font-weight: bold;
  padding: 20px 140px;
  display: inline-block;
  position: relative;
  border: 1px solid #fff;
  letter-spacing: 0.3rem;
}

.linkBtn03 a::after {
  content: '';
  display: inline-block;
  width: 25px;
  height: 25px;
  background-image: url(/lib/cmn_img/btnPlusIcon.png);
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}


footer {
  padding-bottom: 60px !important;
  margin-top: 90px !important;
}

footer .recuruitLink {
  background: url(/lib/cmn_img/recuruitArea.jpg) no-repeat center;
  background-size: cover;
  padding: 80px 0 100px;
  background-attachment: fixed;
}

footer h2 {
  color: #fff;
}

footer .recuruitBtnWrap {
  margin: 40px auto 0;
  display: -webkit-flex;
  display: flex;
  width: 80%;
}

footer .linkBtn {
  margin: 0 auto;
}

footer .linkBtn a {}

footer .footerLogoWrap {
  margin: 180px auto 0;
  display: flex;
  width: 70%;
}

footer .footerLogoWrap p {
  margin: 0 auto;
}

footer .footerLogoWrap a {
  width: 90%;
  display: inline-block;
}

footer small {
  margin-top: 80px;
  text-align: center;
  font-size: 0.8rem;
  display: block;
}

.drawer-menu li ul {
  display: none;
}

.drawer-menu li ul li a {
  padding-top: 30px;
  display: block;
  color: rgba(0, 70, 198, 0.7);
}

.bgGrad {
  background: linear-gradient(-135deg, #0046C6, #2482FF);
}

.pc {
  display: block;
}

.sp {
  display: none;
}
