@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;700&display=swap');

body {
    font-family: 'Zen Kaku Gothic New', sans-serif !important;
}

/* 共通 */
.colorw {color: white;}
.tac {text-align: center;}
.tar {text-align: right;}
.tal {text-align: left;}
.mb15 {margin-bottom: 10px;}
.radius {border-radius: 1rem !Important;}
.radius .c-bannerLink {border-radius: 1rem !Important;}
.img-radius img { border-radius: 15px; }
.gap05 { gap: 0.5em !important; }
@media(max-width: 781px){
.gap3-sm { gap: 3em !important; }
}
.sticky {
    position: sticky !important;
    top: 110px;
}
.is-style-btn_line a:hover {color: black !important;}
/* スマホ非表示 */
@media(max-width: 781px){
	.disnon-sm {
		display: none;
	}
}
/* PC非表示 */
@media(min-width: 782px){
	.disnon-pc {
		display: none;
	}
}

/* 見出し */
.h2-content {
	text-align: center;
	margin-bottom: 0;
}
.h2-p {
	font-size: 6em;
    font-weight: bold;
	/*color: var(--color_main);*/
/* 	font-family: auto !important; */
}
.h2-style {
	font-size: 1.7em !important;
	margin-top: 0 !important;
	margin-bottom: 1em !important;
}
.h3-style {
	margin-top: 0 !important;
	text-align: left !important;
}
.page-h2 {
	font-size: 2.5em !important;
	margin-top: 0 !important;
	margin-bottom: 1.5em !important;
}
.ap-h4 {
	margin-top: 0em !important;
}
.ap-p {
	margin-bottom: 0.25em !important;
	font-size: 0.75em;
}
.history-h3 {
	margin-top: 0 !important;
    margin-bottom: 1em !important;
    font-size: 1.1em !important;
}

.c-pageTitle__inner {
	/*text-align: center;*/
}
/* 追従サイドバー */
/* https://boonboonswell.com/entries/entry-2662.html#index_id1 */
#side-menu {
	list-style: none;
}
#side-menu li {
	margin: .5em 0 !important;
}
#side-menu a {
	color: black;
	opacity: .5;
}

/* テーブル */
.wp-block-table td, .wp-block-table th {
	padding: 1em;
	border: none;
}
/* tr:first-child {
    border-top: 1px solid #d5d5d5;
} */
tr {
    border-bottom: 1px solid #d5d5d5;
}
th {
	background: transparent !important;
}
.post_content thead td, .post_content thead th {
	color: #333;
}
@media(max-width: 959px){
	.wp-block-table th {
		padding-bottom: .5em;
	}
	.wp-block-table td:not(.has-text-align-center):not(.jisseki-tbl td) {
		padding-top: 0;
	}
}

.sticky {
    position: sticky !important;
    top: 110px;
}

.swell-block-step {
	font-weight: bold;
}

/* 共通 */

/* トップページ ************************************************************************************* */
/* ************************************************************************************************** */

/* ページ背景動画のスタイル ========== */
#page-background-video {
	bottom: 0;
	overflow: hidden;
	min-height: 100%;
	min-width: 100%;
	position: fixed;
	right: 0;
	z-index: -100;
}
#page-background-video video {
	bottom: 0;
	min-height: 100%;
	min-width: 100%;
	position: absolute;
	right: 0;
} 
#myVideo {
    top: 0;
    left: 0;
    z-index: 0;
	width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ========== ページ背景動画のスタイル */

/* KV余白 ============================ */
.top-kv {
	position: relative;
	height: 100vh;
	transform: translateY(-10rem);
}
.top-kv img {
	position: absolute;
	left: 7rem;
	bottom: 0;
	width: 450px;
}
@media(max-width: 900px){
	.top-kv img {
		left: 1.5rem;
		width: 60%;
	}
}
/* ============================ KV余白 */

/* メッセージ */
.vh50 {
	position: relative;
	height: 75vh;
}
.top-mess {
	font-size: 1.1em;
	align-content: center;
}
/*.top-mess-h {
	font-size: 2.5em;
	margin-bottom: 30px;
	font-family: serif;
}*/
.top-mess img {
	width: 800px;
	margin-bottom: 3em;
}

