@charset "UTF-8";
/**************************************************************
    sushitsuneのスタイルシート
***************************************************************/
body {
	color: var(--text);
}
a {
	display: inline-block;
}
/* ベースコンテナ */
/* 狭めのナロー版 */
.cnt-900 {
	max-width: 920px;
	width: 100%;
	margin: 0 auto;
	padding: 0 10px;
}

@media only screen and (max-width: 767px) {
	.cnt-900 {
		padding: 0 30px;
	}
}
/* セクション全体の上下余白をまとめる */
.sec-wrapper {
	padding: 100px 0;
}

@media (max-width: 767px) {
	.sec-wrapper {
		padding: 50px 0;
	}
}
/* カラー */
:root {
	--navy: #192172;
	--text: #333333;
	--yellow: #ffd528;
}

/* 背景円形 */
.circle-bg::after {
	transform: translateX(-50%);
}

.circle-bg--blue {
	background: url(/sushitsune/img/bg_wave_01.png) repeat left top/70px auto;
}

.circle-bg--blue::before,
.circle-bg--blue::after {
	background: url(/sushitsune/img/bg_wave_01.png) repeat left top/70px auto;
}

.circle-bg--blue02 {
	background: url(/sushitsune/img/bg_wave_02.png) repeat left top/70px auto;
}

.circle-bg--blue02::before,
.circle-bg--blue02::after {
	background: url(/sushitsune/img/bg_wave_02.png) repeat left top/70px auto;
}

.circle-bg--navy {
	background: var(--navy);
}

.circle-bg--navy::before,
.circle-bg--navy::after {
	background: var(--navy);
}
/* h1 */
.head-title span {
	display: inline-block;
	line-height: 1.4;
}
/**************************************************************
    ページ内共通
***************************************************************/
/* 見出し */
.section-head {
	position: relative;
	display: flex;
	align-items: flex-end;
	gap: 10px;
	color: var(--navy);
}

.circle-bg--navy .section-head {
	color: #fff;
}

.section-head::before {
	position: absolute;
	content: "";
	width: calc(100% - 218px);
	height: 1px;
	background-color: var(--navy);
	right: 0;
	bottom: 7px;
	margin-top: -1px;
}

.circle-bg--navy .section-head::before {
	background-color: #fff;
}

.section-ttl {
	font-weight: bold;
	font-size: 35px;
}

.section-subttl {
	font-size: 14px;
}

.section-white {
	padding-top: 70px;
}

@media only screen and (max-width: 767px) {
	.section-head {
		flex-direction: column;
		align-items: start;
	}
	.section-ttl {
		font-size: 28px;
		line-height: 1.2;
	}
	.section-subttl {
		font-size: 16px;
	}
	.section-head::before {
		width: calc(100% - 75px);
		top: unset;
		bottom: 6px;
	}
	.section-white {
		margin-top: 38px;
	}
}
/* 本文 */
.section-text {
	margin-bottom: 30px;
	line-height: 1.8;
}

@media only screen and (max-width: 767px) {
	.section-text {
		/* margin-bottom: 30px; */
	}
}
/**************************************************************
    KV
***************************************************************/
.kv {
	margin-top: 20px;
	position: relative;
	z-index: 2;
}

.kv-inner {
	width: 100%;
	height: auto;
	position: relative;
}
.kv-inner img {
	border-radius: 50px;
}

.kv-image {
	width: 100%;
	height: auto;
	display: block;
}

.kv-balloon {
	position: absolute;
	top: 50%;
	right: -21px;
	transform: translateY(-50%);
	width: 424px;
	height: 415px;
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
}

.kv-balloon-bg {
	position: absolute;
	width: 100%;
	height: auto;
	top: 0;
	left: 0;
	z-index: 1;
}

.kv-text {
	position: relative;
	z-index: 2;
	color: #fff;
	font-weight: bold;
	font-size: 32px;
	line-height: 2;
	writing-mode: vertical-rl;
	text-orientation: mixed;
}

.kv-emphasis {
	color: var(--yellow);
}

