:root {
	--primary-font: "Noto Serif JP", serif;
	--secondary-font: "Noto Sans JP", sans-serif;
	--head_font: "Noto Sans JP", sans-serif;
	--third-font: "Noto Sans", sans-serif;
	--priColor: #0b2844;
	--secColor: #c4a15c;
	--terColor: #556DAC;
	--text-color: #222222;
	--bg-gray: #EEF1F7;
	--shadow-card: 0 0.3rem 1rem rgba(0, 0, 0, 0.25);
	--radius-card: 1rem;
	--section-padding: 16rem 0;
	--gap-cards: 4rem;
	--wrapper:128rem;
}

html {
	scroll-behavior: smooth;
	font-size: 10px;
}

body {
	box-sizing: border-box;
	position: relative;
	font-weight: 400;
	color: var(--text-color);
	min-width: 0 !important;
	margin: 0 auto;
}

/* Header */
	.header_wrap
	.business_pc--header {
		display:block;
	}

	.header_wrap .business_pc--header .header-v3 .header_inner{
		padding: .8rem 1.2rem;
	}

	.header_wrap .business_pc--header .header-v3 > .header_top_area  {
		height: 9.4rem;
	}

	.header_wrap
	.business_sp--header {
		display:none;
	}

	#pcFooter{
		display: block;
	}

	#spFooter{
		display: none;
	}

/* ========================================
   Base Container & Utilities
   ======================================== */
.page_wrap {
	overflow: unset;
}

.page_wrap.page_business {
	font-family: var(--primary-font);
	background-color: #fff;
	color: #092846;
	line-height: 1.5;
	padding: 0;
}

.page_business .wrapper {
	max-width: var(--wrapper);
	width: 100%;
	margin: 0 auto;
}

/* Utility Classes */
.page_business .d-block {
	display: block;
}

.page_business .text-center {
	text-align: center;
}

.page_business .text-white {
	color: #fff;
}

.page_business .text-sec-color {
	color: var(--secColor);
}

.page_business .text-pri-color {
	color: var(--priColor);
}

.page_business .text-ter-color {
	color: var(--terColor);
}

.page_business .text-red {
	color: #f90000;
}

.page_business .mb_30 {
	margin-bottom: 3rem;
}

.business_logo {
    margin-bottom: 3rem;
}

.business_logo img {
	object-fit: contain;
}
/* ========================================
   Unified Section Header Styles
   ======================================== */
.page_business_header {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	align-items: center;
	margin-bottom: 12rem;
}

.page_business_header .header-line {
	width: 12rem;
	height: 0.4rem;
	background: var(--secColor);
}

.page_business_header h2 {
	font-family: var(--secondary-font);
	font-weight: bold;
	font-size: 4.2rem;
	line-height: 1.35;
	color: var(--text-color);
	margin: 0;
}

.section-subtitle {
	font-family: var(--secondary-font);
	font-size: 2.6rem;
	line-height: 1.35;
	font-weight: 400;
	color: var(--terColor);
	margin: 0;
}

/* ========================================
   Unified Button Styles
   ======================================== */
.page_business .btn_page_business,
.hero-btn {
    width:clamp(372px, 45vw, 520px);
    height:clamp(52px, 5vw, 64px);
    display:flex;
    align-items:center;
    justify-content:center;
    border:none;
	border-radius: 1rem;
	font-family: var(--secondary-font);
    font-size:clamp(14px, 1.2vw, 18px);
    font-weight:600;
    background: linear-gradient(to right, #F06400, #FBB204);
    color:#fff;
    cursor:pointer;
	outline: none;
	position: relative;
	transition: all 0.3s ease;
	text-decoration: none;
}

.page_business .btn_page_business {
	font-size: 2.8rem;
  	height: 8rem;
  	width: 52rem;
  	line-height: 8rem;
	margin: 0 auto;
}

.hero_content.bnr_con {
    display: flex;
    padding: 8rem 0 10rem;
	max-width: 100%;
	margin: 0 auto;
	justify-content: space-between;
	gap: .8rem;
}

.hero-btn {
	width: 54rem;
	height: 8.4rem;
	font-size: 2.7rem;
	line-height: 1;
}

.page_business .btn_page_business:before {
	content: url('https://assets.nativecamps.com/user/webroot/images/index_business/arrow.svg');
	position: absolute;
	top: 50%;
  	transform: translateY(-50%);
  	right: 1.8rem;
}

.page_business .btn_page_business:hover,
.hero-btn:hover {
	opacity: 0.95;
}

.trial-number {
	font-size: 4rem;
	line-height: 1.7;
}

/* Unified Blue Button Styles */
.page_business_teachers .teacher-btn,
.page_business_callan .btn-callan,
.page_business_learning .btn-learning,
.btn-material-detail,
.btn-pricing-info,
.btn-success {
    width:clamp(320px, 45vw, 400px);
    height:clamp(52px, 5vw, 64px);
    display:flex;
    align-items:center;
    justify-content:center;
	font-size: 2rem;
    border:none;
	border-radius: 1rem;
    font-size:clamp(16px, 1.2vw, 20px);
    font-weight:700;
    background: #556dac;
    color:#fff;
    cursor:pointer;
	position: relative;
	margin: 0 auto;

}

.page_business_teachers .teacher-btn{
	width: 100%;
    height: 6.7rem;
    line-height: 6.7rem;
}


.page_business_teachers .teacher-btn::before,
.page_business_callan .btn-callan::before,
.page_business_learning .btn-learning::before,
.btn-material-detail::after,
.btn-pricing-info::after,
.btn-success::after {
	width: 0.9rem;
	height: 1.6rem;
	background: url('https://assets.nativecamps.com/user/webroot/images/index_business/arrow.svg') no-repeat center;
	background-size: contain;
	position: absolute;
    right: 1.8rem;
}

.page_business_teachers .teacher-btn::before,
.page_business_callan .btn-callan::before,
.page_business_learning .btn-learning::before {
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 1.8rem;
}


.btn-material-detail::after,
.btn-pricing-info::after,
.btn-success::after {
	content: '';
	display: inline-block;
	flex-shrink: 0;
}

.page_business_teachers .teacher-btn:hover,
.page_business_callan .btn-callan:hover,
.page_business_learning .btn-learning:hover,
.btn-material-detail:hover,
.btn-pricing-info:hover,
.btn-success:hover {
	background: #4a5e94;
	opacity: 0.9;
}

/* Outline Button Variant */
.page_business_teachers .btn-more-teachers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: white;
	border: 0.3rem solid var(--terColor);
	color: var(--terColor);
	font-family: var(--secondary-font);
	font-weight: bold;
	font-size: 2rem;
	padding: 2rem 1.2rem 2rem 0;
	border-radius: 1rem;
	max-width: 40rem;
	width: 100%;
	text-decoration: none;
	transition: all 0.3s ease;
	position: relative;
	box-sizing: border-box;
	height: 6.7rem;
    line-height: 5.6rem;
}

.page_business_teachers .btn-more-teachers::before {
	content: url('https://assets.nativecamps.com/user/webroot/images/index_business/arrow-blue.svg');
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 3%;
}

.page_business_teachers .btn-more-teachers:hover {
	background: #f5f7fa;
}

/* ========================================
   Unified Card Styles (Base Pattern)
   ======================================== */
.news-card,
.business-card,
.support-card,
.blog-card,
.success-story-card,
.page_business_teachers .teacher-card {
	background: #fff;
	border-radius: var(--radius-card);
	box-shadow: var(--shadow-card);
	overflow: hidden;
}

/* Card Accent Line Pattern */
.page_business_teachers .card-accent,
.support-card-accent {
	width: 100%;
	height: 2rem;
	background: white;
	display: flex;
	justify-content: center;
	align-items: flex-start;
}

