/*------------------------------------------------------------
	FOR PC LAYOUT CSS
------------------------------------------------------------*/
@media screen and (min-width:768px){

/*------------------------------------------------------------
	BODY BASIC
------------------------------------------------------------*/
html{
}

body{
font-size:16px;
line-height:1.75;
color:#333;
width:100%;
letter-spacing:.06em;
font-feature-settings:'palt';
min-width:84rem;
}




/*------------------------------------------------------------
	RESPONSIVE
------------------------------------------------------------*/
.pconly{ display:block; }
.sponly{ display:none; }


/*------------------------------------------------------------
	HEADER
------------------------------------------------------------*/
.sw-logo{
width:226px;
height:80px;
display:flex;
align-items:center;
position:absolute;
top:20px;
left:20px;
}



header{
width:100%;
height:120px;
position:fixed;
top:0;
left:0;
background:linear-gradient(to bottom, rgba(255,255,255,.95) 0%, rgba(255,255,255,0) 100%);
z-index:10;
transform:translateY(-120px);
transition:all .5s;
}

.is-fixed header{
transform:translateY(0);
}



.header-inner{
width:96%;
height:80px;
margin:0 auto;
display:flex;
justify-content:space-between;
align-items:center;
}

.h-logo{
align-items:center;
width:240px;
position:relative;
}
.h-logo a{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
display:block;
z-index:10;
}


.head-navi{
display:flex;
justify-content:space-between;
width:330px;
align-items:center;
}



.up-link a{
width:150px;
background:#467B9F;
height:40px;
font-size:1rem;
line-height:40px;
text-align:center;
border-radius:20px;
color:#fff;
display:block;
transition:all .2s;
letter-spacing:0;
font-weight:500;
font-weight:bold;
}
.up-link a:hover{
background:#0a4f71;
}

.icon-head-ext-link {
  width: 1em;
  height: 1em;
  flex-shrink: 0;
margin-left:.3rem;
position:relative;
top:0;
}


.h-navi{
display:flex;
}
.h-navi li a{
color:#fff;
font-size:14px;
line-height:1.5;
padding:1em;
font-weight:500;
}


.bogo-language-switcher{
display:flex;
width:5.625rem;
}
.bogo-language-switcher li{
width:45px;
height:40px;
font-size:1rem;
line-height:40px;
background:#f8f8f8;
color:#467B9F;
text-align:center;
font-weight:bold;
}
.bogo-language-switcher li a{
color:#467B9F;
display:block;
}
.bogo-language-switcher li.current a{
color:#fff;
display:block;
transition:all .2s;
}
.bogo-language-switcher li a.current:hover{
background:#0a4f71;
color:#fff;
}
.bogo-language-switcher li a:hover{
background:#eee;
color:#467BA0;
}

.bogo-language-switcher li:nth-child(1){
border-radius:20px 0 0 20px;
}
.bogo-language-switcher li:nth-child(2){
border-radius:0 20px 20px 0;
}
.bogo-language-switcher li:nth-child(1) a{
border-radius:20px 0 0 20px;
padding:0 0 0 5px;
transition:all .2s;
}
.bogo-language-switcher li:nth-child(2) a{
border-radius:0 20px 20px 0;
padding:0 5px 0 0;
transition:all .2s;
}
.bogo-language-switcher li.current{
background:#467B9F;
color:#fff;
}


/*------------------------------------------------------------
DRAWER
------------------------------------------------------------*/

#menuBtn{
width:3.75rem;
height:3.75rem;
top:0;
right:0;
position:relative;
transition:all .2s;
cursor:pointer;
z-index:9999;
background:#467B9F;
border-radius:50%;
}

#menuBtn:hover{
background:#0a4f71;
}

#menuBtn.active{
background:#467B9F;
z-index:9999;
}


#menuBtn span{
display:block;
position:absolute;
height:2px;
width:24px;
background:#f8f8f8;
}

#menuBtn:hover span{
background:#fff;
}


#menuBtn span:nth-child(1){
top:18px;
left:18px;
}
#menuBtn span:nth-child(2){
top:29px;
left:18px;
}
#menuBtn span:nth-child(3){
top:40px;
left:18px;
}

.active#menuBtn span:nth-child(1){
top:29px;
transform:rotate(45deg);
background:#fff;
}
.active#menuBtn span:nth-child(2){
width:0;
left:50%;
}

.active#menuBtn span:nth-child(3){
top:29px;
transform:rotate(-45deg);
background:#fff;
}


#menuBox{
display:none;
width:100vw;
height:100vh;
background:rgba(0,0,0,.5);
padding:0;
position:fixed;
top:0;
right:0;
z-index:1000;
}

.menu-wrapper{
width:430px;
max-height:100vh;
overflow-y:auto;
background:#467B9F;
padding:150px 50px 50px 70px;
position:fixed;
top:0;
right:0;
display:block;
}

.menu-inner{
width:auto;
transform:translateX(30px);
transition:all .3s;
}

.menu-inner.active{
transform:translateX(0);
}


.d-menu{
margin-bottom:2rem;
}

.d-menu li{
margin-bottom:.75rem;
}

html[lang="en-US"] .d-menu li a{
font-family:'Jost';
font-size:1.8rem;
line-height:1.25;
color:#fff;
}

.dm-solu-ttl{
font-size:1rem;
line-height:2.5;
margin-bottom:.5rem;
font-weight:bold;
color:#fff;
}

html[lang="ja"] .d-menu li a{
font-family:'Noto Sans JP';
font-size:1.5rem;
font-weight:bold;
line-height:1.5;
color:#fff;
}

.d-menu li a:hover{
opacity:.8;
}

.icon-menu-ext-link {
  width: 1.5rem;
  height: 1.5rem;
  flex-shrink: 0;
margin-left:.4rem;
position:relative;
top:0;
}

.menu-lang-sw{
display:flex;
color:#fff;
line-height:1;
font-family:'Jost';
}
.menu-lang-sw li{
padding:0 15px;
border-right:1px solid #fff;
}
.menu-lang-sw li:first-child{
padding-left:0;
}
.menu-lang-sw li:last-child{
border-right:0;
}
.menu-lang-sw li a{
color:#fff;
}


.d-menu li em {
font-size:30px;
font-style:normal;
font-weight:normal;
font-family:'Jost';
  display: inline-block;
  opacity: 0;
  transform: translateY(10px) rotateX(90deg) skew(10deg);
  transition:all .3s;
  color:#fff;
}

.d-menu li.inview em {
  opacity: 1;
  transform: translateY(0) skewY(0deg) rotateX(0deg);
}