.top-about {
	border-radius: 1rem;
	border: 1px solid white;
	width: 95vw;
    left: 50%;
    transform: translateX(-50%);
	padding: 80px 50px !important;
}
.top-about-h2, .top-deep-h2, .top-member-h2 {
	text-align: center;
	margin: 0 !important;
}
.top-about-img {
	width: 28rem;
	position: relative;
	top: -65px;
}
.top-about .c-bannerLink__text {
	justify-content: flex-end;
}
.top-about .c-bannerLink__title, .top-kind .c-bannerLink__title {
	font-weight: bold;
	font-size: 1.6em;
    letter-spacing: 3px;
}
.top-about .c-bannerLink__description {
	font-size: 1.1em;
	letter-spacing: 2px;
}
@media(max-width: 959px){
	.top-mess > p:not(:first-child) {
		font-size: 1em;
		text-align: initial;
	}
	.top-mess-h {
		font-size: 1.8em;
	}
	.h2-p {
		font-size: 2.5em;
	}
	.top-about {
		padding: 70px 20px !important;
	}
	.top-about-img {
		width: 18rem;
		top: -30px;
	}
}

.shadow {
	/*box-shadow: 0px 15px 40px rgb(64 108 180 / 30%);*/
	box-shadow: 0px 15px 40px rgb(0 0 0 / 30%);
	
}

/* 仕事を知る */
.top-job {
	border-top-left-radius: 2rem;
	border-top-right-radius: 2rem;
}
.top-deep-img {
	width: 35rem;
	position: relative;
	top: -80px;
}
.top-kind .c-bannerLink__description {
	margin-top: 1em !important;
}
@media(max-width: 959px){
	.top-deep-img {
		width: 18rem;
    	top: -37px;
	}
	.top-kind .c-bannerLink__description {
		font-size: 0.85em;
	}
}

/* 人を知る */
.top-member-img {
	width: 45rem;
    position: relative;
    top: -70px;
}
.p-postList__item {
	width: calc(100% / 4) !important;
}
@media(max-width: 959px){
	.top-member-img {
		width: 24rem;
    	top: -35px;
	}
	.p-postList__item {
		width: 50% !important;
	}
	.swell-block-columns[data-scrollable="1"]>.swell-block-columns__inner {
		overflow: initial;
	}
}
.c-scrollHint {
	display: none;
}
.slide .p-postList__item {
	margin-bottom: 0;
}

#sample {
    width: 90%;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
	z-index: 1;
}
#base path {
    /*fill:#316092;*/ /* 塗りの色 */
	fill:#f4de20;
	/*fill:#00d1ff;*/
}
#mask path {
    fill:none; /* 塗りの色 */
    stroke:#fff; /* 線の色 */
    stroke-width:10px; /* 線幅 */
    stroke-linecap:round; /* 線端の形状 */
    stroke-linejoin:round; /* 角の形状 */
}
.svg-wrap {
	position: relative;
}