@media only screen and (min-width: 927px) and (max-width: 1241px) {
	.kv-balloon {
		right: 0;
	}
}
@media only screen and (min-width: 610px) and (max-width: 927px) {
	.kv-inner .kv-balloon {
		width: 460px;
	}
}
@media (max-width: 927px) {
	.kv-inner {
		max-width: 700px;
		margin: 0 auto;
	}
	.kv {
		padding-bottom: 115px;
		overflow: hidden;
	}
	.kv-inner .kv-balloon {
		width: 360px;
		height: auto;
		right: -90px;
		top: unset;
		bottom: -225px;
	}
	.kv-text {
		margin-top: 30px;
		font-size: 29px;
		line-height: 2;
	}
}
@media only screen and (max-width: 609px) {
	.kv-inner .kv-balloon {
		transform: unset;
		bottom: -70px;
	}
	.kv-text {
		margin-top: 40px;
		font-size: 27px;
	}
}
/**************************************************************
    求人検索
***************************************************************/
#search {
	padding-top: 70px;
}
.search {
	margin-top: -270px;
	position: relative;
	z-index: 1;
}
.search .section-bg {
	padding-top: 240px;
}
.search .circle-bg::before {
	width: 200vw;
	height: 41.6vw;
	top: -256px;
}
.search .section-head::before {
	width: calc(100% - 223px);
}

/* フリーワード */
.search-freeword {
	margin-top: 57px;
	margin-bottom: 70px;
}

.search-ttl {
	font-size: 23px;
	font-weight: bold;
	text-align: center;
	color: var(--navy);
	margin-bottom: 20px;
}

.fwdObj form {
	border-radius: 10px;
}

.fwdObj form #freeword {
	border-radius: 10px 0 0 10px;
}

.fwdObj form #freewordsearch {
	margin-left: 0;
	background-color: var(--yellow);
	border-radius: 0 5px 5px 0;
	color: #333;
}

.search-list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(0, 300px));
	grid-gap: 20px;
	justify-content: center;
}

.search-item {
	max-width: 300px;
}

.search-button {
	min-height: 70px;
}

@media only screen and (max-width: 767px) {
	.search-freeword {
		margin-top: 50px;
		margin-bottom: 30px;
	}
}
/* 勤務地から探す */
.search-map {
	width: 100%;
	min-height: 471px;
	margin: 0 auto;
	padding: 0;
	position: relative;
	background: url(/sushitsune/img/bg_rosen.png) no-repeat center center/627px
			auto,
		url(/sushitsune/img/bg_search_pc.png) no-repeat center top/100% auto;
	z-index: 2;
}

.bg-sushi-left,
.bg-sushi-right {
	position: absolute;
	z-index: -1;
}

.search-map .bg-sushi-left {
	top: 62px;
	left: -36px;
	width: 192px;
}
.search-map .bg-sushi-right {
	bottom: -57px;
	right: 50px;
	width: 240px;
}

.search-link {
	position: absolute;
	text-align: center;
}

.search-link a {
	width: 120px;
	height: 120px;
	padding-left: 40px;
	border-radius: 50%;
	background: var(--navy);
	text-decoration: none;
	font-weight: bold;
	color: var(--yellow);
	font-size: 18px;
	display: flex;
	align-items: center;
	position: relative;
}

.search-link a::after {
	font-family: recop-iconfonts;
	content: "\e841";
	font-size: 24px;
	position: absolute;
	top: 51%;
	transform: translateY(-50%);
	left: 23px;
	color: var(--yellow);
	font-weight: normal;
}

.search-center {
	top: 50.5%;
	left: 51%;
	transform: translate(-50%, -50%);
}

.search-saitama {
	top: 10%;
	left: 36%;
}

.search-kanagawa {
	bottom: 12%;
	left: 30%;
}

.search-kanagawa a {
	padding-left: 32px;
}

.search-kanagawa a::after {
	left: 16px;
}

.search-chiba {
	top: 25%;
	right: 18%;
}