/*------------------------------------------------------------
	LINK
------------------------------------------------------------*/
.link-r{
  display:flex;
  justify-content:flex-end;
}
.link-c{
  display:flex;
  justify-content:center;
}
.link-l{
  display:flex;
  justify-content:flex-start;
}


.link {
  font-size: 1.1rem;
  font-weight: bold;
  line-height: 5rem;
  color: #333;
  text-decoration: none;
}
.link a{
  font-size: 1.1rem;
  font-weight: bold;
  display: inline-block;
  padding: 0 5.5rem 0 0;
  position: relative;
  line-height: 5rem;
  background: linear-gradient(to right, #333 50%, #467B9F 50%);
  background-size: 200% 100%;
  background-position: 0 0;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  transition: background-position 0.5s ease;
  }
  
.link a:hover {
  background-position: -100% 0;
}

.link a::before{
content:'';
width:10px;
height:10px;
border-right:1px solid #467B9F;
border-bottom:1px solid #467B9F;
transform:rotate(-45deg);
position:absolute;
top:34px;
right:26px;
transition:all .2s;
z-index:2;
}

.link a:hover::before{
border-right:1px solid #fff;
border-bottom:1px solid #fff;
}


.link a::after{
content:'';
width:60px;
height:60px;
border:1px solid #467B9F;
border-radius:50%;
position:absolute;
top: 50%;
right: 0;
transform: translateY(-50%) scale(1);
transition:all .2s;
z-index:1;
}


.link a:hover::after {
  background-color: #467B9F;
  color: #fff;
  transform: translateY(-50%) scale(0.7); /* 一瞬縮む */
  animation: popBack 0.3s ease forwards;
}

/*------------------------------------------------------------
	TOPPAGE
------------------------------------------------------------*/
#kv{
width:100%;
height:100vh;
overflow:hidden;
position:relative;
}

.top-slide{
position:relative;
z-index:-1;
}

.bx-slider li{
pointer-events: auto !important;
}


.slide01{
background:url(img/kv-s01.webp) no-repeat center center;
animation: zoomUp 15s linear 0s 1 normal both;
height:100vh;
}

.slide02{
background:url(img/kv-s02.webp) no-repeat center center;
animation: slideLeft 15s linear 0s 1 normal both;
height:100vh;
}

.slide03{
background:url(img/kv-s03.webp) no-repeat center center;
animation: zoomOuts 15s linear 0s 1 normal both;
height:100vh;
}


@keyframes zoomUp{
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15);
  }
}
@keyframes slideLeft{
  0% {
    transform:scale(1.1) translateX(-80px);
  }
  100% {
	transform: scale(1.1) translateX(0);
  }
}

@keyframes slideRight{
  0% {
    transform:scale(1.1) translateX(80px);
  }
  100% {
	transform: scale(1.1) translateX(0);
  }
}

@keyframes zoomOuts{
  0% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}

@keyframes slideDown{
  0% {
    transform: scale(1.2) translateY(-80px);
  }
  100% {
    transform: scale(1.2) translateY(0);
  }
}

@keyframes scrollDown{
0%{
opacity:0;
transform:translateY(0);
}
30%{
opacity:1;
transform:translateY(15px);
}
100%{
transform:translateY(15px);
}
}

.kv-catch{
width:70rem;
height:auto;
position:absolute;
top:50%;
left:50%;
transform:translate(-50%, -50%);
}

.kv-copy{
text-align:center;
font-size:80px;
line-height:1.25;
color:#fff;
font-weight:900;
margin-bottom:.5em;
}

.kv-copy-en{
text-align:center;
font-size:80px;
line-height:1;
color:#fff;
font-weight:900;
margin-bottom:.5em;
font-family:'Jost';
}
html[lang="en-US"] .kv-lead,
html[lang="ja"] .kv-lead{
width:auto;
font-size:24px;
line-height:1.5;
font-weight:900;
text-align:center;
color:#fff;
margin-bottom:3em;
}

.kv-btn{
display:flex;
justify-content:center;
gap:0 20px;
}

.kv-btn li{
}
.btn-arrow-r{
  display: inline-flex;
  align-items: center;
  gap: 1rem;           /* アイコンとテキストの間隔 */
  padding: 0.75rem 1.25rem;
color:#fff;
padding:20px 40px;
border:1px solid #fff;
background:rgba(255,255,255,.2);
font-size:20px;
font-weight:bold;
transition: background-color 0.3s, color 0.3s;
border-radius:40px;
}
.btn-arrow-r:hover {
  background:rgba(255,255,255,.8);
  color:#467Ba0;
}

.btn-arrow-r .icon-arrow-r {
  width: 1em;
  height: 1em;
  flex-shrink: 0;
}



.btn-with-icon {
display: inline-flex;
align-items: center;
gap: 1rem;           /* アイコンとテキストの間隔 */
padding: 0.75rem 1.25rem;
color:#fff;
padding:20px 40px;
border:1px solid #fff;
background:rgba(255,255,255,.2);
font-size:20px;
font-weight:bold;
transition: background-color 0.3s, color 0.3s;
border-radius:40px;
}

.btn-with-icon:hover {
  background:rgba(255,255,255,.8);
  color:#467Ba0;
}

.btn-with-icon .icon-play {
  width: 1em;
  height: 1em;
  flex-shrink: 0;
}

svg.icon-play{
font-size:16px;
}



#index1{
max-width: 80rem;
width: 100%;
margin:0 auto;
padding:6rem 0;
}

.i1-concept{
width:auto;
text-align:center;
}



.sec-ttl{
font-size:1.6rem;
font-family:'Jost';
margin-bottom:.75rem;
font-weight:bold;
}

#index1 h2{
font-size:3rem;
font-weight:900;
margin-bottom:2rem;
}
#index1 h3{
font-size:2.4rem;
font-weight:900;
margin-bottom:1.5rem;
}
.i1-desc p{
font-size:1.2rem;
line-height:1.75;
margin-bottom:3rem;
}

.para{
width:100%;
height:auto;
margin:0 auto;
position: relative;
overflow:hidden;
padding:6rem 0;
}
.para-img01{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 120%;
  background-image: url(img/para02.webp);
  background-size: cover;
  background-attachment: fixed; /* ← これがポイント */
  background-position: center;
 background-color: rgba(70, 123, 160, 1); /* ← 黒の半透明レイヤー */
  background-blend-mode: multiply; 
z-index:1;
}

@media (max-width: 1024px) {
  .para-img01,
.cta-para-img {
    background-attachment: scroll !important;
  }
}


#index2{
color:#fff;
}

.i2-ttl{
text-align:center;
position:relative;
z-index:2;
}


.i2-sec-ttl{
font-size:1.6rem;
font-family:'Jost';
margin-bottom:.75rem;
color:#fff;
font-weight:bold;
}