.page_business_teachers .card-accent::before,
.support-card-accent::after {
	content: '';
	display: block;
	width: 15rem;
	height: 0.4rem;
	background: var(--secColor);
}

/* ========================================
   Trial CTA (Unified across all sections)
   ======================================== */
.trial-cta {
	padding-top: 2rem;
	text-align: center;
}

/* ========================================
   Section Background Colors
   ======================================== */
.page_business_reason,
.page_business_comparison,
.page_business_materials,
.page_business_pricing,
.page_business_blog {
	background: #fff;
	padding: 16rem 8rem;
}

.page_business_teachers,
.page_business_support,
.page_business_success {
	background: var(--bg-gray);
	padding: 16rem 8rem;
}

.page_business_convenience,
.page_business_callan,
.page_business_learning,
.page_business_faq {
	padding: 16rem 8rem;
}

/* ========================================
   Banner / Hero Section
   ======================================== */
.page_business {
	background: url("https://assets.nativecamps.com/user/webroot/images/index_business/main_bg.webp") no-repeat top center / cover;
	background-attachment: fixed;
}

.page_business .hero-section{
	position: relative;
	overflow:hidden;
}

.page_business .hero-section .left_container{
    width: clamp(202px, calc(202px + (360 - 202) * ((100vw - 1140px) / (1920 - 1140))), 360px);
    flex: 0 0 auto;
    height: 57.1rem;
}

.page_business .left_info_text_content {
	display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
	padding: 8.3rem 0;
	width: 72rem;
    flex-shrink: 0;
}

.page_business .left_container img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.page_business  .right_container {
    height: 57.1rem;
    flex-shrink: 0;
    width: 80rem;
}

.hero-lead {
	font-family: var(--secondary-font);
	font-size: 2.8rem;
	line-height: 1.35;
	font-weight: 400;
	margin: 0 0 1rem;
}

.hero-heading {
	font-family: var(--secondary-font);
	font-size: 5.4rem;
	line-height: 1.2;
	font-weight: bold;
	margin: 0 auto 4.8rem;
}

.hero-heading em {
	line-height: 1.2;
	font-style: normal;
	font-size: 7rem;
}

.hero-right-img {
	width: 100%;
    height: 100%;
	display: block;
	object-fit: cover;
}

 .cta_trial--container {
	max-width: 52rem;
    width: 100%;
	margin: 0 auto;
}

/* NJ-91359 start */

/* ── Stats / Medals row ────────────────────────── */
.stats-section {
	margin: 0 auto;
	width: 100%;
	padding: 0 0 6rem;
	position: relative;
}

.medals-list {
	display: flex;
	justify-content: center;
	gap: 1rem;
	flex-wrap: wrap;
	padding: 0;
}

.medal-item {
	list-style: none;
}

.medal-wrap {
	position: relative;
	width: 10rem;
    height: 8.7rem;
	display: flex;
	align-items: center;
	justify-content: center;
}

.medal-img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.stats-note {
	font-family: var(--secondary-font);
	font-size: 1.4rem;
	line-height: 1.6;
	font-weight: 400;
	margin: 2rem 0 0;
}

/* ── Tagline / About row ───────────────────────── */
.tagline-section {
	margin: 0 auto;
	width: 100%;
	padding: 2rem 0 0;
}

.tagline-inner {
	display: flex;
	align-items: center;
	gap: 4rem;
}

.tagline-fig {
	flex-shrink: 0;
	max-width: 40rem;
	width: 100%;
}

.tagline-fig img {
	width: 100%;
	height: auto;
	object-fit: cover;
}

.tagline-text {
	flex: 1;
}

.tagline-text h3{
	font-family: var(--secondary-font);
	font-size: 2.6rem;
	line-height: 1.6;
	font-weight: bold;
	margin: 0 0 1.6rem;
}

.tagline-text p {
	font-family: var(--secondary-font);
	font-size: 1.8rem;
	line-height: 1.8;
	font-weight: 400;
}

/* ── Reasons section ───────────────────────────── */

/* Corporate adoption block */
.corp-section {
	margin: 2rem 0 0;
	text-align: center;
}

.corp-heading {
	font-family: var(--secondary-font);
	font-size: 3rem;
	line-height: 1.4;
	font-weight: bold;
	color: var(--secColor);
	margin: 0 0 3rem;
}

.corp-desc {
    font-family: var(--secondary-font);
    font-size: 1.8rem;
    line-height: 1.8;
    font-weight: 400;
    color: #333;
    margin: 0 auto 6rem;
    text-align: left;
}

/* Company list – 2-column grid */
.company_list {
    margin: 0 auto;
    max-width: 90rem;
    width: 100%;
}

.corp-section ul.corporate_case_items {
	display: grid;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 3rem;
}

.corp-section ul.corporate_case_items li {
	list-style: none;
	font-family: var(--secondary-font);
	font-size: 2rem;
	line-height: 1.6;
	font-weight: 700;
	color: #556DAC;
	padding: 1rem 1.5rem;
	border-bottom: .2rem dashed #e0e0e0;
	text-align: center;
}

/* Satisfaction block */
.satisfaction-wrap {
	display: flex;
	align-items: center;
	gap: 4rem;
	margin: 10rem 0 6rem;
}

.satisfaction-fig {
	flex-shrink: 0;
	max-width: 40rem;
}

.satisfaction-fig img {
	width: 100%;
	height: auto;
	object-fit: cover;
}

.satisfaction-text {
	flex: 1;
}

.satisfaction-heading {
	font-family: var(--secondary-font);
	font-size: 2.6rem;
	line-height: 1.5;
	font-weight: bold;
	margin: 0 0 1.6rem;
}

.satisfaction-text p {
	font-family: var(--secondary-font);
	font-size: 1.8rem;
	line-height: 1.8;
	font-weight: 400;
	color: #333;
}


.page_business-info-section{
	position: relative;
}
.page_business-visual{
	max-width: 100%;
	width: 100%;
}
.page_business-points{
	max-width: 98rem;
	margin: 0 auto;
}
.page_business-visual img,
.page_business-points img{
	width: 100%;
	height: auto;
	object-fit: cover;
}
.page_business h3.section-subtitle{
	font-size: 3rem;
	font-weight: 700;
	text-align: center;
	padding: 3rem 0;
}
.page_business-points p {
	font-size: 1.8rem;
	line-height: 180%;
}

.info-section {
	padding: 6rem 2.4rem 16rem;
}

/* ========================================
   Section: Comparison Table
   ======================================== */

.comparison-table-container {
	margin: 0 auto;
	overflow-x: auto;
	max-width: 128rem;
    width: 100%;
}

.comparison-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0.5rem;
	background: transparent;
}

/* Header Row */
.comparison-table thead th {
	padding: 2rem 1.5rem;
	font-family: var(--secondary-font);
	font-size: 2rem;
	line-height: 1.5;
	font-weight: bold;
	color: #fff;
	text-align: center;
	vertical-align: middle;
	height: 8.4rem;
	box-sizing: border-box;
}

.comparison-table thead th:first-child {
	background: transparent;
	 width: 31.6rem;
}

.comparison-table thead th:nth-child(2) {
	background: #F1890E;
	 width: 31.6rem;
}

.comparison-table thead th:nth-child(3),
.comparison-table thead th:nth-child(4) {
	background: #AAAAAA;
	width: 31.6rem;
}

/* Body Cells */
.comparison-table tbody th {
	background: #556DAC;
	color: #fff;
	font-family: var(--secondary-font);
	font-size: 2rem;
	line-height: 1.5;
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
	padding: 2rem 0;
	width: 22.7rem;
	box-sizing: border-box;
}

.comparison-table tbody th .subtitle {
	font-size: 1.8rem;
	font-weight: 400;
	display: block;
	margin-top: 0.5rem;
}

.comparison-table tbody td {
	background: #EEF1F7;
	padding: 2rem 0;
	font-family: var(--secondary-font);
	font-size: 2rem;
	line-height: 1.3;
	text-align: center;
	vertical-align: middle;
	color: #222;
	position: relative;
}

