@charset "utf-8";



/* �C���[�W��webp�ɕύX */
.hero-background {
    background-image: url("images/hero.webp"); /* ���w�i�摜��ݒ聚 */
}
.faq.kigu2-parallax{
  background-image:linear-gradient(
                     180deg,
                     rgba(0,0,0,.45) 0%,
                     rgba(0,0,0,.55) 50%,
                     rgba(0,0,0,.75) 100%),
                   url(images/kigu2.webp);
}
.strengths-section {
    background-image:linear-gradient(rgba(0, 0, 0, .6),  rgba(0, 0, 0, .6)),url(images/kigu1.webp);
}
.strengths-section.kigu-parallax{
  background-image: linear-gradient(
                     180deg,
                     rgba(0,0,0,.45) 0%,
                     rgba(0,0,0,.55) 50%,
                     rgba(0,0,0,.75) 100%),
                   url(images/kigu1.webp);
}


/* PC/SP���� */
.hero {
	background:url(images/TOP_1920_1080.webp) 50% 50% no-repeat;
	background-size:cover;
	display:block;
}
.hero-content {
	padding:100px 0;
}
.hero .container {
	padding:0;
}

.hero-text-img {
	width:100%;
	height:580px;
	object-fit:contain;
}

.hero-actions {
	margin-top: 3em;
}

.team-bio-wrapper.collapsed {
	max-height:none;
	height:4em;
}
.team-bio-wrapper.collapsed::after {
	height:auto;
}


@media (min-width: 769px) {
	.sp {
		display:none;
	}
}
@media (max-width: 768px) {
	.pc {
		display:none;
	}

	* {
		--max-width:480px;
	}


	body{
		width:480px;
		margin:0 auto;
		font-size:16px;
	}
	section {
		width:100%;
		overflow:hidden;
	}

	.header.scrolled {
		background:rgba(255,255,255,0.94) !important;
	}

	#menu-toggle:checked ~ .container .header-inner .nav {
		top:80px;
		height:calc(100vh - 80px);
		padding:2em 2.5em;
		background:rgba(255,255,255,0.94) !important;
		overflow:hidden;
	}
	#menu-toggle:checked ~ .container .header-inner .menu-toggle span:nth-child(1) {
		transform: rotate(45deg) translate(3px,3px);
	}
	#menu-toggle:checked ~ .container .header-inner .menu-toggle span:nth-child(3) {
		transform: rotate(-45deg) translate(5px,-5px);
	}
	#menu-toggle:checked ~ .container .header-inner .nav .menu-close {
		display:none;
	}


	.fixed-cta {
		right:0.8em;
		bottom:0.8em;
	}
	.fixed-cta-button {
		padding:0.5em 1.5em;
	}


	.hero-content {
		padding:100px 0 20px;
	}
	.hero .container {
		height: 600px;
		display:flex;
		flex-direction:column;
		justify-content:space-evenly;
	}

	.hero-title {
		font-size:220%;
		line-height:1.4;
	}
	.title-line {
		line-height:inherit;
	}
	.title-accent {
		font-size:100%;
	}
	.hero-description {
		font-size:140%;
		font-weight: 500;
		line-height:1.4;
		color:#fff;
	}

	.hero-stats {
		flex-direction:row;
		gap:0;
	}
	.hero-stats > * {
		width:130px;
		font-size:120%;
	}
	.stat-value {
		margin-bottom:0;
		line-height: 1.2;
	}
	.stat-number {
		font-size:200%;
	}
	.stat-label {
		font-size:90%;
		color:#fff;
	}

	.scroll-indicator {
		color:#fff;
	}
	.mouse {
		border-color:#fff;
	}
	.mouse::after {
		background:#fff;
	}
	@keyframes scroll {
	    0% { opacity: 1; top: 8px; }
	    100% { opacity: 0.5; top: 20px; }
	}


	.reasons-section{
		font-family:'Inter','Noto Sans JP',sans-serif;
	}
	.strengths-header {
		margin-bottom:2em;
	}
	.strengths-subtitle {
		font-size:140%;
	}
	.service-content {
		padding:1.5em;
	}
	.service-content p {
		margin-bottom:1em;
	}
	.service-features li {
		padding-top:0;
		padding-bottom:0.3em;
	}


	.services-combo {
		padding: 1.5em;
	}
	.combo-badge {
		margin-bottom: 1.5em;
	}

	.flow-desc {
		font-size:120%;
	}

	.trial-flow-timeline {
	    padding-left: 30px;
	}
	.trial-step {
		gap:1em;
	}

	.bio-toggle {
		margin-top:0;
		margin-bottom:0.3em;
	}

	.team-achievements li {
		font-size:110%;
		display: block;
	}
	.team-achievements .achievement-number {
		display:block;
		font-family: 'Poppins','Noto Sans JP',sans-serif;
	}

	.benefits-grid {
		padding:0 1em;
	}
	.common-benefits {
		padding:2em;
	}

	.trial-badge {
		font-size:110%;
	}

	.trial-includes li::before {
		position:relative;
		margin-right:0.5em;
	}

	.recommended-badge {
		top:-20px;
		font-size: 100%;
	}

	.ticket-badge, .popular-badge {
		top:-20px;
		font-size: 100%;
	}

	.option {
		font-size:130%;
	}
	.option-price {
		font-size:150%;
	}
	.option-per {
		font-size:85%;
	}

	.info-item p {
		font-size:160%;
	}

	.faq-question:hover {
		background: #6dc;
	}


	.access-details {
		font-size:90%;
		gap:0;
	}
	.access-details dd {
		margin-bottom:1em;
		padding-left:1em;
	}


	.line-qr {
		text-align:center;
	}

	.line-benefits li::before {
		position:relative;
		margin-right:0.5em;
	}

	.line-info {
		display: flex;
    	flex-direction: column;
    	align-items: center;
	}

	.line-benefits {
		display: flex;
    	flex-direction: column;
    	align-items: flex-start;
	}
	.line-benefits li {
		padding-left:0;
	}



	.nav-list {
		gap:0.6em;
		margin-bottom:1em;
	}
	.nav-list a {
		padding:0.3em 0;
		font-size:120%;
		font-weight:bold;
	}
	.footer-column h4 {
		margin-bottom:0.5em;
	}
	.footer-column li {
		margin-bottom:0.5em;
		padding-left:1em;
	}

	.footer-links {
		gap:0.5em;
	}

	.nav-list a::after ,
	.footer-links a::after {
		content:">";
		position:relative;
		margin-left:0.3em;
		opacity:1;
	}

	.nav-sns {
		margin-top:0;
		padding-top:0;
	}
}