#index2 h2{
font-size:3rem;
font-weight:900;
margin-bottom:1.5rem;
}

.i2-desc{
width:auto;
text-align:center;
font-size:1.2rem;
margin-bottom:3rem;
}



.issues{
max-width: 80rem;
width: 100%;
margin:0 auto;
display:flex;
justify-content:space-between;
position:relative;
z-index:2;
color:#fff;
gap:0;
}
.issues li{
max-width: 38rem;
width: 100%;
margin:0 auto;
border:1px solid #fff;
border-radius:2rem;
padding:2rem 4rem;
}

.i2i01,.i2i02{
width:60px;
height:60px;
border-radius:16px;
padding:10px;
margin-bottom:.5rem;
}

.i2i01{
background-image: linear-gradient(to left, #30cfd0 0%, #330867 100%);
}
.i2i02{
background-image: linear-gradient(to left, #50cc7f 0%, #f5d100 100%);
}

.i2dd{
font-size:1.85rem;
font-weight:bold;
}
.i2dd span{
font-size:.75em;
}

.i2dt{
font-weight:500;
color:#ccc;
margin-bottom:1.2rem;
}

.i2desc{
font-size:1.1rem;
}



#index5{
max-width: 80rem;
width: 100%;
margin:0 auto;
padding:6rem 0;
}

#index5 h2{
font-size:3rem;
font-weight:900;
margin-bottom:4rem;
}
#index5 h3{
font-size:2rem;
font-weight:900;
margin-bottom:1.5rem;
}
.i5-desc{
font-size:1.2rem;
margin-bottom:4rem;
text-align:center;
}

.chart02{
max-width:80rem;
width:100%;
margin:0 auto;
}


.process{
display:flex;
flex-wrap:wrap;
gap:7.5rem;
}
.p-cont{
width:36.25rem;
border:2px solid #467ba0;
border-radius:1rem;
padding:2.5rem 2rem 1.5rem;
position:relative;
}


.ill-sate{
width:7rem;
height:7rem;
background:url(img/i-satellite.jpg) no-repeat center top;
background-size:4rem;
padding-top:4.5rem;
text-align:center;
font-size:.8rem;
position:absolute;
top:-3rem;
right:-7.5rem;
z-index:auto;
}

.p-cont:nth-child(1)::after{
content:'';
width:0;
height:0;
border-left:4rem solid #dcedff;
border-top:6rem solid transparent;
border-bottom:6rem solid transparent;
position: absolute;
top: 50%;
right: -6rem;
margin-top: -6rem;
bottom: auto;
margin-left: 0;
left: auto;
border-right: 0;
z-index:auto;
}

.p-cont:nth-child(2)::after{
content:'';
width:0;
height:0;
border-top:4rem solid #77aad1;
border-left:6rem solid transparent;
border-right:6rem solid transparent;
position:absolute;
bottom:-5.5rem;
left:50%;
margin-left:-6rem;
z-index:auto;
}

.p-cont:nth-child(3)::after{
content:'';
width:0;
height:0;
border-right:4rem solid #467ba0;
border-top:6rem solid transparent;
border-bottom:6rem solid transparent;
position:absolute;
right:-5.75rem;
top:50%;
margin-top:-6rem;
z-index:auto;
}
.p-cont:nth-child(4)::after{
content:'';
border:none;
}


.p-ttl{
width:100%;
font-size:1.8rem;
line-height:4rem;
position:absolute;
top:-2rem;
left:0;
text-align:center;
font-weight:bold;
color:#467BA0;
}
.p-ttl span.p-ttl-wrap{
display:inline-block;
padding:0 2rem;
background:#fff;
}
.p-desc{
font-size:1rem;
margin-bottom:1em;
text-align:center;
}
.p1-zu{
width: 100%;
display:flex;
justify-content:space-between;
}
.p1-l{
width:15rem;
margin-right:auto;
position:relative;
padding:0;
}

.p1-l::after{
content:'';
width:4rem;
height:2.4rem;
background:url(img/arrow-continue.svg) no-repeat;
background-size:4rem;
position:absolute;
right:-4.5rem;
top:50%;
margin-top:-2.2rem;
transform:rotate(0deg);
margin-right:0;
}


.p1-icons{
display:flex;
gap:0;
}
.p1-icons li{
width:100%;
font-size:1.1rem;
height:5rem;
padding-left:6rem;
display:flex;
align-items:center;
}
html[lang="en-US"] .p1-icons li:nth-child(1){
font-size:.95rem;
}
.p1-icons li:nth-child(1){
width:100%;
background:url(img/i-weather.jpg) no-repeat left top;
background-size:5rem;
}
.p1-icons li:nth-child(2){
background:url(img/i-sensor.jpg) no-repeat left top;
background-size:5rem;
}
.p1-icons li:nth-child(3){
background:url(img/i-log.jpg) no-repeat left top;
background-size:5rem;
}
.p1-r{
width:10rem;
display:flex;
align-items:center;
justify-content:center;
margin-left:auto;
padding:0;
}
.p1-icon{
padding-top:5.5rem;
text-align:center;
font-size:1.1rem;
background:url(img/i-data-comm.jpg) no-repeat center top;
background-size:5rem;
margin-bottom:4rem;
}

.ill-ship{
width:14rem;
height:4.8rem;
background:url(img/zu-ship.png) no-repeat;
background-size:14rem;
position:absolute;
bottom:1.75rem;
right:5rem;
margin-right:0;
}

.p2-desc{
font-size:1rem;
margin-bottom:2em;
text-align:center;
}

.p2-zu{
width:100%;
display:flex;
flex-wrap:wrap;
padding:1.5rem;
position:relative;
border:2px solid #467ba0;
border-radius:.5rem;
}
.p2-ttl{
width:100%;
position:absolute;
height:2rem;
text-align:center;
top:-1rem;
left:0;
}
.p2-ttl span{
display:inline-block;
padding:0 2rem;
height:2rem;
background:#467ba0;
color:#fff;
font-weight:500;
}


.p2-l{
width:14.5rem;
padding-top:1rem;
margin:0;
}
.p2-r{
width:11.5rem;
text-align:right;
font-size:.8rem;
margin-left:calc(3rem - 4px);
padding-top:4rem;
}
.p2-r img{
margin-bottom:.5rem;
}

.p2-icons{
gap:1rem 0;
}
.p2-icons li{
display:flex;
align-items:center;
height:5rem;
line-height:1.25;
}
.p2-icons li:nth-child(1){
padding-left:6rem;
background:url(img/i-eye.jpg) no-repeat left top;
background-size:5rem;
}
.p2-icons li:nth-child(2){
padding-right:6rem;
background:url(img/i-break.jpg) no-repeat right top;
background-size:5rem;
}

