/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Oct 22 2025 | 23:54:15 */
/* トップページ */

.font-noto-serif {
	font-family: "Noto Serif JP", "Noto Serif",Georgia, "Times New Roman", serif;
}
.font-mincho {
	font-family: YuMincho, 	"Hiragino Mincho ProN", serif;
}
body {
	font-family: "Noto Sans", "Noto Sans JP",system-ui, -apple-system, "Segoe UI", Roboto,"Helvetica Neue", Arial, sans-serif;
	font-weight: 400;
}
#content {
	margin-bottom: 0;
}
@media (min-width: 960px) {
	.sp-only {
		display: none;
	}
}
@media (max-width: 959px) {
	.pc-only {
		display: none;
	}
}

/* ボタン */
.is-style-btn_line a {
    background-image: linear-gradient(90deg, rgba(144, 245, 154, 1), rgba(4, 202, 255, 1));
	padding: 20px 64px;
	color: #fff!important;
	border-color: #ddd!important;
	box-shadow: 1px 1px 3px #ccc;
	transition: .4s;
}
@media (hover: hover) {
	.is-style-btn_line a:hover {
		background-image:  linear-gradient(25deg, #fff 0%, #fff 100%);
		border-color: var(--color_main)!important;
		color: var(--color_main)!important;
	}
}
a {
	transition: .4s;
}
@media (hover: hover) {
	a:hover {
		opacity: .6;
	}
}

/* メインビジュアル */
#main_visual .p-mainVisual__inner {
	object-position: right top;
	width: 92vw!important;         
	margin-left: auto;
	margin-right: 0;
	border-radius: 0 0 0 200px;
}
@media (max-width: 599px) {
	#main_visual .p-mainVisual__inner {
		object-position: center;
		width: 96%!important;         
	}	
}
#main_visual .mainVisual-img,
#main_visual .mainVisual-text,
#main_visual .mainVisual-copy {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
#main_visual .mainVisual-img {
	top: 60%;
	transform: translatey(-70%);
	left: 80px;
	width: 300px;
	z-index: 2;
}
@media (max-width: 959px) {
	#main_visual .mainVisual-img {
		top: 65%;
		left: 10px;
		width: 150px;
	}
}
#main_visual .mainVisual-text {
	top: 60%;
	left: 7vw;
	display: flex;
	flex-direction: column;
	gap: 20px;
	z-index: 1;
}
@media (max-width: 959px) {
	#main_visual .mainVisual-text {
		top: 65%;
		left: 1vw;
		gap: 10px;
	}
}
#main_visual .mainVisual-text p {
	background-color: #fff;
	font-size: 50px;
	padding: 20px 30px 20px 70px;
	align-self: flex-start;
	letter-spacing: .15em;
	line-height: 1;
	font-family: YuMincho, 	"Hiragino Mincho ProN", serif;
}
@media (max-width: 959px) {
	#main_visual .mainVisual-text p {
		font-size: 35px;
		padding: 10px 15px 10px 30px;
	}
}
#main_visual .mainVisual-copy {
	top: 50%;
	left: 10px;
	transform: translatey(-50%);
	writing-mode: vertical-rl;
	font-size: 12px;
	color: #a0bac8;
	z-index: 1;
}
@media (max-width: 959px) {
	#main_visual .mainVisual-copy {
		display: none;
	}
}
@media (min-width: 960px) {
	.l-header__logo {
		position: absolute;
		top: 20px;
		left: 40px;
	}
	#header {
		margin-top: 40px;
	}
}
#gnav a {
	padding: 20px;
	color: #333;
}
#gnav a span {
	font-size: 18px;
}
.contact-btn a {
	background-color: #f56f61;
	border: 1px solid #f56f61;
	border-radius: 40px;
	padding: 20px 50px;
	color: #fff;
	transition: .3s;
	display: flex;
	flex-direction: column;
	align-items: center;
}
@media (hover: hover) {
	.contact-btn a:hover {
		background-color: #fff;
		color: #f56f61;
	}
}
.contact-btn a .en,
.contact-btn a .jp {
	line-height: 1;
}
.contact-btn a .en {
	font-size: 18px;
	font-weight: bold;
	letter-spacing: .3em;
}
.contact-btn a .jp {
	font-size: 12px;
	letter-spacing: .2em;
}

