:root{
    /* カラー　*/
    --color_black: #000000;
    --color_blue: #004EA2;
}

/*** ----------------------------------------------------------------------------- 

reset

-----------------------------------------------------------------------------  ***/
.clearfix:after {
	content:".";
	display:block;
	visibility:hidden;
	clear:both;
	height:0.1px;
	font-size:0.1em;
	line-height:0;
}
.clearfix {
	display:inline-table;
	zoom:1;
}
/*Hides from IE-mac \*/
* html .clearfix {
	height:1%;
}
.clearfix {
	display:block;
}


/* End hide from IE-mac */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
	margin:0px;
	padding:0px;
}　
table {
	border-collapse:collapse;
	border-spacing:0;
}
fieldset, img {
	border:0;
}
address, caption, cite, code, dfn, em, th, var {
	font-style:normal;
	font-weight:normal;
}
ul {
	list-style:none;
}
ol li{
	list-style:none;
}
caption, th {
	text-align:left;
}
h1, h2, h3, h4, h5, h6 {
	font-size:100%;
	font-weight:normal;
}
q:before, q:after {
	content:'';
}
abbr, acronym {
	border:0;
	font-variant:normal;
}
sup {
	vertical-align:top;
}
sub {
	vertical-align:text-bottom;
}
input, textarea, select {
	font-family:inherit;
	font-size:inherit;
	font-weight:inherit;
}
input, textarea, select {
 *font-size:100%;
}
legend {
	color:#000000;
}
img {
	vertical-align:bottom;
  height: auto;
}
table caption {
	font-weight: bold;
	margin:0 0 5px;
}
/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}


/*** ------------------------------------------------------------------------------ 

HTML5

-----------------------------------------------------------------------------  ***/
#header, footer, nav, section, article, figure, aside {
	display:block;
}
* {
	box-sizing:border-box;
}
i{
	margin: 0 5px 0 0;
}
img{
	max-width: 100%;
	image-rendering: -webkit-optimize-contrast;
}

/*** ------------------------------------------------------------------------------ 

common

-----------------------------------------------------------------------------  ***/
html {
	height: 100%;
  font-size: 10px;
	overflow-x: hidden;
  overflow-x: clip;
}
body {
  padding-top: 200px;
  background-color: #E8F2F7;
	color: var(--color_blue);
	line-height: 2.0;
	font-size: 1.6rem;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-style: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}
@media (max-width:768px){
	body {
    padding-top: 0;
    background-color: #E8F2F7;
		font-size: 1.6rem;
	}
}

.l-section-inner{
  width: 1060px;
	max-width:100%;
	padding: 90px 20px 0;
	box-sizing: border-box;
	margin: 0 auto;
}

.u-txt--en{
  font-family: "Philosopher", sans-serif;
}

.pc{ display: block;}
.sp{ display: none;}

@media (max-width:768px){
  .p-section-title{
    margin-bottom: 40px;
  }
  .p-section-title__main{
    letter-spacing: 4px;
    font-size: 3.2rem;
    font-weight: bold;
  }
	.pc{ display: none;}
	.sp{ display: block;}
}

/*** ------------------------------------------------------------------------------ 

アニメーション

-----------------------------------------------------------------------------  ***/
.scroll_fade {
    transition: 0.8s ease-in-out;
    opacity: 0;
}
.scroll_fade.on {
    opacity: 1.0;
}
.scroll_fade2 {
    transition: 0.8s ease-in-out;
    opacity: 0;
}
.scroll_fade2.on {
    opacity: 1.0;
}



