/* Sanko: tablet | 共通 → ページ → tablet.css の順で読み込み。指定順を維持。 */

@media (min-width: 601px) and (max-width: 1200px), (min-width: 601px) and (min-width: 1201px) and (max-width: 1366px) and (pointer: coarse) {
	body {
		--wp--custom--spacing--page-margin: 5vw;
	}

	.about__inner, .news-archive__inner, .news-single__inner,
	.form-page__inner, .rec-inner {
		box-sizing: border-box;
		width: 90%;
		max-width: none;
		margin-inline: auto;
		padding-inline: 0;
	}

	:where(main) :where(p, dd, li, h1, h2, h3, h4) {
		overflow-wrap: break-word;
	}

	.page-title,
	#main > .wp-block-post-title {
		font-size: 30px;
		line-height: 1.5;
	}

	.about, .news-archive, .news-single, .form-page {
		padding-top: 48px;
	}

	.wp-block-heading.is-style-eyebrow, .about-eyebrow {
		font-size: 16px;
		line-height: 1.7;
	}

	.is-style-link-arrow .wp-block-button__link, .link-arrow {
		font-size: 17px;
	}

	.site-header__inner {
		padding: 14px 24px;
	}

	.header-brand .wp-block-site-logo img {
		width: 210px;
	}

	.header-brand .badge-new img {
		width: 90px;
		height: auto;
	}

	.site-header .wp-block-navigation__responsive-container-open:not(.always-shown) {
		width: 28px;
		height: 22px;
		background-size: 24px 1px;
		background-position-x: center;
	}

	.site-header .wp-block-navigation__responsive-dialog {
		width: 560px;
		padding-bottom: 32px;
	}

	.site-header .wp-block-navigation__responsive-container-close {
		left: auto;
		right: 24px;
		top: 24px;
		width: 24px;
		height: 24px;
	}

	.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
		padding-inline: 32px;
	}

	.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
		font-size: 17px;
	}

	.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
		font-size: 15px;
	}

	.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .has-child > .wp-block-navigation-item__content {
		flex-basis: 48%;
	}

	.site-footer > .wp-block-group, .contact-section {
		padding-inline: var(--wp--custom--spacing--page-margin);
	}

	.footer-main {
		max-width: none;
		margin-inline: auto;
		gap: 40px;
		padding-bottom: 40px;
	}

	.footer-nav {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0 32px;
		width: 100%;
	}

	.footer-nav__col {
		display: contents;
	}

	.footer-nav__head, .footer-nav__head--spaced {
		margin: 0;
		font-size: 16px;
		line-height: 1.6;
		border-bottom: 1px solid rgb(255 255 255 / 25%);
	}

	.footer-nav__head a {
		display: block;
		padding-block: 18px;
	}

	.footer-brand {
		margin-top: 0;
		width: 100%;
	}

	.footer-logo {
		width: 280px;
		max-width: 100%;
		margin-bottom: 28px;
	}

	.footer-address {
		gap: 24px;
	}

	.footer-address__row {
		align-items: flex-start;
		gap: 20px;
	}

	.footer-address dt {
		min-width: 76px;
		box-sizing: border-box;
		text-align: center;
	}

	.footer-address dd {
		min-width: 0;
		font-size: 14px;
		line-height: 1.9;
		overflow-wrap: anywhere;
	}

	.footer-badges {
		grid-auto-flow: row;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: min(100%, 520px);
		gap: 20px;
		margin-top: 0;
	}

	.footer-badges img {
		width: 100%;
		height: auto;
	}

	.footer-bottom {
		max-width: none;
		margin-inline: auto;
		padding-block: 28px;
		gap: 20px;
		text-align: center;
	}

	.cta-contact {
		width: 100%;
		max-width: none;
		box-sizing: border-box;
		margin-inline: auto;
		padding: 44px;
	}

	.cta-contact__body h3 {
		font-size: 24px;
		line-height: 1.8;
	}

	.cta-contact__phone-label, .cta-contact__hours {
		font-size: 14px;
	}

	.cta-contact__action .wp-block-button.is-style-link-arrow .wp-block-button__link {
		font-size: 20px;
	}

	.breadcrumb__list {
		font-size: 12px;
	}

	body.home .hero {
		position: relative;
		z-index: 1;
	}

	body.home .hero-stage {
		width: 100%;
		max-width: none;
		aspect-ratio: 1440 / 1000;
		margin-inline: auto;
	}

	body.home .hero-stage__dot--2 {
		--l: 79.7569%;
		--t: 42.25%;
		--w: 15.624%;
	}

	body.home .hero-stage__dot--3 {
		--l: 8.858%;
		--t: 14.85%;
		--w: 15.624%;
	}

	body.home .hero-stage__dot--4 {
		--l: 43%;
		--t: 19.3%;
		--w: 31.248%;
		aspect-ratio: 500 / 499;
	}

	body.home .hero-stage__dot--5 {
		--l: 65.728%;
		--t: 74.95%;
		--w: 15.624%;
	}

	body.home .hero-stage__accent--1 {
		--l: 29.931%;
		--t: 13.6%;
		--w: 2.292%;
	}

	body.home .hero-stage__accent--2 {
		--l: 74.861%;
		--t: 16.9%;
		--w: 2.708%;
	}

	body.home .hero-stage__accent--3 {
		--l: 36.111%;
		--t: 71.3%;
		--w: 4.653%;
	}

	body.home .hero-stage__accent--4 {
		--l: 80.278%;
		--t: 19.5%;
		--w: 7.361%;
	}

	body.home .hero-stage__accent--5 {
		display: block;
		--l: 4.375%;
		--t: 78.8%;
		--w: 7.778%;
	}

	body.home .hero-stage__accent--6 {
		--l: 89.514%;
		--t: 106.9%;
		--w: 4.653%;
	}

	body.home .hero-stage__accent--7 {
		display: none;
	}

	body.home .hero-stage__headline {
		left: 4.514%;
		top: 47.1%;
		font-size: clamp(33px, 5vw, 60px);
		line-height: 1.6667;
	}

	body.home .hero-stage__tagline {
		left: 4.65%;
		top: calc(47.1% + clamp(110px, 16.667vw, 200px) + 8px);
		font-size: clamp(13px, 1.875vw, 24px);
		line-height: 1.4;
	}

	body.home .concept {
		--tablet-blue-radius: clamp(380px, calc(40vw + 120px), 520px);
		--tablet-blue-offset: clamp(0px, calc(17.27vw - 103.79px), 100px);
		clip-path: none;
		padding-bottom: 64px;
	}

	body.home .concept__body {
		width: 90%;
		max-width: none;
		margin-inline: auto;
		padding: clamp(64px, calc(16vw - 32px), 128px) 0 0;
	}

	body.home .concept__body > :is(h2, h3, p, .wp-block-buttons) {
		max-width: 576px;
		margin-inline: 0 auto;
	}

	body.home .concept__body h3,
	body.home .business-intro__body h3,
	body.home .recruit__body h3 {
		font-size: 32px;
		line-height: 1.7;
	}

	body.home .concept__body p,
	body.home .business-intro__body p,
	body.home .iinaka-cards__item p,
	body.home .recruit__body p {
		font-size: 16px;
		line-height: 2;
	}

	body.home :is(.concept__body, .business-intro__body, .iinaka-cards__item, .recruit__body) p br {
		display: none;
	}

	body.home .concept__shape {
		left: calc(50% - var(--tablet-blue-offset) - 2660.6602px + var(--tablet-blue-radius) * 0.70710678);
		top: calc(var(--tablet-blue-radius) * 0.29289322 - 679.3398px);
		margin-left: 0;
		width: 3200px;
		height: 3200px;
	}

	body.home .concept__shape::before {
		width: calc(2 * var(--tablet-blue-radius));
		height: 3000px;
		border-radius: var(--tablet-blue-radius);
		transform: rotate(45deg);
		background: linear-gradient(143.05deg, #0084ff 39.748%, #68e1ff 82.181%, #e9faff 122.02%);
	}

	body.home .business-intro__inner {
		width: 90%;
		max-width: none;
		margin-inline: auto;
		padding-inline: 0;
	}

	body.home .business-photo-duo {
		width: 100%;
		max-width: none;
		margin-inline: auto;
	}

	body.home .business-photo-duo__item,
	body.home .business-photo-duo__item--upper {
		aspect-ratio: 167 / 260;
	}

	body.home .business-photo-duo__item img {
		object-fit: cover;
	}

	body.home .business-photo-duo__item--lower {
		margin-top: 60px;
	}

	body.home .business-intro__body {
		padding-top: 48px;
	}

	body.home .iinaka-cards {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: 100%;
		max-width: none;
		margin-inline: auto;
		gap: 28px;
		padding-inline: 0;
	}

	body.home .iinaka-cards__item {
		min-width: 0;
	}

	body.home .iinaka-cards__item h3 {
		font-size: clamp(20px, 2.5vw, 26px);
		line-height: 1.6;
	}

	body.home .recruit__media {
		max-height: 460px;
		aspect-ratio: 16 / 10;
	}

	body.home .recruit__body {
		width: 90%;
		max-width: none;
		box-sizing: border-box;
		margin-inline: auto;
		padding: 48px 0 64px;
	}

	body.home .news-panel {
		padding: 56px var(--wp--custom--spacing--page-margin);
	}

	body.home .news-panel__list {
		width: 100%;
		max-width: none;
		margin-inline: auto;
	}

	body.home .news-item__title {
		font-size: 16px !important;
		line-height: 1.7;
	}

	body.home .news-item__title a {
		line-height: inherit;
	}

	body.home .news-item__date, body.home .news-item__badge {
		font-size: 12px;
	}

	body.home .cta-contact {
		padding: 44px;
	}

	body.home .cta-contact__body h3 {
		font-size: 28px;
		line-height: 1.7;
	}

	.about__layout {
		margin-top: 48px;
	}

	.section-nav__list {
		gap: 8px 28px;
	}

	.section-nav__list a {
		font-size: 16px;
	}

	.about__content {
		margin-top: 56px;
	}

	.about-heading {
		font-size: 30px;
		line-height: 1.7;
	}

	.about-text, .about-text--lg {
		font-size: 16px;
		line-height: 2;
	}

	.about-section + .about-section {
		margin-top: 80px;
	}

	.about-greeting__photo {
		width: min(100%, 440px);
		align-self: center;
	}

	.about-mission__photo {
		width: 100%;
		max-height: none;
		margin-inline: 0;
		aspect-ratio: auto;
	}

	.about-mission__photo img {
		width: 100%;
		height: auto;
		aspect-ratio: 1096 / 307;
		object-fit: contain;
	}

	.company-table__row {
		font-size: 16px;
		line-height: 1.9;
		gap: 24px;
	}

	.company-table dt {
		flex: 0 0 120px;
		padding-left: 0;
	}

	.company-table dd {
		min-width: 0;
		overflow-wrap: anywhere;
	}

	.office__photo,
	.office__photo[src*="office-izumo-20261015"] {
		width: min(100%, 300px);
	}

	.office {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		gap: 20px 24px;
		align-items: start;
	}

	.office__head {
		min-width: 0;
	}

	.office__photo {
		width: 100%;
	}

	.office__map {
		display: block;
		width: 100%;
		height: 100%;
		min-height: 300px;
		margin-top: 0;
		aspect-ratio: auto;
	}

	.office__link {
		grid-column: 1 / -1;
		margin-top: 0;
	}

	.timeline {
		width: min(100%, 680px);
		margin-inline: auto;
	}

	.timeline__item {
		font-size: 16px;
		line-height: 1.9;
	}

	.csr-list {
		max-width: 560px;
		margin-inline: auto;
	}

	.biz-diagram__stage {
		max-width: 640px;
	}

	.biz-heading {
		font-size: 24px;
	}

	.biz-lead, .biz-card__text, .biz-card__list, .biz-card__label, .biz-product__text {
		font-size: 16px;
		line-height: 2;
	}

	.biz-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 24px;
		align-items: stretch;
	}

	.biz-card {
		min-width: 0;
		padding: 32px 20px;
	}

	.biz-card__title {
		font-size: 20px;
	}

	.biz-card__figure {
		flex: 0 0 180px;
		min-height: 180px;
		margin-top: 28px !important;
	}

	.biz-card__figure img {
		max-width: 100%;
		max-height: 180px;
		width: 100%;
		object-fit: contain;
	}

	.biz-card__text {
		margin-top: 28px !important;
		text-align: left;
	}

	.biz-flow {
		max-width: 640px;
		margin-inline: auto;
	}

	.biz-flow__label {
		font-size: 18px;
	}

	.biz-flow__num {
		font-size: 16px;
	}

	.biz-products {
		max-width: 600px;
		margin-inline: auto;
	}

	.biz-product__title {
		font-size: 22px;
	}

	.news-row {
		gap: 32px;
	}

	.news-row__body {
		min-width: 0;
		padding: 12px 0;
	}

	.news-row__title {
		font-size: 17px;
		line-height: 1.8;
	}

	.news-row .news-item__badge, .news-row .news-item__date {
		font-size: 13px;
	}

	.news-single__article {
		margin: 56px 0 0;
	}

	.news-single__title {
		font-size: 28px;
		line-height: 1.7;
	}

	.news-single__content {
		font-size: 16px;
		line-height: 2;
	}

	.form-page__layout {
		gap: 48px;
	}

	.form-page__lead, .form-page__lead.form-page__lead--contact {
		font-size: 22px;
		line-height: 1.8;
		text-wrap: pretty;
	}

	.form-page__lead br {
		display: none;
	}

	.form-page__text, .sanko-form__label, .form-page__phone-label {
		font-size: 16px;
		line-height: 1.9;
	}

	.form-page__note, .form-page__hours {
		font-size: 14px;
		line-height: 1.8;
	}

	.form-page__form-title {
		font-size: 20px;
	}

	.sanko-form input, .sanko-form select, .sanko-form textarea {
		max-width: 100%;
		box-sizing: border-box;
	}

	.wp-block-post-content.is-layout-constrained {
		padding-inline: 0;
		overflow-wrap: anywhere;
	}

	.rec-officeshot img {
		height: min(56vw, 520px);
	}

	.rec-inner {
		padding-inline: 0;
	}

	.rec-hero {
		--tablet-caption-top: min(40svh, 420px);
	}

	.recruit {
		--rec-hero-height: max(900px, 100svh);
		margin-block-start: -100px;
	}

	.rec-hero__art {
		height: max(900px, 100svh);
	}

	.rec-hero__headline {
		font-size: clamp(32px, 4.5vw, 44px);
	}

	.rec-hero__group {
		top: var(--tablet-caption-top);
		gap: 8px;
	}

	.rec-hero__line {
		height: 72px;
		line-height: 72px;
		padding-inline: 32px;
	}

	.rec-hero__line--2 {
		padding-inline: 32px;
	}

	.rec-hero__line--3 {
		top: calc(var(--tablet-caption-top) + 160px);
		padding-inline: 32px;
	}

	.rec-hero__entry {
		max-width: none;
		right: 5vw;
		width: 90vw;
	}

	.rec-lead-scroll {
		top: var(--rec-tablet-lead-top, 0px);
		padding-block-start: max(360px, calc(min(40svh, 420px) + 264px));
		padding-bottom: 120px;
	}

	.rec-eyebrow {
		font-size: 24px;
	}

	.rec-subhead {
		font-size: 22px;
	}

	.rec-intro__text, .rec-lead-sm, .rec-project__text,
	.rec-voice__text, .rec-voice__who, .rec-voice__label, .rec-voice__certs,
	.rec-flow__text, .rec-flow__label, .rec-flow__list,
	.rec-step__text, .rec-step__label, .rec-step__list, .rec-step__plain,
	.rec-faq__text, .rec-faq__a p {
		font-size: 16px;
		line-height: 2;
	}

	.rec-intro__text br {
		display: none;
	}

	.rec-member {
		padding: 28px;
	}

	.rec-member__title {
		font-size: 26px;
		line-height: 1.7;
	}

	.rec-member__meta {
		font-size: 16px;
	}

	.rec-project__grid {
		width: 90%;
		box-sizing: border-box;
		max-width: none;
		margin-inline: auto;
		padding-inline: 0;
	}

	.rec-project__title {
		font-size: 32px;
		line-height: 1.7;
	}

	.rec-project__figure {
		width: 100%;
	}

	.rec-project__figure img {
		width: 100%;
		height: auto;
		max-height: none;
		aspect-ratio: 2500 / 1866;
		object-fit: contain;
	}

	.rec-env__photo img {
		height: auto;
		max-height: 440px;
		aspect-ratio: 16 / 10;
		object-fit: cover;
	}

	.rec-pill {
		font-size: 16px;
		line-height: 1.8;
	}

	.rec-voice__figure {
		width: min(100%, 440px);
		margin-inline: auto;
	}

	.rec-voice__figure img {
		width: 100%;
		height: auto;
		max-height: none;
		aspect-ratio: 1500 / 1252;
		object-fit: contain;
	}

	.rec-gallery__track img {
		height: 230px;
	}

	.rec-job__row {
		grid-template-columns: 140px minmax(0, 1fr);
		gap: 24px;
	}

	.rec-job__panel {
		padding: 24px 32px 40px;
	}

	.rec-faq__q {
		padding: 24px;
	}

	.rec-faq__a {
		padding: 24px 32px;
	}

	.rec-modal {
		width: 90vw;
	}

	.rec-modal__inner, .case-modal__inner {
		padding: 56px 32px;
	}

	.rec-modal__figure {
		max-width: 380px;
		margin-inline: auto;
	}

	.rec-qa__text, .case-text, .case-lead, .case-pair__note {
		font-size: 16px;
		line-height: 2;
	}

	.rec-modal__meta, .rec-qa__q {
		font-size: 15px;
	}

	.rec-qa__h {
		font-size: 22px;
	}

	.rec-modal__title {
		font-size: 26px;
		line-height: 1.7;
	}

	.case-title {
		font-size: 28px;
		line-height: 1.7;
	}

	body:has(.rec-hero__entry) .footer-bottom {
		padding-bottom: 100px;
	}
}