/* チーム */
#content .top-team {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	left: auto;
	right: auto;
}
#content .top-team::before {
	position: absolute;
	content: "";
	background-color: #f7f7f7;
	width: 80%;
	height: 100%;
	bottom: 0;
	right: 0;
}
@media (max-width: 959px) {
	#content .top-team::before {
		width: 90%;
	}
}
#content .top-team .left-area {
	padding-left: 40px;
	padding-right: 40px;
}
@media (max-width: 959px) {
	#content .top-team .left-area {
		padding-left: 0;
		padding-right: 3vw;
	}
}
#content .top-team .left-area figure {
	width: 200px;
}
@media (max-width: 959px) {
	#content .top-team .left-area figure {
		width: 140px;
		padding-left: 20px;
	}
}
#content .top-team .left-area .content {
	padding-left: 60px;
}
#content .top-team .left-area h2 {
	font-size: 34px;
	font-weight: normal;
	letter-spacing: .3em;
}
@media (max-width: 959px) {
	#content .top-team .left-area h2 {
		font-size: 28px;
		margin-bottom: 20px!important;
	}
}
#content .top-team .left-area hr {
	margin-left: 0;
}
#content .top-team .right-area figure img {
	object-fit: contain;
	width: 100%;
}
@media (max-width: 959px) {
	#content .top-team .swell-block-button {
		margin-bottom: 60px!important;
	}
}

/* 背景 */
#content .top-bg {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	left: auto;
	right: auto;
	padding-left: 5vw;
	padding-right: 5vw;
}
@media (max-width: 959px) {
	#content .top-bg {
		padding-left: 0;
		padding-right: 0;
	}
}

/* HIDA歯科医院メッセージ */
#content .top-message h2 {
	font-size: 24px;
	font-weight: normal;
	letter-spacing: .2em;
}
@media (max-width: 959px) {
	#content .top-message h2 {
		font-size: 20px;
	}
}
#content .top-message .catch {
	font-size: 50px;
	margin-bottom: 20px;
}
@media (max-width: 959px) {
	#content .top-message .catch {
		font-size: 30px;
	}
}

/* インタビュー */
#content .top-interview {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	left: auto;
	right: auto;
}
#content .top-interview .swell-block-fullWide__inner {
	padding: 0 40px;
}
@media (max-width: 959px) {
	#content .top-interview .swell-block-fullWide__inner {
		padding: 0 10px;
	}
}
#content .top-interview h2 {
	font-size: 50px;
	font-weight: normal;
	font-style: italic;
	letter-spacing: .3em;
	font-weight: 300;
}
@media (max-width: 959px) {
	#content .top-interview h2 {
		font-size: 30px;
	}
}
#content .top-interview h3 {
	font-weight: normal;
	font-style: italic;
	letter-spacing: .3em;
}
#content .top-interview .tag p {
	font-weight: normal;
	font-size: 12px;
	margin-right: 10px;
	color: var(--color_main);
}
@media (max-width: 959px) {
	#content .top-interview .tag {
		display: block;
	}
}
#content .top-interview .swell-block-columns__inner {
	justify-content: center;
}
#content .top-interview .swell-block-column {
	background: #fff;
	border-radius: 40px;
	box-shadow: 0 0 5px #aaa;
	padding: 20px;
}


/* 福利厚生 */
#content .top-fukuri {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 0 3vw;
	left: auto;
	right: auto;
}
#content .top-fukuri h2 {
	font-size: 50px;
	font-weight: normal;
	font-style: italic;
	letter-spacing: .2em;
	font-weight: 300;
}
@media (max-width: 959px) {
	#content .top-fukuri h2 {
		font-size: 30px;
	}
}
#content .top-fukuri .title-wrap {
	justify-content: space-between;
	align-items: center;
}
@media (max-width: 959px) {
	#content .top-fukuri .title-wrap {
		display: block;
	}
}
#content .top-fukuri .wp-block-table {
	box-shadow: 0 2px 8px rgba(0, 0, 0, .1), 0 4px 8px -4px rgba(0, 0, 0, .2);
}
#content .top-fukuri th {
	padding: 10px 20px;
	font-weight: 300;
}
#content .top-fukuri td {
	padding: 10px 20px;
	font-weight: 300;
}