/* Icon Pseudo-elements - Using CSS */
.comparison-table tbody td.icon-dcircle::before,
.comparison-table tbody td.icon-triangle::before,
.comparison-table tbody td.icon-circle::before {
	content: '';
	display: block;
	width: 2.8rem;
	height: 2.8rem;
	margin: 0 auto 1rem;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

/* Double Circle Icon (Best - Orange) */
.comparison-table tbody td.icon-dcircle::before {
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/icon_dcircle.svg');
}

/* Triangle Icon (Medium) */
.comparison-table tbody td.icon-triangle::before {
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/icon_triangle.svg');
}

/* Circle Icon (Basic) */
.comparison-table tbody td.icon-circle::before {
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/icon_circle.svg');
}

/* Text Styling */
.comparison-table tbody td .primary-text {
	font-weight: bold;
	font-size: 2rem;
	line-height: 1.3;
	display: block;
}

.comparison-table tbody td .secondary-text {
	font-weight: 400;
	font-size: 1.8rem;
	line-height: 1.44;
	display: block;
	margin-top: 0.2rem;
}

/* NativeCamp Column - Bold text */
.comparison-table tbody td:nth-child(2) .primary-text {
	font-weight: bold;
}

/* Competitor Columns - Regular text */
.comparison-table tbody td:nth-child(3) .primary-text,
.comparison-table tbody td:nth-child(4) .primary-text {
	font-weight: 400;
}
/* teachers */

.page_business_teachers .teachers-intro {
	font-family: var(--secondary-font);
	font-size: 1.8rem;
	line-height: 1.8;
	color: var(--text-color);
	max-width: 98rem;
	margin: 0 auto 6rem;
}

.page_business_teachers .teachers-intro p {
	margin: 0 0 0.5rem 0;
}

.page_business_teachers .teachers-intro p:last-child {
	margin-bottom: 0;
}

.page_business_teachers .teachers-grid {
	display: grid;
  	grid-template-columns: repeat(2, minmax(auto, 46.6rem));
  	gap: 4.8rem;
  	margin-bottom: 6rem;
  	align-content: center;
  	justify-content: center;
}

.page_business_teachers .teacher-card {
	background: white;
	border-radius: 1rem;
	box-shadow: 0 0.3rem 1rem rgba(0, 0, 0, 0.25);
	overflow: hidden;
}

.page_business_teachers .card-accent {
	width: 100%;
	height: 2rem;
	background: white;
	display: flex;
	justify-content: center;
	align-items: flex-start;
}

.page_business_teachers .card-accent::before {
	content: '';
	width: 15rem;
	height: 0.4rem;
	background: var(--secColor);
	display: block;
}

.page_business_teachers .card-content {
	padding: 3.4rem 2rem 4rem;
	display: flex;
	flex-direction: column;
	gap: 3rem;
	justify-content: center;
    align-items: center;

}

.page_business_teachers .teacher-profile {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 2rem;
}

.page_business_teachers .teacher-photo img {
	width: 16rem;
	height: 16rem;
	border-radius: 50%;
	border: 0.4rem solid var(--secColor);
	object-fit: cover;
}

.page_business_teachers .teacher-info {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.page_business_teachers .teacher-specialty {
	font-family: var(--secondary-font);
	font-weight: bold;
	font-size: 2rem;
	line-height: 1.35;
	color: var(--secColor);
	margin: 0;
}

.page_business_teachers .teacher-name-row {
	display: flex;
	align-items: center;
	gap: 1.5rem;
}

.page_business_teachers .teacher-name {
	font-family: var(--secondary-font);
	font-weight: bold;
	font-size: 2.6rem;
	line-height: 1.35;
	color: var(--text-color);
	margin: 0;
}

.page_business_teachers .flag-icon {
	width: 3.2rem;
	height: 1.9rem;
	object-fit: contain;
}

.page_business_teachers .teacher-description {
	font-family: var(--secondary-font);
	font-size: 1.8rem;
	line-height: 1.8;
	color: var(--text-color);
	text-align: center;
}

.page_business_teachers .teacher-description p {
	margin: 0;
}

.page_business_teachers .teacher-stats {
	display: flex;
	gap: 2rem;
	flex-wrap: wrap;
}

.page_business_teachers .stat-badge {
	background: #EEF1F7;
	padding: 1rem 2rem;
	border-radius: 10rem;
	font-family: var(--secondary-font);
	font-size: 1.8rem;
	line-height: 1.8;
	color: var(--text-color);
	white-space: nowrap;
}

.page_business_teachers .teacher-cta {
	padding-top: 1rem;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 100%;
}

.page_business_teachers .teacher-cta .teacher-btn{
	justify-content: center;
}

.page_business_teachers .more-teachers-cta {
	margin-bottom: 6rem;
	max-width: 40rem;
    width: 100%;
    margin: 0 auto 10rem;
}

/* Callan Button */
.page_business_callan .callan-cta,
.page_business_learning .learning-cta,
.page_business-cta {
	padding-top: 2rem;
}

.page_business .mb_30{
	margin-bottom: 3rem;
}

/* Business Floating Navigation */
/* Default (inside section) */
.page_business .business-floating-nav-container {
	position: absolute;
	top: -6rem;
    right: 3.2rem;
	z-index: 1000;
	background: #C4A15C;
	padding: 0 0 2rem 2rem;
	box-shadow: 0 0.3rem 1rem rgba(0, 0, 0, 0.25);
	max-width: 40rem;
    width: 100%;
}

/*
.page_business .business-floating-nav-container.is-closed{
	max-width: 2rem;
}*/

/* When fixed 
.page_business .business-floating-nav-container.is-fixed {
	position: fixed;
	top: 6rem;
} */

/* Closed state */
.page_business .business-floating-nav-container.is-closed {
	max-width: 6.8rem;
	padding: 0;
}

/* When fixed */
.page_business .business-floating-nav-container.is-fixed {
	position: fixed;
	top: 6rem;
}

/* Toggle button */

.page_business .business-floating-nav-toggle{
	position: relative;
}

.floating-nav-toggle-container{
	position: absolute;
	right: 0;
	top: 0;
}

.page_business .business-floating-nav-toggle button {
	width: 6rem;
	height: 6rem;
	background: #C4A15C;
	border: 0;
	position: relative;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	flex-direction: column;
	gap: 1rem;
}

/* Hamburger lines */
/* BUTTON */
.business-floating-nav-toggle button {
	position: relative;
	width: 6.8rem;
	height: 6.8rem;
	border: 0;
	background: #C4A15C;
	cursor: pointer;
}

/* BOTH SPANS */
.business-floating-nav-toggle button span {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 2.2rem;
	height: 0.3rem;
	transform: translate(-50%, -50%);
}

/* TOP LINE GROUP */
.business-floating-nav-toggle button span:nth-child(1) {
	margin-top: -0.7rem;
}

/* BOTTOM LINE GROUP */
.business-floating-nav-toggle button span:nth-child(2) {
	margin-top: 0.7rem;
}

/* DASHES */
.business-floating-nav-toggle button span::before,
.business-floating-nav-toggle button span::after {
	content: '';
	position: absolute;
	top: 0;
	height: 0.3rem;
	background: #fff;
	border-radius: 10rem;
	transition: all .3s ease;
}

/* SMALL LEFT DASH */
.business-floating-nav-toggle button span::before {
	width: 0.4rem;
	left: 0;
}

/* LONG RIGHT DASH */
.business-floating-nav-toggle button span::after {
	width: 1.4rem;
	right: 0;
}

/* =========================
   OPEN STATE → X
========================= */

.page_business .business-floating-nav-container:not(.is-closed) 
.business-floating-nav-toggle button span:nth-child(1) {
	transform:
		translate(-50%, -50%)
		rotate(45deg);
	margin-top: 0;
}

.page_business .business-floating-nav-container:not(.is-closed) 
.business-floating-nav-toggle button span:nth-child(2) {
	transform:
		translate(-50%, -50%)
		rotate(-45deg);
	margin-top: 0;
}

/* make both lines full width when X */
.page_business .business-floating-nav-container:not(.is-closed) 
.business-floating-nav-toggle button span::before {
	width: 1.1rem;
	left: 0;
}

.page_business .business-floating-nav-container:not(.is-closed) 
.business-floating-nav-toggle button span::after {
	width: 1.1rem;
	right: 0;
}
/* Nav list animation */
.page_business .business-floating-nav-list {
	transition: opacity .25s ease;
}

.page_business .business-floating-nav-container.is-closed .business-floating-nav-list {
	opacity: 0;
	pointer-events: none;
}

.page_business .business-floating-nav-list {
	list-style: none;
	margin: 2rem 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.page_business .business-floating-nav-item {
	display: flex;
	align-items: center;
	padding: 1rem 2rem;
	border-radius: 10rem;
	max-width: 23rem;
	width: 100%;
	cursor: pointer;
}

.page_business .business-floating-nav-item:hover {
	background-color: #fff;
}

.page_business .business-floating-nav-item:hover span {
	 color: #C4A15C;
}

.page_business .business-floating-nav-item span {
	display: flex;
	align-items: center;
	gap: .9rem;
	text-decoration: none;
	color: #fff;
	font-family: var(--secondary-font);
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 2.4rem;
	width: 100%;
	transition: color 0.2s ease-in, transform 0.2s ease-in;
}

.page_business .business-floating-nav-item span::before {
	content: "";
	display: block;
	width: 2rem;
	height: 2rem;
	flex-shrink: 0;
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/nav-arrow-hover.svg');
	background-size: cover;
	background-repeat: no-repeat;
	transition: background-image 0.2s ease-in;
}

.page_business .business-floating-nav-item:hover span::before {
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/nav-arrow.svg');
	width: 2rem;
    height: 2rem;
	border:1px solid #fff;
	border-radius:50%;
}

/* ========================================
   Materials Section (ビジネス専門教材)
   ======================================== */

.materials-intro {
	max-width: 98rem;
	margin: 0 auto 6rem;
	text-align: left;
}

.materials-intro p {
	font-size: 1.8rem;
	line-height: 1.8;
	color: #222;
	margin-bottom: 1rem;
}

.material-header {
	border-bottom: 0.2rem solid #c4a15c;
	display: inline-block;
	padding:2rem 0 1rem;
	margin-bottom: 3rem;
}

.material-title {
	font-size: 3rem;
	font-weight: 700;
	color: #c4a15c;
	margin: 0;
}

.material-description {
	max-width: 98rem;
	width: 100%;
	margin: 0 auto 4rem;
	text-align: left;
	line-height: 1.8;
}

.material-description p {
	font-size: 1.8rem;
	line-height: 1.8;
	color: #222;
}

.material-description strong {
	font-weight: 700;
}

/* News Cards Grid */

.news-cards-grid.is-pc{
	display: flex;
	justify-content: space-between;
	gap: 4rem;
  	max-width: 100%;
  	width: 100%;
  	margin: 0 auto 4.8rem;
}

.news-cards-grid.is-mobile{
	display: none;
}

.news-card {
	background: #fff;
	border-radius: 1rem;
	box-shadow: 0 0.3rem 1rem rgba(0, 0, 0, 0.25);
	max-width: 40rem;
	width: 100%;
	overflow: hidden;
}

.news-card-image {
	width: 100%;
	height: 20rem;
	overflow: hidden;
}

.news-card-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.news-card-content {
	padding: 2rem 2rem 2.7rem;
	text-align:left;
}

.news-card-title {
	font-size: 2rem;
	font-weight: 700;
	color: #556dac;
	line-height: 1.35;
	margin-bottom: 1.5rem;
	min-height: 4.8rem;
}

.news-card-category {
	border: 0.1rem solid #222;
	display: inline-block;
	padding: 0.5rem;
	font-size: 1.2rem;
	color: #222;
	margin-bottom: 1.5rem;
}

.news-card-meta {
	display: flex;
	align-items: center;
	gap: 1.5rem;
}

.news-card-levels {
	display: flex;
	align-items: center;
	gap: 0.2rem;
}

.level-label {
	font-size: 1.4rem;
	color: #222;
}

.level-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.2rem;
	height: 2.4rem;
	font-size: 1.4rem;
	font-weight: 700;
	color: #fff;
}
.news-card-likes {
	display: flex;
	align-items: center;
	gap: 0.3rem;
}

.page_business_materials .like-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.9rem;
	height: 1.6rem;
	font-size: 0;
	color: transparent;
}

.page_business_materials .like-icon::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/icon-heart-gold.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.like-count {
	font-size: 1.4rem;
	color: #222;
}

.page_business_materials .news-card-time{
	flex: 1;
	text-align: right;
	color: #888888;
	font-size: 1.4rem;
}

/* Business Cards Grid */
.business-cards-grid.is-pc {
	justify-content: space-between;
	gap: 4rem;
	display: grid;
	grid-template-columns: repeat(3, minmax(auto, 40rem));
	margin-bottom: 4rem;
}

.business-cards-grid.is-mobile{
	display: none;
}

.business-card {
	position: relative;
	max-width: 40rem;
	width: 100%;
	height: 40rem;
	border-radius: 1rem;
	overflow: hidden;
	box-shadow: 0 0.3rem 1rem rgba(0, 0, 0, 0.25);
}

.business-card-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.business-card-content {
	position: relative;
	z-index: 1;
	padding: 2rem;
	display: flex;
	flex-direction: column;
	height: 16.6rem;
	justify-content: center;
    align-items: center;    
	box-sizing: border-box;
}

.business-card-badge {
	background: #c4a15c;
	color: #fff;
	font-size: 1.6rem;
	font-weight: 700;
	padding: 0.5rem 1.5rem;
	border-radius: 10rem;
	display: inline-block;
	width: fit-content;
}

.business-card-title {
	font-size: 2.5rem;
	font-weight: 400;
	color: #fff;
	line-height: 1.1;
	text-align: center;
	margin: auto 0;
}

/* TOEIC Image */
.toeic-image {
	margin: 0 auto 4rem;
}

.toeic-image img {
	max-width: 100%;
	width: 100%;
	height: auto;
	object-fit: contain;
}

/* Material CTA Button */
.material-cta {
	padding: 1rem 0 0;
	margin-bottom: 8rem;
	max-width: 40rem;
    width: 100%;
}

.btn-material-detail {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #556dac;
	color: #fff;
	font-size: 2rem;
	font-weight: 700;
	border-radius: 1rem;
	text-decoration: none;
	width: 100%;
	transition: background 0.3s ease;
	box-sizing: border-box;
}

.btn-material-detail:hover {
	background: #3f5890;
}

.btn-material-detail::after {
	content: '';
	display: inline-block;
	width: 0.9rem;
	height: 1.6rem;
	background: url('https://assets.nativecamps.com/user/webroot/images/index_business/arrow.svg') no-repeat center;
	background-size: contain;
}

.material-section {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
	flex-direction: column;
	text-align:center;
}

/* ========================================
   Support Section (安心のサポート体制)
   ======================================== */

.support-image {
	margin: 6rem auto 3rem;
}

.support-image img {
	max-width: 100%;
	width: 128rem;
	height: auto;
}

.support-cycle-title {
	margin: 3rem auto 5rem;
}

.support-cycle-title h3 {
	font-size: 3rem;
	font-weight: 700;
	color: #c4a15c;
	line-height: 1.35;
}

/* Support Cards Grid */
.support-cards-grid {
	display: grid;
	justify-content: center;
	gap: 4.8rem;
	max-width: 100%;
	margin: 0 auto;
	grid-template-columns: repeat(2, minmax(auto, 46.6rem));
}

.support-card {
	background: #fff;
	border-radius: 1rem;
	box-shadow: 0 0.3rem 1rem rgba(0, 0, 0, 0.25);
	max-width: 50rem;
	width: 100%;
	overflow: hidden;
}

.support-card-accent {
	height: 2rem;
	display: flex;
	justify-content: center;
	align-items: flex-start;
	background: #fff;
	border-top-left-radius: 1rem;
	border-top-right-radius: 1rem;
}

.support-card-accent::after {
	content: '';
	display: block;
	width: 15rem;
	height: 0.4rem;
	background: #c4a15c;
}

.support-card-content {
	padding: 2rem 4rem 4rem;
	background: #fff;
	border-bottom-left-radius: 1rem;
	border-bottom-right-radius: 1rem;
}

.support-card-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 3rem;
}