/*** ------------------------------------------------------------------------------ 

リンク

-----------------------------------------------------------------------------  ***/
/* 基本 */
a{
	outline:none;
	-webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
}
a:link {
	text-decoration: none;
}
a:visited {
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
a:active {
	text-decoration: none;
}
a img {
	transition: 0.3s;
}

input[type=text],
textarea {
  -webkit-appearance: none;
}

section .scroll-hint-icon-wrap.is-active .scroll-hint-icon{
  width: 150px;
  height: 153px;
  padding-top: 43px;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(0, 78, 162, 0.9) 0%, rgba(0, 160, 233, 0.9) 100%);
  border-radius: 18px;
  top: calc(50% - 75px);
  left: calc(50% - 75px);
}
section .scroll-hint-icon:after{
  width: 58px;
  height: 21px;
  background-size: contain;
  top:24px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
section .scroll-hint-icon:before{
  width: 53px;
  height: 63px;
  background-size: contain;
  transform: translateX(6px);
  top:40px;
}
section .scroll-hint-text{
  font-size: 1.4rem;
  font-weight: bold;
}


/*** ------------------------------------------------------------------------------ 

.l-header

-----------------------------------------------------------------------------  ***/
.l-header{
  display: flex;
  justify-content: space-between;
  align-items: center;
  width:100%;
  max-width: 100%;
  padding: 38px 35px 38px 50px;
  position: fixed;
  top:0;
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: 999;
  transition: .3s;
}
.l-header__logo{
  width: 381px;
  max-width: 100%;
}
.l-header__nav{
  display: flex;
  justify-content: flex-end;
}
.l-header__nav-list{
  display: flex;
  justify-content: flex-end;
  gap:20px;
  margin-right: 40px;
}
.l-header__nav-list-item a{
  display: inline-block;
  line-height: 1;
  font-size: 1.4rem;
  font-weight: bold;
  color: var(--color_blue);
  transition: .3s;
}
.l-header__nav-btn{
  display: inline-block;
  padding: 8px 20px 10px;
  background: var(--color_blue);
  border-radius: 6px;
  line-height: 1;
  font-weight: bold;
  color: #fff;
  transition: .3s;
}
.l-header__nav-btn-txt{
  display: inline-block;
  padding-right: 23px;
  background: url(../img/icon/tab.svg)no-repeat center right / 13px;
  font-size: 1.4rem;
}
.l-header__menu-btn{
  display: none;
}

@media(any-hover: hover){
  .l-header__nav-list-item a:hover{
    opacity: .8;
    transform: scale(1.02);
  }
  .l-header__nav-btn:hover{
    opacity: .6;
    transform: scale(1.02);
  }
}

@media(min-width:1101px){
  .l-header.is-scrolled{
    background: #E8F2F7;
    padding: 20px;
  }
}
@media(max-width:1250px){
  .l-header{
    padding:20px;
  }
  .l-header__nav-list{
    gap:15px;
    margin-right: 20px;
  }
  .l-header__nav-list-item a{
    font-size: 1.3rem;
  }
  .l-header__nav-btn-txt{
    font-size: 1.3rem;
  }
}
@media(max-width:1100px){
  .l-header{
    padding: 8px 16px;
    background:none;
    top:0;
    transition: .3s;
  }
  .l-header.active{
    background: #E8F2F7;
  }
  .l-header__nav{
    display: block;
    width: 100%;
    height: 100vh;
    padding: 80px 20px;
    background: url(../img/bg-sp/sp-menu.svg)no-repeat center center / contain;
    background-color: #E8F2F7;
    text-align: center;
    position: fixed;
    top:50px;
    left: 0;
    transform: translateX(100%);
    transition: .3s;
  }
  .l-header__nav.active{
    transform: translateX(0);
  }
  .l-header__nav-list{
    display: block;
    text-align: center;
    margin: 0 auto 44px;
  }
  .l-header__nav-list-item {
    margin-bottom: 25px;
  }
  .l-header__nav-list-item a{
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
  }
  .l-header__nav-btn{
    margin: 0 auto;
  }
  .l-header__menu-btn{
    display: block;
    width: 32px;
    height: 11px;
    background: url(../img/menu-btn.svg)no-repeat center center / contain;
  }
  .l-header__menu-btn.active{
    display: block;
    width: 32px;
    height: 11px;
    background: url(../img/menu-btn--close.svg)no-repeat center center / contain;
  }
}

@media(max-width:768px){
  .l-header__logo{
    width: 160px;
  }
  .l-header__nav{
    background: url(../img/bg-sp/sp-menu.svg)no-repeat center center / cover;
    background-color: #E8F2F7;
  }
}

/*** ------------------------------------------------------------------------------ 

.l-footer

-----------------------------------------------------------------------------  ***/
.l-footer{
  display: block;
  width: 100%;
  padding-top: 56px;
  background: url(../img/footer-bg.svg)no-repeat center bottom / 2180px;
  position: relative;
  z-index: 2;
}
.l-footer:before{
  content: '';
  display: block;
  width: 97px;
  height: 104px;
  background: url(../img/love-chan.png)no-repeat center center / contain;
  position: absolute;
  top:-17px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.l-footer__inner{
  padding-top: 70px;
}
.l-footer__img{
  width: 380px;
  max-width: 100%;
  margin: 0 auto 80px;
}
.l-footer__links{
  display: flex;
  justify-content: space-between;
  width: 1320px;
  max-width:100%;
  padding: 0 20px;
  margin: 0 auto 43px;
}
.l-footer__nav{
  display: flex;
  justify-content: flex-end;
  gap:20px;
}
.l-footer__nav-list{
  display: flex;
  justify-content: flex-end;
  gap:20px;
}
.l-footer__nav-list-item a{
  font-size: 1.4rem;
  color: var(--color_blue);
  transition: .3s;
}
.l-footer__btn{
  display: inline-block;
  padding: 8px 20px 10px;
  background: var(--color_blue);
  border-radius: 6px;
  line-height: 1;
  font-weight: bold;
  color: #fff;
}
.l-footer__btn-txt{
  display: inline-block;
  padding-right: 23px;
  font-size: 1.4rem;
  background: url(../img/icon/tab.svg)no-repeat center right / 13px;
  transition: .3s;
}
.l-footer__copyright{
  display: block;
  width: 100%;
  padding:0 20px 35px;
  text-align: center;
  line-height: 1;
  font-size: 1.4rem;
  font-weight: 400;
}

@media(any-hover: hover){
  .l-footer__btn-txt:hover{
    opacity: .6;
  }
  .l-footer__nav-list-item a:hover{
    opacity: .6;
  }
}

@media(max-width:1150px){
  .l-footer__links{
    justify-content: center;
    flex-wrap: wrap;
  }
  .l-footer__logo{
    width: 100%;
    text-align: center;
    margin-bottom: 40px;
  }
}
@media(max-width:768px){
  .l-footer{
    padding-top: 18px;
    background: #fff;
    margin-top: 44px;
  }
  .l-footer:before{
    width: 56px;
    height: 60px;
    top:-64px;
    z-index: 2;
  }
  .l-footer:after{
    content: '';
    display: block;
    width: 100%;
    height: 20px;
    background: url(../img/footer-bg--sp.png)no-repeat top center / 100%;
    position: absolute;
    top:-19px;
    left: 0;
    z-index: 1;
  }
  .l-footer__inner{
    padding-top:0;
  }
  .l-footer__img{
    width: 217px;
    margin: 0 auto 40px;
  }
  .l-footer__links{
    display: block;
    width: 400px;
    max-width: 100%;
    padding: 0 35px;
    margin: 0 auto 48px;
  }
  .l-footer__nav{
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    gap:14px;
  }
  .l-footer__logo{
    display: none;
  }
  .l-footer__nav-list{
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap:9px;
  }
  .l-footer__nav-list-item {
    width: calc(50% - 8px);
  }
  .l-footer__nav-list-item a{
    font-size: 1.4rem;
    font-weight: bold;
    color: var(--color_blue);
  }
  .l-footer__copyright{
    padding:0 20px 20px;
  }
}



/*** ------------------------------------------------------------------------------ 

.fv

-----------------------------------------------------------------------------  ***/
.fv-01{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background: #fff;
  position: fixed;
  top:0;
  left: 0;
  z-index: 99999;
  animation: fv 2.5s linear;
  animation-fill-mode: forwards;
}
.fv-01 img{
  width: 320px;
}
.fv-02{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background: #fff;
  position: fixed;
  top:0;
  left: 0;
  z-index: 99998;
  animation: fv 2.5s linear;
  animation-delay: 2.5s;
  animation-fill-mode: forwards;
}
.fv-02 img{
  width: 295px;
}
@keyframes fv{
  0%{
    opacity: 1;
  }
  60%{
    opacity: 1;
  }
  95%{
    opacity: 0;
    
  }
  100%{
    opacity: 0;
    display: none;
  }  
}
#confetti-canvas {
  position: absolute;
  inset: 0;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  top:0;
  left: 0;
  z-index: 99;
}

@keyframes bgimg01{
  0%   { transform: translate(0, 0) rotate(0deg); }
  30%  { transform: translate(10px, 20px) rotate(1deg); }
  32%  { transform: translate(10px, 20px) rotate(1deg); }
  60%  { transform: translate(-10px, 30px) rotate(-1deg); }
  62%  { transform: translate(-10px, 30px) rotate(-1deg); }
  100% { transform: translate(0, 0) rotate(0deg); }
}
@keyframes bgimg02{
  0%   { transform: translate(0, 0) rotate(0deg); }
  20%  { transform: translate(-15px, 15px) rotate(-2deg); }
  50%  { transform: translate(10px, 35px) rotate(2deg); }
  80%  { transform: translate(-5px, 20px) rotate(-1deg); }
  100% { transform: translate(0, 0) rotate(0deg); }
}

/*** ------------------------------------------------------------------------------ 

.pg-top

-----------------------------------------------------------------------------  ***/

/* .pg-top-visual */
.pg-top-visual{
  height: 836px;
  padding:0 0 130px;
  position: relative;
  margin-top: 40px;
}
.pg-top-visual:before{
  content: '';
  display: block;
  width: 756px;
  height: 100%;
  background: url(../img/mv-bg01.png)no-repeat center top / contain;
  position: absolute;
  top: -256px;
  left: -4px;
  z-index: 3;
  animation: bgimg01 20s linear infinite;
  opacity: 0;
  transition: 1s;
}
.pg-top-visual.active:before{
  opacity: 1;
}
.pg-top-visual:after{
  content: '';
  display: block;
  width: 918px;
  height: 100%;
  background: url(../img/mv-bg02.png)no-repeat center top / contain;
  position: absolute;
  top: -131px;
  right: -265px;
  z-index: 1;
  animation: bgimg02 20s linear infinite;
  opacity: 0;
  transition: 1s;
}
.pg-top-visual.active:after{
  opacity: 1;
}
.pg-top-visual__img{
  display: block;
  width: 100%;
  height: 715px;
  background: url(../img/mv-img.png)no-repeat top center / 1604px;
  position: absolute;
  top:0;
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: 2;
  transform: translateX(180px);
}
.pg-top-visual__img:before{
  content: '';
  display: block;
  width: 278px;
  height: 100%;
  background: url(../img/mv-bg03.png)no-repeat center top / contain;
  position: absolute;
  top: 120px;
  right: 105px;
  z-index: 1;
  animation: bgimg01 20s linear infinite;
  opacity: 0;
  transition: 1s;
}
.pg-top-visual.active .pg-top-visual__img:before{
  opacity: 1;
}
.pg-top-visual__img-cover{
  width: 100%;
  height: 100%;
  background: #E8F2F7;
  animation: mvimg .5s linear;
  animation-delay: 5.1s;
  animation-fill-mode: forwards;
}
@keyframes mvimg{
  0%{
    transform: translateX(0);
  }
  100%{
    transform: translateX(100%);
  }
}
.pg-top-visual__inner{
  width: 790px;
  max-width: 100%;
  padding: 160px 20px;
  position: relative;
  margin: 0 auto;
  z-index: 4;
}
.pg-top-visual__catch{
  transform: translateX(6px);
}
@media(min-width:1970px){
  .pg-top-visual__img{
    background: url(../img/mv-img.png)no-repeat top right / 1604px;
    transform: none;
  }
}
@media(max-width:1600px){
  .pg-top-visual__img{
    width: 100%;
    background: url(../img/mv-img.png)no-repeat top left / 1604px;
    background-position: calc(50% + 180px);
    transform: none;
  }
}
@media(max-width:1300px){
  .pg-top-visual__img{
    width: 100%;
  }
}
@media(max-width:1120px){
  .pg-top-visual__img{
    background-position:top left -60px;
  }
  .pg-top-visual__catch{
    text-align: center;
  }
}
@media(max-width:900px){
  .pg-top-visual__img{
    background: url(../img/mv-img.png)no-repeat top left / 150%;
    background-position:top left -60px;
  }
  .pg-top-visual__catch{
    transform: translateX(-22px);
  }
}
@media(max-width:768px){
  .pg-top-visual{
    height: auto;
    padding:175px 0 343px;
    margin-top: 0;
  }
  .pg-top-visual:before{
    width: 105px;
    height: 191px;
    background: url(../img/bg-sp/mv-bg01.svg)no-repeat top left / contain;
    top: 15px;
    left: -1px;
    animation: bgimg03 20s linear infinite;
  }
  .pg-top-visual:after{
    width: 127px;
    height: 246px;
    background: url(../img/bg-sp/mv-bg02.svg)no-repeat top left / contain;
    top:auto;
    left: 0;
    right: auto;
    bottom: -76px;
  }
  .pg-top-visual__catch{
    transform: translateX(0);
  }
 .pg-top-visual__img:before{
    width: 257px;
    height: 282px;
    background: url(../img/bg-sp/mv-bg03.svg)no-repeat top left / contain;
    position: absolute;
    top: 23px;
    right: -2px;
    bottom: auto;
    z-index: 4;
  }
  .pg-top-visual__img{
    width: 100%;
    height: 275px;
    height: 100%;
    background: url(../img/mv-img--sp.png)no-repeat top left -40px / 595px;
    background: url(../img/mv-img--sp.png)no-repeat top 230px right -100px / contain;
    top:230px;
    top:0;
    transform:none;
  }
  .pg-top-visual__inner{
    width: 100%;
    max-width: 100%;
    padding: 0 20px;
    text-align: center;
    position: relative;
  }
}
@media(max-width:500px){
  .pg-top-visual__img{
    height: 275px;
    background: url(../img/mv-img--sp.png)no-repeat top left -40px / 595px;
    top:230px;
  }
}


/* .pg-top-about */
.pg-top-about {
  position: relative;
}
.pg-top-about:before{
  content: '';
  display: block;
  width: 700px;
  height: 356px;
  background: url(../img/about-bg02.svg)no-repeat center center / contain;
  position: absolute;
  left: 16px;
  bottom: -77px;
  animation: bgimg01 20s linear infinite;
}
.pg-top-about:after{
  content: '';
  display: block;
  width: 235px;
  height: 312px;
  background: url(../img/about-bg03.svg)no-repeat center center / contain;
  position: absolute;
  right: -15px;
  bottom: 230px;
  animation: bgimg02 20s linear infinite;
}
.pg-top-about .l-section-inner{
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 0;
  padding-bottom: 330px;
  position: relative;
  z-index: 2;
}
.pg-top-about .l-section-inner:before{
  content: '';
  display: block;
  width: 62px;
  height: 58px;
  background: url(../img/about-bg04.svg)no-repeat center center / contain;
  position: absolute;
  left: 216px;
  bottom: 201px;
  animation: bgimg01 20s linear infinite;
}
.pg-top-about .l-section-inner:after{
  content: '';
  display: block;
  width: 151px;
  height: 102px;
  background: url(../img/about-bg01.svg)no-repeat center center / contain;
  position: absolute;
  top:-35px;
  left: 0;
  right: 0;
  margin: 0 auto;
  transform: translateX(92px);
}
.pg-top-about__txt{
  display: inline-block;
  padding-left: 23px;
  line-height: 1.8;
  font-size: 1.8rem;
}
.pg-top-about__txt.sp{
  display: none;
}
.pg-top-about__img{
  width: 352px;
  transform: translate(20px, 18px);
}
.pg-top-about__bg{
  display: block;
  width: 100%;
  height: 1149px;
  background: url(../img/about-img.png)no-repeat top center / 1380px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 auto;
  z-index: 1;
  transform: translateX(315px);
}
@media(min-width:1970px){
  .pg-top-about__bg{
    background: url(../img/about-img.png)no-repeat top right / 1380px;
    transform: none;
  }
}
@media(max-width:1600px){
  .pg-top-about__bg{
    width: 100%;
    background: url(../img/about-img.png)no-repeat top right / 1380px;
    background-position: calc(50% + 300px);
    transform: none;
  }
}
@media(max-width:1150px){
  .pg-top-about__bg{
    background-position: calc(50% + 200px);
  }
}
@media(max-width:1000px){
  .pg-top-about .l-section-inner{
    flex-wrap: wrap;
    padding-bottom: 181px;
  }
  .pg-top-about .l-section-inner:before{
    display: none;
  }
  .pg-top-about__txt.sp{
    display:block;
    width:600px;
    max-width: 100%;
    padding-left:15px;
    margin: 0 auto;
    order: 2;
  }
  .pg-top-about__txt.pc{
    display: none;
  }
  .pg-top-about__img{
    width: 100%;
    text-align: center;
    margin: 19px auto 43px;
    transform: none;
  }
  .pg-top-about__img img{
    width: 158px;
  }
}
@media(max-width:768px){
  .pg-top-about:before,
  .pg-top-about:after{
    display: none;
  }
  .pg-top-about .l-section-inner{
    flex-wrap: wrap;
    padding-bottom: 181px;
  }
  .pg-top-about .l-section-inner:before{
    display: block;
    width: 80px;
    height: 140px;
    background: url(../img/bg-sp/about-bg01.svg)no-repeat center center / contain;
    left: auto;
    right: -5px;
    bottom: 187px;
    z-index: -1;
  }
  .pg-top-about .l-section-inner:after{
    display: none;
  }
  .pg-top-about__txt.sp{
    padding-left:15px;
    font-size: 1.4rem;
    order: 2;
  }
  .pg-top-about__txt.pc{
    display: none;
  }
  .pg-top-about__img{
    width: 158px;
    margin: 19px auto 43px;
    transform: none;
  }
  .pg-top-about__bg{
    width: 100%;
    height: 100%;
    background:url(../img/about-img--sp.png)no-repeat bottom right -140px/ contain;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0 auto;
    z-index: 1;
    transform:none;
  }
}
@media(max-width:500px){
  .pg-top-about__bg{
    background:url(../img/about-img--sp.png)no-repeat right -85px bottom / 453px;
  }
}

/* .pg-top-future */
.pg-top-future{
  position: relative;
  z-index: 2;
}
.pg-top-future:before{
  content: '';
  display: block;
  width: 202px;
  height: 248px;
  background: url(../img/future-bg01.svg)no-repeat center center / contain;
  position: absolute;
  top: 418px;
  left: -8px;
  z-index: 1;
  animation: bgimg01 20s linear infinite;
}
.pg-top-future:after{
  content: '';
  display: block;
  width: 272px;
  height: 411px;
  background: url(../img/future-bg02.svg)no-repeat center center / contain;
  position: absolute;
  top: -3px;
  right: -5px;
  z-index: 1;
  animation: bgimg02 20s linear infinite;
}
.pg-top-future .l-section-inner{
  width: 100%;
  padding: 140px 0 80px;
  position: relative;
  z-index: 2;
}
.pg-top-future__box{
  display: flex;
  align-items: center;
  gap:80px;
  width: 1020px;
  max-width: 100%;
  padding: 100px 85px;
  border-radius: 20px;
  background:rgba(255,255,255,.6);
  margin: 0 auto 150px;
}
.pg-top-future__box-logo{
  width: 295px;
}
.pg-top-future__box-txt{
  width: calc(100% - 375px);
  padding-left: 3px;
  line-height: 2;
  font-size: 1.4rem;
}
.pg-top-future__slide{
  display: block;
  overflow: hidden;
}
.pg-top-future__slide-list {
  display: flex;
  gap: 0;
  width: max-content;
  margin-bottom: 12px;
}
.pg-top-future__slide-list-item {
  width: 299px;
  border-radius: 22px;
  overflow: hidden;
  white-space: nowrap;
  margin-left: 10px;
}
.pg-top-future__slide-list--01 {
  animation: slideRight 60s linear infinite;
}
.pg-top-future__slide-list--02 {
  animation: slideLeft 60s linear infinite;
}
@keyframes slideLeft {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(calc(-50% - 5px));
  }
}

