@charset "utf-8";
/*==================================================
スライダーのためのcss
===================================*/
/* -------------------------------------------
全体
-------------------------------------------*/
* {
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif;
}
.cn_font {
	font-family:"Arial","Microsoft YaHei","黑体","宋体",sans-serif;
}
 
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
html, body {
  height: 100%;
  margin: 0
}
/*ul,ol {margin: 0 0 0 1.25em;padding: 0;}*/
section {
  margin: 0;
  padding: 0;
}
img {
  margin: 0;
  padding: 0;
  vertical-align: bottom;
  max-width: 100%;
  height: auto
}
a:hover img {
  opacity: 1;
}
.wrap {
  overflow: hidden;
}
p {
  margin: 0;
  font-size: 14px;
}
p:last-child {
  margin: 0;
}
/* font */
.small {
  font-size: 90%;
}
.bold {
  font-weight: bold;
}
.menu-download .fa-angle-down:before {
  right: -12%;
}
/* -------------------------------------------
要素非表示・回り込み解除
-------------------------------------------*/
.displaynone {
  display: none;
}
.clearfix:after, .clearfix:before {
  content: " ";
  display: table
}
.clearfix:after {
  clear: both
}
/* -------------------------------------------
グリッド
-------------------------------------------*/
/* inline */
.inline {
  text-align: justify;
  text-justify: distribute-all-lines;
}
.inline:after {
  content: "";
  display: inline-block;
  width: 100%;
  line-height: 0;
  height: 0;
}
div.inline > div {
  display: inline-block;
}
.inline div {
  vertical-align: top;
  width: 49%;
  margin-bottom: 2%;
}
.inline div:nth-last-child(-n+2) {
  margin-bottom: 0;
}
.box {
  margin-bottom: 10%;
  vertical-align: top;
  letter-spacing: normal;
}
.hold.box_wrap, .half.box_wrap {
  letter-spacing: -.40em;
}
.box.three:last-child {
  margin-bottom: 0;
}
.hold .box.two {
  width: 46%;
  margin-right: 4%;
  display: inline-block;
  letter-spacing: normal;
}
.hold .box.two:last-child {
  margin-right: 0;
}
.hold .box.three {
  width: 30%;
  margin-bottom: 3%;
  margin-right: 5%;
  display: inline-block;
  letter-spacing: normal;
}
.hold .box.three:nth-child(3n) {
  margin-right: 0;
}
.half .box.four {
  width: 48%;
  margin-bottom: 3%;
  margin-right: 4%;
  display: inline-block;
  letter-spacing: normal;
}
.half .box.four:nth-child(2n) {
  margin-right: 0;
}
.half .box.five {
  width: 48%;
  margin-bottom: 4% !important;
  margin-right: 4%;
  display: inline-block;
  letter-spacing: normal;
}
.half .box.five:nth-child(2n) {
  margin-right: 0;
}
.box img {
  width: 100%;
}
.pc-none {
  display: none;
}
.dli-arrow-up {
  display: inline-block;
  vertical-align: middle;
  color: #333;
  line-height: 1;
  position: relative;
  width: 0.1em;
  height: 1em;
  background: currentColor;
}

