/* テンシルの「20代向け転職エージェント比較」をそのまま取り込んだページ用（/agents/tenshoku/）。.rt-page の中だけに効かせる */
.rt-page{--route-green: #121212;
	--route-green-light: #121212;
	--paper: #f4f4f4;
	--paper-alt: #fff4cc;
	--ink: #121212;
	--muted: #555;
	--amber: #FABE00;
	--amber-deep: #8a6400;
	--line: #e3e3e3;
	--white: #fff;
	--shadow: 0 10px 30px rgba(0, 0, 0, 0.14);
	--font-display: "Noto Sans JP", sans-serif;}
.rt-page{background: var(--paper);
	color: var(--ink);
	font-family: var(--font-display);
	line-height: 1.8;
	-webkit-font-smoothing: antialiased;}
.rt-page{width: min(100%, 1100px);
	margin: 0 auto;
	background: var(--white);
	}
.rt-page .rt-kv{display: block;
	line-height: 0;}
.rt-page .rt-kv img{width: 100%;
	height: auto;}
.rt-page .rt-topbar{padding: 7px 16px;
	background: var(--ink);
	color: #cddbd2;
	text-align: center;
	font-size: 12px;
	letter-spacing: 0.02em;}
.rt-page .rt-header{display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 14px 22px;
	border-bottom: 3px solid var(--route-green);
	position: sticky;
	top: 0;
	background: rgba(255, 255, 255, 0.97);
	backdrop-filter: blur(3px);
	z-index: 10;}
.rt-page .rt-brand{display: flex;
	align-items: center;
	text-decoration: none;}
.rt-page .rt-brand-logo{height: 34px;
	width: auto;}
.rt-page .rt-nav{display: flex;
	align-items: center;
	gap: 22px;}
.rt-page .rt-nav a{color: var(--ink);
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	transition: color 0.2s ease;}
.rt-page .rt-nav a:hover{color: var(--route-green);}
.rt-page .rt-nav-toggle{display: none;}
.rt-page .rt-section[id],
.rt-page #ranking,
.rt-page .rt-card[id]{scroll-margin-top: 72px;}
.rt-page .rt-crumb{padding: 9px 22px;
	font-size: 11px;
	color: var(--muted);
	background: var(--paper);}
.rt-page .rt-hero{padding: 40px 22px 30px;
	text-align: center;
	background: var(--paper-alt);}
.rt-page .rt-route-tag{display: inline-block;
	padding: 5px 12px;
	background: var(--route-green);
	color: var(--white);
	border-radius: 6px;
	font-family: var(--font-display);
	letter-spacing: 0.12em;
	font-size: 11px;
	font-weight: 700;
	margin-bottom: 14px;}
.rt-page .rt-eyebrow{display: block;
	margin-bottom: 10px;
	color: var(--route-green-light);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.06em;}
.rt-page .rt-h1{font-size: clamp(26px, 5vw, 44px);
	line-height: 1.4;
	margin: 0;
	color: var(--ink);
	font-weight: 900;
	letter-spacing: 0.01em;}
.rt-page .rt-h1 em{font-style: normal;
	color: var(--amber);}
.rt-page .rt-lead{max-width: 680px;
	margin: 18px auto 0;
	color: var(--muted);
	font-size: 15px;
	font-weight: 500;}
.rt-page .rt-trust{display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 8px;
	margin: 22px 0 0;}
.rt-page .rt-trust li{padding: 6px 13px;
	border: 1px solid var(--route-green);
	border-radius: 999px;
	background: var(--white);
	color: var(--route-green);
	font-size: 12px;
	font-weight: 700;}
.rt-page .rt-roadline{height: 1px;
	background: var(--line);}
.rt-page main{padding-bottom: 90px;}
.rt-page main.rt-main--flush{padding-bottom: 0;}
.rt-page .rt-section{padding: 46px 22px;}
.rt-page .rt-section--alt{background: var(--paper-alt);}
.rt-page .rt-section-head{text-align: center;
	margin-bottom: 26px;}
.rt-page .rt-kicker{display: inline-block;
	color: var(--route-green-light);
	font-weight: 800;
	font-size: 12px;
	letter-spacing: 0.14em;
	font-family: var(--font-display);}
.rt-page .rt-section-head h2{font-size: clamp(22px, 4vw, 30px);
	line-height: 1.5;
	color: var(--ink);
	margin: 8px 0 8px;
	font-weight: 900;}
.rt-page .rt-section-head p{margin: 0;
	color: var(--muted);
	font-size: 14px;}
.rt-page .rt-tabs{max-width: 900px;
	margin: auto;}
.rt-page .rt-tab-input{position: absolute;
	opacity: 0;
	pointer-events: none;}
.rt-page .rt-tab-list{display: flex;
	gap: 8px;
	justify-content: center;
	margin-bottom: 20px;}
.rt-page .rt-tab-label{padding: 10px 22px;
	border-radius: 999px;
	border: 1px solid var(--line);
	background: var(--white);
	color: var(--muted);
	font-weight: 800;
	font-size: 13px;
	cursor: pointer;}
.rt-page .rt-tab-panel{display: none;}
.rt-page #tab-visual:checked ~ #panel-visual,
.rt-page #tab-table:checked ~ #panel-table{display: block;}
.rt-page #tab-visual:checked ~ .rt-tab-list label[for="tab-visual"],
.rt-page #tab-table:checked ~ .rt-tab-list label[for="tab-table"]{background: var(--route-green);
	border-color: var(--route-green);
	color: var(--white);}
.rt-page .rt-cmp-table{width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
	font-size: 13px;
	border: 1px solid var(--line);
	border-radius: 12px;
	overflow: hidden;
	background: var(--white);
	box-shadow: var(--shadow);}
.rt-page .rt-cmp-table th,
.rt-page .rt-cmp-table td{padding: 10px 5px;
	text-align: center;
	vertical-align: middle;
	border-bottom: 1px solid var(--line);}
.rt-page .rt-cmp-table thead th{background: var(--paper-alt);
	color: var(--route-green-light);
	font-size: 12px;
	font-weight: 800;}
.rt-page .rt-cmp-table tbody tr:last-child td{border-bottom: 0;}
.rt-page .rt-cmp-brand{padding-left: 6px;}
.rt-page .rt-cmp-logo{display: block;
	width: 100%;
	object-fit: contain;
	object-position: center;
	margin: 0 auto -6px;}
.rt-page .rt-cmp-brand span{display: block;
	text-align: center;
	font-weight: 800;
	color: var(--ink);
	font-size: 12px;
	line-height: 1.3;}
.rt-page .rt-cmp-score{white-space: nowrap;}
.rt-page .rt-cmp-score b{display: block;
	color: var(--route-green);
	font-size: 16px;}