/* フッター */
.l-content {
	margin-bottom: 0;
}
.l-footer {
	/*background: url(https://tohojoho.jp/recruitment/wp-content/uploads/2024/06/img-home-company-1.jpg);
    background-size: cover;
    background-position-x: center;
	 background-position-y: center;*/
	background: transparent;
}
#before_footer_widget{
	height: 500px;
    align-content: center !important;
	place-content: center;
    width: 90%;
    margin: auto;
    max-width: 700px;
}
ul.l-footer__nav{
	color: #fff;
}
.copyright {
	font-size: initial !important;
	font-weight:bold;
	color: white;
}
/* クロストーク・現在削除中・バナー400px*/
.top-cross .c-bannerLink__title {
	content: url(https://tohojoho.jp/recruitment/wp-content/uploads/2024/07/eigyo4.png);
	width: 80%;
}
.l-footer__inner:not(.top .l-footer__inner) {
	background: url(https://tohojoho.jp/recruitment/wp-content/uploads/2024/08/DSC06883-1.jpg);
	background-size: cover;
	background-position: 50% 70%;
}
@media(max-width: 959px){
	.l-footer__widgetArea {
		height: 300px;
	}
}


/* トップページ e ************************************************************************************* */
/* ************************************************************************************************** */

/* 仕事を知る s ************************************************************************************* */
/* ************************************************************************************************** */
.work-block {
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 2px 6px rgb(0, 0, 0, .16);
	padding: 0px 40px 50px;
}
.work-h2 {
	display: flex;
	justify-content: center;
	align-items: center;
	transform: translateY(-50%);
	margin-bottom: 0 !important;
}
@media (min-width: 600px){
	.work-h2 {
		font-size: 1.75em !important;
	}
}
.work-h2 span {
	background: white;
	padding: 0 10px;
}
.work-inner {
}
.intro {
	display: flex;
	flex-wrap: wrap;
	gap: 3em;
	align-items: center;
	margin: 0 30px 2em;
	padding-top: 10px;
}
.intro-img {
	width: 300px;
	text-align: center;
}
.intro-img img {
	max-height: 250px;
}
.intro-txt {
	width: calc(100% - 300px - 3em);
}
@media(max-width: 959px){
	.work-block {
		padding: 0 30px 40px;
	}
	.intro {
		margin-left: 0;
		margin-right: 0;
	}
	.intro-img {
		width: 80%;
		margin: auto;
	}
	.intro-txt {
		width: 100%;
	}
}
.intro-title {
	font-weight: bold;
	font-size: 1.1em;
	margin-bottom: 10px;
	line-height: 1.5;
}
.intro-last {
	padding-top: 20px;
	border-top: 1px solid #aaa;
	margin-top: 20px;
}
.person {}
.person a {
	display: inline-block;
	padding: 10px 20px;
	width: 100%;
	background: black;
	color: white !important;
	text-align: center;
	border-radius: 5px;
}
.person a:hover {
	opacity: .8;
}
/* 仕事を知る e ************************************************************************************* */
/* ************************************************************************************************** */

/* 会社を知る s ************************************************************************************* */
/* ************************************************************************************************** */
.page-catch {
	text-align: center;
	font-size: 2.5em;
	font-weight: bold;
	margin-bottom: 30px;
}
.catch-plus {
	text-align: center;
}
.catch-plus img {
	width: 500px;
}
.catch-p p {
	text-align: center;
	font-size: 1.2em;
	line-height: 2;
}
.catch-p p:first-child {
	margin-bottom: 20px !important;
}
.company-presi img {
	border-radius: 10px;
	aspect-ratio: initial !important;
}
.company-mes-content {
	gap: 3em !important;
}
.company-mes-title {
	font-size: 1.8em;
    font-weight: bold;
    width: 100vw;
    position: relative;
	margin-bottom: 2em !important;
}
.comapny-mes {
	margin-top: 20px;
}
.comapny-mes p {
    line-height: 2;
}
.comapny-mes p:not(:last-child) {
	margin-bottom: 15px;
}

.o-timeline-content p {
	font-size: 0.9em;
}
.has-small-font-size {
	color: var(--color_main);
	text-align: center;
	font-weight: bold;
	font-size: initial;
}
@media(max-width: 959px){
	page-catch {
		font-size: 1.7em;
	}
	.company-mes-title {
		width: initial;
	}
}
@media screen and (max-width: 600px) {
    .wp-block-themeisle-blocks-timeline-item .o-timeline-container {
        padding-left: 60px;
        padding-right: 0px;
    }
}

/* 会社を知る e ************************************************************************************* */
/* ************************************************************************************************** */

/* 環境を知る s ************************************************************************************* */
/* ************************************************************************************************** */

.number-content {
	background: var(--color_main_thin);
	border-radius: 10px;
}
.number-h3 {
	margin-bottom: 1em !important;
}
.wp-block-column.number-content {
	padding: 30px 20px;
	font-size:1.2em;
	text-align: center;
}
.number-content .o-count-faster {
	letter-spacing: 3px;
}
o-anim-count {
	font-size: 3em;
    font-weight: bold;
    color: var(--color_main);
}

/* 研修 */
.env-h3 {
	/*font-size: 1.5em !important;
    padding-bottom: 15px !important;
    border-bottom: 1px solid #333 !important;*/
}
.env-h4 {
	color: var(--color_main) !important;
	margin: auto 0 1em !important;
}
@media(min-width: 600px){
	.env-h3 {
		font-size:1.5em !important;
	}
	.env-h4 {
		font-size:1.3em !important;
	}
}
.env-hr {
	margin: 3em 0 !important;
}
.step-up {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
    align-content: flex-start;
}
.step-up > div {
	height: 180px;
	align-content: center;
    text-align: center;
	border: 2px solid var(--color_main);
	border-radius: .5rem;
	padding: 0 10px;
}
.step1, .step4 {
	width: 7%;
}
@media(min-width: 960px){
	.step1, .step4 {
		writing-mode: tb-rl;
	}
}
.step2, .step3, .step5 {
	background: var(--color_main);
	color: white;
	width: 22.5%;
}
.step5 {
	width: 36%;
}
@media(max-width: 959px){
	.step-up {
		gap: 10px;
	}
	.step-up > div {
		width: 100%;
	}
	.step1, .step4 {
		height: 50px !important;
	}
	.step2, .step3, .step5 {
		height: 150px !important;
	}
}
.step-month {
	margin-bottom: 15px;
    font-size: .9em;
    font-weight: bold;
}
.load-year {
	font-weight: bold;
}
.load-map .wp-block-list {
	display: flex;
    flex-wrap: wrap;
    gap: 0 3em;
}
.load-map .wp-block-list li {
	margin: 0 !important;
}
.load-cate {
	background: var(--color_main);
	border-radius: .5em;
	text-align: center;
	color: white;
	padding: 10px;
}
@media(max-width: 781px){
	.load-map {
		gap: .75em !important;
		margin-bottom: 1.5em;
	}
	.load-year {
		text-align: center;
	}
}
.fukuri-tem-title {
	font-weight: bold;
}

/* 環境を知る e ************************************************************************************* */
/* ************************************************************************************************** */

/* js関係 */
@keyframes showTextFromBottom{
	0%{
		transform: translateY( 100% );

	}
	100%{
		transform: translateY( 0px );
	}
}
.textanimation span{
	animation: showText 2s backwards;
	display: inline-block;
}
.textanimation > span{
	overflow: hidden;
}
.textanimation > span > span{
	animation: showTextFromBottom 0.5s backwards;
}

/* インタビュー */
.int-catch-center {
	text-align: -webkit-center;
}
.int-catch {
	writing-mode: vertical-rl;
	font-size: 1.5em;
    font-family: serif;
    letter-spacing: 2px;
	font-weight: bold;
}
.int-flex {
	display: flex;
}
.int-people {
	font-size: 0.8em;
	font-weight: bold;
	margin-bottom: 0;
}
.int-ap {
	padding: 0px 10px;
	border: 1px solid black;
	border-radius: 50px;
	font-size: 0.8em;
    align-self: center;
}
.int-name {
	padding: 0px 10px;
}
.int-bus {
    background: #3e3a39;
    padding: 35px;
    border-radius: 15px;
    color: white;
}
.int-bus-no {
	font-weight: bold;
	font-size: 1.1em;
}
.int-bus .int-bus-no:not(:first-child) {
    padding-top: 20px;
}
.int-bus p, .int-bus-no > ul > li {
    font-size: 0.85em;
    margin-top: 5px;
	font-weight: normal;
}
.int-q {
	position: relative;
	padding-left: 45px;
	font-weight: bold;
}
.int-q:not(.first-child) {
	margin-top: 2em;
}
.int-q:before {
	position: absolute;
	top: 0.8em;
    left: 0;
    content: "";
    width: 30px;
    height: 2px;
	background: black;
}
.int-p-b {
	font-weight: bold;
	margin-bottom: .25em !important;
	font-size: .9em;
}
.int-p {
	font-size: .9em;
}
@media(max-width: 959px){
	.int-catch {
		writing-mode: initial;
	}
	.int-bus {
		padding: 35px 20px;
	}
	.int-q {
		padding-left: 30px;
	}
	.int-q:before {
		width: 20px;
	}
}

/* カスタマイズ==================================================== */
.flex-int-box {
	padding: 50px 60px;
    border-radius: 20px;
    background: #3e3a39;
	max-width: 1000px;
	margin: auto;
}
.flex-int-box h3 {
	color: white !important;
}
.flex-int-content {
	display: flex;
    flex-wrap: wrap;
    gap: 1em;
    justify-content: flex-start;
}
.flex-int-items {
	width: calc((100% - 3em) / 4);
	line-height: 0;
}
.flex-int-items a {
	transition: all .2s;
}
.flex-int-items a:hover {
	opacity: 0.9;
}
@media(max-width: 781px){
	.flex-int-box {
		padding: 30px;
	}
	.flex-int-content {
		gap: 0.5em;
	}
	.flex-int-items {
		width: calc((100% - 1em) / 3);
	}
}
.flex-int-items img {
	border-radius: 10px;
}
/*  reCAPTCHAアイコン非表示 ======================== */
.grecaptcha-badge { visibility: hidden; }