.support-card-icon {
	background: #556dac;
	border-radius: 50%;
	width: 6.4rem;
	height: 6.4rem;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	position: relative;
}

.support-card-icon::before {
	content: '';
	width: 4rem;
	height: 4rem;
	display: block;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

/* Icon assignments for each card */
.support-card:nth-child(1) .support-card-icon::before {
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/icon_01.svg');
}

.support-card:nth-child(2) .support-card-icon::before {
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/icon_02.svg');
}

.support-card:nth-child(3) .support-card-icon::before {
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/icon_03.svg');
}

.support-card:nth-child(4) .support-card-icon::before {
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/icon_04.svg');
}

.support-card-header h4 {
	font-size: 2rem;
	font-weight: 700;
	color: #556dac;
	line-height: 1.35;
	margin: 0;
	flex: 1;
	padding-left: 2rem;
}

.support-card-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.support-card-list li {
	font-size: 1.8rem;
	line-height: 1.5;
	color: #222;
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	padding-left: 3rem;
	position: relative;
}

.support-card-list li::before {
	content: '';
	width: 2rem;
	height: 2rem;
	display: block;
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/icon_check.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	flex-shrink: 0;
}

/* ========================================
   Pricing Section (料金プラン)
   ======================================== */

.text-red {
	color: #f90000;
}

/* Pricing Plans Grid */
.pricing-plans-grid {
	display: flex;
	justify-content: space-between;
	gap: 2.4rem;
	max-width: 100%;
	margin: 0 auto 4.8rem;
}

/* Pricing Card Base */
.pricing-card {
	position: relative;
	background: #fff;
	border: 0.3rem solid;
	border-radius: 0;
	max-width: 62.8rem;
	width: calc(44% - 10px);
	display: flex;
	flex-direction: column;
	gap: 2rem;
	padding: 8.7rem 2.8rem 4rem;
	overflow: hidden;
	border-radius: 1rem;
}

.pricing-card-premium {
	border: 1px solid #ddd;
}

.pricing-card-family {
	border: 1px solid #ddd;
}

.pricing-card-option {
	border: 1px solid #ddd;
}

/* Card Header */
.pricing-card-header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	background: #00b199;
	padding: 2rem 0;
}