.p3-desc{
font-size:1rem;
margin-bottom:1em;
text-align:center;
}

.p3-icons{
display:flex;
justify-content:center;
margin-bottom:1rem;
gap:0;
}
.p3-icons li{
font-size:1rem;
margin:0 2%;
padding-left:5.5rem;
height:5rem;
display:flex;
align-items:center;
}
.p3-icons li:nth-child(1){
background:url(img/i-analysis.jpg) no-repeat;
background-size:5rem;
width:40%;
}
.p3-icons li:nth-child(2){
width:52%;
background:url(img/i-ai.jpg) no-repeat;
background-size:5rem;
}

.p3-zu{
width:70%;
margin:0 auto;
text-align:right;
font-size:.8rem;
}
.p3-zu img{
margin-bottom:.5rem;
}



.p4-desc{
font-size:1rem;
margin-bottom:1.5em;
text-align:center;
}

.p4-icons1{
display:flex;
justify-content:center;
margin-bottom:.5rem;
}

.p4-icons2{
display:flex;
justify-content:center;
}

.p4-icons1 li,
.p4-icons2 li{
width:46%;
margin:0 2%;
padding-left:5.5rem;
height:5rem;
display:flex;
align-items:center;
}
.p4-icons1 li:nth-child(1){
background:url(img/i-inspection.jpg) no-repeat;
background-size:5rem;
}
.p4-icons1 li:nth-child(2){
background:url(img/i-mente.jpg) no-repeat;
background-size:5rem;
}
.p4-icons2 li:nth-child(1){
background:url(img/i-engine.jpg) no-repeat;
background-size:5rem;
}
.p4-icons2 li:nth-child(2){
background:url(img/i-route.jpg) no-repeat;
background-size:5rem;
}
.p4-link{
text-align:center;
margin:0 0 .5rem;
}

.p4-link a{
border:1px solid #467ba0;
color:#467ba0;
font-size:1.1rem;
line-height:1.25;
padding:1rem 4rem;
border-radius:3rem;
display:inline-block;
position:relative;
}
.p4-link a::after{
content:'';
width:.5rem;
height:.5rem;
border-right:2px solid #467ba0;
border-bottom:2px solid #467ba0;
transform:rotate(-45deg);
position:absolute;
top:1.4rem;
right:1.5rem;
}
.p4-link a:hover::after{
content:'';
border-right:2px solid #fff;
border-bottom:2px solid #fff;
}
.ef01 {
	position: relative;
	z-index: 1;
	overflow: hidden;
}
.ef01:hover {
	color: #fff;
}
.ef01::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 120%;
	height: 100%;
	z-index: -1;
	content: '';
	background: #467ba0;
	transition: transform .3s;
	transform-origin: right top;
	transform: skewX(-30deg) scale(0, 1);
}
.ef01:hover::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #467ba0;
	transition: transform .3s;
	transform-origin: left top;
	transform: skewX(-30deg) scale(1, 1);
}




.chart03{
padding:5rem 0;
}

.chart03 h3{
text-align:center;
}

.ribbon-model{
display:block;
margin:0;
}

.b-model{
width:934px;
margin:0 auto 4rem;
}


.ribbon-wrapper {
width:auto;
  display: flex;
  justify-content: center;
flex-direction:row;
  align-items: center;
  gap: 0 8px;
  margin:0 auto 3rem;
}

.ribbon {
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 10px;
  font-weight: bold;
  text-align: center;
}

.ribbon-left{
  width: 340px;
  height: 236px;
  clip-path: polygon(0 0, 100% 20%, 100% 80%, 0% 100%);
  background: linear-gradient( to left, rgba(220, 237, 255, 0.2) 0%, #dcedff 100% );
color:#333;
font-size:1.3rem;
}
.ribbon-right {
  width: 340px;
  height: 236px;
  clip-path: polygon(0 20%, 100% 0, 100% 100%, 0 80%);
  background: linear-gradient(to right, rgba(216, 250, 239, 0.2) 0%, #d8faef 100% );
color:#333;
font-size:1.3rem;
}


.ribbon-center {
  width: 200px;
  height: 140px;
  background: #467BA0;
flex-direction:column;
}

.ribbon-sw-icon{
width:4rem;
margin:0 auto .75rem;
}

.ribbon-c-txt{
text-align:center;
color:#fff;
font-size:.9rem;
line-height:1.25;
}

.left-user,
.right-user{
width:140px;
text-align:center;
font-size:1.1rem;
font-weight:500;
}
html[lang="en-US"] .right-user{
min-height:auto;
}


.solu-btns{
display:flex;
justify-content:center;
gap:0 2rem;
}
.solu-btns li a{
display:inline-block;
padding:1rem 4rem;
border-radius:2rem;
background:#467ba0;
color:#fff;
text-align:center;
font-weight:500;
font-size:1.1rem;
position:relative;
transition:all .2s;
}
.solu-btns li a::after{
content:'';
width:.5rem;
height:.5rem;
border-right:2px solid #fff;
border-bottom:2px solid #fff;
transform:rotate(-45deg);
position:absolute;
top:50%;
right:1.5rem;
margin-top:-4px;
}
.solu-btns li a:hover{
background:#f2c11b;

}




#index6{
padding:6rem 0;
background-image: linear-gradient(to right, rgba(233, 236, 247, 0.3), rgba(255, 255, 255, 0.3));
}
.i6-cont{
max-width: 80rem;
width: 100%;
margin:0 auto;
}


#index6 h2{
font-size:3rem;
font-weight:900;
margin-bottom:4rem;
}
#index6 h3{
font-size:2rem;
font-weight:900;
margin-bottom:1.5rem;
}
.i6-desc{
font-size:1.2rem;
margin-bottom:5rem;
}

.why{
width:60rem;
margin:0 auto;
display:flex;
gap:2rem 0;
flex-wrap:wrap;
}
.why li{
width:60rem;
display:flex;
align-items:center;
}
.w-num{
width:6rem;
font-size:5rem;
font-family:'Jost';
font-weight:bold;
line-height:1;
margin-right:2rem;
text-align:center;
}
.w-txt{
width:calc(50rem - 4px);
display:flex;
flex-direction:column;
border-left:4px solid #467B9F;
padding-left:4rem;
}
.w-ttl{
font-size:1.4rem;
font-weight:bold;
margin-bottom:.5rem;
}

.w-desc{
font-size:1.1rem;
line-height:1.5;
}
.w-desc span {
font-weight:bold;
color:#467Ba0;
}


#index7{
padding:6rem 0;

}
.i7-cont{
max-width: 80rem;
width: 100%;
margin:0 auto;
}