@keyframes slideRight {
  from {
    transform: translateX(calc(-50% - 5px));
  }
  to {
    transform: translateX(0);
  }
}

@media(max-width:900px){
  .pg-top-future__box{
    flex-wrap: wrap;
    max-width: calc(100% - 40px);
    margin: 0 auto 70px;
  }
  .pg-top-future__box-logo{
    width: 189px;
    margin: 0 auto;
  }
  .pg-top-future__box-txt{
    width: 100%;
  }
}

@media(max-width:768px){
  .pg-top-future:before{
    width: 114px;
    height: 140px;
    background: url(../img/bg-sp/future-bg01.svg)no-repeat center center / contain;
    top:auto;
    left: -20px;
    bottom: 366px;
    z-index: 1;
  }
  .pg-top-future:after{
    display: none;
  }
  .pg-top-future .l-section-inner{
    padding:10px 0 105px;
    position: relative;
    z-index: 2;
  }
  .pg-top-future__box{
    flex-wrap: wrap;
    gap:30px;
    max-width: calc(100% - 40px);
    padding:37px 25px 20px;
    background: rgba(255,255,255,.8);
    margin: 0 auto 70px;
  }
  .pg-top-future__box-logo{
    width: 189px;
    margin: 0 auto;
  }
  .pg-top-future__box-txt{
    width: 100%;
    line-height: 1.85;
    font-size: 1.2rem;
  }
  .pg-top-future__slide-list {
    margin-bottom: 7px;
  }
  .pg-top-future__slide-list-item {
    width: 170px;
    border-radius: 13px;
    margin-left: 6px;
  }
}