.rt-page .rt-stars{display: block;
	color: var(--amber-deep);
	font-size: 12px;
	letter-spacing: 0.5px;}
.rt-page .rt-cmp-tags-cell{padding: 0;}
.rt-page .rt-cmp-tags{display: flex;
	flex-wrap: wrap;
	align-content: flex-start;
	justify-content: center;
	gap: 5px;
	padding: 10px 4px;
	max-height: 78px;
	overflow: hidden;}
.rt-page .rt-cmp-tags .rt-tag{font-size: 11px;
	padding: 3px 7px;}
.rt-page .rt-cmp-table .rt-mini-btn{padding: 8px 10px;
	font-size: 13px;}
.rt-page .rt-reviews{margin: 0 20px 18px;
	padding: 16px;
	background: var(--paper-alt);
	border-radius: 10px;
	display: grid;
	gap: 12px;}
.rt-page .rt-reviews-title{margin: 0;
	font-size: 12px;
	font-weight: 800;
	color: var(--route-green-light);}
.rt-page .rt-review{display: flex;
	gap: 10px;}
.rt-page .rt-review-avatar{position: relative;
	flex: none;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: var(--white);
	border: 1px solid var(--line);
	overflow: hidden;
	font-size: 15px;}
.rt-page .rt-review-avatar img{position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;}
.rt-page .rt-review-body p{margin: 4px 0 0;
	font-size: 12px;
	color: var(--muted);}
.rt-page .rt-review-head{display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;}
.rt-page .rt-review-persona{font-size: 12px;
	font-weight: 800;
	color: var(--ink);}
.rt-page .rt-review-stars{font-size: 11px;
	color: var(--amber-deep);
	letter-spacing: 1px;}
.rt-page .rt-review-stars b{margin-left: 4px;
	color: var(--muted);
	font-weight: 700;}
.rt-page .rt-sign--sm{min-height: auto;
	width: fit-content;
	padding: 4px 10px;
	border-radius: 999px;
	display: inline-flex;
	align-items: center;
	gap: 5px;}
.rt-page .rt-sign--sm small{font-size: 9px;}
.rt-page .rt-sign--sm span{font-size: 15px;}
.rt-page .rt-compare-wrap{overflow: auto;
	border: 1px solid var(--line);
	border-radius: 12px;
	background: var(--white);
	box-shadow: var(--shadow);}
.rt-page .rt-compare-table{border-collapse: collapse;
	width: 100%;
	min-width: 700px;
	font-size: 13px;}
.rt-page .rt-compare-table th,
.rt-page .rt-compare-table td{padding: 16px 14px;
	text-align: left;
	border-bottom: 1px solid var(--line);
	vertical-align: middle;}
.rt-page .rt-compare-table th{background: var(--paper-alt);
	color: var(--route-green-light);
	font-size: 12px;
	white-space: nowrap;
	font-weight: 800;}
.rt-page .rt-compare-table tr:last-child td{border-bottom: 0;}
.rt-page .rank-sign{display: inline-grid;
	place-items: center;
	width: 28px;
	height: 28px;
	border-radius: 6px;
	background: var(--route-green);
	color: var(--white);
	font-weight: 900;
	font-family: var(--font-display);
	margin-right: 8px;}
.rt-page .rt-compare-table tr:first-child .rank-sign{background: var(--amber);
	color: var(--ink);}
.rt-page .rt-mini-btn{display: inline-block;
	padding: 8px 14px;
	border-radius: 6px;
	background: var(--amber);
	color: var(--white);
	text-decoration: none;
	font-weight: 800;
	white-space: nowrap;
	font-size: 12px;}
.rt-page .rt-scroll-hint{display: none;
	margin: 8px 0 0;
	text-align: right;
	color: var(--muted);
	font-size: 11px;}
.rt-page .rt-ranking{display: grid;
	gap: 24px;
	max-width: 860px;
	margin: auto;}
.rt-page .rt-card{border: 1px solid var(--line);
	border-radius: 16px;
	background: var(--white);
	box-shadow: var(--shadow);
	overflow: hidden;}
.rt-page .rt-card-top{display: grid;
	grid-template-columns: 88px 1fr;
	gap: 16px;
	padding: 20px;
	border-bottom: 1px solid var(--line);}
.rt-page .rt-card-top--noSign{grid-template-columns: 1fr;}
.rt-page .rt-sign{border-radius: 12px;
	background: var(--route-green);
	color: var(--white);
	display: grid;
	place-items: center;
	text-align: center;
	min-height: 88px;
	font-weight: 900;
	line-height: 1.1;}
.rt-page .rt-sign--gold{background: var(--amber);
	color: var(--ink);}
.rt-page .rt-sign--medal{background: transparent;
	min-height: auto;}
.rt-page .rt-sign--medal img{width: 72px;
	height: 72px;
	object-fit: contain;}
.rt-page .rt-sign small{display: block;
	font-size: 11px;
	letter-spacing: 0.1em;
	font-family: var(--font-display);}
.rt-page .rt-sign span{font-size: 34px;
	font-family: var(--font-display);}
.rt-page .rt-card-title{display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	flex-wrap: wrap;}
.rt-page .rt-card-title h3{font-size: 23px;
	color: var(--ink);
	margin: 0;
	font-weight: 900;}
.rt-page .rt-pr{font-size: 10px;
	border: 1px solid var(--line);
	border-radius: 4px;
	padding: 2px 6px;
	color: var(--muted);}
.rt-page .rt-catch{margin: 8px 0 0;
	font-weight: 800;
	color: var(--route-green-light);}
.rt-page .rt-card-body{display: grid;
	grid-template-columns: 1.1fr 0.9fr;
	gap: 20px;
	padding: 20px;}
.rt-page .rt-banner{display: block;
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid var(--line);
	background: var(--paper-alt);
	transition: opacity 0.2s ease;}
.rt-page .rt-banner:hover{opacity: 0.85;}
.rt-page .rt-banner img{width: 100%;
	height: 100%;
	object-fit: cover;}
.rt-page .rt-point-title{font-size: 13px;
	color: var(--amber-deep);
	font-weight: 900;
	margin: 0 0 8px;}
.rt-page .rt-points{margin: 0;
	padding-left: 1.2em;
	font-size: 14px;
	list-style: disc;}
.rt-page .rt-points li + li{margin-top: 6px;}
.rt-page .rt-tags{display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 14px;}
.rt-page .rt-tag{font-size: 11px;
	font-weight: 700;
	background: var(--paper-alt);
	color: var(--route-green-light);
	border-radius: 5px;
	padding: 4px 8px;}