.pricing-card-family .pricing-card-header {
	background: #537cce;
}

.pricing-card-option .pricing-card-header {
	background: #f1890e;
}

.pricing-card-header h3 {
	font-family: var(--secondary-font);
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.35;
	color: #fff;
	text-align: center;
	margin: 0;
}

/* Pricing Description */
.pricing-description {
	font-family: var(--secondary-font);
	font-size: 1.6rem;
	line-height: 1.35;
	color: #222;
	text-align: center;
	margin: 0;
	min-height: 4.8rem;
}

/* Pricing Price */
.pricing-price {
	text-align: center;
	padding-bottom: 0.8rem;
}

.price-main {
	font-family: var(--secondary-font);
	font-weight: 700;
	line-height: 1.35;
	margin: 0 0 0.5rem 0;
}

.price-currency {
	font-size: 3rem;
	color: #222;
}

.price-amount {
	font-size: 5.6rem;
	color: #222;
}

.price-period {
	font-size: 3rem;
	color: #222;
}

.price-tax {
	font-family: var(--secondary-font);
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.35;
	margin: 0;
	color: #999;
}

.price-tax .price-tax-currency {
	font-size: 1.6rem;
}

.price-tax .price-tax-amount,
.price-tax .price-amount-tax {
	font-size: 2rem;
	font-weight: 700;
}

.price-tax .price-tax-period {
	font-size: 1.6rem;
}

/* Pricing Features */
.pricing-features {
	background: #F2F2F2;
	padding: 0.8rem 0;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.feature-text {
	font-family: var(--secondary-font);
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1;
	color: #222;
	text-align: center;
	margin: 0;
}

/* Pricing CTA */
.pricing-cta {
	display: flex;
	justify-content: center;
}

.btn-pricing {
	background: #fff;
	border: 0.3rem solid;
	border-radius: 1rem;
	font-family: var(--secondary-font);
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.35;
	text-align: center;
	display: inline-flex;
	align-items: center;
	gap: 6rem;
	position: relative;
	transition: all 0.3s ease;
	width: 15.2rem;
  	height: 5.6rem;
  	box-sizing: border-box;
  	text-align: center;
  	justify-content: center;
  	border-radius: 50rem;
}

.btn-pricing::after {
	content: '';
	width: 0.9rem;
	height: 1.6rem;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	right: 1.2rem;
	display: none;
}

.btn-pricing-premium {
	border-color: #092846;
  	color: #092846;
}

.btn-pricing-premium::after {
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/arrow-green.svg');
}

.btn-pricing-family {
	border-color: #092846;
  	color: #092846;
}

.btn-pricing-family::after {
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/arrow-blue.svg');
}

.btn-pricing-option {
	border-color: #092846;
  	color: #092846;
}

.btn-pricing-option::after {
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/arrow-orange.svg');
}

.btn-pricing:hover {
	opacity: 0.8;
}

/* Options Section */
.pricing-options {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 3.2rem;
	margin-bottom: 2.8rem;
}

.pricing-plus-icon {
	width: 3.5rem;
	height: 3.4rem;
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/plus-icon.svg');
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	filter: brightness(0) saturate(100%) invert(66%) sepia(0%) saturate(33%) hue-rotate(212deg) brightness(96%) contrast(98%);
}

.pricing-options-title {
	font-family: var(--secondary-font);
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1.35;
	color: #222;
	text-align: center;
	margin: 0;
}

/* Pricing Info Button */
.pricing-info-cta {
	margin-bottom: 6rem;
}

.pricing-info-cta .btn-pricing-info{
  	justify-content: center;
	margin: 0 auto;
}

.pricing-info-cta .btn-pricing-info::after{
	right: 2rem;
}

.btn-pricing-info::after {
	content: '';
	width: 0.9rem;
	height: 1.6rem;
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/arrow.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	right: 1.2rem;
}

.btn-pricing-info:hover {
	opacity: 0.9;
}

/* ========================================
   Success Stories Section (成功事例)
   ======================================== */

/* Category Heading */
.success-category {
	margin: 0 auto 3rem;
	text-align: center;
}

.success-category h3 {
	font-family: var(--secondary-font);
	font-size: 3rem;
	font-weight: 700;
	line-height: 1.35;
	color: var(--secColor);
	margin: 0;
}

/* Success Stories Grid */
.success-stories-grid {
	display: grid;
	justify-content: center;
	gap: 4.8rem;
	margin: 0 auto 6rem;
	padding-top: 1rem;
	grid-template-columns: repeat(2, minmax(auto, 61.6rem));
}

/* Success Story Card */
.success-story-card {
	max-width: 61.6rem;
	width: 100%;
	box-shadow: 0 0.3rem 1rem rgba(0, 0, 0, 0.25);
	border-radius: 1rem;
	overflow: hidden;
	background: #fff;
}

/* Story Image Wrapper */
.story-image-wrapper {
	position: relative;
	height: 32rem;
	overflow: hidden;
	border-radius: 1rem 1rem 0 0;
}

.story-image-wrapper img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 1rem 1rem 0 0;
}