@media only screen and (min-width: 851px) and (max-width: 926px) {
	.search-map {
		min-height: 52.33vw; /* 471px ÷ 900px × 100 = 52.33vw */
		background: url(/sushitsune/img/bg_rosen.png) no-repeat center center/69%
				auto,
			url(/sushitsune/img/bg_search_pc.png) no-repeat center top/100% auto;
	}
}
@media (max-width: 850px) {
	.search-inner {
		overflow: hidden;
	}
	.search {
		margin-top: -932px;
	}
	.search .section-bg {
		padding-top: 875px;
	}
	.search .circle-bg::before {
		width: 209vw;
		height: 181.6vw;
		top: -745px;
	}
	.search .section-head::before {
		width: calc(100% - 82px);
	}
	.search-map {
		margin-bottom: 10px;
		padding: 20px 0;
		min-height: unset;
		background: url(/sushitsune/img/bg_search_tab.png) no-repeat center
			top/500px auto;
	}
	.search-map .bg-sushi-left {
		width: 122px;
		top: -27px;
		left: 23px;
	}
	.search-map .bg-sushi-right {
		width: 152px;
		right: 12px;
		bottom: -27px;
	}
	.search-list {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 20px;
		padding: 40px 50px;
	}
	.search-link {
		width: 90%;
		position: static;
		transform: unset;
	}
	.search-link a {
		width: 100%;
		max-width: 356px;
		min-height: 60px;
		height: auto;
		margin: 0 auto;
		display: grid;
		align-items: center;
		border-radius: 10px;
		padding: 16px;
	}
	.search-link a::after {
		left: 30px;
	}
}
@media only screen and (max-width: 560px) {
	.search-map {
		background: url(/sushitsune/img/bg_search_sp.png) no-repeat center
			top/contain;
	}
	.search {
		margin-top: -682px;
	}
	.search .section-bg {
		padding-top: 636px;
	}
	.search .circle-bg::before {
		height: 141.6vw;
		top: -460px;
	}
	.search-link a {
		max-width: 216px;
	}
	.search-map .bg-sushi-right {
		right: -48px;
		bottom: -45px;
	}
	.search-map .bg-sushi-left {
		top: -17px;
		left: -38px;
	}
	.search-list {
		padding: 30px 0;
	}
}
/* 職種から探す */
.job {
	width: 100%;
	margin-top: 30px;
	padding: 50px 50px;
	background: var(--navy);
	border-radius: 40px;
	color: #fff;
	position: relative;
}

.job-heading {
	text-align: center;
	font-size: 23px;
	font-weight: bold;
	margin: 0 0 40px;
}

.job-section {
	margin: 0 0 70px;
}

.job-section + .job-section {
	margin-bottom: 0;
}

.job .bg-sushi-left,
.job .bg-sushi-right {
	position: absolute;
	z-index: 1;
}
.job .bg-sushi-right {
	bottom: 255px;
	right: -28px;
	width: 154px;
}
.job .bg-sushi-left {
	top: 138px;
	left: -36px;
	width: 132px;
}

.job-type {
	padding: 12px;
	text-align: center;
	font-weight: bold;
	margin: 0 0 20px;
	position: relative;
	font-size: 20px;
}

.job-type::before,
.job-type::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 1px;
	left: 0;
	background-color: #fff;
}

.job-type::before {
	top: 0;
}

.job-type::after {
	bottom: 0;
}

.job-list {
	margin-top: 40px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 56px;
}

.job-title {
	font-size: 20px;
	font-weight: bold;
	margin: 0 0 40px;
	color: var(--yellow);
	text-align: center;
}

.job-title.yellow {
	color: var(--yellow);
}

.job-desc {
	margin: 0 0 30px;
	color: #fff;
	line-height: 1.6;
}

.job-link {
	width: 100%;
	margin: 0 auto;
	position: relative;
	padding: 5px;
	border-radius: 6px;
	text-decoration: none;
	background: #fff;
	box-sizing: border-box;
}

.job-link-inner {
	min-height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	height: 100%;
	width: 100%;
	border: 2px solid var(--navy);
	border-radius: 3px;
	background: #fff;
	color: var(--navy);
	font-weight: bold;
	box-sizing: border-box;
	padding: 0 20px;
	display: grid;
	align-items: center;
	text-align: center;
	line-height: 1.4;
	font-size: 18px;
}

.job-link-inner::after {
	font-family: recop-iconfonts;
	content: "\e841";
	position: absolute;
	right: 20px;
	font-size: 24px;
	font-weight: normal;
	color: var(--navy);
}

.job-link-text {
	text-align: center;
	width: 100%;
	z-index: 1;
}

@media (max-width: 823px) {
	.job {
		padding: 30px;
		border-radius: 27px;
	}
	.job .bg-sushi-right {
		bottom: 39%;
		right: -76px;
		width: 141px;
	}
	.job .bg-sushi-left {
		top: 108px;
		left: -41px;
		width: 121px;
	}
	.job-list {
		margin-top: 0;
		grid-template-columns: 1fr;
		gap: 36px;
	}
	.job-heading {
		margin-bottom: 21px;
		font-size: 21px;
	}
	.job-title {
		margin-bottom: 20px;
		font-size: 18px;
	}
	.job-link {
		padding: 3px;
		font-size: 18px;
	}
	.job-link-inner {
		min-height: 64px;
	}
	.job-link-inner::after {
		right: 15px;
	}
	.job-type {
		margin-bottom: 33px;
	}
	.job-desc {
		margin-bottom: 26px;
	}
	.job-section {
		margin-bottom: 0;
	}
	.job-section + .job-section {
		margin-top: 28px;
	}
}
/**************************************************************
    キャリアステップ
***************************************************************/
#step .section-head::before {
	width: calc(100% - 580px);
}
#step .section-subttl {
	margin-bottom: 5px;
}
#step .section-head::before {
	bottom: 11px;
}

