@import url("https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@300&family=Mrs+Saint+Delafield&family=Noto+Sans+JP:wght@100;300;400;700&display=swap");
@import url('https://fonts.googleapis.com/css2?family=Italianno&display=swap');
.Barlow {
  font-family: 'Barlow Condensed', sans-serif; }

.MrsSaint {
  font-family: 'Mrs Saint Delafield', cursive; }

.NotoSansJP {
  font-family: 'Noto Sans JP', sans-serif; }

.top {
  padding-top: 0;
  padding-bottom: 0; }
  .top .topkv {
   height: 650px;
    display: flex;
    justify-content: center;
    align-items: center; 
	  position: relative; }
.top .topkv:before {
      position: absolute;
      content: "";
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.4);
      z-index: 1; }
    .top .topkv h2 {
      width: 70%;
position: relative;
      z-index: 2; }
.top .topkv video {
      position: fixed;
      width: 100%;
      z-index: -2; }
  .top .topcontent {
    color: #444444;
    letter-spacing: 0.06em; }
    .top .topcontent .inners {
      max-width: 1024px;
      margin: 0 auto; }
      .top .topcontent .inners.flex {
        display: flex;
        justify-content: space-between; }
        .top .topcontent .inners.flex p {
          font-family: 'Barlow Condensed', sans-serif;
          font-weight: 300;
          font-size: 45px;
          letter-spacing: 0em;
          width: 100px; }
        .top .topcontent .inners.flex dl {
          width: calc(100% - 245px);
          display: flex;
          justify-content: flex-start;
          align-items: center;
          align-content: center;
          flex-wrap: wrap; }
          .top .topcontent .inners.flex dl dt {
            width: 100px; 
font-size: 16px;}
          .top .topcontent .inners.flex dl dd {
            width: calc(100% - 120px);
font-size: 16px;}
    .top .topcontent .inner {
      max-width: 1024px;
      margin: 0 auto; }
      .top .topcontent .inner.flexc {
        display: flex;
        justify-content: center;
        align-items: center; }
      .top .topcontent .inner h3 {
        font-family: 'Barlow Condensed', sans-serif;
        font-weight: 300;
        font-size: 45px;
        color: #fff;
        letter-spacing: 0em;
        position: relative;
        margin-right: 100px; }
        .top .topcontent .inner h3:before, .top .topcontent .inner h3:after {
          position: absolute;
          content: "";
          width: 28px;
          height: 28px;
          top: 8px;
          border-top: 1px solid #fff; }
        .top .topcontent .inner h3:before {
          border-left: 1px solid #fff;
          left: -35px; }
        .top .topcontent .inner h3:after {
          border-right: 1px solid #fff;
          right: -35px; }
        .top .topcontent .inner h3 span {
          display: block;
          position: relative; }
          .top .topcontent .inner h3 span:before, .top .topcontent .inner h3 span:after {
            position: absolute;
            content: "";
            width: 28px;
            height: 28px;
            bottom: 5px;
            border-bottom: 1px solid #fff; }
          .top .topcontent .inner h3 span:before {
            border-left: 1px solid #fff;
            left: -35px; }
          .top .topcontent .inner h3 span:after {
            border-right: 1px solid #fff;
            right: -35px; }
      .top .topcontent .inner .txt {
        font-weight: 300;
        color: #fff;
        font-size: 1.3vw; }
      .top .topcontent .inner--flex {
        max-width: 1024px;
        margin: 0 auto;
        padding: 70px 0 0;
        display: flex;
        justify-content: center;
        align-items: center;
        align-content: center; }
        .top .topcontent .inner--flex .imgs {
          width: 600px;
          margin-left: -150px; }
        .top .topcontent .inner--flex dl {
          width: 460px;
          margin-left: 75px;
    margin-right: -50px; }
          .top .topcontent .inner--flex dl dt {
			  text-align:center;
            font-weight: 700;
            font-size: 25px;
            line-height: 1.4;
            background: #fff;
            border-radius: 60px;
            padding: 10px 20px;
            margin-bottom: 15px; }
          .top .topcontent .inner--flex dl dd {
            text-align: justify;
font-size: 16px;}
        .top .topcontent .inner--flex.rev {
          flex-direction: row-reverse; }
          .top .topcontent .inner--flex.rev .imgs {
            margin-left: 0px;
            margin-right: -150px; }
          .top .topcontent .inner--flex.rev dl {
            width: 460px;
            margin-left: -50px;
    margin-right: 75px; }
    .top .topcontent .outer {
      max-width: 100%;
      position: relative;}
      .top .topcontent .outer h4 {
        position: absolute;
        font-family: 'Italianno', cursive;
        color: #fff;
        opacity: 0.6;
        font-size: 7.5vw;
        transform: rotate(-18deg);
        line-height: 0.6;
        border-bottom: 1px solid #fff; }
      .top .topcontent .outer h3 {
        font-family: 'Barlow Condensed', sans-serif;
        font-weight: 300;
        font-size: 45px;
        color: #fff;
        letter-spacing: 0em;
        position: relative; }
        .top .topcontent .outer h3:before, .top .topcontent .outer h3:after {
          position: absolute;
          content: "";
          width: 28px;
          height: 28px;
          top: 8px;
          border-top: 1px solid #fff; }
        .top .topcontent .outer h3:before {
          border-left: 1px solid #fff;
          left: -35px; }
        .top .topcontent .outer h3:after {
          border-right: 1px solid #fff;
          right: -35px; }
        .top .topcontent .outer h3 span {
          display: block;
          position: relative; }
          .top .topcontent .outer h3 span:before, .top .topcontent .outer h3 span:after {
            position: absolute;
            content: "";
            width: 28px;
            height: 28px;
            bottom: 5px;
            border-bottom: 1px solid #fff; }
          .top .topcontent .outer h3 span:before {
            border-left: 1px solid #fff;
            left: -35px; }
          .top .topcontent .outer h3 span:after {
            border-right: 1px solid #fff;
            right: -35px; }
    .top .topcontent--news {
      background: linear-gradient(to right, #a6ffff, #ffff00);}
.top .topcontent--news .inners.flex .newsarea{
	width: calc(100% - 120px);
	padding: 25px 0 0;
	overflow:scroll;
	-ms-overflow-style: none;    /* IE, Edge 対応 */
   scrollbar-width: none;       /* Firefox 対応 */
}
.top .topcontent--news .inners.flex .newsarea::-webkit-scrollbar {  /* Chrome, Safari 対応 */
        display:none;
    }
.top .topcontent--news .inners.flex{
	height: 200px;
    padding-bottom: 25px;
	-ms-overflow-style: none;    /* IE, Edge 対応 */
   scrollbar-width: none;       /* Firefox 対応 */
}
.top .topcontent--news .inners.flex::-webkit-scrollbar {  /* Chrome, Safari 対応 */
        display:none;
    }
.top .topcontent--news .inners.flex .newsarea .nebox{
	width:100%;
	padding-bottom:5px;
	margin-bottom:5px;
	border-bottom:1px solid #444;
}
.top .topcontent--news .inners.flex .newsarea .nebox dl{
	width:100%;
	line-height:1.6;
}

.top .topcontent--news .inners.flex .newsarea .nebox .tgn{
	position:relative;
}

.top .topcontent--news .inners.flex .newsarea .nebox .tgn:after{
	position:absolute;
	content:"";
	right:10px;
	top:6px;
	width:10px;
	height:10px;
	border-bottom:1px solid #444;
	border-right:1px solid #444;
	transform:rotate(45deg);
}

.top .topcontent--news .inners.flex .newsarea .nebox .tgn.active:after{
	transform:rotate(-135deg);
	top:10px;
}

.top .topcontent--news .inners.flex .newsarea .nebox p{
	display:none;
	font-size:14px;
	line-height:1.6;
	width:100%;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:400;
	border-top:1px dashed #444;
	padding-top:5px;
	margin-top:10px;
}

.top .topcontent--news .inners.flex .newsarea .nebox p a{
	color:#444
}
    .top .topcontent--first {
		background: rgba(0, 0, 0, 0.4);
      height: 590px; }
      .top .topcontent--first .outer h4 {
        top: 80px; }
      .top .topcontent--first .flexc {
        height: 590px; }
    .top .topcontent--firsts {
      background: linear-gradient(to right, #a6ffff, #ffff00);
      padding: 70px 0; }
      .top .topcontent--firsts .outer h4 {
        font-size: 7.8vw;
        top: -40px;
        opacity: 0.7; }
      .top .topcontent--firsts .inner h3 {
        width: 270px;
        margin: 0 auto;
        text-align: center;
        color: #444; }
        .top .topcontent--firsts .inner h3:before, .top .topcontent--firsts .inner h3:after {
          border-color: #444; }
        .top .topcontent--firsts .inner h3 span:before, .top .topcontent--firsts .inner h3 span:after {
          border-color: #444; }
    .top .topcontent--second {
      background:#fff url("../imgs/newtop/imgs_6.jpg") no-repeat center center/cover; }
      .top .topcontent--second .outer h4 {
        font-size: 7.8vw;
        top: -10px;
        opacity: 0.7; }
      .top .topcontent--second .inner {
        padding: 70px 0; }
        .top .topcontent--second .inner h3 {
          width: 385px;
          margin: 0 auto;
          text-align: center; }
        .top .topcontent--second .inner .leadtxt {
          text-align: center;
          font-size: 1.3vw;
          padding: 40px 0 0;
          color: #fff; }
    .top .topcontent--third {
      background: linear-gradient(to right, #a6ffff, #ffff00);
      padding: 70px 0; }
      .top .topcontent--third .outer h4 {
        top: -60px;
        opacity: 0.7; }
      .top .topcontent--third .inner {
        max-width: 1150px; }
        .top .topcontent--third .inner h3 {
          width: 385px;
          margin: 0 auto;
          text-align: center;
          color: #444; }
          .top .topcontent--third .inner h3:before, .top .topcontent--third .inner h3:after {
            border-color: #444; }
          .top .topcontent--third .inner h3 span:before, .top .topcontent--third .inner h3 span:after {
            border-color: #444; }
        .top .topcontent--third .inner .leadimgs {
          padding: 70px 0 30px; }
        .top .topcontent--third .inner--flexs {
          max-width: 980px;
          margin: 0 auto;
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap; }
          .top .topcontent--third .inner--flexs--box {
            width: 31%;
            margin-top: 50px; }
            .top .topcontent--third .inner--flexs--box .imgs {
              height: 85px;
              text-align: center; }
              .top .topcontent--third .inner--flexs--box .imgs img {
                width: auto;
                height: 100%; }
            .top .topcontent--third .inner--flexs--box dl {
              padding-top: 25px; }
              .top .topcontent--third .inner--flexs--box dl dt {
                background: #fff;
                border-radius: 40px;
                text-align: center;
                font-size: 1.4vw;
                font-weight: 700; }
              .top .topcontent--third .inner--flexs--box dl dd {
                padding-top: 10px;
                text-align: justify;
    font-size: 15px;
    letter-spacing: 0.02em;
    line-height: 1.8;}
.top .topcontent--third .inner--flexs--box dl dd a{
	color:#444;
}
    .top .topcontent--forth {
      background: #f1f1f1;
      padding: 70px 0 120px; }
      .top .topcontent--forth .outer h4 {
        top: -40px;
        opacity: 0.2;
color:#444;}
.top .topcontent--forth .inner{
	max-width:100%;
}

.top .topcontent--forth .inner .cont_info_box{
	height: 500px;
	border: 1px solid #f4f4f4;
}
      .top .topcontent--forth .inner h3 {
        width: 385px;
        margin: 0 auto 45px;
        text-align: center;
            color: #444; }

.top .topcontent--forth .btns a{
	display:block;
	color:#444;
	text-decoration:none;
}

.top .topcontent--forth .btns {
	clear: both;
            width: 30%;
            text-align: center;
            font-family: 'Barlow Condensed', sans-serif;
            font-weight: 300;
            font-size: 22px;
            border-radius: 40px;
            border: 1px solid #444;
            padding: 0px 0;
            margin: 60px 35% 0;
            color: #444;
	top:40px;
position:relative;}
            .top .topcontent--forth .btns:before, .top .topcontent--forth .btns:after {
              position: absolute;
              content: "";
              right: 10px;
              top: 50%;
              border-bottom: 1px solid #444;
              z-index: 3; }
            .top .topcontent--forth .btns:before {
              width: 40px; }
            .top .topcontent--forth .btns:after {
              width: 10px;
              transform: rotate(30deg);
              margin-top: -2px; }
        .top .topcontent--forth .inner h3:before, .top .topcontent--forth .inner h3:after {
          border-color: #444; }
        .top .topcontent--forth .inner h3 span:before, .top .topcontent--forth .inner h3 span:after {
          border-color: #444; }
      .top .topcontent--forth .inner .leadimgs {
        padding: 70px 0 0; }
      .top .topcontent--forth .inner--flexs {
        max-width: 980px;
        margin: 0 auto; }
        .top .topcontent--forth .inner--flexs--box {
          width: 100%;
          margin-top: 50px;
          display: flex;
          justify-content: space-between; }
          .top .topcontent--forth .inner--flexs--box:first-child {
            border-bottom: 1px solid #fff;
            padding-bottom: 40px; }
          .top .topcontent--forth .inner--flexs--box.rev {
            flex-direction: row-reverse; }
          .top .topcontent--forth .inner--flexs--box .imgs {
            width: 445px;
            text-align: center; }
            .top .topcontent--forth .inner--flexs--box .imgs.small {
              width: 340px;
              margin: 0 auto; }
          .top .topcontent--forth .inner--flexs--box .txtbox {
            width: 475px; }
            .top .topcontent--forth .inner--flexs--box .txtbox .lead {
              font-size: 23px;
              font-weight: 700;
              color: #fff;
              text-align: center;
              position: relative; }
              .top .topcontent--forth .inner--flexs--box .txtbox .lead:before, .top .topcontent--forth .inner--flexs--box .txtbox .lead:after {
                position: absolute;
                content: "";
                width: 60px;
                height: 60px; }
              .top .topcontent--forth .inner--flexs--box .txtbox .lead:before {
                background: linear-gradient(to right, #a6ffff, #ffff00);
                top: 0;
                left: 0;
                z-index: 1; }
              .top .topcontent--forth .inner--flexs--box .txtbox .lead:after {
                left: 0;
                width: 0;
                height: 0;
                border-style: solid;
                border-width: 0 0 60px 60px;
                border-color: transparent transparent #4324ff transparent;
                z-index: 2; }
          .top .topcontent--forth .inner--flexs--box dl {
            padding-top: 25px;
            color: #fff; }
            .top .topcontent--forth .inner--flexs--box dl dt {
              text-align: center;
              font-size: 30px;
              font-weight: 700;
              line-height: 1; }
              .top .topcontent--forth .inner--flexs--box dl dt .f_01 {
                font-family: 'Barlow Condensed', sans-serif;
                font-weight: 300;
                font-size: 70px;
                padding: 0 5px; }
              .top .topcontent--forth .inner--flexs--box dl dt .f_02 {
                font-family: 'Barlow Condensed', sans-serif;
                font-weight: 300;
                font-size: 100px;
                padding: 0 5px; }
            .top .topcontent--forth .inner--flexs--box dl dd {
              padding-top: 10px;
              text-align: justify; }
    .top .topcontent--sixth .outer h4 {
      top: -0px;
      opacity: 0.6;
      left: 0;
      font-size: 4vw;
      z-index: 3; }
.top .topcontent--sixth,
.top .topcontent--eighth{
	background:#fff;
}
    .top .topcontent--sixth .outer.flex {
      display: flex; }

      .top .topcontent--sixth .outer.flex .bannerbox {
        width: 50%;
        position: relative; }
.top .topcontent--sixth .outer.flex.none {
      display: block; }
.top .topcontent--sixth .outer.flex .bannerbox.all {
        width: 100%;
        position: relative; }
.top .topcontent--sixth .outer.flex .bannerbox.all a {
	padding:13.5% 0;
}
.top .topcontent--sixth .outer.flex .bannerbox.all .btns {
	margin:40px 40% 0;
}
.top .topcontent--sixth .outer.flex .bannerbox.all a figure img{
    width: 100%;
	height:auto;
}
        .top .topcontent--sixth .outer.flex .bannerbox a {
          width: 100%;
          height: 100%;
          display: block;
          text-decoration: none;
          position: relative;
          display: flex;
          justify-content: center;
          align-items: center;
          align-content: center;
          flex-wrap: wrap;
          overflow: hidden;
          padding: 25% 0; }
          .top .topcontent--sixth .outer.flex .bannerbox a figure {
            width: 100%;
            height: 100%;
            position: absolute;
            top: 50%;
            left: 50%;
            -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
            transition: 1s all; }
          .top .topcontent--sixth .outer.flex .bannerbox a .btns {
            width: 30%;
            text-align: center;
            font-family: 'Barlow Condensed', sans-serif;
            font-weight: 300;
            font-size: 22px;
            border-radius: 40px;
            border: 1px solid #fff;
            padding: 0px 0;
            margin: 40px 35% 0;
            position: relative;
            z-index: 3;
            color: #fff; }
            .top .topcontent--sixth .outer.flex .bannerbox a .btns:before, .top .topcontent--sixth .outer.flex .bannerbox a .btns:after {
              position: absolute;
              content: "";
              right: 10px;
              top: 50%;
              border-bottom: 1px solid #fff;
              z-index: 3; }
            .top .topcontent--sixth .outer.flex .bannerbox a .btns:before {
              width: 40px; }
            .top .topcontent--sixth .outer.flex .bannerbox a .btns:after {
              width: 10px;
              transform: rotate(30deg);
              margin-top: -2px; }
          .top .topcontent--sixth .outer.flex .bannerbox a:hover figure {
            width: 100%;
            height: 100%;
            position: absolute;
            top: 50%;
            left: 50%;
            -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%) scale(1.05, 1.05);
            transition: 1s all; }
    .top .topcontent--seventh {
      background: linear-gradient(to right, #a6ffff, #ffff00);
      padding: 70px 0; }
      .top .topcontent--seventh .outer h4 {
        font-size: 7.8vw;
        top: -40px;
        opacity: 0.7; }
      .top .topcontent--seventh .inner.all {
        max-width: 100%; }
      .top .topcontent--seventh .inner h3 {
        width: 270px;
        margin: 0 auto;
        text-align: center;
        color: #444; }
        .top .topcontent--seventh .inner h3:before, .top .topcontent--seventh .inner h3:after {
          border-color: #444; }
        .top .topcontent--seventh .inner h3 span:before, .top .topcontent--seventh .inner h3 span:after {
          border-color: #444; }
      .top .topcontent--seventh .inner .btns {
        width: 30%;
        text-align: center;
        font-family: 'Barlow Condensed', sans-serif;
        font-weight: 300;
        font-size: 22px;
        border-radius: 40px;
        border: 1px solid #444;
        padding: 0px 0;
        margin: 40px 35% 0; }
        .top .topcontent--seventh .inner .btns a {
          display: block;
          text-decoration: none;
          color: #444;
          position: relative; }
          .top .topcontent--seventh .inner .btns a:before, .top .topcontent--seventh .inner .btns a:after {
            position: absolute;
            content: "";
            right: 10px;
            top: 50%;
            border-bottom: 1px solid #444; }
          .top .topcontent--seventh .inner .btns a:before {
            width: 40px; }
          .top .topcontent--seventh .inner .btns a:after {
            width: 10px;
            transform: rotate(30deg);
            margin-top: -2px; }
    .top .topcontent--eighth .outer h4 {
      top: -0px;
      opacity: 0.6;
      left: 0;
      font-size: 4vw;
      z-index: 3; }
    .top .topcontent--eighth .outer.flex {
      display: flex; }
      .top .topcontent--eighth .outer.flex .bannerbox {
        width: 33.333%;
        position: relative; }
        .top .topcontent--eighth .outer.flex .bannerbox a {
          width: 100%;
          height: 100%;
          display: block;
          text-decoration: none;
          position: relative;
          display: flex;
          justify-content: center;
          align-items: center;
          align-content: center;
          flex-wrap: wrap;
          overflow: hidden;
          padding: 35% 0; }
          .top .topcontent--eighth .outer.flex .bannerbox a figure {
            width: 100%;
            height: 100%;
            position: absolute;
            top: 50%;
            left: 50%;
            -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
            transition: 1s all; }
          .top .topcontent--eighth .outer.flex .bannerbox a .btns {
            width: 40%;
            text-align: center;
            font-family: 'Barlow Condensed', sans-serif;
            font-weight: 300;
            font-size: 22px;
            border-radius: 40px;
            border: 1px solid #fff;
            padding: 0px 0;
            margin: 40px 25% 0;
            position: relative;
            z-index: 3;
            color: #fff; }
            .top .topcontent--eighth .outer.flex .bannerbox a .btns:before, .top .topcontent--eighth .outer.flex .bannerbox a .btns:after {
              position: absolute;
              content: "";
              right: 10px;
              top: 50%;
              border-bottom: 1px solid #fff;
              z-index: 3; }
            .top .topcontent--eighth .outer.flex .bannerbox a .btns:before {
              width: 40px; }
            .top .topcontent--eighth .outer.flex .bannerbox a .btns:after {
              width: 10px;
              transform: rotate(30deg);
              margin-top: -2px; }
          .top .topcontent--eighth .outer.flex .bannerbox a:hover figure {
            width: 100%;
            height: 100%;
            position: absolute;
            top: 50%;
            left: 50%;
            -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%) scale(1.05, 1.05);
            transition: 1s all; }
    .top .topcontent--eighth .outer .btns {
      width: 40%;
      text-align: center;
      font-family: 'Barlow Condensed', sans-serif;
      font-weight: 300;
      font-size: 22px;
      border-radius: 40px;
      border: 1px solid #fff;
      padding: 0px 0;
      margin: 40px 30% 0; }
      .top .topcontent--eighth .outer .btns a {
        display: block;
        text-decoration: none;
        color: #fff;
        position: relative; }
        .top .topcontent--eighth .outer .btns a:before, .top .topcontent--eighth .outer .btns a:after {
          position: absolute;
          content: "";
          right: 10px;
          top: 50%;
          border-bottom: 1px solid #fff; }
        .top .topcontent--eighth .outer .btns a:before {
          width: 40px; }
        .top .topcontent--eighth .outer .btns a:after {
          width: 10px;
          transform: rotate(30deg);
          margin-top: -2px; }
    .top .topcontent--nineth {
      background: linear-gradient(to right, #a6ffff, #ffff00);
      padding: 70px 0; }
      .top .topcontent--nineth .outer h4 {
        font-size: 7.8vw;
        top: -40px;
        opacity: 0.7; }
      .top .topcontent--nineth .inner.all {
        max-width: 100%; }
      .top .topcontent--nineth .inner h3 {
        width: 270px;
        margin: 0 auto;
        text-align: center;
        color: #444; }
        .top .topcontent--nineth .inner h3:before, .top .topcontent--nineth .inner h3:after {
          border-color: #444; }
        .top .topcontent--nineth .inner h3 span:before, .top .topcontent--nineth .inner h3 span:after {
          border-color: #444; }
      .top .topcontent--nineth .inner .btns {
        width: 30%;
        text-align: center;
        font-family: 'Barlow Condensed', sans-serif;
        font-weight: 300;
        font-size: 22px;
        border-radius: 40px;
        border: 1px solid #444;
        padding: 0px 0;
        margin: 40px 35% 0; }
        .top .topcontent--nineth .inner .btns a {
          display: block;
          text-decoration: none;
          color: #444;
          position: relative; }
          .top .topcontent--nineth .inner .btns a:before, .top .topcontent--nineth .inner .btns a:after {
            position: absolute;
            content: "";
            right: 10px;
            top: 50%;
            border-bottom: 1px solid #444; }
          .top .topcontent--nineth .inner .btns a:before {
            width: 40px; }
          .top .topcontent--nineth .inner .btns a:after {
            width: 10px;
            transform: rotate(30deg);
            margin-top: -2px; }

.chatbot {
  position: fixed;
  width: 120px;
  height: 120px;
  bottom: 30px;
  right: 30px;
  cursor: pointer;
  z-index: 15; }

footer.new .footernav {
  background: #0f1177; }
footer.new .footer_address {
  background: #0f1177; }

.newbox{
	margin:40px 15px 30px;
}

.newbox a{
	display:block;
	color:#444;
	text-decoration:none;
	position:relative;
}

.top .slick-arrow{
	bottom:-45px !important;
	top:auto !important;
	z-index:10;
}

.top .slick-prev{
	left:50%;
	margin-left:-200px;
	border:none;
	transform:none;
	z-index:10;
	background: url("../imgs/newtop/prev.svg") no-repeat center center/cover;
	width:124px;
	height:20px;
}

.top .slick-next{
	right:50%;
	margin-right:-200px;
	border:none;
	transform:none;
	z-index:10;
	background: url("../imgs/newtop/next.svg") no-repeat center center/cover;
	width:124px;
	height:20px;
}

.js-stop{
	cursor:pointer;
	width:72px;
	height:72px;
	margin: 0 auto;
	position:relative;
	z-index:5;
}

.newcont .top {
  padding-top: 0;
  padding-bottom: 0; }
  .newcont .top .cont_kv_01 {
    height: 590px;
    background: url("../assets/imgs/newcont/img_1.jpg") no-repeat center center/cover;
    display: flex;
    justify-content: center;
    align-items: center; }
    .newcont .top .cont_kv_01 h2 {
      font-family: 'Barlow Condensed', sans-serif;
      font-weight: 300;
      font-size: 87px;
      color: #fff; }
  .newcont .top .newcontentsouter {
    background: #4396ff;
    margin-top: 100px;
    padding-top: 70px;
    padding-bottom: 90px; }
  .newcont .top .newcontents {
    background: linear-gradient(to right, #ffffb3, #abff00); }
    .newcont .top .newcontents.pd {
      padding-bottom: 90px; }
    .newcont .top .newcontents--anchor {
      display: flex;
      justify-content: center;
      padding-top: 40px; }
      .newcont .top .newcontents--anchor li {
        width: 390px;
        font-family: 'Barlow Condensed', sans-serif;
        text-align: center;
        font-size: 31px;
        border-radius: 50px;
        border: 1px solid #000;
        margin: 0 15px; }
        .newcont .top .newcontents--anchor li a {
          display: block;
          color: #000;
          padding: 5px 0;
          text-decoration: none; }
    .newcont .top .newcontents--area {
      max-width: 1024px;
      margin: 190px auto 0px;
      background: #fff;
      padding-bottom: 90px; }
      .newcont .top .newcontents--area.top {
        margin: 90px auto 0; }
      .newcont .top .newcontents--area.topb {
        margin: 0px auto 0; }
      .newcont .top .newcontents--area.topc {
        margin: 90px auto 0; }
      .newcont .top .newcontents--area.topd {
        margin: 90px auto 100px; }
      .newcont .top .newcontents--area.slidearea {
        max-width: 100%;
        background: none;
        position: relative; }
        .newcont .top .newcontents--area.slidearea:after {
          position: absolute;
          content: "";
          width: 1024px;
          background: #fff;
          left: 50%;
          margin-left: -512px;
          height: 100%;
          top: 0; }
      .newcont .top .newcontents--area h3 {
        width: 270px;
        margin: 0 auto -45px;
        text-align: center;
        font-family: 'Barlow Condensed', sans-serif;
        font-size: 49px;
        font-weight: 300;
        position: relative;
        top: -45px;
        line-height: 1.8; }
        .newcont .top .newcontents--area h3:before, .newcont .top .newcontents--area h3:after {
          position: absolute;
          content: "";
          width: 28px;
          height: 28px;
          border-top: 1px solid #000;
          top: 0; }
        .newcont .top .newcontents--area h3:before {
          left: 0;
          border-left: 1px solid #000; }
        .newcont .top .newcontents--area h3:after {
          right: 0;
          border-right: 1px solid #000; }
        .newcont .top .newcontents--area h3 span {
          display: block;
          position: relative; }
          .newcont .top .newcontents--area h3 span:before, .newcont .top .newcontents--area h3 span:after {
            position: absolute;
            content: "";
            width: 28px;
            height: 28px;
            border-bottom: 1px solid #000;
            bottom: 0; }
          .newcont .top .newcontents--area h3 span:before {
            left: 0;
            border-left: 1px solid #000; }
          .newcont .top .newcontents--area h3 span:after {
            right: 0;
            border-right: 1px solid #000; }
      .newcont .top .newcontents--area--lead {
        max-width: 760px;
        margin: 40px auto; }
        .newcont .top .newcontents--area--lead h4 {
          font-size: 28px;
          font-weight: 500;
          text-align: center; }
        .newcont .top .newcontents--area--lead p {
          padding: 15px 0 0; }
          .newcont .top .newcontents--area--lead p.center {
            text-align: center; }
          .newcont .top .newcontents--area--lead p.en {
            font-family: 'Barlow Condensed', sans-serif;
            font-size: 38px;
            font-weight: 300;
            text-align: center;
            color: #0f1177;
            line-height: 1;
            padding: 0 0 15px;
            position: relative; }
            .newcont .top .newcontents--area--lead p.en:before, .newcont .top .newcontents--area--lead p.en:after {
              position: absolute;
              content: "";
              width: 250px;
              border-top: 1px solid #0f1177;
              top: 45%; }
            .newcont .top .newcontents--area--lead p.en:before {
              left: 0; }
            .newcont .top .newcontents--area--lead p.en:after {
              right: 0; }
        .newcont .top .newcontents--area--lead.top {
          padding-top: 50px; }
      .newcont .top .newcontents--area--flex--box {
        display: flex;
        justify-content: space-between;
        margin: 70px 0 0; }
        .newcont .top .newcontents--area--flex--box .imgs {
          width: 555px;
          margin-left: -95px; }
        .newcont .top .newcontents--area--flex--box .txtarea {
          width: 460px;
          margin-right: 50px;
          position: relative; }
          .newcont .top .newcontents--area--flex--box .txtarea .sl {
            position: absolute;
            font-family: 'Barlow Condensed', sans-serif;
            font-size: 32px;
            font-weight: 300;
            transform: rotate(-10deg);
            top: -0px;
            color: #0f1177; }
          .newcont .top .newcontents--area--flex--box .txtarea .leads {
            font-size: 25px;
            font-weight: 700;
            text-align: right;
            line-height: 1.6;
            padding: 50px 0 15px; }
          .newcont .top .newcontents--area--flex--box .txtarea .txt {
            padding-top: 15px;
            border-top: 1px solid #0f1177; }
        .newcont .top .newcontents--area--flex--box.rev {
          flex-direction: row-reverse; }
          .newcont .top .newcontents--area--flex--box.rev .imgs {
            margin-left: 0;
            margin-right: -95px; }
          .newcont .top .newcontents--area--flex--box.rev .txtarea {
            margin-left: 50px;
            margin-right: 0px; }
      .newcont .top .newcontents--area--flex_02 {
        width: 926px;
        margin: 25px auto;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap; }
        .newcont .top .newcontents--area--flex_02--box {
          width: 290px;
          padding-top: 25px; }
          .newcont .top .newcontents--area--flex_02--box .leads {
            text-align: center;
            font-weight: 700;
            font-size: 20px; }
          .newcont .top .newcontents--area--flex_02--box .imgs {
            padding: 15px 0; }
          .newcont .top .newcontents--area--flex_02--box .txt {
            text-align: justify; }
      .newcont .top .newcontents--area--flex_03 {
        width: 930px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        position: relative; }
        .newcont .top .newcontents--area--flex_03:before {
          position: absolute;
          content: "";
          height: 100%;
          left: 50%;
          border-left: 1px solid #000; }
        .newcont .top .newcontents--area--flex_03--box {
          width: 50%;
          padding: 0 25px; }
          .newcont .top .newcontents--area--flex_03--box .lead {
            text-align: center;
            color: #0f1177;
            font-size: 26px;
            letter-spacing: 0.12em; }
            .newcont .top .newcontents--area--flex_03--box .lead dd {
              font-family: 'Barlow Condensed', sans-serif;
              font-weight: 300;
              font-size: 23px;
              line-height: 1;
              letter-spacing: 0em; }
          .newcont .top .newcontents--area--flex_03--box .box {
            margin-top: 40px; }
            .newcont .top .newcontents--area--flex_03--box .box dl {
              display: flex;
              justify-content: space-between;
              align-items: center;
              font-weight: 700;
              margin-bottom: 10px; }
              .newcont .top .newcontents--area--flex_03--box .box dl dt {
                width: 63%;
                background: linear-gradient(to right, #a6ffff, #ffff00);
                padding: 4px 0 4px 8px;
                font-weight: 700; }
            .newcont .top .newcontents--area--flex_03--box .box .txt {
              text-align: justify; }
      .newcont .top .newcontents--area--flex_04 {
        width: 930px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        position: relative;
        border: 1px solid #000;
        position: relative; }
        .newcont .top .newcontents--area--flex_04:before {
          position: absolute;
          content: "";
          height: 100%;
          left: 50%;
          border-left: 1px solid #000; }
        .newcont .top .newcontents--area--flex_04--box {
          font-weight: 500; }
          .newcont .top .newcontents--area--flex_04--box .lead {
            padding-bottom: 45px;
            border-bottom: 1px solid #000;
            padding: 30px 60px; }
            .newcont .top .newcontents--area--flex_04--box .lead dt {
              text-align: center;
              font-size: 22px; }
          .newcont .top .newcontents--area--flex_04--box ul {
            padding: 30px 60px; }
      .newcont .top .newcontents--area .slidelead {
        position: relative;
        z-index: 2;
        padding-top: 70px; }
      .newcont .top .newcontents--area .slide_tab {
        display: flex;
        justify-content: center;
        padding-top: 40px;
        position: relative;
        z-index: 2; }
        .newcont .top .newcontents--area .slide_tab li {
          width: 300px;
          font-family: 'Barlow Condensed', sans-serif;
          text-align: center;
          font-size: 31px;
          border-radius: 50px;
          border: 1px solid #000;
          margin: 0 10px; }
          .newcont .top .newcontents--area .slide_tab li a {
            display: block;
            color: #000;
            padding: 5px 0;
            text-decoration: none; }
      .newcont .top .newcontents--area .slides_inners {
        width: 100%;
        height: 735px;
        margin-top: 50px;
        position: relative;
        z-index: 2; }
        .newcont .top .newcontents--area .slides_inners .slidebox {
          width: 50%;
          margin: 0 auto;
          height: 735px;
          background: #f2f2f2;
          padding: 2.5%; }
          .newcont .top .newcontents--area .slides_inners .slidebox .inners {
            border-top: 5px solid #000;
            border-bottom: 5px solid #000;
            position: relative; }
            .newcont .top .newcontents--area .slides_inners .slidebox .inners:before, .newcont .top .newcontents--area .slides_inners .slidebox .inners:after {
              position: absolute;
              content: "";
              width: 100%;
              border-top: 1px solid #000; }
            .newcont .top .newcontents--area .slides_inners .slidebox .inners:before {
              top: 10px; }
            .newcont .top .newcontents--area .slides_inners .slidebox .inners:after {
              bottom: 10px; }
            .newcont .top .newcontents--area .slides_inners .slidebox .inners dl {
              text-align: center;
              padding: 40px; }
              .newcont .top .newcontents--area .slides_inners .slidebox .inners dl dt {
                font-family: 'Barlow Condensed', sans-serif;
                text-align: center;
                font-size: 35px; }
              .newcont .top .newcontents--area .slides_inners .slidebox .inners dl dd {
                font-size: 18px;
                text-align: left; }
            .newcont .top .newcontents--area .slides_inners .slidebox .inners .imgs {
              height: 395px; }
        .newcont .top .newcontents--area .slides_inners .left_img {
          position: absolute;
          left: 0;
          top: 0;
          height: 735px;
          width: 25%;
          background: url("../assets/imgs/newcont/img_4.jpg") no-repeat top center/cover; }
        .newcont .top .newcontents--area .slides_inners .right_img {
          position: absolute;
          right: 0;
          top: 0;
          height: 735px;
          width: 25%;
          background: url("../assets/imgs/newcont/img_5.jpg") no-repeat top center/cover; }
      .newcont .top .newcontents--area--flex_05 {
        width: 930px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        position: relative;
        border: 1px solid #000;
        position: relative; }
        .newcont .top .newcontents--area--flex_05:before {
          position: absolute;
          content: "";
          height: 100%;
          left: 50%;
          border-left: 1px solid #000; }
        .newcont .top .newcontents--area--flex_05--box {
          font-weight: 500; }
          .newcont .top .newcontents--area--flex_05--box .lead {
            padding-bottom: 45px;
            border-bottom: 1px solid #000;
            padding: 30px 60px; }
            .newcont .top .newcontents--area--flex_05--box .lead dt {
              text-align: center;
              font-size: 22px; }
          .newcont .top .newcontents--area--flex_05--box ul {
            padding: 30px 60px; }
      .newcont .top .newcontents--area .leadscomm {
        width: 930px;
        margin: 0 auto;
        font-size: 25px;
        font-weight: 700;
        color: #0f1177;
        text-align: center;
        position: relative; }
        .newcont .top .newcontents--area .leadscomm:before, .newcont .top .newcontents--area .leadscomm:after {
          position: absolute;
          content: "";
          height: 35px;
          border-left: 1px solid #0f1177;
          top: 10px; }
        .newcont .top .newcontents--area .leadscomm:before {
          transform: rotate(-45deg);
          left: 50px; }
        .newcont .top .newcontents--area .leadscomm:after {
          transform: rotate(45deg);
          right: 50px; }
      .newcont .top .newcontents--area--flex_06 {
        width: 900px;
        margin: 0 auto;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative; }
        .newcont .top .newcontents--area--flex_06--box {
          width: 420px;
          margin-top: 45px;
          border-bottom: 4px solid #0f1177; }
          .newcont .top .newcontents--area--flex_06--box .leads {
            font-size: 25px;
            font-weight: 700;
            border-top: 1px solid #0f1177;
            border-bottom: 1px solid #0f1177;
            padding: 3px 0;
            color: #0f1177;
            text-align: center; }
          .newcont .top .newcontents--area--flex_06--box .imgs {
            padding: 10px 0; }
          .newcont .top .newcontents--area--flex_06--box dl dt {
            font-size: 25px;
            font-weight: 700;
            color: #0f1177;
            text-align: center; }
          .newcont .top .newcontents--area--flex_06--box dl dd {
            padding-bottom: 20px; }
      .newcont .top .newcontents--area--flex_07 {
        width: 900px;
        margin: 0 auto; }
        .newcont .top .newcontents--area--flex_07--box {
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between;
          position: relative;
          margin-top: 45px; }
          .newcont .top .newcontents--area--flex_07--box .imgs {
            width: 420px; }
          .newcont .top .newcontents--area--flex_07--box dl {
            width: 420px; }
            .newcont .top .newcontents--area--flex_07--box dl dt {
              font-size: 25px;
              font-weight: 700;
              color: #0f1177;
              text-align: center;
              border-top: 1px solid #0f1177;
              border-bottom: 1px solid #0f1177; }
            .newcont .top .newcontents--area--flex_07--box dl dd {
              padding-top: 20px; }

.inner-snsbanner{
	max-width:1266px;
	margin:75px auto 10px;
	display:flex;
	justify-content:center;
}

.inner-snsbanner .inner-snsbanner-btn{
	width:46%;
	margin:0 2%;
}

.inner-snsbanner .inner-snsbanner-btn a{
	text-decoration:none;
	color:#333;
}

.inner-snsbanner .inner-snsbanner-btn span{
	display:block;
	padding-bottom:5px;
	font-size:21px;
	text-align:center;
}

#sidesns{
	position:fixed;
	right:0;
	top:50%;
	width:50px;
	background: #0f1177;
	border:1px solid #fff;
	border-right:none;
	z-index:10;
	margin-top:-130px;
}

#sidesns ul{
	padding:15px 0;
}

#sidesns ul li:nth-child(n + 1){
	width:25px;
	margin: 0 auto;
}

#sidesns ul li:nth-child(1){
	font-family: 'Barlow Condensed', sans-serif;
    font-weight: 300;
	font-size:22px;
	transform:rotate(90deg);
	color:#fff;
	width: 140px;
    line-height: 1;
    padding-top: 90px;
    padding-left: 10px;
}

#sidesns ul li:nth-child(3){
	width:25px;
	margin: 15px auto 10px;
}

#sidesns ul li:nth-child(n + 1) img{
	width:100%;
	height:auto;
}

@media screen and (max-width: 1024px) {
  .top .topkv {
    height: 94vh; }
    .top .topkv h2 {
      width: 70%;
      position: relative;
      z-index: 2; }
    .top .topkv video {
      position: fixed;
      width:100%;
      height: auto;
      z-index: -2; }
  .top .topcontent {
    color: #444444;
    letter-spacing: 0.06em; }
    .top .topcontent .inners {
      max-width: 1024px; }
      .top .topcontent .inners.flex p {
        width: 100px; }
      .top .topcontent .inners.flex dl {
        width: calc(100% - 120px); }
        .top .topcontent .inners.flex dl dt {
          width: 100px; }
        .top .topcontent .inners.flex dl dd {
          width: calc(100% - 120px); }
    .top .topcontent .inner {
      max-width: 90%;
      margin: 0 auto; }
      .top .topcontent .inner.flexc {
        display: flex;
        justify-content: center;
        align-items: center; }
      .top .topcontent .inner h3 {
        font-size: 30px; }
        .top .topcontent .inner h3:before, .top .topcontent .inner h3:after {
          width: 20px;
          height: 20px; }
        .top .topcontent .inner h3 span:before, .top .topcontent .inner h3 span:after {
          width: 20px;
          height: 20px; }
      .top .topcontent .inner .txt {
        font-size: 1.4vw; }
      .top .topcontent .inner--flex {
        max-width: 90%; }
        .top .topcontent .inner--flex .imgs {
          width: 60%;
          margin-left: -15%; }
        .top .topcontent .inner--flex dl {
          width: 50%;
          margin-left: 50px; }
          .top .topcontent .inner--flex dl dt {
            font-size: 20px; }
          .top .topcontent .inner--flex dl dd {
            text-align: justify;
            font-size: 1.4vw; }
        .top .topcontent .inner--flex.rev {
          flex-direction: row-reverse; }
          .top .topcontent .inner--flex.rev .imgs {
            margin-left: 0px;
            margin-right: -15%; }
          .top .topcontent .inner--flex.rev dl {
            width: 50%;
            margin-left: 0px;
            margin-right: 50px; }
    .top .topcontent .outer {
      max-width: 100%;
      position: relative;
      background: none; }
      .top .topcontent .outer h4 {
        font-size: 5vw; }
      .top .topcontent .outer h3 {
        font-size: 30px;
        position: relative; }
        .top .topcontent .outer h3:before, .top .topcontent .outer h3:after {
          width: 20px;
          height: 20px; }
        .top .topcontent .outer h3 span:before, .top .topcontent .outer h3 span:after {
          width: 20px;
          height: 20px; }
    .top .topcontent--news {
      padding: 0 5%; }
    .top .topcontent--first {
      background: rgba(0, 0, 0, 0.4);
      height: 400px; }
      .top .topcontent--first .outer h4 {
        top: 80px; }
      .top .topcontent--first .flexc {
        height: 400px; }
    .top .topcontent--firsts {
      padding: 70px 0; }
      .top .topcontent--firsts .inner h3 {
        width: 270px;
        margin: 0 auto;
        text-align: center;
        color: #444; }
        .top .topcontent--firsts .inner h3:before, .top .topcontent--firsts .inner h3:after {
          border-color: #444; }
        .top .topcontent--firsts .inner h3 span:before, .top .topcontent--firsts .inner h3 span:after {
          border-color: #444; }
    .top .topcontent--second .inner {
      padding: 70px 0; }
      .top .topcontent--second .inner h3 {
        width: 250px; }
      .top .topcontent--second .inner .leadtxt {
        font-size: 1.4vw; }
    .top .topcontent--third .inner {
      max-width: 100%; }
      .top .topcontent--third .inner h3 {
        width: 250px; }
      .top .topcontent--third .inner .leadimgs {
        padding: 50px 0 0; }
      .top .topcontent--third .inner--flexs {
        max-width: 90%; }
        .top .topcontent--third .inner--flexs--box {
          width: 48%;
          margin-top: 50px; }
          .top .topcontent--third .inner--flexs--box dl {
            padding-top: 25px; }
            .top .topcontent--third .inner--flexs--box dl dt {
              font-size: 19px; }
	.top .topcontent--third .inner--flexs--box dl dt {
              font-size: 1.6vw; }
		.top .topcontent--third .inner--flexs--box dl dd {
              font-size: 1.2vw; }
    .top .topcontent--forth {
      padding: 70px 0; }
	.top .topcontent--forth .inner{
	max-width:100%;
}
      .top .topcontent--forth .inner h3 {
        width: 250px; }
      .top .topcontent--forth .inner .leadimgs {
        padding: 50px 0 0; }
      .top .topcontent--forth .inner--flexs {
        max-width: 90%; }
        .top .topcontent--forth .inner--flexs--box {
          width: 100%;
          margin-top: 50px;
          flex-wrap: wrap; }
          .top .topcontent--forth .inner--flexs--box .imgs {
            width: 80%;
            margin: 15px auto 0; }
            .top .topcontent--forth .inner--flexs--box .imgs.small {
              width: 300px;
              margin: 15px auto 0; }
          .top .topcontent--forth .inner--flexs--box .txtbox {
            width: 80%;
            margin: 0 auto; }
            .top .topcontent--forth .inner--flexs--box .txtbox .lead {
              font-size: 19px; }
    .top .topcontent--sixth .outer.flex {
      display: flex; }
      .top .topcontent--sixth .outer.flex .bannerbox {
        width: 50%;
        height: 300px;
        position: relative; }
        .top .topcontent--sixth .outer.flex .bannerbox a .btns {
          width: 50%;
          font-size: 22px;
          margin: 40px 10% 0; }
    .top .topcontent--seventh {
      padding: 70px 0; }
      .top .topcontent--seventh .inner.all {
        max-width: 100%; }
      .top .topcontent--seventh .inner h3 {
        width: 250px; }
    .top .topcontent--eighth .outer.flex {
      display: flex; }
      .top .topcontent--eighth .outer.flex .bannerbox a .btns {
        width: 70%;
        font-size: 22px;
        margin: 40px 10% 0; }
	.top .topcontent--eighth .outer.flex .bannerbox a {
		padding: 20% 0;
	}
    .top .topcontent--nineth {
      padding: 70px 0; }
      .top .topcontent--nineth .inner.all {
        max-width: 100%; }
      .top .topcontent--nineth .inner h3 {
        width: 250px; } }
@media screen and (max-width: 767px) {
  .top .topkv {
    height: 94vh; }
    .top .topkv video {
      position: fixed;
      width: auto;
      height: 106vh;
      z-index: -2; }
  .top .topcontent .inners {
    max-width: 1024px; }
    .top .topcontent .inners.flex {
      display: block;
      padding-bottom: 10px; }
      .top .topcontent .inners.flex p {
        width:60px;
        font-size: 24px; }
      .top .topcontent .inners.flex dl {
        width: 100%; }
        .top .topcontent .inners.flex dl dt {
          width: 100px; }
        .top .topcontent .inners.flex dl dd {
          width: calc(100% - 120px); }
  .top .topcontent .inner {
    max-width: 90%;
    margin: 0 auto; }
    .top .topcontent .inner.flexc {
      display: block;
      padding-top: 60px; }
    .top .topcontent .inner h3 {
      width: 220px;
      margin: 0 auto;
      font-size: 30px;
      text-align: center; }
      .top .topcontent .inner h3:before, .top .topcontent .inner h3:after {
        width: 20px;
        height: 20px; }
      .top .topcontent .inner h3 span:before, .top .topcontent .inner h3 span:after {
        width: 20px;
        height: 20px; }
    .top .topcontent .inner .txt {
      text-align: center;
      font-size: 14px;
      padding-top: 20px; }
    .top .topcontent .inner--flex {
      max-width: 90%;
      flex-wrap: wrap; }
      .top .topcontent .inner--flex .imgs {
        width: 100%;
        margin-left: -5%; }
      .top .topcontent .inner--flex dl {
        width: 100%;
        margin-left: 0px;
		  margin-right:0;
        margin-top: 25px; }
        .top .topcontent .inner--flex dl dt {
          font-size: 18px; }
        .top .topcontent .inner--flex dl dd {
          text-align: justify;
          font-size: 14px; }
      .top .topcontent .inner--flex.rev {
        flex-direction: row-reverse; }
        .top .topcontent .inner--flex.rev .imgs {
          margin-left: 0px;
          margin-right: -5%; }
        .top .topcontent .inner--flex.rev dl {
          width: 100%;
          margin-left: 0px;
          margin-right: 0px;
          margin-top: 25px; }
  .top .topcontent .outer {
    max-width: 100%;
    position: relative;
    background: none; }
    .top .topcontent .outer h4 {
      font-size: 10vw; }
    .top .topcontent .outer h3 {
      font-size: 30px;
      position: relative; }
      .top .topcontent .outer h3:before, .top .topcontent .outer h3:after {
        width: 20px;
        height: 20px; }
      .top .topcontent .outer h3 span:before, .top .topcontent .outer h3 span:after {
        width: 20px;
        height: 20px; }
  .top .topcontent--news {
    padding: 0 5%; }
	
.top .topcontent--news .inners.flex .newsarea {
	width: calc(100% - 60px);
	padding: 10px 0;
}
.top .topcontent--news .inners.flex{
	display:flex;
	height: 100px;
    overflow-y: hidden;
}
.top .topcontent--news .inners.flex .newsarea .nebox{
	width:100%;
	padding-bottom:5px;
	margin-bottom:5px;
	border-bottom:1px solid #444;
}
.top .topcontent--news .inners.flex .newsarea .nebox dl{
	width:100%;
	display:block;
	line-height:1.6;
	padding-right:20px;
}
	
	.top .topcontent--news .inners.flex .newsarea .nebox dl dt,.top .topcontent--news .inners.flex .newsarea .nebox dl dd{
		width:100%;
		font-size:12px;
	}

.top .topcontent--news .inners.flex .newsarea .nebox .tgn{
	position:relative;
}

.top .topcontent--news .inners.flex .newsarea .nebox .tgn:after{
	position:absolute;
	content:"";
	right:10px;
	top:6px;
	width:10px;
	height:10px;
	border-bottom:1px solid #444;
	border-right:1px solid #444;
	transform:rotate(45deg);
}

.top .topcontent--news .inners.flex .newsarea .nebox .tgn.active:after{
	transform:rotate(-135deg);
	top:10px;
}

.top .topcontent--news .inners.flex .newsarea .nebox p{
	display:none;
	font-size:12px;
	width:100%;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:400;
}

.top .topcontent--news .inners.flex .newsarea .nebox p a{
	color:#444
}
  .top .topcontent--first {
    background: rgba(0, 0, 0, 0.4);
    height: 80vh; }
    .top .topcontent--first .outer h4 {
      top: 15px; }
    .top .topcontent--first .flexc {
      height: auto; }
  .top .topcontent--firsts {
    padding: 70px 0; }
    .top .topcontent--firsts .inner h3 {
      width: 220px; }
  .top .topcontent--second .inner {
    padding: 70px 0; }
    .top .topcontent--second .inner h3 {
      width: 250px; }
    .top .topcontent--second .inner .leadtxt {
      font-size: 16px; }
  .top .topcontent--third .inner {
    max-width: 100%; }
    .top .topcontent--third .inner h3 {
      width: 250px; }
    .top .topcontent--third .inner .leadimgs {
      padding: 50px 0 0; }
    .top .topcontent--third .inner--flexs {
      max-width: 90%;
      display: block; }
      .top .topcontent--third .inner--flexs--box {
        width: 100%;
        margin-top: 50px; }
        .top .topcontent--third .inner--flexs--box dl {
          padding-top: 25px; }
          .top .topcontent--third .inner--flexs--box dl dt {
            font-size: 19px; }
	.top .topcontent--third .inner--flexs--box dl dd {
            font-size: 14px; }
  .top .topcontent--forth {
    padding: 70px 0; }
	.top .topcontent--forth .inner{
	max-width:100%;
}
    .top .topcontent--forth .inner h3 {
      width: 250px;
	margin: 0 auto 60px;}
    .top .topcontent--forth .inner .leadimgs {
      padding: 50px 0 0; }
    .top .topcontent--forth .inner--flexs {
      max-width: 90%; }
      .top .topcontent--forth .inner--flexs--box {
        width: 100%;
        margin-top: 50px;
        flex-wrap: wrap; }
        .top .topcontent--forth .inner--flexs--box .imgs {
          width: 100%;
          margin: 15px auto 0; }
          .top .topcontent--forth .inner--flexs--box .imgs.small {
            width: 100%;
            margin: 15px auto 0; }
        .top .topcontent--forth .inner--flexs--box .txtbox {
          width: 100%;
          margin: 0 auto; }
          .top .topcontent--forth .inner--flexs--box .txtbox .lead {
            font-size: 19px; }
	    .top .topcontent--forth .btns {
      width: 55%;
      font-size: 22px;
      margin: 40px auto 0;
	top:20px;}
  .top .topcontent--sixth .outer.flex {
    display: block; }

    .top .topcontent--sixth .outer.flex .bannerbox {
      width: 100%;
      height: auto;
      position: relative; }
      .top .topcontent--sixth .outer.flex .bannerbox a {
        padding: 15% 0; }
	.top .topcontent--sixth .outer.flex .bannerbox.all a{
	padding:5.5% 0;
}
.top .topcontent--sixth .outer.flex .bannerbox.all .btns {
	margin: 40px 20% 0;
}
        .top .topcontent--sixth .outer.flex .bannerbox a .btns {
          width: 50%;
          font-size: 22px;
          margin: 40px 20% 0; }
  .top .topcontent--seventh {
    padding: 70px 0; }
    .top .topcontent--seventh .inner.all {
      max-width: 100%; }
    .top .topcontent--seventh .inner h3 {
      width: 250px; }
	.top .topcontent--forth .inner .btns {
      width: 55%;
      font-size: 22px;
      margin: 40px auto 0; }
    .top .topcontent--seventh .inner .btns {
      width: 55%;
      font-size: 22px;
      margin: 40px auto 0; }
  .top .topcontent--eighth .outer.flex {
    display: block; }
    .top .topcontent--eighth .outer.flex .bannerbox {
      width: 100%;
      height: auto;
      position: relative; }
      .top .topcontent--eighth .outer.flex .bannerbox a {
        padding: 15% 0; }
        .top .topcontent--eighth .outer.flex .bannerbox a .btns {
          width: 50%;
          font-size: 22px;
          margin: 40px 20% 0; }
  .top .topcontent--nineth {
    padding: 70px 0; }
    .top .topcontent--nineth .inner.all {
      max-width: 100%; }
    .top .topcontent--nineth .inner h3 {
      width: 250px; }
    .top .topcontent--nineth .inner .btns {
      width: 55%;
      font-size: 22px;
      margin: 40px auto 0; }
.top .slick-prev {
	margin-left: -170px;
	}
.top .slick-next {
	margin-right: -170px;
	}
.js-stop {
	width:50px;
	height:50px;
	margin-top: 10px;
	}
	}



/* The loader container */

.loaderback{
	position: fixed;
	width:100%;
	height:100%;
	background: linear-gradient(to right, #ffffb3, #abff00); 
	z-index:99;
}

.loader {
  position: absolute;
  top: 50%;
  left: 50%;
  
  width: 200px;
  height: 200px;
  
  margin-top: -100px;
  margin-left: -100px;
}


/* The dot */
.loader > .dot {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 10;
  width: 160px;
  height: 100px;
   margin-top: -50px;
  margin-left: -80px;
  border-radius: 5px;
  background-color: #1e3f57;
  transform-type: preserve-3d;
  animation: dot1 3s cubic-bezier(.55,.3,.24,.99) infinite;
}

.loader > .dot:nth-child(2) {
  z-index: 11;
  
  width: 150px;
  height: 90px;
  
  margin-top: -45px;
  margin-left: -75px;
  
  border-radius: 3px;
  
  background-color: #3c617d;
  
  animation-name: dot2;
}

.loader > .dot:nth-child(3) {
  z-index: 12;
  
  width: 40px;
  height: 20px;
  
  margin-top: 50px;
  margin-left: -20px;
  
  border-radius: 0 0 5px 5px;
  
  background-color: #6bb2cd;
  
  animation-name: dot3;
}

@keyframes dot1 {
  3%, 97% {
    width: 160px;
    height: 100px;

    margin-top: -50px;
    margin-left: -80px;
  }
  30%, 36% {
    width: 80px;
    height: 120px;

    margin-top: -60px;
    margin-left: -40px;
  }
  63%, 69% {
    width: 40px;
    height: 80px;

    margin-top: -40px;
    margin-left: -20px;
  }
}

@keyframes dot2 {
  3%, 97% {
    width: 150px;
    height: 90px;

    margin-top: -45px;
    margin-left: -75px;
  }
  30%, 36% {
    width: 70px;
    height: 96px;

    margin-top: -48px;
    margin-left: -35px;
  }
  63%, 69% {
    width: 32px;
    height: 60px;

    margin-top: -30px;
    margin-left: -16px;
  }
}

@keyframes dot3 {
  3%, 97% {
    width: 40px;
    height: 20px;

    margin-top: 50px;
    margin-left: -20px;
  }
  30%, 36% {
    width: 8px;
    height: 8px;

    margin-top: 49px;
    margin-left: -5px;
    
    border-radius: 8px;
  }
  63%, 69% {
    width: 16px;
    height: 4px;

    margin-top: -37px;
    margin-left: -8px;
    
    border-radius: 10px;
  }
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: landscape){
.top .topkv video {
    width: auto !important;
    height: 130vh !important;
}
	
.back_img_02 {
    width: 90%;
    height: 340px;
}
	
.sta04 dt {
    font-size: 180px;
    line-height: 180px;
	}
	
.top .topcontent--sixth .outer.flex .bannerbox a {
	padding:22% 0;
	}
	
.top .topcontent--eighth .outer.flex .bannerbox a {
	padding:34% 0;
	}
	
footer.newfooter .footernav .inner dl.wid_se {
    width: 25%;
}
}

.ttls_sns{
	text-align:center;
	font-size:24px;
	padding-bottom:40px;
	padding-top:80px;
	font-weight: 700;
}

main .contents .txt_contents .box dl.snspr{
	  text-align: left;
    line-height: 2;
    padding-bottom: 25px;
}

main .contents .txt_contents .box dl.snspr dt{
	 font-size:20px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
	padding-bottom:10px;
}

main .contents .txt_contents .box dl.snspr dd{
	font-size:16px;
    letter-spacing: 0.06em;
    padding-top: 0px;
    line-height: 1.8;
	padding-bottom:25px;
	text-align: justify;
}

main .contents .txt_contents .box dl.snspr dd.link a{
	color:#0f1177;
}

main .contents .txt_contents .box dl.snspr dd ul{
	display:block;
	padding-left:5px;
}

main .contents .txt_contents .box dl.snspr dd ul li{
	padding-left:21px;
    text-indent:-21px;
	padding-bottom:5px;
}

main .contents .txt_contents .box dl.snspr dd ul li.flex{
	display:flex;
}

main .contents .txt_contents .box dl.snspr dd ul li.flex ul li{
	padding-left:0px;
    text-indent:-0px;
}

.lastr{
	text-align:right;
}

@media screen and (max-width: 767px) {
main .contents .txt_contents .box dl.snspr dd{
	text-align: left;
}	
}

.kv.back_sns{
    background: url(../imgs/kv/kv_sns.jpg) no-repeat center center/cover;
	width: 100%;
    height: 540px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.kv.back_sns .eng {
    width: 100%;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 300;
    font-size: 84px;
    line-height: 1;
    color: #fff;
    position: relative;
    z-index: 2;
    text-align: center;
}

.kv.back_sns h3 {
    width: 100%;
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 24px;
    font-weight: 500;
    letter-spacing: 0.06em;
    color: #fff;
    position: relative;
    z-index: 2;
    padding-top: 15px;
    text-align: center;
	line-height:1.6;
}

main .contents.snsback{
	top: -150px;
    position: relative;
	margin-bottom:-150px;
}

.snstop{
	font-size: 16px;
}

@media screen and (max-width: 1024px) {
.kv.back_sns .eng {
    font-size: 84px;
}

.kv.back_sns h3 {
    font-size: 24px;
}	
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: landscape){
	
}

@media screen and (max-width: 767px) {
.ttls_sns{
	font-size:20px;
}	
.kv.back_sns{
    height: 350px;
}
	
.kv.back_sns .eng {
    font-size: 50px;
}

.kv.back_sns h3 {
    font-size: 18px;
}		
}
.topcontent--forth.backcl{
	background:none;
	position:relative;
}
.topcontent--forth.backcl:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: linear-gradient(to right, #ffff00 0%, #00ffff 100%);
    z-index: -1;
}

.topcontent--forth .contents_info--flex--box {
    max-width:1024px;
	margin:0 auto 25px;
    background: #fff;
    border: 6px solid #182980;
    border-radius: 15px;
    position: relative;
    margin-top: 70px;
    padding: 0 0 30px;
}
.topcontent--forth .contents_info--flex--box--flex {
    display: flex;
    justify-content: center;
    align-items: center;
}

.topcontent--forth .contents_info--flex--box .under_txt.under_ty_2 {
    font-size: 18px;
    line-height: 1.4;
    padding: 30px 0 0;
	text-align: center;
    font-weight: 700;
}

.topcontent--forth .contents_info--flex--box--flex .obj.obj_ty_7 {
    width: 407px;
    margin:0 15px 0 0;
}
.topcontent--forth .contents_info--flex--box--flex .number.cl_9 {
    color: #00a99d;
    position: relative;
	display: flex;
    justify-content: center;
    align-items: baseline;
	line-height: 1;
    z-index: 2;
}

.topcontent--forth .contents_info--flex--box .under_txt.under_ty_2 {
    font-size: 18px;
    line-height: 1.4;
    padding: 30px 0 0;
}
.topcontent--forth .contents_info--flex--box--flex .number.cl_9 dt {
    font-size: 210px;
	font-family: 'Barlow Condensed', sans-serif;
    font-weight: 500;
    line-height: 1;
}
.topcontent--forth .contents_info--flex--box--flex .number.cl_9 dd {
    font-size: 57px;
}
.topcontent--forth .contents_info--flex--box .under_txt.under_ty_2 {
    font-size: 18px;
    line-height: 1.4;
    padding: 30px 0 0;
}
.topcontent--forth .contents_info--flex--box--flex .obj.obj_ty_3 {
    width: 500px;
    margin: 10px 10px 0px 0;
}
.topcontent--forth .contents_info--flex--box--flex .number {
    display: flex;
    justify-content: center;
    align-items: center;
	    width: 400px;
    flex-wrap: wrap;
    font-weight: 500;
    font-size: 17px;
    margin-left: 20px;
}
.topcontent--forth .contents_info--flex--box--flex .number.cl_0 dt {
    width: 85px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    line-height: 1.8;
}
.topcontent--forth .contents_info--flex--box--flex .number.cl_0 dd {
    width: calc(100% - 85px);
    line-height: 1.8;
}
.topcontent--forth .contents_info--flex--box h5{
	font-weight: 700;
    font-size: 29px;
    text-align: center;
    padding-top: 15px;
    margin-top: -50px;
    margin-left: 40px;
}
.topcontent--forth .contents_info--flex--box h5.fukidashi_1 {
            background: url("../infonew/img/fukidashi_1.svg") no-repeat center center/cover;
            width: 198px;
            height: 121px; }
.topcontent--forth .contents_info--flex--box h5.fukidashi_3 {
            background: url("../infonew/img/fukidashi_3.svg") no-repeat center center/cover;
            width: 521px;
            height: 121px; }

@media screen and (max-width: 1024px) {
.topcontent--forth .contents_info--flex--box {
    max-width:767px;
	padding:0 20px 30px;
}
	.topcontent--forth .contents_info--flex--box--flex .number.cl_9 {
    color: #00a99d;
    position: relative;
    display: block;
    justify-content: center;
    text-align:center;
    line-height: 1;
    z-index: 2;
		width:350px;
}
	.topcontent--forth .contents_info--flex--box--flex .obj.obj_ty_3 {
    width: 300px;
    margin: 0;
}
	.topcontent--forth .contents_info--flex--box--flex .number {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 400px;
    flex-wrap: wrap;
    margin-left: 25px;
}
}
@media screen and (max-width: 767px) {
.topcontent--forth .contents_info--flex--box {
    max-width:90%;
	padding:0 0px 30px;
}
.topcontent--forth .contents_info--flex--box--flex .obj.obj_ty_7 {
    width: 90%;
    margin: 0 auto 0;
}
	
	.topcontent--forth .contents_info--flex--box--flex {
    display: block;
    justify-content: center;
    align-items: center;
}

	.topcontent--forth .contents_info--flex--box--flex .number.cl_9 {
		width:100%;
		display: flex;
}
	.topcontent--forth .contents_info--flex--box--flex .number.cl_9 dt {
    font-size: 140px;
}
	.topcontent--forth .contents_info--flex--box--flex .number.cl_9 dd {
    font-size: 57px;
}
	.topcontent--forth .contents_info--flex--box--flex .obj.obj_ty_3 {
    width: 90%;
    margin: 0 auto 5px;
}
	.topcontent--forth .contents_info--flex--box--flex .number {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 90%;
    flex-wrap: wrap;
    margin:0 auto;
}
	.topcontent--forth .contents_info--flex--box h5 {
    font-weight: 700;
    font-size: 20px;
    text-align: center;
    padding-top: 10px;
    margin-top: -30px;
    margin-left: 5%;
}
	.topcontent--forth .contents_info--flex--box h5.fukidashi_3 {
    width: 361px;
    height: 84px;
    margin-left: -5%;
}
	.inner-snsbanner{
	max-width:90%;
	margin:30px auto 0px;
	flex-wrap:wrap;
}

.inner-snsbanner .inner-snsbanner-btn{
	width:100%;
	margin:0% 0 25px;
}

.inner-snsbanner .inner-snsbanner-btn a{
	text-decoration:none;
	color:#333;
}

.inner-snsbanner .inner-snsbanner-btn span{
	display:block;
	padding-bottom:5px;
	font-size:18px;
	text-align:center;
}
#sidesns{
	position:fixed;
	width:100%;
	right:auto;
	top:auto;
	bottom:0;
	border:none;
	border-top:1px solid #fff;
	z-index:10;
	margin-top:0px;
}

#sidesns ul{
	padding: 13px 0 10px;
	display:flex;
	justify-content:center;
	align-items:center;
}

#sidesns ul li:nth-child(n + 1){
	width:25px;
	margin: 0 auto;
}

#sidesns ul li:nth-child(1){
	display:none;
}

#sidesns ul li:nth-child(3){
	width:25px;
	margin: 0 auto;
}

#sidesns ul li:nth-child(n + 1) img{
	width:100%;
	height:auto;
}
	.pdsns{
		padding-bottom:60px;
	}
}

.newsareanew{
	 width: calc(100% - 120px);
    padding: 25px 0 0;
	display:block;
	justify-content:flex-start;
	flex-wrap:wrap;
}

.newsareanew .slick-track {
  display: flex;
}
.newsareanew .slick-slide {
  height: auto !important;
}
.neboxnew{
	width:100%;
	height:200px;
	border-radius:10px;
	background:#fff;
	padding:15px;
	margin:0 0.1%;
	margin-bottom:15px;
}

.top .topcontent .inners.flex .neboxnew dl{
	width:100%;
    display:block;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.top .topcontent .inners.flex .neboxnew dl dt{
	width: 100%;
	font-family: 'Barlow Condensed', sans-serif;
   font-weight: 300;
   font-size: 20px;
	line-height:1;
	border-bottom:1px dashed #ccc;
	margin-bottom:10px;
	padding-bottom:10px;
}
.top .topcontent .inners.flex .neboxnew dl dd{
	width: 100%;
}
.top .topcontent .inners.flex .neboxnew dl dd p{
	font-family: 'Noto Sans JP', sans-serif;
	width: 100%;
	font-size:14px !important;
	line-height:1.6;
}

.top .topcontent .inners.flex .neboxnew dl dd a{
	color:#1a1a1a;
	text-decoration:underline;
}

@media screen and (max-width: 767px) {
.newsareanew{
	 width: calc(100% - 80px);
}
.neboxnew{
	width:100%;
	margin:0%;
}
.top .topcontent .inners.flex .neboxnew dl dt{
   font-size: 16px;
}
.top .topcontent .inners.flex .neboxnew dl dd p{
	font-size:12px !important;
}
}

.top .toprecc{
	position:fixed;
	left:10px;
	bottom:10px;
	width: 230px;
    z-index: 5;
        background: linear-gradient(to left, #a6ffff, #ffff00);
	border-radius:15px;
}

.top .toprecc .trecbtn{
	background: url("../imgs/top/open.svg") no-repeat center center/cover;
	position:absolute;
	width:25px;
	height:105px;
	top:50%;
	right:-25px;
	margin-top:-52px;
}

.top .toprecc .trecbtn.active{
	background: url("../imgs/top/close.svg") no-repeat center center/cover;
}

.top .toprecc .lead{
	font-family: 'Barlow Condensed', sans-serif;
    font-weight: 300;
    font-size: 25px;
	padding-top:15px;
	text-align:center;
	line-height:1;
}

.top .toprecc .toprecc--inner{
	padding:15px;
}

.top .toprecc .toprecc--inner a{
	color:#1a1a1a;
	text-decoration:none;
}

.top .toprecc .toprecc--inner p{
	font-size:16px;
	font-weight:600;
	margin-top:5px;
	line-height:1.4;
}

.top .topcontent--news .inners.nes{
	height: auto;
  padding-bottom: 15px;
}

.top .newsareanew .slick-next {
	width:45px;
	height:45px;
	background:none;
	right:auto;
	left:-45px;
	margin-right:0;
	border-bottom:1px solid #000;
	border-left:1px solid #000;
	transform:rotate(45deg);
}

.top .newsareanew .slick-prev {
	width:45px;
	height:45px;
	background:none;
	left:auto;
	right:-45px;
	margin-right:0;
	border-top:1px solid #000;
	border-right:1px solid #000;
	transform:rotate(45deg);
}

.top .newsareanew .slick-arrow{
	bottom: auto !important;
   top: 50% !important;
}

.top .newsareanew .newmark{
	background:#000;
	color:#fff;
	padding:0 8px;
}

@media screen and (max-width: 767px) {
.top .toprecc .trecbtn{
	background: url("../imgs/top/close.svg") no-repeat center center/cover;
}

.top .toprecc .trecbtn.active{
	background: url("../imgs/top/open.svg") no-repeat center center/cover;
}
.top .topcontent--news .inners.nes{
	display:block;
}
.top .topcontent .inners.flex p {
	width:100%;
	font-size:30px;
	line-height:1.2;
	text-align:center;
	padding:10px 0;
}
.newsareanew{
	 width: 86%;
	margin:0 auto;
	padding-top:0;
}
.neboxnew{
	width:100%;
	margin:0%;
}
.top .topcontent .inners.flex .neboxnew dl dt{
   font-size: 16px;
}
.top .topcontent .inners.flex .neboxnew dl dd p{
	font-size:12px !important;
	text-align:left;
}
.top .newsareanew .slick-next {
	width:20px;
	height:20px;
	background:none;
	right:auto;
	left:-15px;
}

.top .newsareanew .slick-prev {
	width:20px;
	height:20px;
	background:none;
	left:auto;
	right:-15px;
}
.top .topcontent--news {
    padding: 0%;
}
.top .toprecc{
	margin-left:-240px;
	left:10px;
	bottom:10px;
	width: 230px;
}
}