/* .pg-top-message */
.pg-top-message {
  position: relative;
  z-index: 1;
}
.pg-top-message:before{
  content: '';
  display: block;
  width: 405px;
  height:462px;
  background: url(../img/message-bg02.svg)no-repeat center center / contain;
  position: absolute;
  top: -182px;
  right: -17px;
  z-index: 1;
  animation: bgimg01 20s linear infinite;
}
.pg-top-message .l-section-inner{
  width: 1040px;
  padding-top: 60px;
  padding-bottom: 263px;
  position: relative;
  z-index: 2;
}
.pg-top-message__ttl{
  display: block;
  padding-left: 24px;
  line-height: 1;
  font-size: 7.6rem;
  font-weight: bold;
  margin-bottom: 30px;
}
.pg-top-message__txt{
  width: 582px;
  max-width: 100%;
  padding-left: 25px;
  line-height: 1.85;
}
.pg-top-message__txt-name{
  display: block;
  text-align: right;
  line-height: 1;
  margin-top: 35px;
}
.pg-top-message__txt-name span{
  line-height: 1;
  font-size: 2.8rem;
}
.pg-top-message__img{
  width:349px;
  height:558px;
  position: absolute;
  right: 37px;
  bottom: -1px;
}
.pg-top-message__img img{
  width: 100%;
  height: auto;
}
.pg-top-message__bg{
  display: block;
  width: 100%;
  height: 1149px;
  background: url(../img/message-bg01.png)no-repeat center bottom / 1800px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -13px;
  margin: 0 auto;
  z-index: 1;
}
@media(min-width:1815px){
  .pg-top-message__bg{
    background: url(../img/message-bg01.png)no-repeat center bottom / 
  100%;
  bottom: -14px;
  }
}
@media(max-width:1000px){
  .pg-top-message__img{
    display: flex;
    align-items: flex-end;
    width: 30%;
    object-position: center bottom;
    bottom: 1px;
  }
}
@media(max-width:850px){
  .pg-top-message .l-section-inner{
    padding-bottom: 400px;
  }
  .pg-top-message__txt{
    width: 100%;
  }
  .pg-top-message__txt-name{
    text-align: left;
  }
}
@media(max-width:768px){
  .pg-top-message:before{
    width: 169px;
    height: 236px;
    background: url(../img/bg-sp/message-bg01.svg)no-repeat center center / contain;
    top:-116px;
    right: 0;
  }
  .pg-top-message .l-section-inner{
    width: 100%;
    padding-top: 0;
    padding-bottom: 168px;
  }
  .pg-top-message__ttl{
    padding-left: 3px;
    font-size: 5.4rem;
    margin-bottom: 36px;
  }
  .pg-top-message__txt{
    width:100%;
    padding-left: 0;
    line-height: 1.8;
    font-size: 1.4rem;
  }
  .pg-top-message__txt-name{
    text-align: left;
    font-size: 1.2rem;
  }
  .pg-top-message__txt-name span{
    display: block;
    font-size: 2.2rem;
    margin-top: 8px;
  }
  .pg-top-message__img{
    width:152px;
    height:243px;
    right: 27px;
    bottom: 0;
  }
  .pg-top-message__img img{
    width: 100%;
    height: auto;
  }
  .pg-top-message__bg{
    height: 300px;
    background: url(../img/message-bg01--sp.png)no-repeat center bottom / 100%;
    bottom: -10px;
  }
}
@media(max-width:500px){  
  .pg-top-message__bg{
    bottom: 0;
  }
}