.section-ttl--step {
	line-height: 1.3;
}

.career {
	width: 100%;
	margin: 65px auto 70px;
	background: #fff;
	line-height: 1.4;
}

.career-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	width: 100%;
	margin: 0 auto;
	gap: 10px;
}

.career-item {
	text-align: center;
	padding: 0 63px 0 0;
	position: relative;
}

.career-item:last-of-type {
	padding-right: 0;
}

.career-label {
	width: 112px;
	height: 112px;
	border-radius: 50%;
	background: var(--navy);
	color: var(--yellow);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	font-size: 20px;
	position: absolute;
	top: 0;
	left: 0;
}

.career-item::before {
	content: "";
	position: absolute;
	top: 60px;
	left: 122px;
	width: calc(100% - 128px); /* 線の長さ */
	height: 2px; /* 線の太さ */
	background-color: var(--navy);
	transform: translateY(-50%);
}

.career-item::after {
	content: "";
	position: absolute;
	top: 60px;
	right: 0;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 19px solid var(--navy);
}

.career-item:last-of-type::before,
.career-item:last-of-type::after {
	content: none;
}

.career-img {
	width: 344px;
	height: auto;
	margin-bottom: 20px;
}

.career-lead {
	color: var(--navy);
	font-weight: bold;
	margin: 0 0 20px;
	font-size: 20px;
}

.section-ttl--small {
	font-size: 30px;
	display: block;
}

.career-desc {
	color: var(--text);
	line-height: 1.8;
}

@media only screen and (min-width: 1220px) {
	.career-list {
		grid-template-columns: 1fr 1fr 344px;
	}
}
@media only screen and (min-width: 1058px) {
	.career-textbx {
		max-width: 323px;
		margin: 0 auto;
	}
}
@media only screen and (min-width: 1058px) and (max-width: 1219px) {
	.career-list {
		grid-template-columns: 334px 334px 271px;
		justify-content: center;
	}
	.career-img {
		max-width: 271px;
	}
}
/* -----------▼SP表示------------- */
@media (max-width: 1057px) {
	.career {
		margin-bottom: 0;
	}
	.career-item {
		padding: 0;
	}
	.career-label {
		width: 102px;
		height: 102px;
		font-size: 18px;
	}
	.career-list {
		grid-template-columns: 1fr;
	}
	.career-item::before {
		width: 1px;
		height: 100%;
		top: 0;
		left: 48px;
		transform: none;
	}
	.career-item::after {
		top: unset;
		bottom: 0;
		left: 39px;
		transform: rotate(90deg);
	}
	.career-textbx {
		margin-top: -90px;
		padding: 0 0 35px 86px;
	}
}
@media only screen and (max-width: 767px) {
	#step .section-head::before {
		width: calc(100% - 125px);
	}
	.section-ttl--small {
		font-size: 25px;
	}
}
/**************************************************************
    system
***************************************************************/
#system .section-head::before {
	width: calc(100% - 467px);
}

.system-content {
	width: 100%;
	margin: 60px 0;
	background: var(--navy);
	color: #fff;
	box-sizing: border-box;
	line-height: 1.8;
}

.system-main {
	min-height: 279px;
	background: #fff;
	border-radius: 24px;
	display: grid;
	grid-template-columns: 1fr 334px;
	gap: 50px;
	align-items: center;
	padding: 49px;
	margin-bottom: 60px;
	box-sizing: border-box;
	color: var(--text);
	position: relative;
}

.system-text p {
	margin: 0;
}

.system-img {
	max-width: 334px;
	position: absolute;
	bottom: 20px;
	right: 40px;
}

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

.system-heading {
	width: -moz-fit-content;
	width: fit-content;
	text-align: center;
	font-weight: bold;
	margin: 0 auto 34px;
	position: relative;
	font-size: 23px;
}

.system-heading::before,
.system-heading::after {
	content: "";
	display: inline-block;
	width: 40px;
	height: 2px;
	background: #fff;
	vertical-align: middle;
	margin: 0 10px;
}