#index7 h2{
font-size:3rem;
font-weight:900;
margin-bottom:4rem;
}

.mov-wrap{
width:60rem;
margin:0 auto;
}



.top-mov{
width:100%;
height:0;
padding:0 0 56.25%;
overflow: hidden;
position:relative;
}

.top-mov iframe{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

#index8{
padding:6rem 0;
background-image: linear-gradient(to right, rgba(233, 236, 247, 0.3), rgba(255, 255, 255, 0.3));
}
.i8-cont{
max-width: 80rem;
width: 100%;
margin:0 auto;
}


#index8 h3{
font-size:2.4rem;
font-weight:900;
margin-bottom:1.5rem;
}


.i8cont{
width:68rem;
margin:0 auto;
}


.ceo{
display:flex;
justify-content:center;
align-items:center;
}
.ceo-mes{
width:44rem;
margin-right:4rem;
}

.mes-txt{
margin-bottom:3rem;
}

.mes-copy{
font-size:1.3rem;
margin-bottom:1.5rem;
font-weight:bold;
}


.ceo-photo{
width:20rem;
height:32rem;
background:#f2f2f2;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
font-size:.5rem;
color:#ccc;
}



#index9{
padding:6rem 0;
}
.i9-cont{
max-width: 80rem;
width: 100%;
margin:0 auto;
}


#index9 h2{
font-size:3rem;
font-weight:900;
margin-bottom:4rem;
}

.feed{
width:60rem;
margin:0 auto 4rem;
}
.feed li{
position:relative;
padding:1.2rem 0;
}

.feed li::after{
content: '';
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 1px;
background-size: 12px 1px;
background-image: linear-gradient(to right, #333, #333 1px, transparent 1px, transparent 3px);
background-repeat: repeat-x;
}

.feed li a{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
display:block;
z-index:10;
}
.feed li:hover .feed-ttl{
color:#467B9F;
}



.feed-info{
display:flex;
align-items:center;
margin-bottom:1rem;
}
.feed-date{
color:#999;
font-size:.9rem;
}
.feed-cat{
margin-left:2rem;
}
.cat-news{
padding:.2rem 1.5rem;
background:#467B9F;
color:#fff;
border-radius:.5rem;
}



#cta{
width: 100%;
color:#fff;
}



.cta-para{
width:100%;
height:auto;
margin:0 auto;
position: relative;
overflow:hidden;
padding:6rem 0;
}
.cta-para-img{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 120%;
  background-image: linear-gradient(to bottom, #5de0e6 0%, #467B9F 100%),
					url('img/contact-bg.webp');
  background-size: cover;
  background-attachment: fixed;
  background-position: center;
  background-blend-mode: multiply; 
z-index:1;
}

#cta h2{
font-size:3rem;
font-weight:900;
margin-bottom:4rem;
position:relative;
z-index:2;
}

.cont-desc{
width:auto;
font-size:1.2rem;
margin:0 auto 4rem;
position:relative;
z-index:2;
}


.cta-btns{
display:flex;
justify-content:center;
align-items:center;
gap:0 2rem;
position:relative;
z-index:2;
}

.cta-btns li a{
display:flex;
color:#fff;
font-size:1.2rem;
padding:1rem 3rem;
border-radius:2.05rem;
background:rgba(255,255,255,.2);
border:1px solid #fff;
transition:all .2s;
}

.cta-btns li:hover a{
color:#467BA0;
background:rgba(255,255,255,.9);
}
.cta-btns li:hover .icon-ext-link{
color:#467BA0;
}

.icon-ext-link {
  width: 1em;
  height: 1em;
  flex-shrink: 0;
margin-left:.8rem;
position:relative;
top:.4rem;
}

.icon-cal {
  width: 1em;
  height: 1em;
  flex-shrink: 0;
margin-left:.8rem;
position:relative;
top:.4rem;
}






/*------------------------------------------------------------
	PANKUZU
------------------------------------------------------------*/
#pankuzu{
width:1280px;
margin:0 auto;
font-size:11px;
line-height:20px;
padding:10px 0;
}
#pankuzu .current{
font-weight:normal;
}

#pankuzu a{
color:#457Ba0;
text-decoration:underline;
}

/*------------------------------------------------------------
	PAGE
------------------------------------------------------------*/
#teaser{
width:100%;
height:25rem;
margin:0 auto;
position: relative;
overflow:hidden;
}

.p-logo{
width:12rem;
position:absolute;
top:1rem;
left:2rem;
z-index:10;
}
.p-logo a{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
display:block;
z-index:10;
}


#teaser h1{
position:absolute;
top:50%;
left:50%;
transform:translate(-50%, -50%);
font-size:3rem;
color:#fff;
font-weight:900;
font-family:'Jost','Noto Sans JP';
z-index:2;
letter-spacing:0;
padding-left:.5rem;
}


.para-solu{
position: absolute;
top: 0;
  left: 50%;
  transform: translateX(-50%);
width: 1920px;
height: 400px;
background-image:url('img/teaser-solu02.jpg');
background-size:1920px;
background-repeat:no-repeat;
background-attachment: fixed;
background-position: top;
background-color:rgba(0,0,0,.4);
background-blend-mode: multiply; 
z-index:1;
}


.para-faq{
position: absolute;
top: 0;
  left: 50%;
  transform: translateX(-50%);
width: 1920px;
height: 400px;
background-image:url('img/teaser-faq.jpg');
background-size:1920px;
background-repeat:no-repeat;
background-attachment: fixed;
background-position: top;
background-color:rgba(0,0,0,.4);
background-blend-mode: multiply; 
z-index:1;
}


.para-about {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 1920px;
  height: 400px;
  background-image: url('img/teaser-about.jpg');
  background-size: 1920px;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-position: top;
  background-color: rgba(0, 0, 0, .2);
  background-blend-mode: multiply;
  z-index: 1;
}

.para-contact{
position: absolute;
top: 0;
  left: 50%;
  transform: translateX(-50%);
width: 1920px;
height: 400px;
background-image:url('img/teaser-contact.jpg');
background-size:1920px;
background-repeat:no-repeat;
background-attachment: fixed;
background-position: top;
background-color:rgba(0,0,0,.2);
background-blend-mode: multiply; 
z-index:1;
}


.para-pp{
position: absolute;
top: 0;
  left: 50%;
  transform: translateX(-50%);
width: 1920px;
height: 400px;
background-image:url('img/teaser-pp.jpg');
background-size:1920px;
background-repeat:no-repeat;
background-attachment: fixed;
background-position: top;
background-color:rgba(0,0,0,.2);
background-blend-mode: multiply; 
z-index:1;
}