/* .pg-top-phil */
.pg-top-phil{
  position: relative;
}
.pg-top-phil:before{
  content: '';
  display: block;
  width: 319px;
  height:468px;
  background: url(../img/phil-bg01.svg)no-repeat center center / contain;
  position: absolute;
  top: 1px;
  right: -4px;
  z-index: 1;
  animation: bgimg02 20s linear infinite;
}
.pg-top-phil .l-section-inner{
  width: 1150px;
  position: relative;
  z-index: 2;
}
.pg-top-phil__box{
  width: 1110px;
  max-width: 100%;
  padding: 20px 50px 100px;
  border-radius: 20px;
  background: #fff;
  background: linear-gradient(180deg, #FFFFFF 0%, rgba(255, 255, 255, 0) 87.74%, rgba(254, 254, 254, 0) 128.51%);
}
.pg-top-phil__box-inner{
  display: flex;
  justify-content: flex-start;
  padding: 50px 0 26px;
  border-bottom: solid 1px #BCE2E8;
}
.pg-top-phil__box-inner--bd-none{
  border: none;
}
.pg-top-phil__box-ttl{
  width: 48%;
  padding-top: 10px;
  padding-left: 54px;
  line-height: 1;
  font-size: 3rem;
  font-weight: bold;
}
.pg-top-phil__box-ttl .u-txt--en{
  display: inline-block;
  letter-spacing: .4px;
  font-size: 1.4rem;
  font-weight: 400;
  transform: translateY(-5px);
}
.pg-top-phil__box-txt{
  width: 50%;
  line-height: 3;
  transform: translateY(-10px);
}
.pg-top-phil__box-inner--bd-none .pg-top-phil__box-txt{
  transform: translateY(-2px);
  line-height: 1.7;
}
@media(max-width:1050px){
  .pg-top-phil__box{
    padding-left: 20px;
    padding-right: 20px;
  }
  .pg-top-phil__box-ttl{
    width: 38%;
  }
  .pg-top-phil__box-txt{
    width: 60%;
  }
}
@media(max-width:800px){
  .pg-top-phil .l-section-inner{
    padding-top: 55px;
  }
  .pg-top-phil__box{
    padding: 3px 25px 40px;
  }
  .pg-top-phil__box-inner{
    flex-wrap: wrap;
    padding: 30px 0;
  }
  .pg-top-phil__box-ttl{
    width: 100%;
    padding-left: 0;
    margin-bottom: 17px;
  }
  .pg-top-phil__box-txt{
    width: 100%;
    line-height:1.5;
    transform:none;
  }
  .pg-top-phil__box-inner--bd-none .pg-top-phil__box-txt{
    line-height: 1.55;
    transform: none;
  }
}
@media(max-width:768px){
  .pg-top-phil{
    z-index: 1;
  }
  .pg-top-phil:before{
    width: 181px;
    height:274px;
    background: url(../img/bg-sp/phil-bg01.svg)no-repeat center center / contain;
    top:auto;
    right: -10px;
    bottom: -87px;
  }
  .pg-top-phil__box-ttl{
    font-size: 2.6rem;
  }
  .pg-top-phil__box-txt{
    font-size: 1.2rem;
  }
}


/* .pg-top-movie */
.pg-top-movie{
  position: relative;
}
.pg-top-movie:before{
  content: '';
  display: block;
  width: 331px;
  height:439px;
  background: url(../img/movie-bg01.svg)no-repeat center center / contain;
  position: absolute;
  top: 392px;
  left: -7px;
  z-index: 1;
  animation: bgimg02 20s linear infinite;
}
.pg-top-movie .l-section-inner{
  width: 100%;
  padding-top: 165px;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 110px;
  position: relative;
  z-index: 2;
}
.pg-top-movie__slide-box{
  display: block;
  overflow: hidden;
}
.pg-top-movie__slide {
  display: flex;
  gap: 0;
  width: max-content;
  animation: slideRight 60s linear infinite;
}
.pg-top-movie__slide-item {
  width: 663px;
  overflow: hidden;
  white-space: nowrap;
  margin-left: 23px;
}
.pg-top-movie__content{
  width: 878px;
  max-width: 100%;
  margin: 25px auto 0;
}
.pg-top-movie__content iframe{
  width: 100% !important;
  height: 494px;
  max-height: 55vw;
}

@media(max-width:768px){
  .pg-top-movie{
    padding-bottom: 45px;
    background: linear-gradient(180deg, #FFFFFF 0%, rgba(255, 255, 255, 0) 100%);
    z-index: 2;
  }
  .pg-top-movie:before{
    display: none;
  }
  .pg-top-movie .l-section-inner{
    padding-top: 35px;
    padding-bottom: 0;
  }
  .pg-top-movie__slide-box{
    margin-bottom: 14px;
  }
  .pg-top-movie__content{
    margin: 14px auto 0;
  }
  .pg-top-movie__content iframe{
    width: 100% !important;
    height: 55vw;
  }

}

/* .pg-top-history */
.pg-top-history{
  position: relative;
}
.pg-top-history:before{
  content: '';
  display: block;
  width: 337px;
  height:509px;
  background: url(../img/history-bg01.svg)no-repeat center center / contain;
  position: absolute;
  top: 627px;
  left: -3px;
  z-index: 1;
  animation: bgimg02 20s linear infinite;
}
.pg-top-history .l-section-inner{
  width: 1235px;
  padding-top: 256px;
  position: relative;
  z-index: 2;
}
.pg-top-history__bg{
  display: block;
  width: 100%;
  height: 907px;
  background: url(../img/history-img.png)no-repeat top left / 1150px;
  position: absolute;
  top:0;
  left: -42px;
  z-index: 1;
}
.pg-top-history__box{
  width: calc(50vw + 603px);
  padding: 116px 0 70px 80px;
  background: linear-gradient(130.68deg, rgba(115, 224, 242, 0.3) 9.6%, rgba(1, 78, 162, 0.3) 60.33%);
  backdrop-filter: blur(20px);
  border-radius: 40px 0 0 40px;
}
.pg-top-history__box-head{
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  width: 1160px;
  max-width: calc(100% - 90px);
  margin-bottom: 40px;
}
.pg-top-history__box-ttl{
  display: block;
  line-height: 1.2;
  font-size: 2.4rem;
  font-weight: bold;
  color: #fff;
}
.pg-top-history__box-ttl .u-txt--en{
  font-size: 8.2rem;
  letter-spacing: 2px;
}

.pg-top-history__tab-btn{
  display: flex;
  gap:20px;
  margin-bottom: -3px;
}
.pg-top-history__tab-btn-item{
  padding: 0px 25px;
  background: rgba(0, 78, 162, 0.3);
  border: 1px solid #FFFFFF;
  border-radius: 10px;
  font-size: 1.8rem;
  color: #fff;
  transition: .3s;
  cursor: pointer;
}
.pg-top-history__tab-btn-item.active{
  border: solid 1px var(--color_blue);
  background: var(--color_blue);
  pointer-events: none;
}
.pg-top-history__tab-cnt{
  display: none;
  padding:50px 0 55px 100px;
  border-radius: 10px;
  background: #fff;
}
.pg-top-history__tab-cnt.active{
  display: block;
}
.pg-top-history__tab-cnt-head{
  position: relative;
}
.pg-top-history__tab-cnt-head-year{
  display: block;
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: bold;
  font-style: normal;
  font-variation-settings:"wdth" 100;
  font-size: 1.4rem;
  color: #545454;
  margin-bottom: -6px;
}
.pg-top-history__tab-cnt-head-txt{
  display: block;
  line-height: 1.6;
  font-size: 1.6rem;
  font-weight: 400;
  color: var(--color_blue);
  margin-bottom: 17px;
}
.pg-top-history__tab-cnt-head-txt-main{
  display: block;
  font-size: 3.2rem;
  font-weight: bold;
  margin-bottom: -4px;
}
.pg-top-history__tab-slide{
  visibility: inherit;
}
.active .pg-top-history__tab-slide{
  padding-left: 8px;
  animation: slidevis .3s;
  animation-delay: .3s;
  animation-fill-mode: forwards;
  visibility: hidden;
  overflow: inherit;
  transform: translateX(-6px);
  position: relative;
  margin-bottom: 0 !important;
}
.active .pg-top-history__tab-slide:before{
  content: '';
  display: block;
  width: 15px;
  height: 15px;
  border-radius: 20px;
  background: var(--color_blue);
  position: absolute;
  top:0;
  left:0;
  z-index: 2;
}
.pg-top-history__tab-cnt .slide-nav-area{
  display: inline-block;
  position: absolute;
  top:11px;
  right: 50px;
}
.pg-top-history__tab-cnt .slide-nav-box{
  display: flex;
  justify-content: space-between;
  align-items: center;
  align-content: center;
  padding:0;
  position: relative;
}
.pg-top-history__tab-cnt .prev-arrow{
  display: block;
  width: 11px;
  height: 17px;
  background: url(../img/icon/arrow-left--grey.svg)no-repeat center center / contain;
  margin-right: 18px;
  transition: .3s;
  cursor: pointer;
}
.pg-top-history__tab-cnt .next-arrow{
  display: block;
  width: 11px;
  height: 17px;
  background: url(../img/icon/arrow-right--grey.svg)no-repeat center center / contain;
  margin-left: 18px;
  transition: .3s;
  cursor: pointer;
  order: 3;
}
.pg-top-history__tab-cnt .slide-nav{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap:12px;
}
.pg-top-history__tab-cnt .slide-nav li{
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 20px;
  background: #C6C7CC;
  cursor: pointer;
}
.pg-top-history__tab-cnt .slide-nav li.slick-active{
  background: var(--color_blue);
}
.pg-top-history__tab-cnt .slide-nav li button{
  display: none;
}
.pg-top-history__tab-slide-item{
  width: 270px;
  padding: 25px 0 0;
  position: relative;
  z-index: 1;
}
.pg-top-history__tab-slide-item--medium{
  width: 290px;
}
.pg-top-history__tab-slide-item--wide{
  width: 390px;
}
.pg-top-history__tab-slide-item::before{
  content: '';
  display: block;
  width: 15px;
  height: 15px;
  border-radius: 20px;
  background: var(--color_blue);
  position: absolute;
  top:0;
  left:-8px;
}
.pg-top-history__tab-slide-item::after{
  content: '';
  display: block;
  width: calc(100% - 15px);
  height: 3px;
  background: linear-gradient(90deg, #DB8BA9 0%, #014EA2 100%);
  position: absolute;
  top:6px;
  right: 0;
}
.pg-top-history__tab-slide-item-head{
  height: 153px;
  padding: 0 10px 0 18px;
  border-left: solid 1px #E8F2F7;
  position: relative;
}
.pg-top-history__tab-slide-item-year{
  display: block;
  line-height: 1;
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings:"wdth" 100;
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 12px;
}
.pg-top-history__tab-slide-item-year span{
  font-size: 1.2rem;
}
.pg-top-history__tab-slide-item-txt{
  line-height: 1.6;
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  color: #545454;
}
.pg-top-history__tab-slide-item-txt-month{
  font-size: 1.2rem;
  font-weight: bold;
  color: var(--color_blue);
}
.pg-top-history__tab-slide-item-batch{
  display: block;
  width:100%;
  padding: 8px 12px;
  border-radius: 3px 3px 0 0;
  background: var(--color_blue);
  text-align: center;
  line-height: 1.2;
  font-size: 1.2rem;
  font-weight: bold;
  color: #fff;
  position: absolute;
  left: 0;
  bottom: 0;
}
.pg-top-history__tab-slide-item-main{
  height: 124px;
  padding:18px 20px;
  background:#E8F2F7;
  line-height: 1.4;
}
.pg-top-history__tab-slide-item-main-txt{
  line-height: 1.4;
  color: var(--color_blue);
}
.pg-top-history__tab-slide-item-main-txt-box{
  display: flex;
  justify-content: space-between;
  gap:10px;
}
.pg-top-history__tab-slide-item-main-txt-box .pg-top-history__tab-slide-item-main-txt{
  display: block;
}
.pg-top-history__tab-slide-item--medium--02 .pg-top-history__tab-slide-item-main-txt{
  width: calc(50% - 5px);
}

@keyframes slidevis {
  0%{
    visibility: hidden;

  }
  100%{
    visibility: inherit;
  }
}

@media(any-hover: hover){
  .pg-top-history__tab-btn-item:hover{
    border: solid 1px var(--color_blue);
    background: var(--color_blue);
  }
  .pg-top-history__tab-cnt .prev-arrow:hover{
    background: url(../img/icon/arrow-left--blue.svg)no-repeat center center / contain;
  }
  .pg-top-history__tab-cnt .next-arrow:hover{
    background: url(../img/icon/arrow-right--blue.svg)no-repeat center center / contain;
  }
}
@media(max-width:1200px){
  .pg-top-history__box-head{
    width: calc(100vw - 120px);
  }
  .pg-top-history__tab-cnt-head{
    width:calc(100vw - 200px);
  }
  .pg-top-history__tab-cnt .slide-nav-area{
    top:-20px;
  }
}
@media(max-width:900px){
  .pg-top-history__box{
    padding-left: 20px;
  }
  .pg-top-history__box-head{
    flex-wrap: wrap;
    max-width:100%;
    margin-bottom: 16px;
  }
  .pg-top-history__box-ttl{
    display: block;
    margin-bottom: 20px;
  }
  .pg-top-history__tab-btn{
    display: flex;
    gap:10px;
    width: 100%;
    padding-right: 24px;
  }
  .pg-top-history__tab-btn-item{
    width: calc(100% / 3);
    padding:6px 16px 8px;
    border-radius: 8px;
    text-align: center;
    line-height: 1;
    font-size: 1.4rem;
  }
}
@media(max-width:768px){
  .pg-top-history:before{
    width: 133px;
    height:271px;
    background: url(../img/bg-sp/history-bg01.svg)no-repeat center center / contain;
    top: auto;
    left: -1px;
    bottom: -51px;
  }
  .pg-top-history .l-section-inner{
    padding: 100px 0 0;
  }
  .pg-top-history__bg{
    width: 100%;
    height: 388px;
    background: url(../img/history-img.png)no-repeat top left -22px / 492px;
    left: 0;
  }
  .pg-top-history__box{
    width: calc(100% - 20px);
    padding: 70px 0 65px 20px;
    border-radius: 24px 0 0 24px;
    margin-left: auto;
  }
  .pg-top-history__box-head{
    width: 100%;
  }
  .pg-top-history__box-ttl{
    font-size: 1.6rem;
  }
  .pg-top-history__box-ttl .u-txt--en{
    letter-spacing: 1px;
    font-size: 5.4rem;
  }
  .pg-top-history__tab-cnt{
    padding:36px 32px;
    border-radius: 8px 0 0 8px;
  }
  .pg-top-history__tab-cnt-head{
    width: 1000px;
  }
  .pg-top-history__tab-cnt-head-year{
    line-height: 1;
    font-size: 1.1rem;
    margin-bottom: -1px;
  }
  .pg-top-history__tab-cnt-head-txt{
    font-size: 1.2rem;
    margin-bottom: 19px;
  }
  .pg-top-history__tab-cnt-head-txt-main{
    font-size: 2.4rem;
  }
  .pg-top-history__tab-cnt{
    width: 100%;
    padding: 43px 30px 26pxpx 30px;
    overflow-x: auto;
  }
  .pg-top-history__tab-slide{
    display: flex;
    width: 1340px;
  }
  .pg-top-history__tab-slide--02{
    width:7940px;
  }
  .pg-top-history__tab-slide--03{
    width:3100px;
  }
  .active .pg-top-history__tab-slide{
    padding-left: 5px;
    transform: translateX(-5px);
  }
  .active .pg-top-history__tab-slide:before{
    width: 11px;
    height: 11px;
  }
  .pg-top-history__tab-cnt .slide-nav-area{
    display: none;
  }
  .pg-top-history__tab-slide-item{
    width: 220px;
    padding: 14px 0 0;
  }
  .pg-top-history__tab-slide-item::before{
    width: 11px;
    height: 11px;
    left:-5px;
    z-index: 2;
  }
  .pg-top-history__tab-slide-item::after{
    content: '';
    display: block;
    width: calc(100% - 12px);
    height: 2px;
    top:5px;
  }
  .pg-top-history__tab-slide-item-head{
    height: 130px;
    padding: 0 15px;
  }
  .pg-top-history__tab-slide-item-year{
    font-size: 1.8rem;
    margin-bottom: 6px;
  }
  .pg-top-history__tab-slide-item-year span{
    font-size: 1.2rem;
  }
  .pg-top-history__tab-slide-item-txt{
    font-size: 1.2rem;
  }
  .pg-top-history__tab-slide-item-txt-month{
    font-size: 1.1rem;
  }
  .pg-top-history__tab-slide-item-batch{
    padding: 8px 12px;
    border-radius: 2px 2px 0 0;
    text-align: left;
    font-size: 1.2rem;
  }
  .pg-top-history__tab-slide-item-main{
    height: 100px;
    padding:10px 5px;
  }
  .pg-top-history__tab-slide-item-main-txt{
    font-size: 1rem;
    letter-spacing: -1px;
  }
  .pg-top-history__tab-slide-item-main-txt-box {
    justify-content: flex-start;
    gap:20px;
  }
  .pg-top-history__tab-slide-item-main-txt-box .pg-top-history__tab-slide-item-main-txt{
    width: auto;
  }
}

/* .pg-top-data */
.pg-top-data{
  position: relative;
}
.pg-top-data:before{
  content: '';
  display: block;
  width: 308px;
  height:497px;
  background: url(../img/data-bg01.svg)no-repeat center center / contain;
  position: absolute;
  left: -11px;
  bottom: 518px;
  z-index: 1;
  animation: bgimg02 20s linear infinite;
}
.pg-top-data:after{
  content: '';
  display: block;
  width: 320px;
  height:553px;
  background: url(../img/data-bg02.svg)no-repeat center center / contain;
  position: absolute;
  top: 547px;
  right: -3px;
  z-index: 1;
  animation: bgimg01 20s linear infinite;
}
.pg-top-data .l-section-inner{
  width: 1240px;
  padding-top: 134px;
  padding-bottom: 80px;
  z-index: 2;
}
.pg-top-data .l-section-inner:before{
  content: '';
  display: block;
  width: 356px;
  height:553px;
  background: url(../img/data-bg03.svg)no-repeat center center / contain;
  position: absolute;
  bottom: -131px;
  right: -3px;
  z-index: 1;
  animation: bgimg02 20s linear infinite;
}
.pg-top-data__head{
  padding-left: 35px;
  position: relative;
  z-index: 2;
}
.pg-top-data__head-ttl{
  display: block;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 40px;
}
.pg-top-data__head-ttl .u-txt--en{
  letter-spacing: 2px;
  font-size: 8.2rem;
}
.pg-top-data__main{
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap:22px;
  position: relative;
  z-index: 2;
}
.pg-top-data__main-item{
  width: 100%;
  padding: 30px 38px;
  border-radius: 9px;
  border:solid 1px #A1A1A1;
}
.pg-top-data__main-item--02{
  width: calc(68% - 11px);
}
.pg-top-data__main-item-ttl{
  display: inline-block;
  font-size: 2.4rem;
  font-weight: bold;
  color: #383737;
  margin-bottom: 28px;
}

.pg-top-data__main-item--01{
  width: calc(32% - 11px);
}
.pg-top-data__main-item--01 .pg-top-data__main-item-img{
  width: 100%;
  padding-right: 18px;
  text-align: right;
  margin-bottom: 30px;
}
.pg-top-data__main-item-num-box{
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.pg-top-data__main-item-num{
  line-height: 1;
  font-size: 3.2rem;
  font-weight: bold;
  color: #383737;
}
.pg-top-data__main-item-num .unit{
  font-size: 1.8rem;
  font-weight: 400;
  color: #383737;
}
.pg-top-data__main-item-num .cat{
  font-size: 2.8rem;
}
.pg-top-data__main-item-num--01{
  width: 100%;
  font-size: 6rem;
  color: var(--color_blue);
  margin-bottom: 25px;
}
.pg-top-data__main-item-num--01 .unit{
  font-size: 2.4rem;
}
.pg-top-data__main-item-num--02{
  margin-right: 25px;
}

.pg-top-data__main-item--02{
  display: flex;
  gap:60px;
}
.pg-top-data__main-item-inner{
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
  width: calc(34% - 30px);
  padding-bottom: 20px;
}
.pg-top-data__main-item-list{
  width: calc(66% - 30px);
  padding-right:20px;
}
.pg-top-data__main-item--02 .pg-top-data__main-item-ttl{
  display: block;
  width: 100%;
  text-align: left;
}
.pg-top-data__main-item-list{
  display: flex;
  flex-wrap: wrap;
  gap:12px;
  padding-top: 8px;
}
.pg-top-data__main-item-list li{
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 8px 17px;
  border-radius: 4px;
  background: #fff;
}
.pg-top-data__main-item-list li img{
  width: 50px;
}
.pg-top-data__main-item-list li .name{
  display: inline-block;
  line-height: 1;
  font-size: 2.2rem;
  font-weight: bold;
  color: var(--color_blue);
  margin: 0 auto 0 33px;
}
.pg-top-data__main-item-list li .number{
  line-height: 1;
  font-size: 5.2rem;
  font-weight: bold;
  color: var(--color_blue);
}
.pg-top-data__main-item-list li .number span{
  font-size: 2.6rem;
  font-weight: 400;
  color: #383737;
}

.pg-top-data__main-item--03{
  padding-bottom: 60px;
}
.pg-top-data__main-item--03 .pg-top-data__main-item-ttl{
  margin-bottom: 0;
}
.pg-top-data__main-item-sales{
  padding-right: 50px;
  text-align: right;
}
.pg-top-data__main-item-sales img{
  width: 880px;
  max-width: 100%;
}

.pg-top-data__main-item--04{
  padding-bottom: 60px;
}
.pg-top-data__main-item--04 .pg-top-data__main-item-ttl{
  margin-bottom: 40px;
}
.pg-top-data__main-item-profit{
  padding-left: 53px;
  text-align: left;
}
.pg-top-data__main-item-profit img{
  width: 982px;
}

@media(max-width:1200px){
  .pg-top-data__main-item{
    padding: 20px;
  }
  .pg-top-data__main-item-num{
    font-size:2.8rem;
  }
  .pg-top-data__main-item-num--01{
    font-size: 6rem;
  }
  .pg-top-data__main-item-num--02{
    margin-right: 15px;
  }
  .pg-top-data__main-item-list li .name{
    font-size: 2rem;
    margin: 0 auto 0 20px;
  }
  .pg-top-data__main-item-list li .number{
    font-size: 4.8rem;
  }
  .pg-top-data__main-item-list li .number span{
    font-size: 2.2rem;
  }
}

@media(max-width:1015px){
  .pg-top-data .l-section-inner{
    padding-top: 78px;
    padding-bottom: 90px;
  }
  .pg-top-data__head{
    padding: 0;
  }
  .pg-top-data__head-ttl{
    font-size: 1.6rem;
    margin-bottom: 15px;
  }
  .pg-top-data__head-ttl .u-txt--en{
    letter-spacing: 1px;
    font-size: 5.4rem;
  }
  .pg-top-data__main{
    display: flex;
    justify-content: center;
    gap:10px;
  }
  .pg-top-data__main-item{
    width: 100%;
    max-width: 360px;
    padding:9px 19px 24px;
    border-radius: 8px;
  }
  .pg-top-data__main-item--02{
    width:100%;
  }
  .pg-top-data__main-item-ttl{
    font-size: 1.6rem;
    margin-bottom: 0;
  }
  .pg-top-data__main-item--01{
    width:100%;
    padding-bottom: 33px;
  }
  .pg-top-data__main-item--01 .pg-top-data__main-item-img{
    width: 140px;
    margin-top: -6px;
    margin-left: 155px;
    margin-right: auto;
    margin-bottom: -38px;
  }
  .pg-top-data__main-item-num-box{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    padding-left: 15px;
  }
  .pg-top-data__main-item-num{
    font-size: 2.9rem;
  }
  .pg-top-data__main-item-num .unit{
    font-size: 1.6rem;
  }
  .pg-top-data__main-item-num .cat{
    font-size: 2.6rem;
  }
  .pg-top-data__main-item-num--01{
    width: 100%;
    width: 260px;
    font-size: 5.4rem;
    margin-bottom: 16px;
  }
  .pg-top-data__main-item-num--01 .unit{
    font-size: 2.2rem;
  }
  .pg-top-data__main-item-num--02{
    margin-right: 24px;
  }

  .pg-top-data__main-item--02{
    flex-wrap: wrap;
    gap:22px;
    padding-top: 13px;
    padding-left: 24px;
  }
  .pg-top-data__main-item--02 .pg-top-data__main-item-img{
    transform: translate(-4px, 15px);
  }
  .pg-top-data__main-item-inner{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    width:100%;
    padding-bottom: 12px;
  }
  .pg-top-data__main-item-list{
    width:100%;
    padding: 0;
  }
  .pg-top-data__main-item--02 .pg-top-data__main-item-ttl{
    display: inline-block;
    width: auto;
  }
  .pg-top-data__main-item-img{
    width: 100px;
    margin-right: 9px;
    transform: translateY(10px);
  }
  .pg-top-data__main-item-list{
    gap:8px;
  }
  .pg-top-data__main-item-list li{
    padding:3px 16px 3px 12px;
  }
  .pg-top-data__main-item-list li img{
    width: 40px;
  }
  .pg-top-data__main-item-list li .name{
    font-size: 1.5rem;
    margin: 0 auto 0 25px;
  }
  .pg-top-data__main-item-list li .number{
    font-size: 3.5rem;
  }
  .pg-top-data__main-item-list li .number span{
    font-size: 1.7rem;
  }

  .pg-top-data__main-item--03{
    padding-top: 9px;
    padding-left: 24px;
    padding-bottom: 38px;
  }
  .pg-top-data__main-item--03 .pg-top-data__main-item-ttl{
    margin-bottom: 25px;
  }
  .pg-top-data__main-item-sales{
    padding-right:0;
    text-align: center;
  }
  .pg-top-data__main-item-sales img{
    width: 286px;
    max-width: 100%;
  }

  .pg-top-data__main-item--04{
    padding-top: 30px;
    padding-left: 37px;
    padding-bottom: 55px;
  }
  .pg-top-data__main-item--04 .pg-top-data__main-item-ttl{
    display: block;
    text-align: center;
    margin-bottom: 35px;
  }
  .pg-top-data__main-item-profit{
    width: 100%;
    padding-left: 0;
    text-align: center;
    overflow-x: auto;
  }
  .pg-top-data__main-item-profit img{
    width: 982px;
    max-width: 982px;
  }
}
@media(max-width:768px){
  .pg-top-data:before,
  .pg-top-data:after,
  .pg-top-data .l-section-inner:before{
    display: none;
  }
.pg-top-data__main-item{
    width: 340px;
    max-width: 100%;
  }
}
@media(max-width:380px){  
  .pg-top-data__main-item{
    width: 100%;
    max-width: 100%;
  }
}

/* .pg-top-links */
.pg-top-links{
  display: block;
  width: 100%;
  height: 955px;
  padding-top: 90px;
  background: url(../img/links-bg.png)no-repeat center top 110px / 2137px;
  margin-bottom: 110px;
  position: relative;
  z-index: 2;
}
.pg-top-links__inner{
  display: flex;
  justify-content:space-between;
  align-items: flex-start;
  width: 1185px;
  max-width: 100%;
  padding: 0 55px 0 20px;
  margin: 0 auto;
}
.pg-top-links__box{
  padding-top: 108px;
}
.pg-top-links__logo{
  width: 407px;
  max-width: 100%;
  margin-bottom: 34px;
}
.pg-top-links__ttl{
  display: inline-block;
  line-height: 1.6;
  letter-spacing:2.5px;
  font-size: 2.4rem;
  font-weight: 500;
  transform: translateX(35px);
  margin-bottom: 24px;
}
.pg-top-links__ttl span{
  display: inline-block;
  letter-spacing: 0;
  font-size: 4rem;
  font-weight: bold;
  margin-bottom: -4px;
}
.pg-top-links__txt{
  line-height: 1.4;
  font-size: 1.4rem;
  transform: translateX(35px);
}
.pg-top-links__list{
  width: 490px;
  height: 840px;
  position: relative;
}
.pg-top-links__list-item{
  display: block;
  width: 240px;
  border-radius: 300px;
  overflow: hidden;
  position: absolute;
  cursor: pointer;
  transition: .3s;
}
.pg-top-links__list-item--01{
  top: 40px;
  left: 0;
}
.pg-top-links__list-item--02{
  top: 149px;
  left: 243px;
}
.pg-top-links__list-item--03{
  top: 405px;
  left: 250px;
}
.pg-top-links__list-item--04{
  left: 38px;
  bottom: 40px;
}
.pg-top-links__list-item-inner{
  position: relative;
}
.pg-top-links__list-item-txt{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  position: absolute;
  top:0;
  left: 0;
  transform: translateY(7px);
}
.pg-top-links__list-item-txt img{
  max-width: 80%;
}
.modal {
  display: none;
  width: 100vw;
  height: 100vh;
  padding:0;
  position: fixed;
  top: 0;
  left:0;
  z-index: 9999;
}
.modal-bg{
  width: 100%;
  height: 100%;
  background:rgba(0, 0, 0,0.5);
  mix-blend-mode: multiply;
  position: fixed;
  top:0;
  left: 0;
  z-index: 1;
}
.modal.active {
  display: block;
}
.modal-inner{
  width: 1000px;
  max-width:calc(100% - 40px);
  padding: 57px 50px;
  border-radius: 10px;
  position: relative;
  overflow: hidden;
  margin: 10vh auto 0;
  z-index: 3;
}
.modal-inner::before{
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(0, 78, 162, 0.9) 0%, rgba(0, 160, 233, 0.9) 100%);
  opacity: .8;
  position: absolute;
  top:0;
  left: 0;
  z-index: 1;
}
.modal-inner::after{
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background:url(../img/modal-bg.png)no-repeat center center / cover;
  position: absolute;
  top:0;
  left: 0;
  z-index: 1;
}
.modal-content{
  display: flex;
  flex-wrap: wrap;
  padding: 45px 50px;
  border-radius: 10px;
  background: #fff;
  position: relative;
  z-index: 3;
}
.modal-content__ttl{
  display: block;
  width: 100%;
  padding-left: 19px;
  line-height: 1;
  font-size: 1.6rem;
  font-weight: bold;
  position: relative;
  margin-bottom: 10px;
}
.modal-content__ttl::before{
  content: '';
  display: block;
  width: 16px;
  height: 16px;
  background: #004EA2;
  position: absolute;
  top:0;
  left: 0;
}
.modal-content__img{
  width: calc(50% - 20px);
  margin-right: 40px;
}
.modal-content__img img{
  border-radius: 10px;
}
.modal-content__txt{
    width: calc(50% - 20px);
    font-size: 1.4rem;
}
.modal-content__txt span{
  display: block;
  line-height: 1.4;
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 16px;
}
.modal .close{
  display: inline-block;
  padding-right: 24px;
  background: url(../img/icon/close.svg)no-repeat center right / 14px;
  appearance: none;
  border:none;
  outline: none;
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings:"wdth" 100;
  font-size: 1.4rem;
  font-weight: bold;
  color: #fff;
  position: absolute;
  top:22px;
  right:22px;
  z-index: 2;
  transition: .3s;
  cursor: pointer;
}

@media(any-hover: hover){
  .pg-top-links__list-item:hover{
    transform: scale(1.15);
  }
  .pg-top-links__list-item-inner::before{
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0, 78, 162, 0.9) 0%, rgba(0, 160, 233, 0.9) 100%);
    position: absolute;
    top:0;
    left: 0;
    opacity: 0;
    transition: .3s;
  }
  .pg-top-links__list-item:hover .pg-top-links__list-item-inner::before{
    opacity: 1;    
  }
}

@media(min-width:1920px){
  .pg-top-links{
    background:url(../img/links-bg.png)no-repeat center top 110px / auto calc(100% - 110px);
  }
}
@media(max-width:1025px){
  .pg-top-links{
    height: auto;
    padding-top: 0;
    background: url(../img/links-bg--sp.png)no-repeat top center / 100% 100%;
    margin-bottom: 0;
  }
  .pg-top-links__inner{
    justify-content: center;
    flex-wrap: wrap;
    width: 750px;
    max-width: 100%;
    padding: 0 20px;
    margin-left: auto;
    margin-right: auto;
  }
  .pg-top-links__box{
    padding-top: 0;
    margin-bottom: 25px;
  }
  .pg-top-links__logo{
    width: 184px;
    max-width: 100%;
    margin-bottom: 12px;
    transform: translateX(5px);
  }
  .pg-top-links__ttl{
    font-size: 2rem;
    letter-spacing: 2px;
    line-height: 1.5;
    transform: none;
  }
  .pg-top-links__ttl span{
    font-size: 3.3rem;
    margin-bottom: 7px;
  }
  .pg-top-links__txt{
    line-height: 1.6;
    transform: none;
  }
  .pg-top-links__list{
    width: 100%;
    max-width: 332px;
    padding: 0 13px 0 19px;
    height: 524px;
    margin: 0 auto;
  }
  .pg-top-links__list-item{
    width: 150px;
  }
  .pg-top-links__list-item--01{
    top:15px;
    left:19px;
  }
  .pg-top-links__list-item--02{
    top: 85px;
    left: auto;
    right: 13px;
  }
  .pg-top-links__list-item--03{
    top: 245px;
    left: auto;
    right:7px;
  }
  .pg-top-links__list-item--04{
    left: 44px;
    bottom: 30px;
  }

  .modal-inner{
    width: 700px;
    max-width:calc(100% - 14px);
    height: calc(100vh - 100px);
    padding: 80px 10px 10px;
    margin: 60px auto 0;
  }
  .modal-inner::after{
    display: none;
  }
  .modal-content{
    height: 100%;
    padding:40px 20px;
    overflow-y: auto;
  }
  .modal-content__img{
    width: 100%;
    margin: 0 auto 25px;
  }
  .modal-content__img img{
    border-radius: 10px;
  }
  .modal-content__txt{
    width: 100%;
    font-size: 1.4rem;
  }
}
@media(max-width:768px){
  .pg-top-links__list-item-txt{
    display: none;
  }
  .pg-top-links__list-item-inner::before{
    display: none;
  }
}

/* .pg-top-last */
.pg-top-last .l-section-inner{
  padding-top: 95px;
  padding-bottom: 170px;
  position: relative;
}
.pg-top-last .l-section-inner:before{
  content: '';
  display: block;
  width: 447px;
  height:446px;
  background: url(../img/last-bg01.svg)no-repeat center center / contain;
  position: absolute;
  left: -212px;
  bottom: -119px;
  z-index: 1;
  animation: bgimg01 20s linear infinite;
}
.pg-top-last .l-section-inner:after{
  content: '';
  display: block;
  width: 394px;
  height:689px;
  background: url(../img/last-bg02.svg)no-repeat center center / contain;
  position: absolute;
  right: -171px;
  bottom: -236px;
  z-index: 1;
  animation: bgimg02 20s linear infinite;
}
.pg-top-last__txt{
  text-align: center;
  line-height: 3;
  letter-spacing: 0;
  font-size: 1.8rem;
  font-weight: bold;
}
@media(max-width:768px){
  .pg-top-last .l-section-inner{
    padding-top: 107px;
    padding-bottom: 116px;
  }
  .pg-top-last .l-section-inner:before{
    width: 154px;
    height:281px;
    background: url(../img/bg-sp/last-bg01.svg)no-repeat center center / contain;
    top: 41px;
    left: 0;
    bottom: auto;
  }
  .pg-top-last .l-section-inner:after{
    width: 200px;
    height:339px;
    background: url(../img/bg-sp/last-bg02.svg)no-repeat center center / contain;
    right: 0;
    bottom: -96px;
  }
  .pg-top-last__txt{
    font-size: 1.6rem;
  }
}