.system-heading::before {
	transform: rotate(-305deg);
}

.system-heading::after {
	transform: rotate(305deg);
}

.system-list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.system-item {
	border: 3px solid #fff;
	border-radius: 24px;
	padding: 30px 50px 41px;
	text-align: center;
}

.system-title {
	font-weight: bold;
	margin: 0 0 20px;
	font-size: 23px;
}

.system-icon img {
	width: 207px;
	height: auto;
	margin-bottom: 28px;
}

.system-desc {
	color: #fff;
	text-align: left;
}

@media (max-width: 767px) {
	#system .section-head::before {
		width: calc(100% - 78px);
	}
	.system-heading {
		margin-bottom: 30px;
		line-height: 1.4;
	}
	.system-heading::before,
	.system-heading::after {
		position: absolute;
		bottom: 21px;
	}
	.system-heading::before {
		left: -50px;
	}
	.system-heading::after {
		right: -50px;
	}
	.system-title {
		margin-bottom: 25px;
	}
	.system-content {
		margin: 55px 0 0;
	}
	.system-main {
		margin-bottom: 30px;
		padding: 220px 30px 30px;
		grid-template-columns: 1fr;
	}
	.system-item {
		padding: 30px;
	}
	.system-list {
		grid-template-columns: 1fr;
		gap: 30px;
	}
	.system-img {
		width: 254px;
		bottom: unset;
		top: -72px;
		right: unset;
		left: 50%;
		transform: translateX(-50%);
	}
	.system-icon img {
		width: 190px;
	}
}
/**************************************************************
    appeal
***************************************************************/
.appeal-content {
	width: 100%;
	margin: 70px auto 75px;
	box-sizing: border-box;
}

.appeal-list {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	justify-content: center;
	margin: 0;
	padding: 0;
	list-style: none;
}

.appeal-item {
	width: 100%;
	max-width: 360px;
	height: auto;
	background: #eaf7ff;
	border-radius: 50px;
	text-align: center;
	padding: 30px 20px;
	box-sizing: border-box;
}

.appeal-tags {
	width: 100%;
	display: flex;
	gap: 10px;
	justify-content: center;
	margin-bottom: 29px;
}
.appeal-tag {
	width: 100%;
	min-height: 44px;
	display: grid;
	align-items: center;
	background: var(--navy);
	color: #fff;
	padding: 10px 13px;
	border-radius: 999px;
	font-weight: bold;
	white-space: nowrap;
}

.appeal-tag.blue {
	background: #027997;
}

.appeal-title {
	color: var(--navy);
	font-weight: bold;
	margin-bottom: 20px;
	font-size: 23px;
	line-height: 1.4;
}

.appeal-img {
	height: 119px;
	margin-bottom: 22px;
}

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

.appeal-desc {
	color: var(--text);
	line-height: 1.8;
	text-align: left;
}

@media only screen and (max-width: 767px) {
	.appeal-content {
		margin: 53px auto 30px;
	}
	.appeal-item {
		padding: 30px;
		border-radius: 27px;
	}
	.appeal-tag {
		min-height: 44px;
		display: grid;
		align-items: center;
	}
}
/**************************************************************
    NUMBER
***************************************************************/
#number .section-head::before {
	width: calc(100% - 366px);
}

.section-head--number {
	position: relative;
}

.section-head--number::after {
	content: "";
	position: absolute;
	aspect-ratio: 1/1;
	width: 23%;
	max-width: 257px;
	max-height: 176px;
	bottom: -58px;
	right: -77px;
	background: url(/sushitsune/img/number_01.png) no-repeat 0 0/100% auto;
}

.number-content {
	width: 100%;
	margin: 79px auto 0;
	box-sizing: border-box;
}

.number-list {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	justify-content: center;
	position: relative;
}

.number-list::after {
	content: "";
	position: absolute;
	aspect-ratio: 1/1;
	width: 11%;
	max-width: 110px;
	max-height: 80px;
	bottom: -63px;
	left: -27px;
	background: url(/sushitsune/img/number_02.png) no-repeat 0 0/100% auto;
}

.number-item {
	max-width: 373px;
	background: #fff;
	border-radius: 32px;
	text-align: center;
	padding: 40px 20px;
	box-sizing: border-box;
}

.number-title {
	padding-bottom: 27px;
	color: var(--navy);
	font-weight: bold;
	margin-bottom: 46px;
	font-size: 23px;
	line-height: 1.4;
	display: grid;
	align-items: center;
	border-bottom: 1px solid var(--navy);
}