.para-downloads{
position: absolute;
top: 0;
  left: 50%;
  transform: translateX(-50%);
width: 1920px;
height: 400px;
background-image:url('img/teaser-documents.jpg');
background-size:1920px;
background-repeat:no-repeat;
background-attachment: fixed;
background-position: top;
background-color:rgba(0,0,0,.4);
background-blend-mode: multiply; 
z-index:1;
}

.para-interview{
position: absolute;
top: 0;
  left: 50%;
  transform: translateX(-50%);
width: 1920px;
height: 400px;
background-image:url('img/teaser-interview.jpg');
background-size:1920px;
background-repeat:no-repeat;
background-attachment: fixed;
background-position: top;
background-color:rgba(0,0,0,.4);
background-blend-mode: multiply; 
z-index:1;
}




#page{
max-width:80rem;
width:100%;
margin:0 auto;
padding:6rem 0;
}


.page-desc{
font-size:1.2rem;
margin-bottom:3rem;
}


/* ABOUT */

#about{
width:70rem;
margin:0 auto;
}

#about h2{
font-size:3rem;
line-height:2;
margin-bottom:1rem;
}

#about h3{
font-size:2.5rem;
margin-bottom:1rem;
}

#about section{
margin:0 auto 4rem;
}

.comT{
width:100%;
}
.comT th{
padding:2rem 1rem;
text-align:left;
font-weight:normal;
border-bottom:1px solid #467BA0;
}
.comT td{
padding:2rem 1rem;
border-bottom:1px solid #467BA0;
}

.t-cap{
text-align:right;
}

.t-cap span{
display:inline-block;
font-size:.8rem;
padding-left:1.2em;
position:relative;
}
.t-cap span::before{
content:'※';
position:absolute;
top:0;
left:0;
color:#999;
}


.history li{
display:flex;
position:relative;
font-size:1.2rem;
}
.history li::before{
content:'';
width:2rem;
height:2rem;
background:#465Ba0;
border-radius:50%;
position:absolute;
top:2rem;
left:2rem;
z-index:3;
}
.history li::after{
content:'';
width:2px;
height:100%;
background:#e9eef3;
position:absolute;
top:2.5rem;
left:calc(3rem - 1px);
z-index:2;
}
.history li:last-child::after{
content:'';
background:none;
}



.h-date{
width:20rem;
padding:2rem 1rem 2rem 6rem;
}
.h-cont{
width:58rem;
padding:2rem 1rem;
}




/* FAQ */

#faq{
width:70rem;
margin:0 auto;
}

#faq h2{
font-size:3rem;
line-height:2;
margin-bottom:1rem;
}


#faq h3{
font-size:2.5rem;
line-height:1.5;
padding-bottom:1rem;
border-bottom:4px solid #ccc;
position:relative;
margin-bottom:1rem;
}
#faq h3::before{
content:'';
width:6rem;
height:4px;
background:#457BA0;
position:absolute;
bottom:-4px;
left:0;
z-index:2;
}


#faq section{
margin:0 auto 4rem;
}

.faq-ank{
display:flex;
flex-wrap:wrap;
gap:1rem;

}
.faq-ank li a{
display:flex;
padding:.5rem 3rem .5rem 2rem;
font-size:1.2rem;
color:#fff;
font-weight:500;
color:#457BA0;
border:1px solid #457BA0;
border-radius:1.6rem;
position:relative;
transition:all .2s;
}
.faq-ank li a::after{
content:'';
width:.4rem;
height:.4rem;
border-right:2px solid #467ba0;
border-bottom:2px solid #467ba0;
transform:rotate(45deg);
position:absolute;
top:1rem;
right:1rem;
transition:all .2s;
margin:0;
}
.faq-ank li a:hover{
background:#467ba0;
color:#fff;
}
.faq-ank li a:hover::after{
border-right:2px solid #fff;
border-bottom:2px solid #fff;
}

.faq dt{
position:relative;
padding:1rem 5rem 1rem 5rem;
font-size:1.2rem;
line-height:1.5;
border:1px solid #467ba0;
color:#467BA0;
margin-bottom:1rem;
border-radius:.5rem;
}

.faq dt::before{
content:'Q';
width:2.5rem;
height:2.5rem;
color:#467ba0;
text-align:center;
font-weight:bold;
font-size:1.3rem;
line-height:2.3rem;
border-radius:50%;
position:absolute;
top:.65rem;
left:1.5rem;
}

.faq dt span{
display:block;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;              
}
.faq dt span::before{
content:'';
width:1rem;
height:2px;
background:#467ba0;
position:absolute;
top:50%;
right:1.5rem;
transition:all .3s;
}
.faq dt span::after{
content:'';
width:2px;
height:1rem;
background:#467ba0;
position:absolute;
top:calc(50% - .5rem + 1px);
right:calc(1.5rem + .5rem - 1px);
transition:all .3s;
}
.faq dt.open span::before{
transform:rotate(90deg);
opacity:0;
}
.faq dt.open span::after{
transform:rotate(90deg);
}



.faq dd{
display:none;
background:#f8f8f8;
padding:1.5rem 2rem 1.5rem 5rem;
margin-bottom:2rem;
border-radius:.5rem;
position:relative;
}
.faq dd::before{
content:'A';
width:2.5rem;
height:2.5rem;
color:#f18318;
text-align:center;
font-weight:bold;
font-size:1.3rem;
line-height:2.3rem;
border-radius:50%;
position:absolute;
top:1.2rem;
left:1.5rem;
}


/* INTERVIEW */

.iv-ttl-area{
width:60rem;
margin:0 auto 1rem;
padding:2rem 1rem;
border-top:2px solid #333;
border-bottom:2px solid #333;
}

.iv-ttl{
font-size:2.4rem;
line-height:1.25;
font-weight:bold;
margin-bottom:1.5rem;
}
.iv-man{
font-size:1.2rem;
text-align:right;
}

.iv-tags{
width:60rem;
margin:0 auto 4rem;
display:flex;
flex-wrap:wrap;
}
.iv-tags li{
font-size:.8rem;
padding-left:.75em;
position:relative;
color:#467ba0;
margin-right:1.5rem;
letter-spacing:0;
}
.iv-tags li::before{
content:'#';
position:absolute;
top:0;
left:0;
}



.iv-photo{
width:60rem;
margin:0 auto 4rem;
}

.iv-q{
width:60rem;
font-size:1.3rem;
position:relative;
margin:0 auto .75rem;
}

.iv-q::before{
content:'';
width:4rem;
height:1px;
background:#333;
position:absolute;
top:50%;
left:-5rem;
}

.iv-a{
width:60rem;
margin:0 auto 4rem;
}