/* 職種 */
#content .top-job {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	left: auto;
	right: auto;
}
#content .top-job::before {
	position: absolute;
	width: 50vw;
	height: 100%;
	content: "";
	top: 0;
	left: 0;
	background-image: url(https://recruit.webup.jp/wp-content/uploads/2025/10/job-bg2.webp);
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
@media (min-width: 782px){
	#content .top-job .wp-block-columns {
		width: 80vw;
		margin-left: auto;
	}
}
#content .top-job h2 {
	font-size: 50px;
	font-weight: normal;
	font-style: italic;
	letter-spacing: .2em;
	font-weight: 300;
}
@media (max-width: 959px) {
	#content .top-job h2 {
		font-size: 30px;
	}
}
#content .top-job .content p:not(:last-of-type) {
	border-bottom: 1px solid #ddd;
}
/* このブロック全体（2カラム）をグリッドにして等高にする */
@media (min-width: 782px){
	#content .top-job .wp-block-columns {
		display: grid !important;
		grid-template-columns: 40% 60% !important;
		align-items: stretch !important;
		gap: var(--wp--style--block-gap, 1.5rem);
	}
}
/* 左カラム：中の <p> を縦方向に均等配置 */
#content .top-job .wp-block-columns .content {
	display: flex !important;
	flex-direction: column !important;
	justify-content: space-between !important;
	min-height: 100% !important;
	background-color: #fff;
}
@media (min-width: 782px){
	#content .top-job .wp-block-columns .content p {
		margin: 0 0 0 20px!important;
		height: 100%;
		display: grid;
		place-items: center;
	}
}
@media (max-width: 781px){
	#content .top-job .wp-block-columns .content p {
		margin: 0 15px!important;
	}
}
#content .top-job .wp-block-columns .content a {
	color: #333;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	width: 100%;
}
@media (max-width: 781px){
	#content .top-job .wp-block-columns .content a {
		padding: 20px 0;
	}
}
/* 右カラムの画像が親の高さに素直にフィットするように調整 */
#content .top-job .wp-block-columns .wp-block-image {
	height: 100% !important;
}
/* スマホは通常の縦積みに戻す（必要ならブレークポイント調整） */
@media (max-width: 781px){
  #content .top-job .wp-block-columns {
    display: block !important;
  }
}


/* CTA */
#content .cta {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	left: auto;
	right: auto;
}
#content .cta .wp-block-columns {
	height: 600px;
	gap: 0!important;
}
#content .cta .cta-link {
	display: grid;
	place-items: center;
	transition: .3s;
}
@media (hover: hover) {
	#content .cta .cta-link:hover {
		opacity: .6;
	}
}
#content .cta .left-area .top-area {
	background: #f9f9f9;
	height: 60%;
	margin-bottom: 0;
}
#content .cta .left-area .top-area p:first-of-type {
	font-size: 34px;
	text-align: center;
	position: relative;
}
@media (max-width: 959px) {
	#content .cta .left-area .top-area p:first-of-type {
		font-size: 26px;
	}
}
#content .cta .left-area .top-area p:first-of-type::before {
	position: absolute;
	content: "";
	top: -50px;
	left: -60px;
	width: 100px;
	aspect-ratio: 272/223;
	background-image: url(https://recruit.webup.jp/wp-content/uploads/2025/10/tour.webp);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
@media (max-width: 959px) {
	#content .cta .left-area .top-area p:first-of-type::before {
		top: -70px;
		left: -40px;
		width: 80px;
	}
}
#content .cta .left-area .bottom-area {
	background: #f1f1f1;
	height: 40%;
	text-align: center;
}
#content .cta .left-area .bottom-area p:last-of-type {
	font-size: 30px;
	font-weight: 300;
	letter-spacing: .1em;
}
#content .cta .right-area  {
	background-image: url(https://recruit.webup.jp/wp-content/uploads/2025/10/cta-bg2.webp);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top left;
	text-align: center;
	color: #fff;
}
#content .cta .right-area p:first-of-type  {
	font-size: 50px;
	font-weight: 300;
	letter-spacing: .1em;
}
@media (max-width: 959px) {
	#content .cta .right-area p:first-of-type  {
		font-size: 30px;
	}
}
#content .cta .right-area p:last-of-type  {
	font-size: 10px;
}



/* フッター */
.footer img {
	width: 150px;
}
@media (max-width: 959px){
	.footer img {
		width: 100px;
	}
}

.footer a {
	color: #333;
	white-space: nowrap;
}
.footer .swell-block-columns__inner {
	width: min(100%, 800px);
	margin: 0 auto;
}
#footer {
	background-color: #fff;
}
@media (max-width: 959px){
	.footer .swell-block-column  {
		margin-left: 0;
	}
	.footer .menu-item {
		width: 50%;
	}
}