.number-line {
	border: none;
	height: 1px;
	width: 100%;
	max-width: 160px;
	background: var(--navy);
	margin: 0 auto 24px;
}

.number-value {
	display: flex;
	justify-content: center;
	align-items: flex-end;
	gap: 24px;
	margin-bottom: 47px;
}

.number-label {
	margin-bottom: 17px;
	font-weight: bold;
	color: var(--navy);
	font-size: 30px;
}

.number-main {
	color: var(--navy);
	font-size: 150px;
	line-height: 1;
	letter-spacing: -0.1em;
}

.no-space {
	letter-spacing: normal;
}

.number-desc {
	color: var(--text);
	line-height: 1.8;
	text-align: left;
}

@media only screen and (max-width: 767px) {
	#number .section-head::before {
		width: calc(100% - 84px);
	}
	.number-content {
		margin: 50px auto 0;
	}
	.section-head--number::after {
		width: 176px;
		bottom: -139px;
		right: -62px;
		z-index: 1;
	}
	.number-item {
		padding: 30px 20px;
	}
	.number-value {
		margin-bottom: 20px;
		gap: 16px;
	}
	.number-list {
		gap: 30px;
	}
	.number-title {
		margin-bottom: 24px;
	}
	.number-list::after {
		width: 29%;
	}
}
/**************************************************************
    interview
***************************************************************/
#interview {
	line-height: 1.7;
	overflow: hidden;
}
#interview .section-head::before {
	width: calc(100% - 450px);
}
#interview .section-head {
	line-height: 1;
}

.section-body--intv {
	margin-top: 70px;
}

.intv-desc--ttl {
	color: var(--text);
}

.c-acnt_flex img {
	border-radius: 50px;
}

.c-acnt_accBtn {
	bottom: -20px;
	color: var(--navy);
	border: 2px solid var(--navy);
}

.intv-kv {
	position: relative;
}

.intv-kv--img img {
	border-radius: 50px;
}

.intv-kv .kv-balloon {
	width: 345px;
	height: 347px;
	top: -30px;
	transform: unset;
	right: 50px;
}

.intv-kv .kv-text {
	margin-top: 0;
	font-size: 29px;
}

.intv-name {
	position: absolute;
	right: 50px;
	bottom: 30px;
	font-size: 18px;
	font-weight: bold;
}

.accordion-kv--01 .intv-name {
	text-shadow: 2px 2px 0 #ccb29c, -2px 2px 0 #ccb29c, 2px -2px 0 #ccb29c,
		-2px -2px 0 #ccb29c, 0 2px 0 #ccb29c, 2px 0 0 #ccb29c, -2px 0 0 #ccb29c,
		0 -2px 0 #ccb29c;
}

/* PCはアコーディオン解除 */
@media (min-width: 768px) {
	.intv-accordion .c-acnt_accordion {
		--accordion-dual-button-default-height: auto;
	}
	.intv-accordion.c-acnt_accordion .c-acnt_accBtn {
		display: none !important;
	}
	.intv-accordion.c-acnt_accordion.is-open [data-accordion-dual-button-detail] {
		height: auto !important;
		overflow: visible !important;
	}
	.c-acnt_flex img {
		border-radius: 27px;
	}
}
@media only screen and (max-width: 767px) {
	.section-body--intv {
		margin-bottom: 50px;
	}
	#interview .section-head::before {
		width: calc(100% - 100px);
	}
	.intv-accordion .intv-detail.is-open {
		padding: 30px 0 0;
	}
	.intv-kv {
		margin-bottom: 130px;
	}
	.c-acnt_flex:first-of-type {
		margin-bottom: 24px;
	}
	.section-body--intv {
		margin-top: 50px;
	}
	.accordion-kv--01 .intv-name {
		text-shadow: none;
	}
	.intv-kv .kv-balloon {
		top: unset;
		bottom: -100px;
		right: -53px;
	}
	.intv-name {
		bottom: -131px;
		right: 30px;
	}
	.c-acnt_flex {
		gap: 30px;
	}
	.c-acnt_flex figure {
		order: 1;
	}
	.c-acnt_flex .intv-desc {
		order: 2;
	}
}
@media only screen and (min-width: 768px) and (max-width: 1103px) {
	.intv-kv .kv-balloon {
		width: 245px;
		height: 241px;
		top: -50px;
	}
	.intv-kv .kv-text {
		font-size: 20px;
	}
}
/**************************************************************
    about
***************************************************************/
.section-body--about {
	padding: 50px 50px;
	background: #fff;
	border-radius: 50px;
}