.dli-arrow-up::before {
  content: '';
  width: 0.65em;
  height: 0.65em;
  border: 0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  transform: rotate(-45deg);
  transform-origin: top right;
  position: absolute;
  top: -0.05em;
  right: 50%;
  box-sizing: border-box;
}
/*-------sec01-------*/
.slider {
  position: relative;
  z-index: 1;
  /*↑z-indexの値をh1のz-indexの値よりも小さくして背景に回す*/
  /*height: 100vh;*/ /*スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
}
.slider-item {
  width: 100%; /*各スライダー全体の横幅を画面の高さいっぱい（100%）にする*/
  height: 100vh; /*各スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
  background-repeat: no-repeat; /*背景画像をリピートしない*/
  background-position: center; /*背景画像の位置を中央に*/
  background-size: cover; /*背景画像が.slider-item全体を覆い表示*/
}
.slick-prev {
  position: absolute;
  z-index: 300;
  top: 90%;
  margin-top: -35px;
  cursor: pointer;
  outline: none;
  right: 2.5%;
  height: 36px;
  width: 36px;
  left: inherit;
  background: #000000;
  border: 1px solid #ffffffb8;
}
.slick-prev:before {
  transform: rotate(-45deg);
  position: absolute;
  z-index: 3;
  top: 42%;
  right: 28%;
  cursor: pointer;
  outline: none;
  border-top: 2px solid #ffffff;
  border-right: 2px solid #ffffff;
  height: 15px;
  width: 15px;
}
.slick-next {
  position: absolute;
  z-index: 300;
  top: 90%;
  margin-bottom: -18px;
  cursor: pointer;
  outline: none;
  right: 2.5%;
  height: 36px;
  width: 36px;
  left: inherit;
  background: #000000;
  border: 1px solid #ffffffb8;
}
.slick-next:before {
  transform: rotate(-225deg);
  position: absolute;
  z-index: 3;
  top: 20%;
  right: 28%;
  cursor: pointer;
  outline: none;
  border-top: 2px solid #ffffff;
  border-right: 2px solid #ffffff;
  height: 15px;
  width: 15px;
}
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {
  background: #000000;
}
.slick-arrow {
  display: none !important;
}
/*ドットナビゲーションの設定*/
.slick-dots {
  position: relative;
  z-index: 3;
  text-align: center;
  margin: -50px 0 0 0;
}
.slick-dots li {
  display: inline-block;
  margin: 0 5px;
}
.slick-dots button {
  color: transparent;
  outline: none;
  width: 8px; /*ドットボタンのサイズ*/
  height: 8px; /*ドットボタンのサイズ*/
  display: block;
  border-radius: 50%;
  background: #ccc; /*ドットボタンの色*/
}
.slick-dots .slick-active button {
  background: #333; /*ドットボタンの現在地表示の色*/
}
.figure {
  margin: 0;
}
/*-------   ad_area   -------*/
.sec.ad_area .img-area {
  max-width: 500px;
  margin: auto;
}
.sec.ad_area {
  padding: 60px 0 0;
}
.sec.ad_area .sec_inner {
  max-width: 1200px;
  margin: auto;
}
.ad_area .slider_01 img {
  width: 98%;
}
.ad_area .slider_01 .slick-slide {
  opacity: 1;
}
.ad_area .slider_01 .slick-dots {
  margin: -25px 0 0 0;
}
.ad_area .slider_01 .slick-dots li button:before {
  font-family: 'slick';
  font-size: 25px;
  line-height: 25px;
  position: absolute;
  top: 0;
  left: 0;
  width: 25px;
  height: 25px;
  content: '•';
  text-align: center;
  opacity: .75;
  color: black;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.ad_area .slider_01 .slick-dots .slick-active button {
  background: inherit;
}
.ad_area .slick-dots {
  position: relative;
  z-index: 3;
  text-align: center;
  margin: -20px 0 0 0;
}
/*-------   fix btn   -------*/
.conversion {
  position: fixed;
  top: 20rem;
  right: 0;
  display: block;
  width: 3.5rem;
  height: 41.4rem;
  box-shadow: none;
  z-index: 500;
}
.conversion-dl {
  background: url("../img/top/bg-fixerd-banner-download.jpg") no-repeat;
  background-size: cover;
  border-right: none;
  -webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -ms-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  box-shadow: 1rem 0.5rem 1.6rem #052f6033;
  padding: 2.5rem 1.2rem;
  width: 100%;
}
.conversion-dl::before {
  content: "";
  background: url(../img/top/icon-document-white.png) no-repeat;
  background-size: contain;
  display: inline-block;
  width: 1.3rem;
  height: 1.8rem;
  position: relative;
  top: 0.2rem;
  margin: 0 0 .5rem;
}
.conversion-contact {
  background: url("../img/top/bg-fixerd-banner-contact.jpg") no-repeat;
  background-size: cover;
  border-right: none;
}
.conversion-contact, .conversion-dl {
  -webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -ms-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  box-shadow: 1rem 0.5rem 1.6rem #052f6033;
  padding: 2rem 1rem 2rem 1.25rem;
  width: 100%;
  border: 1px solid #ffffff5e;
  border-right: 0 solid #ffffff5e;
}
.conversion-contact:hover, .conversion-dl:hover {
  border: 1px solid #ffffff;
  border-right: 0 solid #ffffff5e;
}
.conversion-contact span, .conversion-dl span {
  font-weight: 800;
  color: #ffffff;
}
.conversion-contact::before {
  content: "";
  background: url(../img/top/icon-mail-white.png) no-repeat;
  background-size: contain;
  display: inline-block;
  width: 1.25rem;
  height: 1rem;
  position: relative;
  top: 0.2rem;
  margin: 0 0 .5rem;
}
a.conversion-contact, a.conversion-dl {
  transition: 1.0s
}
/*-------   to top   -------*/
#page_top {
  position: fixed;
  bottom: 40px;
  right: 65px;
  z-index: 100;
}
#page_top a {
  background-color: #fff;
  color: #000;
  text-align: center;
  text-decoration: none;
  padding: 12px 23px;
  border: solid 1px #000;
}
#page_top a:hover {
  background-color: #000;
  text-decoration: none;
  color: #fff;
  border: solid 1px #fff;
}
a:hover {
  color: #5a5a5a;
}
/*-------　総合　-------*/
.ttl {
  margin-bottom: 3rem;
}
.en {
  font-family: "Roboto";
  font-weight: 700;
  font-size: 2.5rem;
  position: relative;
  padding-right: 9rem;
}
.hana01:before {
  position: absolute;
  z-index: -1;
  content: "";
  display: block;
  width: 1.7rem;
  height: 1.7rem;
  /* background: #0369b0; */
  bottom: 0.75rem;
  left: -3.5rem;
  content: url(../img/top/img-icon.png);
}
.en:after {
  position: absolute;
  content: "";
  width: 8rem;
  height: 1px;
  background: #cccccc;
  right: 0;
  top: 50%;
}
.jp {
  position: relative;
  top: -0.5rem;
  font-size: 1rem;
  padding-left: 1rem;
}
.row {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-pack: space-between;
  margin-left: -15px;
  margin-right: -15px;
}
.column {
  width: 50%;
  padding-left: 15px;
  padding-right: 15px;
  margin-bottom: 30px;
  box-sizing: border-box;
}
.hd-btn {
  margin-top: 2rem;
}
.hd-mod-btn {
  -webkit-transition: .3s cubic-bezier(0.57, 0.15, 0.13, 0.97);
  transition: .3scubic-bezier(0.57, 0.15, 0.13, 0.97);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  background-size: contain;
  text-decoration: none;
  position: relative;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  outline: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  color: #000000;
  font-size: 1rem;
  font-weight: 500;
  width: 12rem;
  box-sizing: border-box;
  background: #000000;
}
.hd-mod-btn:hover {
  color: #000000;
  background: #ffffff;
}
.hd-mod-btn .hd-btn-inner {
  color: #ffffff;
  padding: .75rem 1rem;
  position: relative;
  z-index: 1;
  display: block;
  border: 1px solid #000000;
  -webkit-transition: .3s cubic-bezier(0.57, 0.15, 0.13, 0.97);
  transition: .3scubic-bezier(0.57, 0.15, 0.13, 0.97);
}
.hd-mod-btn .hd-btn-inner:hover {
  color: #000000;
  border: 1px solid #000000;
}
.line-none .hd-mod-btn:before {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  width: 0;
  height: 0;
  background: #FFFFFF;
  -webkit-transition: .3s cubic-bezier(0.57, 0.15, 0.13, 0.97) -0.2s;
  transition: .3scubic-bezier(0.57, 0.15, 0.13, 0.97) -0.2s;
}
.hd-mod-btn-wh {
  -webkit-transition: .3s cubic-bezier(0.57, 0.15, 0.13, 0.97);
  transition: .3scubic-bezier(0.57, 0.15, 0.13, 0.97);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  background-size: contain;
  text-decoration: none;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  outline: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  color: #ffffff;
  font-size: 1rem;
  font-weight: 500;
  max-width: 180px;
  box-sizing: border-box;
  background: #ffffff;
}
.hd-mod-btn-wh:hover {
  background: #000000;
}
.hd-mod-btn-wh .hd-btn-wh-inner {
  color: #000000;
  padding: 0.75rem 1rem;
  position: relative;
  z-index: 1;
  display: block;
  border: 1px solid #000000;
  -webkit-transition: .3s cubic-bezier(0.57, 0.15, 0.13, 0.97);
  transition: .3scubic-bezier(0.57, 0.15, 0.13, 0.97);
}
.hd-mod-btn-wh .hd-btn-wh-inner:hover {
  color: #ffffff;
  border: 1px solid #ffffff;
}
.anime_box {
  margin: 0 auto;
  overflow: hidden;
}
.anime_box img {
  transition: .75s all;
}
.anime_box img:hover {
  transform: scale(1.1, 1.1);
  transition: .75s all;
}
.anime_box_overflow {
  overflow: hidden;
}
/*-------　sec01 main　-------*/
.sec01_ineer {
  position: relative;
}
.main-title p {
  font-family: "hsn-zhcn-serif-regular", "hsn-zhtw-serif-regular", "FOT-筑紫明朝 Pr6N LB{pm}", serif;
  color: #ffffff;
  font-weight: 600;
}
.main-title .one p, .main-title .two p {
  font-size: 72px;
  line-height: 1.2;
}
.main-title .three p {
  font-size: 36px;
  line-height: 1.2;
  letter-spacing: 2.2px;
  font-family: 'Roboto', "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-weight: 300;
}
.main-title {
  width: 100%;
}
.main-title .main-title_inner {
  margin-bottom: .5rem;
}
.main-title .main-title_inner p {
	text-shadow: -1px -2px 3px #000000c4;
}
.sec01_ineer .copy {
  position: absolute;
  top: calc(50% - 15rem);
  left: 5rem;
  z-index: 100;
}
@media only screen and (max-width : 1400px) {
  .sec01_ineer .copy {
    position: absolute;
    top: calc(50% - 9rem);
    left: 5rem;
    z-index: 100;
  }
  .main-title .one p, .main-title .two p {
    font-size: 52px;
    line-height: 1.2;
  }
  .main-title .three p {
    font-size: 28px;
    line-height: 1.2;
    letter-spacing: 2.2px;
  }
  .main-title .four img{
    width: 65%;
  }
  .main-title .five img {
    width: 65%;
  }
}
.sec01 .main {
  font-size: 4rem;
  font-weight: 900;
  line-height: 1.25;
  position: relative;
}
.sec01 .main:before {
  position: absolute;
  z-index: -1;
  content: "";
  display: block;
  width: 4rem;
  height: 4rem;
  background: #0369b0;
  bottom: -2rem;
  left: -2rem;
}
.sec01 .vegas-overlay {
  opacity: .5;
  background: url("../img/top/img-main.png") center center;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  overflow: hidden;
  border: none;
  padding: 0;
  margin: 0;
  height: 99%;
  z-index: 10;
}
.sec01 .main-logo {
  position: absolute;
    top: 10%;
    right: 0%;
    bottom: 0;
    overflow: hidden;
    border: none;
    padding: 0;
    margin: 0;
    z-index: 90;
    width: 180px;
    transform: rotate(-10deg);
}
@media only screen and (max-width: 900px) {
	.sec01 .main-logo {
		position: absolute;
		top: 2%;
		right: 0%;
		bottom: 0;
		overflow: hidden;
		border: none;
		padding: 0;
		margin: 0;
		z-index: 90;
		width: 180px;
		transform: rotate(-10deg);
	}
}	
/*-------　sec02 news　-------*/
.sec02 {
  padding: 80px 0 90px;
}
.sec02 .sec02_inner {
  max-width: 980px;
  padding: 0 2rem;
  margin: 0 auto;
  position: relative;
}
.sec02 .sec02_inner .news_btn {
  position: absolute;
  right: 50px;
  top: 20px;
}
.sec02 .sec02_inner .news_btn a:after {
  content: "";
  transform: rotate(-315deg);
  position: absolute;
  z-index: 3;
  top: 30%;
  right: -18%;
  cursor: pointer;
  outline: none;
  border-top: 2px solid #000000;
  border-right: 2px solid #000000;
  height: 10px;
  width: 10px;
}
.sec02 .sec02_inner .news_btn a:hover {
  opacity: 0.80;
  color: #000000;
}
.sec02.news .content ul {
  border-top: 1px dotted #464646;
}
.sec02 .content li.item {
  line-height: 3;
  border-bottom: 1px dotted #464646;
  padding: 1rem 0;
}
.sec02 .content .item p {
  display: table-cell;
  vertical-align: middle;
}
.sec02 .content .item .item_date {
  width: 6rem;
}
.sec02 .content .item .item_category {
  width: 8rem;
}
.sec02 .content .item .item_ttl {
  display: block;
  margin-top: 10px;
}
.sec02 .content .item span {
  line-height: 1;
  font-weight: 500;
  color: #000000;
  border: 1px solid #000000;
  padding: 0.2rem 0.2rem;
  width: 6rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  display: inline-block;
}
.sec02 .content .item a {
  color: #3b3d40;
  text-decoration-color: #e2e2e2;
  text-decoration-line: underline;
}
.sec02 .content .item .font_b {
  font-style: italic;
}
.sec02 .en:after {
  position: absolute;
  content: "";
  width: 8rem;
  height: 1px;
  background: #cccccc;
  right: 0;
  top: 50%;
}
/*-------　sec03 about　-------*/
.sec03 {
  padding: 80px 0;
  position: relative;
}
.sec03_bg {
  background: #f5f5f5;
  position: absolute;
  content: '';
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -100;
}
.sec03_inner {
  position: relative;
}
.sec03 .sub-about-area {
  position: absolute;
  content: '';
  right: 28px;
  top: 13px;
  width: 160px;
  height: 80px;
  display: block;
  z-index: 100;
}
.sec03 .sec03_inner {
  max-width: 1160px;
  padding: 0 2rem;
  margin: 0 auto;
}
.sec03 .column.one {
  width: 24%;
}
.sec03 .column.two, .sec03 .column.three {
  width: 38%;
}
.sec03 .column.three {
  margin-top: 3rem;
}
.sec03 h3 {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 1rem;
}
/*-------　sec04-------*/
.business .sec02, .company .sec02, .download .sec02 {
  padding: 100px 0 10px;
}
.sec04, .sec05 {
  padding: 80px 0;
}
.sec04 .sec04_inner, .sec05 .sec05_inner {
  max-width: 1160px;
  padding: 0 2rem;
  margin: 0 auto;
}
.sec04 .column {
  width: 50%;
}
.sec04 .ttl {
  margin-bottom: .75rem;
}
.sec04 .column picture {
  position: relative;
}
.sec04 .column picture span {
  position: absolute;
  right: 0;
  bottom: -3px;
  color: #ffffff;
  background: #00000078;
  padding: 0.5rem 1rem;
  font-size: 0.75rem;
}
/*-------　sec05　-------*/
.sec05 {
  padding: 80px 0;
  position: relative;
}
.sec05 .sub-about-area-01 {
  position: absolute;
  content: '';
  right: -45px;
  top: -30px;
  width: 260px;
  height: 80px;
  display: block;
  z-index: 100;
}
.sec05 .sub-about-area-02 {
  position: absolute;
  content: '';
  left: -24px;
  bottom: 125px;
  width: 180px;
  height: 80px;
  display: block;
  z-index: 100;
}
.sec05_bg {
  background: #f5f5f5;
  position: absolute;
  content: '';
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -100;
}
.sec05 .sec05_inner {
  max-width: 1160px;
  padding: 0 2rem;
  margin: 0 auto;
}
.sec05 .column {
  width: 20%;
}
.sec05 h3 {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 1rem;
}
.sec05 .content_inner_bg {
  background: #ffffff;
  padding: 4rem;
  box-shadow: 0 5px 10px 0 rgba(0, 0, 0, .15);
  border-radius: 10px;
}
.sec05 .content_inner_bg p {
  text-align: center;
  line-height: 1;
}
.sec05 .content_inner_bg .ttl {
  font-size: 26px;
  font-weight: 700;
  margin-bottom: 2rem;
}
.sec05 .content {
  padding: 2rem 4rem;
}
.sec05 .text-area p {
  margin-bottom: 10px;
}
/*-------　common　-------*/
.common .sec01_ineer {
  position: relative;
}
.common .copy-b {
  position: absolute;
  left: 12rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.common .en-b {
  font-family: "Roboto";
  font-size: 4rem;
  font-weight: 700;
  position: relative;
  color: #ffffff;
}
.common .jp-b {
  font-size: 1.5rem;
  font-weight: 900;
  line-height: 1;
  display: block;
  margin-left: 0.5rem;
  font-family: "hsn-zhcn-serif-regular", "hsn-zhtw-serif-regular", "FOT-筑紫明朝 Pr6N LB{pm}", serif;
  color: #ffffff;
}
.common .sec02_ineer, .common .sec03_ineer {
  max-width: 1160px;
  padding: 0 1rem;
  margin: 0 auto;
}
.access iframe {
  width: 100%;
  aspect-ratio: 16/9;
}
/*-------　access　-------*/
.access .sec02 {
  position: relative;
}
.access .sec02 .map_area {
  position: absolute;
  right: 0;
  z-index: -1;
  width: 48%;
  top: 10%;
}
/*-------　facility　-------*/
.facility .slider_01 img, .facility .slider_02 img {
  width: 98%;
}
.facility .slick-slide {
  opacity: 1;
}
.facility .slider_01 .slick-dots li button:before, .facility .slider_02 .slick-dots li button:before {
  font-family: 'slick';
  font-size: 25px;
  line-height: 25px;
  position: absolute;
  top: 0;
  left: 0;
  width: 25px;
  height: 25px;
  content: '•';
  text-align: center;
  opacity: .75;
  color: black;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.facility .slider_01 .slick-dots, .facility .slider_02 .slick-dots {
  margin: -20px 0 0 0;
}
.facility .slick-dots .slick-active button {
  background: inherit;
}
.facility .sec02 {
  position: relative;
}
.facility .sec02 .facility_bg {
  background: #f5f5f5;
  position: absolute;
  content: '';
  right: 0;
  top: 15%;
  width: 60%;
  height: 50%;
  z-index: -100;
}
.facility .sec03 .facility_bg {
  background: #ffffff;
  position: absolute;
  content: '';
  right: 0;
  top: 0;
  width: 60%;
  height: 60%;
  z-index: -100;
}

/*-------　campaign　-------*/
.red {
	color: #e50003;
}
.campaign .sec02 {
	position: relative;
}
.campaign .sec02 .campaign_bg {
  background: #f5f5f5;
  position: absolute;
  content: '';
  right: 0;
  top: 15%;
  width: 90%;
  height: 50%;
  z-index: -100;
}
.common.campaign .sec02_ineer {
    max-width: 900px;
}
.campaign .campaign_h2 {
    font-size: 26px;
    font-weight: 600;
}
.campaign .quo_area {
	padding-top: 0;
}
.campaign .quo_area .anime_box_overflow{
	max-width: 60%;
}

@media only screen and (max-width: 1400px) {
  .common .copy-b {
    left: 6rem;
    top: 55%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .common .en-b {
    font-size: 3.5rem;
  }
  .common .jp-b {}
}
/*-------　pageBg　-------*/
.top, footer {
  position: relative;
  z-index: 1;
}


@media screen and (width: 820px) {
    
}
/*
----------------------------------------------------------
sp-800px以下
----------------------------------------------------------
*/
@media only screen and (max-width : 800px) {
  .pc-none {
    display: block
  }
  dt p {
    display: block;
  }
  .sec01 .slider.slick-slider {
    margin-left: 0;
  }
  .en {
    font-size: 1.5rem;
    padding-right: 5rem;
    line-height: 1;
  }
  .en:before {
    content: '';
    bottom: -0.25rem;
    background-repeat: no-repeat;
    left: 3.5rem;
    background-size: contain;
    vertical-align: middle;
    width: 55px;
    height: 55px;
    background-image: url(../img/top/img-icon.png);
  }
  .en:after {
    width: 4rem;
  }
  .en:after, .sec02 .en:after {
    position: inherit;
    content: "";
    width: 0;
    height: 0;
    background: #cccccc;
    right: 0;
    top: 0;
  }
  .jp {
    top: 0;
    display: block;
    padding-left: 2px;
  }
  .sp-none {
    display: none;
  }
  .ttl {
    margin-bottom: 1.5rem;
  }
  .en-b {
    line-height: 1.25;
  }
  .sec {
    padding: 30px 0;
  }
  .sec03 {
    padding: 45px 0;
  }
  .sp_disnplay {
    display: block
  }
.main-title .main-title_inner {
    margin-bottom: 0;
}
  /*-------   ad_area   -------*/
  .sec.ad_area {
    padding: 220px 0 0;
  }
  /*-------   to top   -------*/
  #page_top {
    bottom: 90px;
    right: 20px;
  }
  #page_top a {
    padding: 12px 20px;
  }
  .conversion {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-pack: space-between;
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 1000;
    top: inherit;
    height: 3.5rem;
  }
  .conversion-dl, .conversion-contact {
    color: #fff;
    flex-basis: 50%;
    font-weight: bold;
    padding: 1.2rem;
    text-align: center;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    -ms-flex-pack: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    align-items: center;
    -webkit-writing-mode: inherit;
    -moz-writing-mode: inherit;
    -ms-writing-mode: inherit;
    writing-mode: inherit;
    border: .5px solid #ffffff;
  }
  .conversion-dl {
    border-right: 0 solid #ffffff;
  }
  .conversion-dl {
    background: url(../img/top/bg-fixerd-banner-download-sp.jpg) no-repeat;
  }
  .conversion-contact {
    background: url(../img/top/bg-fixerd-banner-contact-sp.jpg) no-repeat;
  }
  .conversion-dl::before {
    content: "";
    background-size: contain;
    display: inline-block;
    width: 1.25rem;
    height: 1.25rem;
    position: relative;
    top: 0;
    margin: 0 0.25rem 0 0;
  }
  .conversion-contact::before {
    content: "";
    background-size: contain;
    display: inline-block;
    width: 1.25rem;
    height: 1rem;
    position: relative;
    top: 0;
    margin: 0 0.25rem 0 0;
  }
  /*-------sec01-------*/
  .sec01 .slider.slick-slider {
    margin-left: 0;
  }
  .column {
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
    margin-bottom: 15px;
  }
  /*.sec01*/
  .sec01_ineer .copy {
    top: calc(35% - 0rem);
    left: 1rem;
  }
  .main-title {
    width: 100%;
  }
  .main-title .one p, .main-title .two p {
    font-size: 32px;
    line-height: 1.45;
  }
  .kr .main-title .two p, .language-en .main-title .two p {
    line-height: 1.55;
  }
  .main-title .three p {
    font-size: 16px;
    line-height: 1.2;
    letter-spacing: 2.2px;
  }
  .main-title .four {
    margin-top: 1rem;
  }
  .kr .main-title .four {
    margin-top: 0;
  }
  .main-title .four img {
    width: 75%;
  }
  .main-title .five img {
    width: 75%;
  }
  .sec01 .main {
    font-size: 2rem;
    font-weight: 900;
    line-height: 1.25;
    position: relative;
  }
  .sec01 .main-logo {
    top: 2%;
    left: inherit;
    right: -25px;
    width: 140px;
  }
  .sec01 .main:before {
    width: 2.5rem;
    height: 2.5rem;
    bottom: -1rem;
    left: -0.5rem;
  }
  .sec.ad_area .img-area {
    width: 92%;
  }
  /*-------sec02-------*/
  .sec02 .content .item .item_ttl {
    margin-top: 0;
  }
  .sec02 .sec02_inner {
    padding: 0 1rem;
  }
  .sec02 .sec02_inner .news_btn {
    right: 35px;
    top: inherit;
    bottom: -35px;
  }
  .sec02 {
    padding: 60px 0 40px;
  }
  .top .sec02 {
    padding: 50px 0 100px;
  }
  .sec02 .en:after {
    width: 4rem;
  }
  .sec02 .content .item .item_date {
    width: 5rem;
  }
  .sec02 .content .item p {
    display: inline-block;
    line-height: 1;
  }
  /*-------sec03-------*/
  .sec03 .sec03_inner {
    padding: 0 1rem;
  }
  .sec03 .sub-about-area {
  right: -8px;
    top: inherit;
	  bottom: -8px;
    width: 125px;
    height: 80px
  }
  .sec03 .column.one {
    width: 100%;
    order: 2;
  }
  .sec03 .column.two, .sec03 .column.three {
    width: 100%;
    order: 1;
    margin-bottom: 15px;
  }
  .sec03 .column.three {
    margin-top: 0rem;
  }
  /*-------sec04-------*/
  .sec04 .sec04_inner {
    padding: 0 1rem;
  }
  .sec04 .column {
    width: 100%;
  }
  .sec04, .sec05 {
    padding: 50px 0;
  }
  /*-------sec05-------*/
  .sec05 .sec05_inner {
    padding: 0 1rem;
  }
  .sec05 .sub-about-area-01 {
    right: -55px;
    top: -20px;
    width: 180px;
    height: 80px;
  }
  .sec05 .sub-about-area-02 {
    left: inherit;
    right: -40px;
    bottom: 90px;
    width: 140px;
    height: 80px
  }
  .sec05 .column {
    width: 33.33%;
  }
  .sec05 .content_inner_bg {
    padding: 1rem .5rem;
  }
  .sec05 .content_inner_bg .ttl {
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 1rem;
  }
  .sec05 .content {
    padding: .5rem 0;
  }
  .sec05 .row {
    margin-left: -5px;
    margin-right: -5px;
  }
  .sec05 .column {
    padding-left: 5px;
    padding-right: 5px;
  }
  /*-------　common　-------*/
  .common .copy-b {
    left: 2rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .common .en-b {
    font-size: 2rem;
  }
  .common .jp-b {
    margin-left: 0;
  }
  /*-------　access　-------*/
  .access .sec02 {
    position: relative;
  }
  .access .sec02 .map_area {
    position: absolute;
    right: 0;
    z-index: -1;
    width: 30%;
    top: inherit;
    bottom: 2%;
  }
  /*-------　facility　-------*/
  .facility .sec03 .facility_bg {
    background: #ffffff;
    position: absolute;
    content: '';
    right: 0;
    top: 0;
    width: 40%;
    height: 60%;
    z-index: -100;
  }
  .facility .slider_01 img, .facility .slider_02 img {
    width: 100%;
  }
	
	/*-------　campaign　-------*/

.campaign .quo_area {
	padding-top: 0;
}
.campaign .quo_area .anime_box_overflow{
	max-width: 100%;
}
  /*-------------------------------------------------------
footer
-------------------------------------------------------*/
  .footer_three {
    padding: 0.75rem 0 3.75rem;
  }
  body.fixed, body {
    top: inherit !important;
  }
}
/*
----------------------------------------------------------
sp-750px以下
----------------------------------------------------------
*/
@media only screen and (max-width : 750px) {
  /*-------   ad_area   -------*/
  .sec.ad_area {
    padding: 50px 0 0;
  }
}
/*
----------------------------------------------------------
sp-500px以下
----------------------------------------------------------
*/
@media only screen and (max-width : 600px) {
  /*-------   ad_area   -------*/
  .access .sec02 .map_area {
    position: absolute;
    right: 0;
    z-index: -1;
    width: 60%;
    top: inherit;
    bottom: 2%;
  }
}