.iv-a p:first-letter{
padding-left:1em;
}
html[lang="en-US"] .iv-a p:first-letter{
padding-left:0;
}

.iv-bq{
width:60rem;
margin:8rem auto 0;
background:#f8f8f8;
padding:2rem 3rem;
position:relative;
overflow:hidden;
}



html[lang="ja"] .iv-bq::before{
content:'';
width:30rem;
height:50rem;
background:#f2f2f2;
position:absolute;
top:-10rem;
left:42%;
z-index:2;
transform:rotate(50deg);
}
html[lang="en-US"] .iv-bq::before{
content:'';
width:30rem;
height:50rem;
background:#f2f2f2;
position:absolute;
top:-7rem;
left:46%;
z-index:2;
transform:rotate(50deg);
}

.iv-bq-ttl{
font-size:2rem;
margin-bottom:1rem;
position:relative;
z-index:3;
}
.iv-bq p{
margin-bottom:1.5em;
position:relative;
z-index:3;
}
.iv-bq p::first-letter{
padding-left:1em;
}

html[lang="en-US"] .iv-bq p::first-letter{
padding-left:0;
}

.iv-bq p:last-child{
margin-bottom:0;
}


/* CONTACT */

#contact{
width:70rem;
margin:0 auto;
}

#contact h2{
font-size:3rem;
line-height:2;
margin-bottom:1rem;
}


/* documents */

#downloads{
width:70rem;
margin:0 auto;
}

#downloads h2{
font-size:3rem;
line-height:2;
margin-bottom:1rem;
}


#downloads section{
margin:0 auto 4rem;
}

.dl-app li{
font-size:1.1rem;
padding-left:1.2rem;
position:relative;
}
.dl-app li::before{
content:'※';
position:absolute;
top:0;
left:0;
color:#999;
}


.rmks{
color:#ff4500;
}


/* PRIVACY */

#privacy,
#terms{
width:60rem;
margin:0 auto;
}
#privacy h2,
#terms h2{
font-size:2.5rem;
line-height:2;
margin-bottom:1rem;
}
#privacy section,
#terms section{
margin-bottom:3rem;
}
#privacy h3,
#terms h3{
font-size:1.5rem;
line-height:2;
margin-bottom:.5rem;
}
#privacy p,
#terms p{
font-size:1.1rem;
margin-bottom:1.5rem;
}

.pplist{
margin-bottom:1.5rem;
}

.pplist li{
padding-left:1.2rem;
position:relative;
font-size:1.1rem;
}
.pplist li::before{
content:'';
width:6px;
height:6px;
background:#999;
position:absolute;
top:0.775rem;
left:0.25rem;
}


/* SOLUTION */

#solution{
width:80rem;
margin:0 auto;
}

#solution section{
margin:0 auto 5rem;
}

.solu-sub{
font-family:'Jost';
font-weight:bold;
font-size:1.5rem;
line-height:3;
}

#solution h2{
font-size:3rem;
line-height:1.25;
margin-bottom:2.5rem;
}

.solu-intro{
font-size:1.3rem;
}
.solu-intro strong{
color:#467BA0;
}

#solution h3{
font-size:2rem;
line-height:2;
margin-bottom:1rem;
}
#solution section p{
font-size:1.2rem;
margin-bottom:1.5rem;
}
#solution section p:last-child{
margin:0;
}

.pageList01 li{
padding-left:1.5rem;
position:relative;
font-size:1.2rem;
}
.pageList01 li::before{
content:'';
width:8px;
height:8px;
background:#467BA0;
position:absolute;
top:12px;
left:4px;
}

.pageList01 li strong{
color:#F18318;
}

.solu-outro{
font-size:1.3rem;
}
.solu-outro strong{
color:#467BA0;
}

.fo-ttl{
text-align:center;
font-weight:bold;
font-size:1.3rem;
margin-bottom:.5rem;
}

.fuel-opt-img{
width:40rem;
margin:0 auto;
text-align:center;
}




/*------------------------------------------------------------
	FORM PARTS
------------------------------------------------------------*/

.req{
position:relative;
top:-.5rem;
left:4px;
color:#cc2728;
font-size:.7rem;
}

.att{
}

.form {
width:100%;
margin-bottom:3rem;
}
.form dt {
font-weight:bold;
text-align:left;
margin-bottom:.5rem;
font-size:1.2rem;
}
.form dd {
margin-bottom:2rem;
font-weight:500;
}

input[type="text"],
input[type="email"]{
width:100%;
border-radius:6px;
background:#e9eef3;
border:none;
padding:1rem;
box-sizing:border-box;
-webkit-appearance: none;
font-weight:500;
}

select {
border-radius:6px;
background:#e9eef3;
-webkit-appearance: none;
padding:1rem;
}

textarea {
width:100%;
border-radius:6px;
background:#e9eef3;
padding:1rem;
box-sizing:border-box;
-webkit-appearance: none;
border:none;
font-weight:500;
}

.mwform-tel-field input[type=text] {
width:25%;
border-radius:6px;
background:#e9eef3;
padding:1rem;
-webkit-appearance: none;
}

.mwform-checkbox-field input, .mwform-radio-field input{
margin:0;
}
input[type=radio]{
}
.mwform-radio-field label,
.mwform-checkbox-field label{
font-weight:500 !important;
}

.seimei{
display:flex;
}
.seimei li{
width:49%;
margin-right:2%;
}
.seimei li:last-child{
margin:0;
}


.formBtn {
display:flex;
justify-content:center;
}
.formBtn li {
display:inline-block;
margin:0 .5rem;
}

.mw_wp_form_confirm .sbmBtn input:hover,
.mw_wp_form_input .sbmBtn input:hover{
background:#0a4f71;
color:#fff;
}


.mw_wp_form_input .sbmBtn input {
background:#467B9F;
color:#fff;
width:12rem;
height:4rem;
overflow:hidden;
border:none;
cursor:pointer;
border-radius:6px;
transition:all 0.2s;
font-weight:bold;
-webkit-appearance: none;
}
.mw_wp_form_confirm .sbmBtn input {
background:#467B9F;
color:#fff;
width:12rem;
height:4rem;
overflow:hidden;
border:none;
cursor:pointer;
border-radius:6px;
transition:all 0.2s;
font-weight:bold;
-webkit-appearance: none;
}
.backBtn input {
background:#eee;
color:#111;
width:6rem;
height:4rem;
overflow:hidden;
border:none;
cursor:pointer;
border-radius:6px;
transition:all 0.2s;
font-weight:bold;
-webkit-appearance: none;
}

::placeholder{
color:#ccc;
}