.about-content {
	margin-top: 70px;
	display: grid;
	gap: 40px;
}

.section-text--about {
	margin-bottom: 41px;
	text-align: center;
}

.about-heading {
	text-align: center;
	font-weight: bold;
	margin-bottom: 50px;
	position: relative;
	font-size: 23px;
	color: var(--navy);
}

.about-heading::before,
.about-heading::after {
	content: "";
	display: inline-block;
	width: 40px;
	height: 2px;
	background: var(--navy);
	vertical-align: middle;
	margin: 0 3px;
}

.about-heading::before {
	transform: rotate(-305deg);
}

.about-heading::after {
	transform: rotate(305deg);
}

.about-sushitsune {
	width: 100%;
	box-sizing: border-box;
}

.about-sushitsune-inner {
	display: grid;
	grid-template-columns: 1fr 1fr;
	width: 100%;
	margin: 0 auto;
	gap: 40px;
}

.about-text {
	display: flex;
	flex-direction: column;
	gap: 45px;
	line-height: 1.7;
}

.about-lead {
	color: var(--navy);
	font-weight: bold;
	margin-bottom: 27px;
	font-size: 20px;
	line-height: 1.4;
}

.about-desc {
	color: var(--text);
	margin: 0;
}

.about-img img {
	width: 100%;
	height: auto;
	border-radius: 16px;
	display: block;
}

.section-body--sushitsune,
.section-body--company {
	position: relative;
}

.section-body--sushitsune::before {
	content: "";
	position: absolute;
	aspect-ratio: 1/1;
	width: 11%;
	max-width: 129px;
	max-height: 70px;
	top: 38px;
	left: 62px;
	background: url(/sushitsune/img/about_02.png) no-repeat 0 0/100% auto;
}

.section-body--sushitsune::after {
	content: "";
	position: absolute;
	aspect-ratio: 1/1;
	width: 17%;
	max-width: 171px;
	max-height: 154px;
	top: -58px;
	right: 47px;
	background: url(/sushitsune/img/about_01.png) no-repeat 0 0/100% auto;
}

.section-body--company {
	overflow: hidden;
}

.section-body--company::before,
.section-body--company::after {
	content: "";
	position: absolute;
	aspect-ratio: 1/1;
	width: 42%;
	max-width: 475px;
	max-height: 464px;
	bottom: 27%;
	left: -170px;
	background: url(/sushitsune/img/im_circle.png) no-repeat 0 0/100% auto;
	z-index: 0;
}

.section-body--company::after {
	max-width: 279px;
	max-height: 298px;
	bottom: -71px;
	left: unset;
	right: -114px;
	transform: rotate(211deg);
}

.list-ttl {
	padding: 12px;
	text-align: center;
	font-weight: bold;
	margin: 0 0 50px;
	position: relative;
	font-size: 20px;
	color: var(--navy);
}

.list-ttl::before,
.list-ttl::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 1px;
	left: 0;
	background-color: var(--navy);
}

.list-ttl::before {
	top: 0;
}

.list-ttl::after {
	bottom: 0;
}

.about-inner {
	position: relative;
	z-index: 1;
}