/* Story Image Overlay */
.story-image-overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 1));
	padding: 5rem 3.2rem 2rem;
	display: flex;
	align-items: self-start;
	justify-content: flex-start;
}

.story-image-overlay h4 {
	font-family: var(--secondary-font);
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.35;
	color: #fff;
	margin: 0;
	width: 42rem;
}

/* Story Content */
.story-content {
	background: #fff;
	padding: 2.4rem 3.2rem 3.2rem;
	border-radius: 0 0 1rem 1rem;
}

.story-content p {
	font-family: var(--secondary-font);
	font-size: 1.8rem;
	line-height: 1.8;
	color: #222;
	margin: 0;
	max-width: 100%;
	width: 100%;
}

/* Success CTA */
.success-cta {
	margin-top: 6rem;
}


.btn-success::after {
	content: '';
	width: 0.9rem;
	height: 1.6rem;
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/arrow.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	right: 1.8rem;
}

.btn-success:hover {
	opacity: 0.9;
}

/* ========================================
   Q&A / FAQ Section
   ======================================== */

/* FAQ List */
.faq-list {
	max-width: 98rem;
    margin: 0 auto 6rem;
    display: flex;
    flex-direction: column;
    gap: 2.4rem;
    width: 100%;
}

/* FAQ Item */
.faq-item {
	background: rgba(255, 255, 255, 0.1);
	border: 0.1rem solid rgba(255, 255, 255, 0.5);
	transition: all 0.3s ease;
	max-width: 100%;
	width: 100%;
	box-sizing: border-box;
	overflow: hidden;
}

.faq-item:hover {
	background: rgba(255, 255, 255, 0.15);
}

/* FAQ Question */
.faq-question {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 3rem 4rem;
	cursor: pointer;
}

.faq-question p {
	font-family: var(--secondary-font);
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.35;
	color: #fff;
	margin: 0;
	flex: 1;
}

/* FAQ Arrow */
.faq-arrow {
	width: 2rem;
	height: 1.2rem;
	position: relative;
	flex-shrink: 0;
	margin-left: 2rem;
	transition: transform 0.3s ease;
}

.faq-arrow::before {
	content: '';
	width: 2.2rem;
	height: 2rem;
	display: block;
	background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/arrow-down.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

/* FAQ Answer - Hidden by default */
.faq-answer {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.4s ease;
}

.faq-answer-content {
	padding: 3rem 4rem;
}

.faq-answer-content p {
	font-family: var(--secondary-font);
	font-size: 1.8rem;
	line-height: 1.8;
	color: #fff;
	margin: 0 0 0 0;
	width: 100%;
}

/* FAQ Item Active State */

.faq-item.active .faq-arrow {
	transform: rotate(180deg);
}

.faq-item.active .faq-answer {
	max-height: 100rem;
	border-top: 0.1rem solid rgba(255, 255, 255, 0.5);
}

/* ========================================
   Blog Articles Section (ブログ記事)
   ======================================== */

/* Blog Articles Grid */
.blog-articles.is-pc {
	display: flex;
	flex-direction: column;
	gap: 4rem;
	max-width: 100%;
	margin: 0 auto;
}

.blog-articles.is-mobile{
	display: none;
}

.blog-row {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 4rem;
}

/* Blog Card */
.blog-card {
	background: #fff;
	border-radius: 1rem;
	box-shadow: 0 0.3rem 1rem rgba(0, 0, 0, 0.25);
	max-width: 40rem;
    width: 100%;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}

.blog-image {
	width: 100%;
	height: 20rem;
	overflow: hidden;
	border-radius: 1rem 1rem 0 0;
}

.blog-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 1rem 1rem 0 0;
}

.blog-content {
	padding: 2rem 2.5rem 3rem;
	display: flex;
	flex-direction: column;
}

.blog-title {
	font-family: var(--secondary-font);
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.35;
	color: #556dac;
	margin: 0 0 6.8rem;
	width: 100%;
	display: block;
	text-decoration: none;
	cursor: pointer;
	transition: opacity 0.3s ease;
}

.blog-title:hover {
	opacity: 0.8;
}

.blog-title p {
	display: inline;
	margin: 0;
	line-height: 1.35;
}

/* Blog Tags */
.blog-tags {
	display: flex;
	gap: 1.2rem;
	flex-wrap: wrap;
}

.blog-tag {
	border: 0.1rem solid #222;
	padding: 0.5rem;
	font-family: var(--secondary-font);
	font-size: 1.2rem;
	line-height: 1.35;
	color: #222;
	text-align: center;
	white-space: nowrap;
}