.rt-page .rt-editor{margin: 0 20px 18px;
	padding: 14px;
	background: var(--paper-alt);
	border-left: 4px solid var(--amber);
	font-size: 13px;}
.rt-page .rt-editor strong{color: var(--route-green);}
.rt-page .rt-cta-area{padding: 0 20px 20px;
	text-align: center;}
.rt-page .rt-cta{display: block;
	width: 100%;
	padding: 16px 18px;
	border-radius: 9px;
	background: var(--amber);
	color: var(--white);
	text-decoration: none;
	font-weight: 900;
	box-shadow: 0 4px 0 var(--amber-deep);}
.rt-page .rt-cta:hover{filter: brightness(0.97);}
.rt-page .rt-cta-note{margin: 9px 0 0;
	font-size: 11px;
	color: var(--muted);}
.rt-page .rt-method{max-width: 860px;
	margin: 18px auto 0;
	padding: 16px;
	border: 1px solid var(--line);
	border-radius: 10px;
	background: var(--white);
	font-size: 12px;
	color: var(--muted);}
.rt-page .rt-method summary{font-weight: 800;
	color: var(--route-green);
	cursor: pointer;}
.rt-page .rt-cards{display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px;
	max-width: 860px;
	margin: auto;}
.rt-page .rt-info-card{background: var(--white);
	border: 1px solid var(--line);
	border-radius: 12px;
	padding: 20px;}
.rt-page .rt-info-img{display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: contain;
	margin: -20px -20px 10px;
	border-radius: 12px 12px 0 0;
	width: calc(100% + 40px);
	max-width: calc(100% + 40px);}
.rt-page .rt-num{font-weight: 900;
	color: var(--amber-deep);
	font-size: 12px;
	font-family: var(--font-display);
	letter-spacing: 0.06em;}
.rt-page .rt-info-card h3{font-size: 16px;
	color: var(--ink);
	line-height: 1.5;
	margin: 6px 0 6px;
	font-weight: 800;}
.rt-page .rt-info-card p{font-size: 13px;
	color: var(--muted);
	margin: 0;}
.rt-page .rt-flow{display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
	max-width: 860px;
	margin: auto;}
.rt-page .rt-step{text-align: center;
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 12px;
	padding: 18px 10px;
	position: relative;}
.rt-page .rt-step-icon{display: block;
	width: 96px;
	height: 96px;
	object-fit: contain;
	object-position: center;
	margin: 0 auto 10px;
	border-radius: 50%;
	background: var(--paper-alt);}
.rt-page .rt-step b{display: block;
	color: var(--amber-deep);
	font-size: 12px;
	font-family: var(--font-display);}
.rt-page .rt-step strong{display: block;
	color: var(--ink);
	margin: 7px 0;
	font-size: 14px;
	font-weight: 800;}
.rt-page .rt-step span{font-size: 12px;
	color: var(--muted);}
.rt-page .rt-faq{max-width: 860px;
	margin: auto;
	display: grid;
	gap: 9px;}
.rt-page .rt-faq-item{border: 1px solid var(--line);
	border-radius: 9px;
	background: var(--white);
	padding: 15px 17px;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;}
.rt-page .rt-faq-item[open]{border-color: var(--route-green);
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);}
.rt-page .rt-faq-item summary{display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	font-weight: 800;
	color: var(--ink);
	cursor: pointer;
	list-style: none;
	transition: color 0.2s ease;}