@media only screen and (max-width: 911px) {
	.business-list {
		grid-template-columns: 1fr;
		grid-gap: 70px;
	}
	.business-item {
		grid-gap: 20px;
		position: relative;
	}
	.business-list
		.business-item:not(:last-of-type)
		.business-item--circle::before,
	.business-list
		.business-item:not(:last-of-type)
		.business-item--circle::after {
		display: none;
	}
	.business-list .business-item:not(:last-of-type)::before,
	.business-list .business-item:not(:last-of-type)::after {
		content: "";
		width: 30px;
		height: 2px;
		display: inline-block;
		background: #334352;
		border-radius: 2px;
		position: absolute;
		bottom: -35px;
		left: 50%;
	}
	.business-list .business-item:not(:last-of-type)::before {
		transform: translateX(-50%) rotate(45deg);
	}
	.business-list .business-item:not(:last-of-type)::after {
		transform: translateX(-50%) rotate(-45deg);
	}
}
@media (max-width: 911px) {
	.about-sushitsune-inner {
		grid-template-columns: 1fr;
		gap: 30px;
	}
	.about-img {
		order: 1;
	}
	.about-text {
		order: 2;
		gap: 24px;
	}
	.about-lead {
		margin-bottom: 20px;
	}
	.section-body--about {
		padding: 30px 30px;
	}
	.about-heading {
		width: -moz-fit-content;
		width: fit-content;
		margin: 0 auto 34px;
		font-size: 20px;
		text-align: center;
		line-height: 1.4;
	}
	.about-heading::before,
	.about-heading::after {
		margin: 0 5px;
		width: 26px;
		position: absolute;
		bottom: 12px;
	}
	.about-heading::before {
		left: -37px;
	}
	.about-heading::after {
		right: -37px;
	}
	.about-content {
		gap: 30px;
	}
	.list-ttl {
		margin-bottom: 30px;
	}
	.section-text--about {
		margin-bottom: 24px;
	}
	.section-body--sushitsune::before {
		width: 38%;
		max-width: 111px;
		max-height: 60px;
		top: unset;
		bottom: -22px;
		right: -23px;
		left: unset;
	}
	.section-body--sushitsune::after {
		width: 38%;
		max-width: 121px;
		max-height: 109px;
		top: -91px;
		right: -40px;
	}
	.section-body--company {
		padding-bottom: 0;
	}
	.section-body--company::before {
		width: 111%;
		max-width: 317px;
		max-height: 310px;
		left: -111px;
		bottom: unset;
		top: 30%;
	}
	.section-body--company::after {
		width: 111%;
		max-width: 188px;
		max-height: 184px;
		bottom: 26%;
		right: -83px;
		transform: rotate(166deg);
	}
}
/**************************************************************
    FAQ
***************************************************************/
#faq {
	margin-bottom: 100px;
}
#faq .section-head::before {
	width: calc(100% - 238px);
}

.faq-list {
	max-width: 878px;
	margin: 70px auto 0;
}

.faq-list dd {
	background-color: #e3f2fc;
	border-radius: 50px;
}

.faq-list dt {
	line-height: 1.4;
}

.faq-list dt::before {
	background: var(--navy);
	border-radius: 50%;
}

.faq-list dd::before {
	color: var(--navy);
}

.faq-link {
	text-decoration: underline;
	color: var(--text);
}

.faq-link:active,
.faq-link:visited {
	color: var(--text) !important;
}

.faq-link:hover {
	text-decoration: none;
}

@media only screen and (max-width: 767px) {
	#faq {
		margin-bottom: 40px;
	}
	#faq .section-head::before {
		width: calc(100% - 88px);
	}
	.faq-list {
		margin-top: 63px;
		gap: 46px;
	}
	.faq-list dt {
		padding-left: 48px;
		font-size: 18px;
		font-weight: bold;
		line-height: 1.8;
	}
	.faq-list dt::before {
		width: 55px;
		height: 55px;
		top: 16px;
		line-height: 2.5;
	}
	.faq-list dd {
		padding: 27px 36px;
	}
	.faq-list dd::before {
		font-size: 25px;
	}
}
/**************************************************************
    btn-area
***************************************************************/
.btn-area-badge {
	background: var(--navy);
}

/**************************************************************
    topfloat
***************************************************************/
.lp #ul_multi_float li:not(#li_pagetop) a {
	background-color: var(--yellow);
	border: 2px solid #fff;
	border-radius: 5px;
	color: #333 !important;
}

.lp #ul_multi_float li:not(#li_pagetop) a::after {
	content: "\e841";
	width: auto;
	height: auto;
	background: none;
	font-size: 25px;
	font-weight: normal;
	font-family: recop-iconfonts;
	color: #333;
}

.lp #ul_multi_float li:not(#li_pagetop) a:hover::after {
	color: #333;
}

.lp #ul_multi_float li#li_pagetop a {
	background-color: var(--navy);
	border: 2px solid #fff;
	border-radius: 5px;
	padding: 15px 0 0;
}

.lp #ul_multi_float li#li_pagetop a::before {
	content: "\e840";
	width: auto;
	height: auto;
	background: none;
	font-size: 25px;
	font-weight: normal;
	font-family: recop-iconfonts;
	color: #fff;
	rotate: 0deg;
	top: 3px;
	left: 50%;
}

/**************************************************************
    footer
***************************************************************/
#footer::before {
	background: url(/sushitsune/img/bg_wave_02.png) repeat left top/70px auto;
}

@media only screen and (min-width: 735px) and (max-width: 767px) {
	#footer,
	footer {
		min-height: 127px;
	}
	#footer {
		margin-top: -400px;
		padding-top: 400px;
	}
	#main .space {
		padding-bottom: 20px;
	}
}
