/*
Theme Name : comet
Theme URI : https://choco-chip.comet-cat.com/
Description : cometの制作したテーマです。
Version : 1.0
Author : comet
Author URI : https://choco-chip.comet-cat.com/
*/

/*
.l-header {
  	position: fixed;
  	left: 50%;
  	transform: translateX(-50%);
  	width: 100vw;
  	z-index: 9999;
  	isolation: isolate;
	width: 100vw;
}

.l-header::before {
  	content: "";
  	position: absolute;
  	inset: 0;
  	background-color: rgba(255, 255, 255, 0.6);
  	opacity: 0;
  	transition: opacity 0.3s ease;
  	z-index: -1;
  	pointer-events: none;
	width: 100vw;
	left: 50%;
	transform: translateX(-50%);
}

.l-header.is-scrolled::before {
  	opacity: 1;
	width: 100vw;
}
*/

.l-footer__nav__body .item>ul a {
  	padding-bottom: 6px;
  	border-bottom: 1px solid transparent;
  	transition: border-color 0.3s ease;
	width: fit-content;
}

.l-footer__nav__body .item>ul a:hover {
  	border-bottom-color: #35342e;
}

.p-front .p-front-recruit .p-front-recruit__body .p-front-recruit__link a {
	position: relative;
}

.l-footer__nav__body .head-link a::after,
.l-footer__nav__body .full a::after {
  transition: transform 0.3s ease;
  position: relative;
}

.l-footer__nav__body .head-link a:hover::after,
.l-footer__nav__body .full a:hover::after {
  transform: translateX(4px);
}

/* トランジションを両方に適用 */
.p-front .p-front-recruit .p-front-recruit__body .p-front-recruit__link a,
.p-front .p-front__link a {
  transition: transform 0.3s ease, filter 0.3s ease;
}

/* hover時の効果も両方に適用 */
.p-front .p-front-recruit .p-front-recruit__body .p-front-recruit__link a:hover,
.p-front .p-front__link a:hover,
.p-partner .p-partner__link a:hover {
  transform: translateY(-2px);
  filter: drop-shadow(0 6px 12px rgba(0,0,0,0.15));
}

.animation{
  position:relative;
  overflow:hidden;
}
.animation::before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(237,234,229,0.9);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  opacity:1;
    z-index: 999999;
  pointer-events:none;
}
.animation > *{
  position:relative;
  z-index:2;
}
.animation.is-active::before{
  animation:overlayFade .8s ease forwards;
}

@keyframes overlayFade{
  from{opacity:1}
  to{opacity:0}
}

@media (prefers-reduced-motion: reduce){
  .animation.is-active::before,
  .animation.is-active::after{animation:none; opacity:0}
}

.p-front .p-front-visual .p-front-visual__motion .linemotion {
	z-index: -999;
}
.p-front .p-front-visual .p-front-visual__motion .fillmotion {
	z-index: -9999;
}

.loading-overlay{
  position: fixed;
  inset: 0;
  background: rgba(237,234,229,0.7);
  backdrop-filter: blur(8px) brightness(0.98);
  -webkit-backdrop-filter: blur(8px) brightness(0.98);
  display:flex; justify-content:center; align-items:center;
  z-index:99999;
  opacity:1; visibility:visible;
  transition: opacity .8s ease, visibility .8s ease;
}
.loading-overlay.hidden{ opacity:0; visibility:hidden; }

.loading-logo img{
  width:160px; height:auto; display:block;
  will-change: transform, opacity;
  animation: growFade 1.2s ease-out forwards; /* ←ここだけで動く */
}

@keyframes growFade{
  0%   { transform: scale(1);    opacity:1; }
  80%  { transform: scale(1.08); opacity:1; }
  100% { transform: scale(1.12); opacity:0; }
}

@media (prefers-reduced-motion: reduce){
  .loading-logo img{ animation: fadeOnly .8s ease-out forwards; }
  @keyframes fadeOnly{
    from{ opacity:1; } to{ opacity:0; }
  }
}