.rt-page .rt-faq-item summary::-webkit-details-marker{display: none;}
.rt-page .rt-faq-item summary:hover{color: var(--route-green);}
.rt-page .rt-faq-arrow{flex: 0 0 auto;
	width: 20px;
	height: 20px;
	position: relative;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
.rt-page .rt-faq-arrow::before,
.rt-page .rt-faq-arrow::after{content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 10px;
	height: 2px;
	background: var(--route-green);
	border-radius: 2px;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
.rt-page .rt-faq-arrow::before{transform: translate(-50%, -50%) rotate(90deg);}
.rt-page .rt-faq-arrow::after{transform: translate(-50%, -50%);}
.rt-page .rt-faq-item[open] .rt-faq-arrow{transform: rotate(180deg);}
.rt-page .rt-faq-item[open] .rt-faq-arrow::before{transform: translate(-50%, -50%) rotate(0deg);}
.rt-page .rt-faq-a{height: 0;
	overflow: hidden;
	transition: height 0.28s cubic-bezier(0.4, 0, 0.2, 1);}
.rt-page .rt-faq-item[open] .rt-faq-a{height: auto;}
.rt-page .rt-faq-item p{font-size: 13px;
	color: var(--muted);
	margin: 10px 0 0;}
.rt-page .rt-filter{display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 20px;}
.rt-page .rt-filter-btn{padding: 7px 16px;
	border: 1px solid var(--line);
	border-radius: 999px;
	background: var(--white);
	color: var(--ink);
	font-family: var(--font-display);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.4;
	cursor: pointer;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;}
.rt-page .rt-filter-btn:hover{border-color: var(--route-green);
	color: var(--route-green);}
.rt-page .rt-filter-btn.is-active{border-color: var(--route-green);
	background: var(--route-green);
	color: var(--white);}
.rt-page .rt-partner-box{padding: 4px 28px 12px;
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 10px;}
.rt-page .rt-partner-list{display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 24px;
	margin: 0;
	padding: 0;
	list-style: none;}
.rt-page .rt-partner-item{padding: 13px 4px;
	border-bottom: 1px solid var(--line);}
.rt-page .rt-partner-item[hidden]{display: none;}
.rt-page .rt-partner-cat{margin: 0 0 3px;
	color: var(--muted);
	font-size: 12px;
	line-height: 1.4;}
.rt-page .rt-partner-name{margin: 0;
	color: var(--ink);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.5;}
.rt-page .rt-partner-empty{margin: 0;
	padding: 32px 8px;
	color: var(--muted);
	text-align: center;}
.rt-page .rt-contact-form{max-width: 640px;
	margin: auto;
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 12px;
	padding: 28px;
	box-shadow: var(--shadow);}
.rt-page .rt-contact-form p{margin: 0 0 16px;}
.rt-page .rt-contact-form label{display: block;
	font-weight: 800;
	font-size: 13px;
	color: var(--ink);
	margin-bottom: 6px;}
.rt-page .rt-req,
.rt-page .rt-opt{display: inline-block;
	margin-left: 6px;
	padding: 2px 7px;
	border-radius: 4px;
	font-size: 11px;
	font-weight: 800;
	vertical-align: middle;}
.rt-page .rt-req{background: #fdeaea;
	color: #c0392b;}
.rt-page .rt-opt{background: var(--paper-alt);
	color: var(--muted);}
.rt-page .rt-contact-form input[type="text"],
.rt-page .rt-contact-form input[type="email"],
.rt-page .rt-contact-form input[type="tel"],
.rt-page .rt-contact-form textarea{width: 100%;
	padding: 12px 14px;
	border: 1px solid var(--line);
	border-radius: 8px;
	font-family: var(--font-display);
	font-size: 14px;
	color: var(--ink);
	background: var(--paper);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;}
.rt-page .rt-contact-form textarea{min-height: 140px;
	resize: vertical;}
.rt-page .rt-contact-form input:focus,
.rt-page .rt-contact-form textarea:focus{outline: none;
	border-color: var(--route-green);
	box-shadow: 0 0 0 3px rgba(15, 140, 90, 0.15);}
.rt-page .rt-acceptance{display: flex;
	align-items: flex-start;
	gap: 8px;
	font-size: 13px;
	color: var(--ink);
	background: var(--paper-alt);
	border-radius: 8px;
	padding: 12px 14px;}
.rt-page .rt-acceptance input[type="checkbox"]{margin-top: 3px;
	width: 16px;
	height: 16px;
	accent-color: var(--route-green);
	flex-shrink: 0;}
.rt-page .rt-acceptance a{color: var(--route-green);
	font-weight: 800;}
.rt-page .rt-contact-form .wpcf7-submit{display: block;
	width: 100%;
	padding: 14px 18px;
	border: none;
	border-radius: 9px;
	background: var(--amber);
	color: var(--white);
	font-weight: 900;
	font-size: 15px;
	font-family: var(--font-display);
	cursor: pointer;
	box-shadow: 0 4px 0 var(--amber-deep);
	transition: filter 0.2s ease, transform 0.1s ease;}
.rt-page .rt-contact-form .wpcf7-submit:hover{filter: brightness(0.97);}
.rt-page .rt-contact-form .wpcf7-submit:active{transform: translateY(2px);
	box-shadow: 0 2px 0 var(--amber-deep);}
.rt-page .rt-contact-form .wpcf7-submit:disabled{opacity: 0.6;
	cursor: not-allowed;}
.rt-page .rt-contact-form .wpcf7-not-valid-tip{color: #c0392b;
	font-size: 12px;
	margin-top: 4px;}
.rt-page .rt-contact-form .wpcf7-list-item{margin: 0;}
.rt-page .rt-contact-form .wpcf7-spinner{margin: 12px auto 0;
	display: block;}
.rt-page .rt-contact-form .wpcf7-response-output{margin: 18px 0 0;
	padding: 12px 14px;
	border-radius: 8px;
	font-size: 13px;
	border: 1px solid var(--line);}
.rt-page .rt-contact-form form.sent .wpcf7-response-output{background: #eaf7f0;
	border-color: var(--route-green);
	color: var(--route-green);
	font-weight: 800;}
.rt-page .rt-contact-form form.failed .wpcf7-response-output,
.rt-page .rt-contact-form form.aborted .wpcf7-response-output,
.rt-page .rt-contact-form form.spam .wpcf7-response-output{background: #fdeaea;
	border-color: #c0392b;
	color: #c0392b;
	font-weight: 800;}
.rt-page .rt-contact-form form.invalid .wpcf7-response-output{background: #fff6e5;
	border-color: var(--amber-deep);
	color: #8a5a00;
	font-weight: 800;}
.rt-page .rt-disclosure{max-width: 860px;
	margin: auto;
	font-size: 12px;
	color: var(--muted);}
.rt-page .rt-disclosure h3{font-size: 15px;
	color: var(--ink);
	margin: 20px 0 5px;
	font-weight: 800;}
.rt-page .rt-disclosure p{margin: 0;}
.rt-page .rt-footer{background: var(--route-green);
	color: #cddbd2;
	padding: 30px 22px;
	text-align: center;
	font-size: 11px;}
.rt-page .rt-footer-logo{display: block;
	height: 28px;
	width: auto;
	margin: 0 auto 18px;}
.rt-page .rt-footer nav{display: flex;
	justify-content: center;
	gap: 16px;
	flex-wrap: wrap;
	margin-bottom: 16px;}
.rt-page .rt-footer a{color: var(--white);
	text-decoration: none;}
.rt-page .rt-sticky-cta{display: none;}
.rt-page .rt-sticky-cta.is-hidden{opacity: 0;
	transform: translateY(16px);
	pointer-events: none;}
.rt-page .rt-mobile-br{display: none;}
.rt-page .rt-fade-up{opacity: 0;
	transform: translateY(28px);
	transition: opacity 0.6s ease, transform 0.6s ease, border-color 0.2s ease, box-shadow 0.2s ease;}
.rt-page .rt-fade-up.is-inview{opacity: 1;
	transform: translateY(0);}
@media (prefers-reduced-motion: reduce){
.rt-page .rt-fade-up{opacity: 1;
		transform: none;
		transition: none;}
}
@media (max-width: 700px){
.rt-page{background: var(--white);}
.rt-page .rt-mobile-br{display: inline;}
.rt-page .rt-header{padding: 12px 16px;}
.rt-page .rt-nav-toggle{display: flex;
		flex-direction: column;
		justify-content: center;
		gap: 5px;
		width: 40px;
		height: 40px;
		padding: 0 9px;
		border: 1px solid var(--line);
		border-radius: 8px;
		background: var(--white);
		cursor: pointer;}
.rt-page .rt-nav-toggle span{display: block;
		height: 2px;
		background: var(--ink);
		border-radius: 2px;
		transition: transform 0.25s ease, opacity 0.2s ease;}
.rt-page .rt-header.is-open .rt-nav-toggle span:nth-child(1){transform: translateY(7px) rotate(45deg);}
.rt-page .rt-header.is-open .rt-nav-toggle span:nth-child(2){opacity: 0;}
.rt-page .rt-header.is-open .rt-nav-toggle span:nth-child(3){transform: translateY(-7px) rotate(-45deg);}
.rt-page .rt-nav{display: none;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		padding: 4px 16px 10px;
		background: var(--white);
		border-bottom: 3px solid var(--route-green);
		box-shadow: 0 10px 24px rgba(0, 0, 0, 0.12);}
.rt-page .rt-header.is-open .rt-nav{display: flex;}
.rt-page .rt-nav a{padding: 14px 4px;
		border-bottom: 1px solid var(--line);
		font-size: 15px;}
.rt-page .rt-nav a:last-child{border-bottom: 0;}
.rt-page .rt-cmp-table{font-size: 12px;}
.rt-page .rt-cmp-table thead th:first-child{width: 40%;}
.rt-page .rt-cmp-table td{vertical-align: middle;}
.rt-page .rt-cmp-tags{max-height: none;
		overflow: visible;}
.rt-page .rt-cmp-tags .rt-tag{font-size: 8px;
		padding: 3px 7px;}
.rt-page .rt-tab-label{padding: 9px 16px;
		font-size: 12px;}
.rt-page .rt-crumb{padding: 8px 16px;}
.rt-page .rt-hero,
.rt-page .rt-section{padding-left: 16px;
		padding-right: 16px;}
.rt-page .rt-hero{padding-top: 30px;}
.rt-page .rt-scroll-hint{display: block;}
.rt-page .rt-card-top{grid-template-columns: 64px 1fr;
		padding: 15px;
		gap: 12px;}
.rt-page .rt-card-top--noSign{grid-template-columns: 1fr;}
.rt-page .rt-sign--medal img{width: 56px;
		height: 56px;}
.rt-page .rt-sign{min-height: 64px;}
.rt-page .rt-sign span{font-size: 26px;}
.rt-page .rt-card-title h3{font-size: 20px;}
.rt-page .rt-card-body{grid-template-columns: 1fr;
		padding: 15px;}
.rt-page .rt-editor,
.rt-page .rt-reviews{margin: 0 15px 15px;}
.rt-page .rt-cta-area{padding: 0 15px 17px;}
.rt-page .rt-cards{grid-template-columns: 1fr;}
.rt-page .rt-flow{grid-template-columns: 1fr;}
.rt-page .rt-step{display: flex;
		align-items: center;
		gap: 14px;
		text-align: left;
		padding: 14px 16px;}
.rt-page .rt-step-icon{flex: 0 0 76px;
		width: 76px;
		height: 76px;
		margin: 0;}
.rt-page .rt-step-body{flex: 1;
		min-width: 0;}
.rt-page .rt-filter-btn{padding: 6px 12px;
		font-size: 12px;}
.rt-page .rt-partner-box{padding: 2px 16px 8px;}
.rt-page .rt-partner-list{grid-template-columns: 1fr;}
.rt-page .rt-footer{padding-bottom: 90px;}
.rt-page .rt-sticky-cta{display: block;
		position: fixed;
		left: 10px;
		right: 10px;
		bottom: 10px;
		z-index: 20;
		text-align: center;
		padding: 14px;
		border-radius: 10px;
		background: var(--amber);
		color: var(--white);
		text-decoration: none;
		font-weight: 900;
		transition: opacity 0.25s ease, transform 0.25s ease;
		box-shadow: 0 6px 24px rgba(0, 0, 0, 0.22);}
}
@media (prefers-reduced-motion: reduce){
}
.rt-page :focus-visible{outline: 3px solid var(--amber);
	outline-offset: 2px;}
.rt-page .rt-partner-box--scroll{max-height: 360px;
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;}
@media (max-width: 700px){
.rt-page .rt-partner-box--scroll{max-height: 320px;}
}

/* ---- キャリアの鉄人のトンマナ（黄色・黒・角ばった形）に合わせる ---- */
.rt-page .rt-kicker{display:none}
.rt-page .rt-section-head h2{display:flex;justify-content:center;align-items:center;gap:0}
.rt-page .rt-mini-btn,.rt-page .rt-btn{color:#121212;border:2px solid #121212;border-radius:0}
.rt-page .rt-cta{box-sizing:border-box;border:2px solid #121212;border-radius:0;background:#121212;color:#fff;box-shadow:4px 4px 0 #D65200}
.rt-page .rt-cta:hover{filter:none;opacity:.85}
.rt-page .rt-mini-btn{background:#FABE00}

/* ---- TOPページのトンマナ: 色をはっきり（黄色の面・黒い枠・＼／の見出し） ---- */
.rt-page .rt-section--alt{background:#FABE00}
.rt-page .rt-section-head{margin-bottom:32px}
.rt-page .rt-section-head h2{position:relative;display:inline-block;padding:0 40px;font-size:clamp(24px,4.6vw,38px);font-weight:900;line-height:1.5}
.rt-page .rt-section-head{text-align:center}
.rt-page .rt-section-head h2::before,.rt-page .rt-section-head h2::after{content:"";position:absolute;top:50%;width:4px;height:1.4em;background:#121212}
.rt-page .rt-section-head h2::before{left:6px;transform:translateY(-50%) rotate(-24deg)}
.rt-page .rt-section-head h2::after{right:6px;transform:translateY(-50%) rotate(24deg)}
.rt-page .rt-section-head p{color:#121212;font-weight:700}
.rt-page .rt-cmp-table,.rt-page .rt-card,.rt-page .rt-faq-item,.rt-page .rt-step,.rt-page .rt-compare-table{border:2px solid #121212}
.rt-page .rt-card,.rt-page .rt-step{box-shadow:5px 5px 0 #121212}
.rt-page .rt-cmp-table{box-shadow:5px 5px 0 #121212}
.rt-page .rt-cmp-table thead th,.rt-page .rt-compare-table th{background:#FABE00;color:#121212;font-weight:900}
.rt-page .rt-card-top{border-bottom:2px solid #121212}
.rt-page .rt-tab-label{border:2px solid #121212;color:#121212;font-weight:800}
.rt-page .rt-tag{background:#fff;border:1px solid #121212;color:#121212}
.rt-page .rt-editor{border-left:6px solid #121212;background:#FABE00;color:#121212;font-weight:700}
.rt-page .rt-cmp-score b,.rt-page .rt-score,.rt-page .rt-stars{color:#121212}
.rt-page .rt-mini-btn{box-shadow:3px 3px 0 #121212}
.rt-page .rt-info-card,.rt-page .rt-method{border:2px solid #121212;box-shadow:5px 5px 0 #121212}
.rt-page .rt-info-card .rt-point-title,.rt-page .rt-step-body small{color:#121212}

/* 薄い色をやめて、白・黄・黒のはっきりした色に */
.rt-page{--paper-alt:#fff}
.rt-page .rt-reviews{background:#fff;border:2px solid #121212}
.rt-page .rt-review-avatar{border:2px solid #121212}
.rt-page .rt-cta{background:#FABE00;color:#121212;border:2px solid #121212;box-shadow:4px 4px 0 #121212;font-size:16px}
.rt-page .rt-cta:hover{opacity:.85}
.rt-page .rt-editor{background:#121212;color:#fff;border:0;border-left:6px solid #FABE00}
.rt-page .rt-editor b,.rt-page .rt-editor strong{color:#FABE00}

/* スマホ: 見出しの改行を整える（単語の途中で切れないように）、比較表のタグの折り返し */
@media (max-width:700px){
.rt-page .rt-section-head h2{display:block;padding:0 26px;font-size:clamp(20px,5.8vw,26px);line-height:1.5;text-wrap:balance;word-break:keep-all;overflow-wrap:anywhere}
.rt-page .rt-section-head h2::before{left:2px;height:1.9em}
.rt-page .rt-section-head h2::after{right:2px;height:1.9em}
.rt-page .rt-cmp-tags{gap:4px}
.rt-page .rt-cmp-tags .rt-tag{white-space:nowrap;font-size:10px;padding:3px 6px}
}
.rt-page .rt-sticky-cta{background:#FABE00;color:#121212;border:2px solid #121212;border-radius:0;box-shadow:4px 4px 0 #121212}

/* 新卒向け比較（/agents/shukatsu/）: KV ができるまでの見出し */
.rt-page .rt-shukatsu-hero{padding:44px 22px 40px;background:#FABE00;text-align:center;color:#121212}
.rt-page .rt-shukatsu-hero__sub{display:inline-block;margin:0 0 12px;padding:4px 14px;background:#121212;color:#fff;font-size:13px;font-weight:900}
.rt-page .rt-shukatsu-hero__title{margin:0;font-size:clamp(26px,6vw,44px);font-weight:900;line-height:1.4}
.rt-page .rt-shukatsu-hero__lead{margin:12px 0 0;font-size:14px;font-weight:700}
.rt-page .rt-banner--logo{display:flex;align-items:center;justify-content:center;aspect-ratio:16/9;background:#fff;border:2px solid #121212}
.rt-page .rt-banner--logo img{width:60%;height:auto}
.rt-page .rt-cmp-area{font-size:13px;font-weight:800;text-align:center}
.rt-page .rt-card--plain .rt-card-top{display:block}

/* ---- 新卒向け（/agents/shukatsu/）: ネイビー基調。20代向け（黄色）と色を分ける。黒い枠・影、黄色のボタンは共通 ---- */
.rt-page.rt-navy{--navy:#0E2A66;--navy-light:#2B5BC4;--paper-alt:#fff}
.rt-page.rt-navy .rt-topbar{background:var(--navy)}
.rt-page.rt-navy .rt-section--alt{background:var(--navy)}
.rt-page.rt-navy .rt-section--alt .rt-section-head h2,.rt-page.rt-navy .rt-section--alt .rt-section-head p{color:#fff}
.rt-page.rt-navy .rt-section--alt .rt-section-head h2::before,.rt-page.rt-navy .rt-section--alt .rt-section-head h2::after{background:#fff}
.rt-page.rt-navy .rt-section--alt .rt-card,.rt-page.rt-navy .rt-section--alt .rt-step{box-shadow:5px 5px 0 #000}
.rt-page.rt-navy .rt-cmp-table thead th,.rt-page.rt-navy .rt-compare-table th{background:var(--navy);color:#fff}
.rt-page.rt-navy #tab-visual:checked ~ .rt-tab-list label[for="tab-visual"],.rt-page.rt-navy #tab-table:checked ~ .rt-tab-list label[for="tab-table"]{background:var(--navy);border-color:var(--navy);color:#fff}
.rt-page.rt-navy .rt-editor{background:var(--navy);border-left-color:#FABE00}
.rt-page.rt-navy .rt-point-title,.rt-page.rt-navy .rt-num,.rt-page.rt-navy .rt-step-body b{color:var(--navy-light)}
.rt-page.rt-navy .rt-tag{border-color:var(--navy);color:var(--navy)}
.rt-page.rt-navy .rt-faq-item,.rt-page.rt-navy .rt-info-card{border-color:var(--navy)}
.rt-page.rt-navy .rt-info-card{box-shadow:5px 5px 0 var(--navy)}

/* 「転職エージェントを上手に使うために」: 記事のサムネを上に出したカード */
.rt-page .ct-aa-guide a{overflow:hidden;padding:0;border-radius:0;box-shadow:4px 4px 0 #121212}
.rt-page .ct-aa-guide a b,.rt-page .ct-aa-guide a span:not(.ct-aa-guide__thumb){display:block;padding-left:16px;padding-right:16px}
.rt-page .ct-aa-guide a b{margin-top:12px}
.rt-page .ct-aa-guide a > span:last-child{padding-bottom:14px}
.rt-page .ct-aa-guide__thumb{display:block;aspect-ratio:16/9;overflow:hidden;border-bottom:2px solid #121212;background:#f4f4f4}
.rt-page .ct-aa-guide__img{display:block;width:100%;height:100%;object-fit:cover}
.rt-page .rt-specialized-table{max-width:900px;margin:0 auto 32px}

/* ======== 見た目のルールを統一（角ばった形・黒い2pxの枠・黒いベタの影） ========
 * 角: 面（カード・表・枠）もボタンも丸みなし。タグだけ小さな丸み（4px）
 * 影: 大きい面（カード・表・ステップ・選び方・掲載基準）= 5px / ボタン・よくある質問の項目 = 4px / 小さい部品（タグ・帯・情報欄）= なし
 * 枠: 黒の2px（表の中の区切り線だけ薄い灰色） */
.rt-page .rt-card,.rt-page .rt-cmp-table,.rt-page .rt-compare-table,.rt-page .rt-compare-wrap,.rt-page .rt-faq-item,.rt-page .rt-info-card,.rt-page .rt-step,.rt-page .rt-method,
.rt-page .rt-reviews,.rt-page .rt-editor,.rt-page .ct-aa-facts,.rt-page .ct-aa-guide a,.rt-page .rt-tab-label,.rt-page .rt-mini-btn,.rt-page .rt-cta,.rt-page .rt-sticky-cta,
.rt-page .rt-banner,.rt-page .rt-banner img,.rt-page .rt-info-img,.rt-page .rt-cmp-table thead th:first-child,.rt-page .rt-cmp-table thead th:last-child{border-radius:0}
.rt-page .rt-tag{border-radius:4px}
.rt-page .rt-cmp-table,.rt-page .rt-compare-wrap{overflow:hidden}
/* 影 */
.rt-page .rt-card,.rt-page .rt-cmp-table,.rt-page .rt-step,.rt-page .rt-info-card,.rt-page .rt-method,.rt-page .ct-aa-guide a{box-shadow:5px 5px 0 #121212}
.rt-page .rt-faq-item,.rt-page .rt-mini-btn,.rt-page .rt-cta,.rt-page .rt-sticky-cta{box-shadow:4px 4px 0 #121212}
.rt-page .rt-reviews,.rt-page .rt-editor,.rt-page .ct-aa-facts,.rt-page .rt-tag{box-shadow:none}
/* 枠 */
.rt-page .rt-faq-item,.rt-page .rt-method,.rt-page .ct-aa-facts,.rt-page .rt-compare-wrap{border:2px solid #121212}
.rt-page .rt-compare-wrap .rt-compare-table{border:0;box-shadow:none}
.rt-page .rt-banner{border:2px solid #121212}
.rt-page .rt-banner img{border-radius:0}
.rt-page .rt-banner--logo{border:2px solid #121212}
.rt-page .rt-tab-label{border:2px solid #121212}
.rt-page .rt-faq-item[open]{background:#fff}
/* ネイビー版も、枠と影は黒にそろえる */
.rt-page.rt-navy .rt-faq-item,.rt-page.rt-navy .rt-info-card{border-color:#121212}
.rt-page.rt-navy .rt-info-card{box-shadow:5px 5px 0 #121212}
.rt-page.rt-navy .rt-faq-item{box-shadow:4px 4px 0 #121212}
.rt-page.rt-navy .rt-tag{border-color:#121212;color:#121212}
.rt-page .ct-aa-facts{margin:0 20px 18px}
@media (max-width:700px){.rt-page .ct-aa-facts{margin:0 15px 15px}}

/* よくある質問: カードのどこを押しても開閉する（余白を details ではなく summary に持たせて、押せる範囲をカード全体に） */
.rt-page .rt-faq-item{padding:0;overflow:hidden}
.rt-page .rt-faq-item summary{padding:16px 18px;color:#121212;transition:background .15s}
.rt-page .rt-faq-item summary:hover{color:#121212;background:#FABE00}
.rt-page .rt-faq-item[open] summary{background:#FABE00}
.rt-page .rt-faq-item summary:focus-visible{outline:3px solid #121212;outline-offset:-5px}
.rt-page .rt-faq-item .rt-faq-a{padding:0 18px}
.rt-page .rt-faq-item[open] .rt-faq-a{padding:14px 18px 18px}
.rt-page .rt-faq-item .rt-faq-a p{margin:0}
.rt-page .rt-faq-arrow::before,.rt-page .rt-faq-arrow::after{background:#121212}
/* 開いたときも、閉じているときと同じ影・枠（もとの開いた状態の薄い影を打ち消す） */
.rt-page .rt-faq-item[open],.rt-page.rt-navy .rt-faq-item[open]{border-color:#121212;box-shadow:4px 4px 0 #121212}
/* ひと目で比較／表で比較: 2つの表の影をそろえる。切り替えボタンも、他のボタンと同じ黒いベタの影 */
.rt-page .rt-compare-wrap{box-shadow:5px 5px 0 #121212}
.rt-page .rt-tab-label{box-shadow:4px 4px 0 #121212;border-color:#121212}
.rt-page #tab-visual:checked ~ .rt-tab-list label[for="tab-visual"],
.rt-page #tab-table:checked ~ .rt-tab-list label[for="tab-table"]{border-color:#121212}
.rt-page.rt-navy #tab-visual:checked ~ .rt-tab-list label[for="tab-visual"],
.rt-page.rt-navy #tab-table:checked ~ .rt-tab-list label[for="tab-table"]{border-color:#121212}
/* 「掲載するサービスの選び方と、掲載順について」: 枠と余白の分だけ、カードより幅が広くなっていたのを、カードと同じ幅に */
.rt-page .rt-method{box-sizing:border-box;width:100%}
/* スマホ: 長い見出しは、文字を少し小さくして、決めた位置（br）で改行する */
@media (max-width:700px){
.rt-page #specialized-title,.rt-page #choose-title{font-size:clamp(18px,5.2vw,23px)}
.rt-page #specialized-title .rt-mobile-br,.rt-page #choose-title .rt-mobile-br{display:block}
}

/* 特化型エージェントの分野別ボタン（見出しの下） */
.rt-page .rt-fieldnav{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 14px;max-width:900px;margin:0 auto 32px;padding:0 4px}
.rt-page .rt-fieldnav__btn{display:inline-block;box-sizing:border-box;padding:12px 22px;border:2px solid #121212;border-radius:0;background:#fff;box-shadow:4px 4px 0 #121212;color:#121212;font-size:15px;font-weight:900;line-height:1.4;text-align:center;text-decoration:none;transition:background .15s}
.rt-page .rt-fieldnav__btn:hover{background:#FABE00}
.rt-page .rt-fieldnav__btn:focus-visible{outline:3px solid #121212;outline-offset:3px}
@media (max-width:700px){.rt-page .rt-fieldnav{gap:12px;margin-bottom:24px}.rt-page .rt-fieldnav__btn{flex:1 1 calc(50% - 12px);padding:12px 8px;font-size:14px}}

/* fade up（JS が .rt-fx を付けたときだけ。動きを減らす設定の人には出さない） */
@media (prefers-reduced-motion: no-preference) {
.rt-fx .rt-page .rt-fadeup{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,.8,.3,1);transition-delay:var(--rt-d,0s)}
.rt-fx .rt-page .rt-fadeup.is-in{opacity:1;transform:none}
}

/* 一覧の「詳細」ボタンを大きく（押しやすく） */
.rt-page .rt-cmp-table .rt-mini-btn,.rt-page .rt-compare-table .rt-mini-btn{display:inline-block;box-sizing:border-box;min-width:96px;padding:15px 24px;font-size:16px;font-weight:900;line-height:1.3;text-align:center}
@media (max-width:700px){.rt-page .rt-cmp-table .rt-mini-btn,.rt-page .rt-compare-table .rt-mini-btn{min-width:72px;padding:13px 14px;font-size:14px}}

/* バナー画像は、元の比率のまま表示する。PCで右の文章が長くてカードが縦に伸びても、バナーを縦に伸ばさず（切り抜かず）、上に寄せる。ロゴ枠（.rt-banner--logo）は対象外 */
.rt-page .rt-banner:not(.rt-banner--logo){align-self:start}
.rt-page .rt-banner:not(.rt-banner--logo) img{height:auto}

/* 就活エージェント6社の下に、就活アプリを続けるときの見出し（＋ あわせて使いたい就活アプリ） */
/* 文字は白 */
.rt-page .rt-plus{display:flex;align-items:center;gap:14px;margin:8px 0 -4px}
.rt-page .rt-plus::before,.rt-page .rt-plus::after{content:"";flex:1;height:3px;background:#121212}
.rt-page .rt-plus span{padding:6px 14px;background:#121212;color:#fff;font-size:15px;font-weight:900;line-height:1.4;text-align:center}

/* 「ひと目で比較」の表の「詳しく見る」ボタン: スマホで、文字が長くなった分、表からはみ出さないよう、ボタンの列を広げ、文字と余白を少し小さくする */
@media (max-width:700px){
.rt-page .rt-cmp-table thead th:first-child{width:36%}
.rt-page .rt-cmp-table thead th:last-child{width:76px}
.rt-page .rt-cmp-table .rt-mini-btn{min-width:0;padding:10px 6px;font-size:11.5px;white-space:nowrap;letter-spacing:0}
.rt-page .rt-cmp-table th:last-child,.rt-page .rt-cmp-table td:last-child{padding-left:3px;padding-right:5px}
}

/* KVの直下: 探し方を選ぶ2つのボタン（総合型の4社／分野で選ぶ特化型8社） */
.rt-page .rt-kvnav{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:900px;margin:28px auto 0;padding:0 20px}
.rt-page .rt-kvnav__item{position:relative;display:flex;flex-direction:column;gap:4px;box-sizing:border-box;padding:16px 56px 16px 20px;border:2px solid #121212;border-radius:0;background:#FABE00;box-shadow:5px 5px 0 #121212;color:#121212;text-decoration:none;transition:transform .15s,box-shadow .15s}
.rt-page .rt-kvnav__item small{font-size:12px;font-weight:800;line-height:1.5}
.rt-page .rt-kvnav__item strong{font-size:19px;font-weight:900;line-height:1.4}
.rt-page .rt-kvnav__item.is-alt{background:#121212;color:#fff;box-shadow:5px 5px 0 #FABE00}
.rt-page .rt-kvnav__item.is-alt small{color:#FABE00}
.rt-page .rt-kvnav__arrow{position:absolute;top:50%;right:16px;display:flex;align-items:center;justify-content:center;width:30px;height:30px;margin-top:-15px;border-radius:50%;background:#121212;color:#FABE00;font-size:16px;font-weight:900;line-height:1}
.rt-page .rt-kvnav__item.is-alt .rt-kvnav__arrow{background:#FABE00;color:#121212}
.rt-page .rt-kvnav__item:focus-visible{outline:3px solid #121212;outline-offset:3px}
@media (hover:hover){.rt-page .rt-kvnav__item:hover{transform:translate(2px,2px);box-shadow:3px 3px 0 #121212}.rt-page .rt-kvnav__item.is-alt:hover{box-shadow:3px 3px 0 #FABE00}}
@media (max-width:700px){.rt-page .rt-kvnav{grid-template-columns:1fr;gap:14px;margin-top:22px;padding:0 16px}.rt-page .rt-kvnav__item strong{font-size:18px}}

/* 「表で比較」: 幅がせまいとき、横にスクロールできるようにする（上の overflow:hidden を打ち消す） */
.rt-page .rt-compare-wrap{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}

/* 「ひと目で比較」: サービス名のところは、各サービスのバナー画像（押すと詳しい説明へ） */
.rt-page .rt-cmp-table td.rt-cmp-brand { padding: 8px 10px; }
.rt-page .rt-cmp-table .rt-cmp-img { display: block; }
.rt-page .rt-cmp-table .rt-cmp-img img { display: block; width: 100%; max-width: 220px; height: auto; margin: 0 auto; border: 1px solid #d8d8d8; }
@media (max-width: 700px) {
    .rt-page .rt-cmp-table td.rt-cmp-brand { padding: 6px; }
    .rt-page .rt-cmp-table .rt-cmp-img img { max-width: 100%; }
}

/* スマホ: 「エリア」の文字は小さくして、2行に折り返さない */
@media (max-width: 700px) {
    .rt-page .rt-cmp-table td.rt-cmp-area { font-size: 10px; letter-spacing: -.02em; white-space: nowrap; padding-left: 2px; padding-right: 2px; }
}
@media (max-width: 400px) {
    .rt-page .rt-cmp-table td.rt-cmp-area { font-size: 9px; letter-spacing: -.04em; }
}

/* 「ひと目で比較」: バナーの上にサービス名 */
.rt-page .rt-cmp-table .rt-cmp-name { display: block; margin: 0 0 5px; color: #121212; font-size: 14px; font-weight: 900; line-height: 1.35; text-align: center; }
.rt-page .rt-cmp-table .rt-cmp-img:hover .rt-cmp-name { text-decoration: underline; }
@media (max-width: 700px) {
    .rt-page .rt-cmp-table .rt-cmp-name { margin-bottom: 4px; font-size: 11px; }
    /* 長いタグが、となりの列（エリア）に重ならないよう、サービス名の列をせまくして、特徴の列を広げる */
    .rt-page .rt-cmp-table thead th:first-child { width: 31%; }
    .rt-page .rt-cmp-table td.rt-cmp-brand { padding: 6px 3px; }
}

/* 比較表のボタン: PCは「詳しく見る」、スマホは「詳細」 */
.rt-page .rt-mini-btn .rt-mb-sp { display: none; }
@media (max-width: 700px) {
    .rt-page .rt-mini-btn .rt-mb-pc { display: none; }
    .rt-page .rt-mini-btn .rt-mb-sp { display: inline; }
}

/* 「ひと目で比較／表で比較」: ふだんは上のほうだけ見せて、ボタンでのばす（js/rt-tabs-fold.js）。折りたたむ高さは --rt-fold */
.rt-page .rt-tabs { --rt-fold: 400px; }
.rt-page .rt-tabs.is-fold:not(.is-open) .rt-tab-panel { position: relative; max-height: var(--rt-fold); overflow: hidden; padding: 0 8px 8px 0; box-sizing: content-box; }
.rt-page .rt-tabs.is-fold:not(.is-open) .rt-tab-panel::after {
    content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 110px; pointer-events: none;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff 85%);
}
.rt-page .rt-tabs__more { display: flex; justify-content: center; margin: 14px 0 0; }
.rt-page .rt-tabs__more[hidden] { display: none; }
.rt-page .rt-tabs__morebtn {
    padding: 12px 28px; border: 2px solid #121212; border-radius: 0; background: #fff; color: #121212;
    font: inherit; font-size: 15px; font-weight: 900; line-height: 1.3; box-shadow: 4px 4px 0 #121212; cursor: pointer;
}
.rt-page .rt-tabs__morebtn:hover { transform: translate(2px, 2px); box-shadow: 2px 2px 0 #121212; }
@media (max-width: 700px) {
    .rt-page .rt-tabs { --rt-fold: 340px; }
    .rt-page .rt-tabs__morebtn { font-size: 14px; padding: 11px 22px; }
}
/* 新卒の比較ページの1画面目の画像（inc/link-fix.php の ct_replace_shukatsu_kv）: 画像そのままの比率で出す（プラグインの横長の切り抜きを打ち消す） */
.ct-ag .ctag-hero__pic.ct-kv2 { aspect-ratio: auto; height: auto; max-height: none; background: #14b8ff; }
.ct-ag .ctag-hero__pic.ct-kv2 img { height: auto; object-fit: cover; }