.level-1  { background-color: #9CCC65; } 
.level-2  { background-color: #C5DB5A; } 
.level-3  { background-color: #E2E658; }
.level-4  { background-color: #F8EE58; }
.level-5  { background-color: #FFE144; }
.level-6  { background-color: #FFCC29; }
.level-7  { background-color: #FFBA26; }
.level-8  { background-color: #F8A83B; }
.level-9  { background-color: #F5913D; }
.level-10 { background-color: #F57E3D; }

/* ========================================
   NJ-95169: Responsive Design & Hamburger Menu
   ======================================== */

/* --- Fade-in animation --- */

/* --- SP Nav Carousel (hidden on PC) --- */
.sp-nav-carousel {
	display: none;
}

/* --- Hamburger menu (hidden on PC) --- */
.hamburger-menu-container {
	display: none;
}

.w-98{
	width:98rem;
	margin-inline: auto;
}

/* NJ-91359 end */
@media (max-width: 1139px){

	.w-98{
		width:100%;
	}

	.page_business{
		background-position: unset;
    	background-size: unset;
	}

	.page_business-info-section, .page_business_reason, .page_business_section ,.page_business_comparison, .page_business_teachers, .page_business_materials, .page_business_support,.page_business_pricing, .page_business_blog, .page_business_success{
		padding: 8rem 4.8rem;;
	}

	.page_business_convenience, .page_business_callan, .page_business_learning, .page_business_faq{
		padding: 8rem 4.8rem;;
	}

	.page_business .wrapper{
		max-width: 98rem;
	}

	.header_wrap .business_sp--header {
		display:block;
	}

	.header_wrap .business_sp--header .global_menu{
		max-width: 100%;
	}

	.header_wrap .business_pc--header {
		display:none;
	}

	.page_business .business-floating-nav-container{
		display: none;
	}

	.business_logo{
		margin-bottom: 0;
	}

	.hero-heading{
		margin-bottom: 3.2rem;
	}

	.hero-heading em{
		font-size: 3.6rem;
	}

	.cta_trial--container{
		max-width: 40rem;
    	min-width: 33.6rem;
	}

	.hero-right-img{
		width: 100%;
		height: -webkit-fill-available;
	}

	.stats-note.text-center{
		font-size: 1.2rem;
	}

	.stats-section{
 		padding: 0 0 3.2rem;
	}

	.stats-note.text-center {
		font-size: 1.2rem;
	}

	.trial-number {
    	font-size: 2.2rem;
	}

	.page_business_teachers .teacher-btn{
		height: 5.6rem;
		line-height: 5.6rem;
	}

	.tagline-section{
		padding: 0;
	}

	.hero-lead {
    	font-size: 1.6rem;
		margin: 0 0 1rem;
	}

	.hero-heading {
    	font-size: 2.8rem;
	}

	.page_business .hero-section .left_container{
		display: none;
	}

	.hero_content.bnr_con{
		padding: 4.8rem 0 8rem;
		gap: 2.4rem;
	}

	.page_business .left_info_text_content{
		width: 43%;
        max-width: 40rem;
        padding: 0 2.4rem;
        margin: 0 auto;
	}

	.page_business .right_container{
		width: 48%;
        max-width: 55.3rem;
    	height: auto;
	}

	.page_business .btn_page_business{
		max-width: 100%;
		width: 100%;
    	line-height: 0;
		font-size: 1.6rem;
		height: 5.6rem;
	}

	/* Info Section */
	.info-section{
		padding: 0 0 8rem;
	}

	.page_business_header {
	    gap: 1rem;
		margin-bottom: 3.2rem;
	}

	.page_business_header h2{
		font-size: 2.2rem;
	}

	.tagline-text {
		flex: unset;
    	max-width: 54rem;
    	width: 56%;
	}

	.tagline-text p {
		font-size: 1.4rem;
	}

	.tagline-fig{
		width: 48%;
	}

	.corp-heading{
		font-size: 1.8rem;
	}

	.corp-desc{
		font-size: 1.4rem;
		margin-bottom: 3.2rem;
	}

	.tagline-text h3 {
		font-size: 1.8rem;
	}

	.page_business_teachers .card-content{
		padding: 2rem;
		gap: 2rem;
	}

	.page_business_teachers .teacher-photo img {
    	width: 10rem;
    	height: 10rem;
	}

	.page_business_teachers .teacher-specialty {
    	font-size: 1.6rem;
	}

	.page_business_teachers .teacher-name {
    	font-size: 2.2rem;
	}

	.page_business_teachers .teacher-description p {
    	text-align: center;
		font-size: 1.4rem;
	}

	.page_business_teachers .teacher-stats {
    	justify-content: center;
    	align-items: center;
		gap: 1.2rem;
	}

	.page_business_teachers .stat-badge {
    	font-size: 1.4rem;
	}

	.page_business_teachers .teacher-cta {
	    padding-top: 0;
	}

	.page_business_teachers .teacher-cta .teacher-btn {
	    font-size: 1.6rem;
	}

	.news-card{
		max-width: 30rem;
	}

	.news-card-content{
		padding-bottom: 3rem;
	}

	.page_business_materials,
	.page_business_blog{
		overflow: hidden;
	}

	.material-header {
   	 	padding: 6.4rem 0 1rem;
	}

	.news-cards-grid.is-pc{
		display: none;
	}
	 /* SP CAROUSEL */
	 .news-cards-grid.is-mobile{
		display: unset;
		max-width: 98rem;
		width: 100%;
	 }

	 .news-cards-grid.is-mobile .new-cards-slick .slick-list{
		padding: 2rem 0.2rem 2.2rem;
	 }

	 .news-cards-grid.is-mobile .new-cards-slick .news-card{
		max-width: 31.8rem;
		margin-right: 1.2rem;
	 }
	 .news-cards-grid.is-mobile .new-cards-slick .news-card:last-child{
		margin-right:0;
	 }

	.news-card-title{
		font-size: 1.8rem;
	}

	.business-cards-grid.is-pc{
		display: none;
	}

	.business-cards-grid.is-mobile{
		display: unset;
		max-width: 98rem;
		width: 100%;
	}

	.business-cards-grid.is-mobile .business-cards-grid-slick .slick-slide{
		height: 30rem;
		margin-right:1.2rem;
	}

	.business-card-badge{
		font-size: 1.5rem;
	}

	.business-card-title{
		font-size: 2.5rem;
	}

	.business-card{
		max-width: 30rem;
	}

	.materials-intro p{
		font-size: 1.4rem;
	}

	.material-title{
		font-size: 1.8rem;
	}

	.material-description{
		margin: 0 auto 3.2rem;
	}

	.material-description p {
 	   font-size: 1.4rem;
	}

	.material-cta {
		max-width: 32rem;
		padding: 3.2rem 0 0;
	}

	.btn-material-detail{
		font-size: 1.6rem;
	}

	.company_list{
		max-width: 100%;
	}

	.comparison-table-container{
		overflow: auto;
    	max-width: 98rem;
	}

	.comparison-table {
    	overflow: auto;
    	table-layout: fixed;
	}

	.comparison-table thead th:first-child {
    	width: 24.1rem;
	}

	.comparison-table thead th:nth-child(2) {
    	width: 24.1rem;
	}

	.comparison-table thead th:nth-child(3), .comparison-table thead th:nth-child(4) {
    	width: 24.1rem;
	}

	.comparison-table thead th {
    	font-size: 1.6rem;
	}

	.comparison-table tbody th {
	    font-size: 1.6rem;
	}

	.comparison-table tbody td .primary-text {
    	font-size: 1.6rem;
	}

	.comparison-table tbody td .secondary-text {
    	font-size: 1.6rem;
	}

	.page_business_teachers .teachers-intro{
		 font-size: 1.4rem;
	}

	.page_business-points p{
		font-size: 1.4rem;
	}

	.page_business h3.section-subtitle{
		font-size: 1.8rem;
		padding: 2rem 0 1.6rem;
  	}

	.section-subtitle{
		font-size: 1.8rem;
	}

	.success-category h3{
		font-size: 1.8rem;
	}

	.page_business-points{
		max-width: 100%;
	}

	.page_business_teachers .teachers-grid {
		grid-template-columns: repeat(2, minmax(auto, 47.8rem));
        margin-bottom: 3.2rem;
		gap:2.4rem;
	}

	.page_business_teachers .more-teachers-cta{
		max-width: 32rem;
		margin-bottom: 0;
	}

	.page_business_teachers .btn-more-teachers{
		font-size: 1.6rem;
		height:5.6rem;
	}

	.trial-cta {
	    padding-top: 4.8rem;
		max-width: 40rem;
        width: 100%;
        margin: 0 auto;
	}

	.story-content {
    	padding: 2rem 2.4rem 2rem;
	}

	.story-content p {
		font-size: 1.4rem;
    	max-width: 100%;
    	width: 100%;
		min-height: 12.5rem;
	}

	.story-image-wrapper{
		height: 24rem;
	}

	.business-cards-grid{
		grid-template-columns: repeat(2, minmax(auto, 30rem));
	}

	.support-image img{
		max-width: 100%;
		width: 100%;
	}

	.support-cycle-title h3{
		font-size: 1.8rem;
	}

	.support-cards-grid{
		grid-template-columns: repeat(2, minmax(34rem, 50rem));
        gap: 2.4rem;
	}

	.story-image-overlay{
			padding: 5rem 2.4rem 2rem;
	}

	.story-image-overlay h4{
		font-size: 2rem;
	}

	.toeic-image{
		margin: 0 auto 3.2rem;
	}

	.material-cta{
		margin-bottom: 0;
	}

	.satisfaction-wrap{
		margin: 3.2rem 0 0;
	}

	.satisfaction-fig{
		max-width: 33.2rem;
	}

	.satisfaction-heading {
    	font-size: 1.8rem;
	}

	.satisfaction-text p {
		font-size: 1.4rem;
	}

	.pricing-card {
		max-width: 47.8rem;
    	width: 50%;
		padding: 12rem 2.8rem 4rem;
	}

	.pricing-card-header {
		padding: 2.4rem 0;
	}

	.pricing-description {
	    font-size: 1.4rem;
	}

	.pricing-plans-grid {
		gap: 2.4rem;
	}

	.pricing-options-title{
		font-size: 2.4rem;
	}

	.feature-text {
		font-size: 1.4rem;
	}

	.page_business_teachers .teacher-btn, .page_business_callan .btn-callan, .page_business_learning .btn-learning, .btn-material-detail, .btn-pricing-info, .btn-success{
		width: 100%;
		max-width: 32rem;
		margin: 0 auto;
	}
	
	.pricing-info-cta{
		margin-bottom: 0;
	}

	.support-card-content{
		padding: 2rem 3.2rem 3.2rem;
	}

	.support-card-header h4{
		font-size: 1.8rem;
	}

	.support-card-list li{
		font-size: 1.4rem;
	}

	.materials-intro {
		margin-bottom: 2.6rem;
	}

	 .page_business_header{
		margin-bottom: 4.8rem;
	 }

	.materials-intro p {
    	margin-bottom: 0;
    }

	.faq-question{
		padding: 3rem 2rem;
	}

	.faq-answer-content {
    	padding: 1.6rem 2rem;
	}

	.faq-answer-content p {
    	width: 100%;
	}

	.blog-articles.is-pc {
		display: none;
	}

	.blog-articles.is-mobile {
		display: unset;
		max-width: 98rem;
		width: 100%;
	}
	
	.blog-articles.is-mobile .slick-slide{
		height: 40rem;
		margin-right:1.2rem;
	}

	.blog-articles.is-mobile .slick-list{
		padding: 2rem 0.2rem;
	}

	.blog-articles.is-mobile .blog-card{
		max-width: 30rem;
	}

	.blog-row-slick .blog-card:not([data-slick-index="0"]) .blog-content .blog-title {
		margin-bottom: 3.6rem;
	}

	.success-stories-grid{
		grid-template-columns: repeat(2, minmax(34rem, 47.8rem));
		gap: 2.4rem;
	}

	.success-story-card{
		width: 100%;
	}

	.faq-question {
    	padding: 1.6rem 2rem;
	}

	.faq-question p {
	    font-size: 1.6rem;
	}

	.faq-answer-content p {
	    font-size: 1.4rem;
	}

	#pcFooter{
		display: none;
	}

	#spFooter{
		display: block;
	}

	.news-cards-grid.is-mobile .new-cards-slick .slick-list,
	.business-cards-grid.is-mobile .business-cards-grid-slick .slick-list,
	.blog-articles.is-mobile .slick-list{
		overflow: visible;
	}

	.news-cards-grid.is-mobile .new-cards-slick .slick-prev, .slick-next,
	.business-cards-grid.is-mobile .business-cards-grid-slick .slick-prev, .slick-next{
		visibility: hidden;
	}
}

@media (max-width: 1024px){
	.comparison-table thead th:first-child, .comparison-table thead th:nth-child(2), .comparison-table thead th:nth-child(3), .comparison-table thead th:nth-child(4) {
    	width: 18.6rem;
	}
}

@media (max-width: 799px){
	.w-98{
		max-width:64rem;
		width:100%;
	}

	.page_business{
		background: unset;
		position: relative;
		position: relative;
  		overflow: hidden;
  		width: 100%;
  		min-height: 100vh;
		z-index: 1;
	}

	.page_business::before {
		content: "";
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-image: url('https://assets.nativecamps.com/user/webroot/images/index_business/main_bg.webp');
		background-size: cover;
		background-position: center;
		will-change: transform; 
		z-index: -1;
	}

	.page_business .wrapper{	
		max-width: 64rem;
	}

	.page_business-info-section,.page_business_reason, .page_business_comparison, .page_business_materials, .page_business_pricing, .page_business_blog,.page_business_convenience, .page_business_callan, .page_business_learning, .page_business_faq , .page_business_teachers, .page_business_support, .page_business_success{
		padding: 6.4rem 2.4rem;
	}

	.hero_content.bnr_con {
        padding: 4.8rem 0 6.4rem;
        flex-direction: column;
		gap: 3.2rem;
    }

	.hero-heading em{
		font-size: 3.6rem;
	}

	.hero-right-img {
		object-fit: cover;
	}

	.page_business .left_info_text_content {
        width: 100%;
        max-width: 100%;
		margin: 0;
		padding: 0;
    }

	.cta_trial--container{
		width: 100%;
        max-width: clamp(320px, calc(320px + 80 * ((100vw - 375px) / 424)), 400px);
	}

	.business_logo{
		max-width: 32rem;
	}

	.success-stories-grid{
		place-items: center;
		grid-template-columns: 1fr;
	}


	.page_business .btn_page_business{
		max-width: 100%;
	}

	 .page_business .right_container {
        height: auto;
		width: 100%;
        max-width: 100%;
        margin: 0 0 0 auto;
        padding-left: 2.4rem;
	 }

	.page_business .wrapper {
        flex-direction: column;
    }

	.tagline-inner{
		flex-direction: column;
	}

	.tagline-text {
		max-width: 64rem;
        width: 100%;
	}

	.tagline-text h3{
		font-size: 1.8rem;
	}

	 .tagline-fig {
        width: 100%;
    }

	.tagline-text p {
		font-size: 1.4rem;
	}

	.corp-heading {
	    font-size: 1.8rem;
	}

	.corp-desc{
		font-size: 1.4rem;
	}

	.corp-section ul.corporate_case_items{
		grid-template-columns: repeat(1, 1fr);
		row-gap: 2.4rem;
	}
	.corp-section ul.corporate_case_items li{
		font-size: 1.6rem;
	}

	.satisfaction-wrap{
		margin: 3.2rem 0 4rem;
    	flex-direction: column;
	}

	.satisfaction-text p {
    	font-size: 1.4rem;
	}

	.pricing-card{
		width: calc(100% - 40px);
	}

	.page_business_teachers .teachers-grid {
	    grid-template-columns: repeat(1, minmax(auto, 40rem));
	}

	.page_business_teachers .more-teachers-cta{
		margin-bottom:4.8rem;
	}

	.page_business_teachers .btn-more-teachers{
		height: 5.6rem;
	}

	.material-section{
		padding-top: 6.4rem;
	}

	.material-section::first-child{
		padding-top: 0;
	}

	.trial-cta{
		margin: 4.8rem auto 0;
		padding-top: 0;
	}

	.page_business_callan .btn-callan, .page_business_learning .btn-learning, .btn-material-detail {
	    height: 5.6rem;
	}

	.page_business h3.section-subtitle {
    	font-size: 1.8rem;
	}

	.page_business-points p {
    	font-size: 1.4rem;
	}

	.materials-intro {
		 margin: 0 auto 4.8rem;
	}

	.material-header {
	    padding: 0 0 1rem;
	}

	.materials-intro p {
    	font-size: 1.4rem;
    	line-height: 1.8rem;
	}

	.news-card {
        max-width: 40rem;
    }

	.comparison-table-container {
        max-width: 64rem;
    }

	.comparison-table thead th:first-child {
    	width: 18.6rem;
	}

	.comparison-table thead th:nth-child(2) {
    	width: 18.6rem;
	}

	.comparison-table thead th:nth-child(3), .comparison-table thead th:nth-child(4) {
    	width: 18.6rem;
	}

	.business-cards-grid {
        grid-template-columns: repeat(1, minmax(auto, 30rem));
    }

	.support-cards-grid {
		place-items: center;
		grid-template-columns: 1fr;
	}

	.pricing-plans-grid{
		justify-content: center;
		flex-direction: column;
    	align-items: center;
	}

	.success-category h3{
		font-size: 1.8rem;
	}


	.btn-learning{
		font-weight:bold;
	}

	.news-cards-grid.is-mobile .new-cards-slick .news-card{
		max-width: 30rem;
	}
}

/* Base Animation */
.fade-in, .fade-in-up, .fade-in-left, .fade-in-right, .fade-in-down{
    opacity:0;
    transition: opacity .6s ease-out, transform .6s ease-out;
    will-change:transform, opacity;
}

.fade-in{
    transform:none;
}

.fade-in-up{
    transform:translateY(40px);
}

.fade-in-left{
    transform:translateX(-40px);
}

.fade-in-right{
    transform:translateX(40px);
}

.fade-in-down{
    transform:translateY(-40px);
}

.business-floating-nav-container{
	transition:transform .3s ease, opacity .3s ease;
}

.business-floating-nav-container.is-closed .business-floating-nav-list{
	display:none;
}