/*------------------------------------------------------------
	CATEGORY ARCHIVE
------------------------------------------------------------*/
.para-archives{
position: absolute;
top: 0;
  left: 50%;
  transform: translateX(-50%);
width: 1920px;
height: 400px;
background-image:url('img/teaser-archives.jpg');
background-size:1920px;
background-repeat:no-repeat;
background-attachment: fixed;
background-position: top;
background-color:rgba(0,0,0,.2);
background-blend-mode: multiply; 
z-index:1;
}

#cat{
max-width:80rem;
width:100%;
margin:0 auto;
padding:6rem 0;
}


.archive{
margin:0 auto 5rem;
}
.archive li{
position:relative;
padding:4rem 0;
display:flex;
justify-content:space-between;
}

.archive li::after{
content: '';
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 1px;
background-size: 9px 1px;
background-image: linear-gradient(to right, #467ba0, #467ba0 1px, transparent 3px, transparent 3px);
background-repeat: repeat-x;
}

.archive li:first-child{
padding-top:0;
}

.archive li:last-child::after{
background:none;
}

.arc-thumb{
width:24rem;
margin:0;
}
.arc-txt{
width:50rem;
}
.postInfo{
display:flex;
align-items:center;
margin-bottom:1rem;
}
.postDate{
font-size:.9rem;
color:#999;
}
.postCat{
margin-left:1rem;
display:inline-block;
padding:0 1.5rem;
color:#fff;
background:#467BA0;
border-radius:4px;
}

.archive li h3{
font-size:1.8rem;
line-height:1.5;
margin-bottom:1.5rem;
}

.excerpt{
margin-bottom:1em;
}




/*------------------------------------------------------------
	SINGLE
------------------------------------------------------------*/
.para-news{
position: absolute;
top: 0;
  left: 50%;
  transform: translateX(-50%);
width: 1920px;
height: 400px;
background-image:url('img/teaser-news.jpg');
background-size:1920px;
background-repeat:no-repeat;
background-attachment: fixed;
background-position: top;
background-color:rgba(0,0,0,.2);
background-blend-mode: multiply; 
z-index:1;
}



#post{
max-width:80rem;
width:100%;
margin:0 auto;
padding:6rem 0;
}

#post h2{
font-size:2rem;
line-height:1.25;
margin-bottom:1.5rem;
}

.post{
margin-bottom:5rem;
}

.post p{
margin-bottom:1.5em;
}

.post h3{
font-size:1.8rem;
line-height:1.5;
margin:1.5rem 0;
}
.post h4{
font-size:1.6rem;
line-height:1.5;
margin:1.5rem 0;
}
.post h5{
font-size:1.2rem;
line-height:1.5;
margin:1.5rem 0;
}

.post img{
margin:1.5rem 0;
}




/*------------------------------------------------------------
	FOOTER
------------------------------------------------------------*/
footer{
background-image: linear-gradient(to right, rgba(233, 236, 247, 0.3), rgba(255, 255, 255, 0.3));
padding:5.5rem 0 1rem;
}
.footer-inner{
max-width:80rem;
width:100%;
margin:0 auto;
display:flex;
justify-content:space-between;
padding:0 0 3rem;
}

.footerL{
width:20rem;
margin:0;
}
.f-logo{
width:15rem;
margin:0 0 1.5rem;
position:relative;
}
.f-logo a{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
display:block;
z-index:3;
}

.f-logo-cc{
font-size:.8rem;
font-family:'Jost';
color:#467Ba0;
margin-bottom:2rem;
}
.f-add{
font-size:.6rem;
color:#467Ba0;
}

.f-add a{
color:#467Ba0;
}


.footerR{
width:50rem;
margin-left:auto;
}
.f-navi{
display:flex;
justify-content:flex-end;
gap:0 4rem;
margin-left:auto;
}
.f-navi-cat dt{
font-family:'Jost';
font-weight:bold;
color:#467Ba0;
margin-bottom:1rem;
}
.f-navi-cat dd{
font-size:.8rem;
line-height:2;
padding-left:.7rem;
position:relative;
}

.f-navi-cat dd a:hover{
text-decoration:underline;
}

.f-navi-cat dd::before{
content:'';
width:.25rem;
height:.25rem;
background:#467Ba0;
position:absolute;
top:.7rem;
left:0;
}


.f-navi-cat dd a{
color:#467Ba0;
}



.copy{
max-width:80rem;
width:100%;
margin:0 auto;
font-family:'Jost';
font-size:.8rem;
color:#467Ba0;
text-align:right;
}



/*------------------------------------------------------------
	PREV NEXT PC
------------------------------------------------------------*/
.paging{
width:80rem;
margin:0 auto;
display:flex;
justify-content:space-between;
}

.prevP{
overflow:hidden;
width:40rem;
display:flex;
justify-content:space-between;
align-items:center;
box-sizing:border-box;
position:relative;
padding:0;
border-bottom:0;
}


.prevBox{
width:4rem;
height:4rem;
text-align:center;
display:flex;
justify-content:center;
align-items:center;
text-align:center;
border:1px solid #467BA0;
box-sizing:border-box;
}

.prevText{
width:34rem;
font-size:1rem;
line-height:1.5;
display:flex;
justify-content:left;
align-items:center;
overflow:hidden;
padding:0 3rem 0 0;
}



.nextP{
width:40rem;
padding:0;
overflow:hidden;
display:flex;
justify-content:space-between;
align-items:center;
box-sizing:border-box;
position:relative;
}
.nextBox{
width:4rem;
height:4rem;
text-align:center;
display:flex;
justify-content:left;
align-items:center;
text-align:center;
border:1px solid #467BA0;;
box-sizing:border-box;
}
.nextText{
width:34rem;
font-size:1rem;
line-height:1.5;
display:flex;
justify-content:flex-end;
align-items:center;
padding:0 0 0 6rem;
overflow:hidden;
}

.prevP:hover .prevText{
color:#467BA0;
}
.nextP:hover .nextText{
color:#467BA0;
}



.icon-home{
background:url(img/icon-home.svg) no-repeat center center;
background-size:18px;
}
.arrow-l,
.arrow-r{
position:relative;
}

.arrow-l::before{
content:'';
width:.5rem;
height:.5rem;
border-left:1px solid #467BA0;
border-bottom:1px solid #467BA0;
position:absolute;
top:50%;
left:50%;
transform:rotate(45deg);
margin-left:-4px;
margin-top:-4px;
}
.arrow-r::before{
content:'';
width:.5rem;
height:.5rem;
border-right:1px solid #467BA0;
border-bottom:1px solid #467BA0;
position:absolute;
top:50%;
left:50%;
transform:rotate(-45deg);
margin-left:-4px;
margin-top:-4px;
}


/*------------------------------------------------------------
	END PC LAYOUT CSS
------------------------------------------------------------*/
}