/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Aug 26 2025 | 00:46:35 */
/* ここにCSSコードを追加

例:
.example {
    color: red;
}

CSS の知識に磨きをかけるためにご覧ください。
http://www.w3schools.com/css/css_syntax.asp

コメント終わり */ 
.graduate_sp {
	display:none;
}

p {
	padding:0;
	margin:0;
}
/*  文字の真ん中の線*/
p.txtcenterline::after {
    content: "";
    display: inline-block;
    width: 110px;
    height: 1px;
    background-color: #ffffff;
    position: absolute;
    right: 0px;
    left: 150px;
    top: 10%;
    transform: translateY(-50%);
}
.toprecruit {
	position:relative;
	margin:0!important;
	padding:0!important;
}
.toprecruit_mov {
	margin:0!important;
	padding:0;
}
.toprecruit_mov video {
	filter: brightness(0.5); /* 0.5で50%暗くする */
}
.toprecruit_btn_container {
	display:flex;
	gap: 20px;
	justify-content: center;
}
.toprecruit_btn,
.toprecruit_btn2 {
	width:200px;
	border: 2px solid #FFF;
    border-radius: 30px; /* ボタンの角を丸くする */
    display: block; /* リンクをボタンのように表示 */
    padding: 12px 24px;
    background-color: #106EB8; /* ボタンの背景色 */
    color: white; /* ボタンの文字色 */
    text-align: center; /* テキストの中央揃え */
    text-decoration: none; /* リンクの下線を消す */
    font-size: 16px;
    font-weight: bold;
	transition: background 0.3s ease, color 0.3s ease;
}
.toprecruit_btn {
	background-color:#052365;
}
a.toprecruit_btn:hover,
a.toprecruit_btn2:hover{
	background: linear-gradient(to right, #29a7e1, #052365);
}
.toprecruit_btn_container .universal_btn {
	font-weight:bold;
	padding:0;
	background:#052365;
	border:1px solid white;
	color:white;
	width:160px;
}
.toprecruit_btn_container .btn2 {
	background-color: #106EB8!important;
}
.toprecruit_btn_container .inner-button {
	color:#fff;
    background:#052365;
	padding: 15px 20px;
}

.toprecruit_item {
	position:absolute;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); /* 要素を中央に寄せる */
}
.toprecruit_item h1 {
	margin-bottom:40px;
	color:white;
}

/*  ビジョンとミッション*/
.toprecruit02 h2 {
	margin-top:0!important;
	line-height:55px;
}
.toprecruit02 .toprecruit02_item {
	width:80%;
	margin:0 auto;
}

.toprecruit02_item p {
	font-size:14px;
	margin-bottom:0!important;
	color:#052365!important;
}

.toprecruit02_item .swell-block-columns__inner {
	align-items:center;
}
.toprecruit03_item h2 {
	font-size:46px;
}
.toprecruit03_item p{
	margin:0;
}
.toprecruit03_item .universal_btn a{
	background-color:white;
	color:#106EB8;
}
.toprecruit03_item .universal_btn a:hover {
	color:white;
}
.toprecruit04 p {
    line-height: 1.3;
    font-size: 0.8rem;
    margin: 0;
}
.toprecruit04 p.txtcenterline {
    font-size: 14px;
}

.toprecruit04 h2 {
	margin-bottom:50px;
}

/*  新卒対談*/
.dialogue03 {
	margin-bottom:15%;
}

.dialogue03 .c-balloon {
	gap:20px;
}

.toprecruit03_img,
.dialogue01_img{
	margin-left: auto;
    width: 95% !important;
    height: auto;
    text-align: right !important;
}
.toprecruit03_img.ceoimg img{
	transition: transform 0.3s ease; /* 拡大のアニメーション */
}
.toprecruit03_img.ceoimg:hover img{
	transform: scale(1.1); /* 1.1倍に拡大 */
}

.toprecruit03_item {
    color: white;
    position: absolute;
    width: 80%;
    top: 70%;
    left: 13%;
}

.toprecruit03_item .universal_btn {
	margin:0 auto;
	background:none;
	width:140px;
	font-weight:bold;
}
.toprecruit03_item .inner-button {
    padding: 15px 20px;
}

/*   汎用ボタン、汎用真ん中線*/
.txtcenterline {
	font-size:14px;
	font-family: "Roboto", sans-serif;
	font-weight:bold;
	color:#052365;
}
.universal_btn a:hover {
    background: linear-gradient(to right, #29a7e1, #052365);
}
.toprecruit04 .sp {
	display:none;
}
.toprecruit04 h3 {
	margin-top:1em;
	margin-bottom:1em;
	font-size:20px;
}
.toprecruit04 h3 a {
	font-size:1.2rem;
	color:#333;
}
.toprecruit04 p.txtcenterline::after {
    content: "";
    display: inline-block;
    width: 110px;
    height: 1px;
    background-color: #052365;
    position: absolute;
    right: 0px;
    left: 90px;
    top: 9px;
    transform: translateY(-50%);
}
/* ラッパーのホバーアニメーション */
.toprecruit04 .swell-block-column.swl-has-mb--s:hover, 
.others_interview .swell-block-column.swl-has-mb--s:hover {
    transform: scale(1.1); /* ラッパー全体を拡大 */
    transition: transform 0.3s ease; /* アニメーションのスムーズな変化 */
}

/* ラッパー内部の画像のサイズを固定 */
.toprecruit04 .swell-block-column.swl-has-mb--s img, 
.others_interview .swell-block-column.swl-has-mb--s img {
    width: 100%; /* 画像の大きさを固定 */
    height: auto; /* アスペクト比を保持 */
    transition: none; /* 画像自体にアニメーションを適用しない */
}
.toprecruit04 .swell-block-column.swl-has-mb--s:hover img,
.others_interview .swell-block-column.swl-has-mb--s:hover img{
	opacity:1;
	border:5px solid #106EB8;
    border-radius: 15px; /* 角丸の半径を15pxに設定、必要に応じて変更 */
    transition: border-radius 0.3s ease; /* スムーズな変化 */
}

@media (hover: none) and (pointer: coarse) {
    .toprecruit04 .swell-block-column.swl-has-mb--s:hover img,
    .others_interview .swell-block-column.swl-has-mb--s:hover img {
		border: 5px solid #106EB8;
        border-radius: 15px; /* タッチデバイスでも適用 */
        transition: border-radius 0.3s ease, border-color 0.3s ease;
    }
}

.toprecruit04 .swell-block-column.swl-has-mb--s:hover img,
.others_interview .swell-block-column.swl-has-mb--s:hover img,
.toprecruit04 .swell-block-column.swl-has-mb--s:active img,
.others_interview .swell-block-column.swl-has-mb--s:active img {
    opacity: 1;
    border: 5px solid #106EB8;
    border-radius: 15px; /* 角丸を設定 */
    transition: border-radius 0.3s ease, border-color 0.3s ease;
}


.others_interview a {
	font-size:1rem;
	color:#333;
}

.swell-block-column.swl-has-mb--s a:hover {
    color: #106EB8; /* ホバー時のh3文字色、例: トマト色 */
    transition: color 0.3s ease; /* スムーズな変化 */
}


.toprecruit05 p.txtcenterline::after {
    width: 110px;
    height: 1px;
    background-color: #ffffff;
    position: absolute;
    right: 0px;
    left: 60px;
    top: 14px;
    transform: translateY(-50%);
}
/*  80%*/
.toprecruit04 .swell-block-fullWide__inner,
.toprecruit05 .swell-block-fullWide__inner,
.toprecruit06 .swell-block-fullWide__inner,
.toprecruit07 .swell-block-fullWide__inner,
.dialogue02 .swell-block-fullWide__inner
{
	width:80%;
	margin:0 auto;
}

/* メンバー */

.toprecruit06_text-container {
	color: #052365;
  text-align: center; /* pタグをコンテナの中央に配置 */
}

.toprecruit06 .txtcenterline {
	margin-bottom:0;
}
.toprecruit06 p.txtcenterline::after {
	background-color: #052365;
    left: 60px;
    top: 11px;
}


p.underline-text {
  display: inline-block;     /* 文字の幅に合わせる */
	font-size:40px;
	font-weight:bold;
  border-bottom: 2px solid;      /* 下線をボーダーとして追加 */
  padding-bottom: 2px;           /* ボーダーと文字の間に余白 */
}

.toprecruit06_h3 {
	font-size: 24px;
	font-weight:bold;
	text-align:left!important;
}
.toprecruit06_h3::before {
    content: "Q";
	font-family: "Roboto", sans-serif;
    text-align: center;
    display: inline-block;
    width: 50px;
    font-weight: 900;
    margin-right: 8px;
    background-color: #2EA7E0;
    color: #ffffff;
    vertical-align: middle;
    padding: 4px;
    border-radius: 50%;
}


 
.toprecruit07 p.txtcenterline::after {
    width: 110px;
    height: 1px;
    background-color: #052365;
    position: absolute;
    right: 0px;
    left: 60px;
    top: 11px;
    transform: translateY(-50%);
}
.toprecruit07 .wp-block-columns {
	justify-content:space-between;
}
.toprecruit07 .universal_btn {
	margin-left:auto;
}
.toprecruit07 .inner-button {
    padding: 15px 20px;
}
.recruit_cta {
	height:800px;
}
.recruit_cta .swell-block-fullWide__inner {
	width:95%;
	margin:0 auto;
}
.recruit_cta_item {
	padding:30px;
	position:relative;
	top:-140px;
	transform: translateY(0px);
	width:85%;
	margin-left:auto;
}
	.recruit_cta_item p.txtcenterline::after {
    position: relative;
    background-color: #052365;
    top: -5px;
    left: 25px;
}

.recruit_cta_item h2{
	font-size:24px!important;
	margin-bottom:30px;
}
.recruit_cta_item p{
	font-size:14px;
}
.recruit_cta_item .universal_btn a{
	color:white;
	font-size:16px;
	padding:20px 30px!important;
	background-color:#052365;
}
.recruit_cta_item .universal_btn {
    margin-top: 30px;
    width: 300px;
    background: none;
}
.carrier_cta .universal_btn a {
	background-color: #29A7E1 !important;
}


/*  CEO×新卒対談ページ*/
.page-id-184 .l-topTitleArea,
.page-id-1732 .l-topTitleArea,
.page-id-1713 .l-topTitleArea,
.page-id-1742 .l-topTitleArea{
	display:none!important;
}
.dialogue02 .wp-block-columns{
	gap:70px!important;
	margin-top:5%;
	padding-bottom:10%;
	border-bottom:1px solid #E0E0E0;
}
.dialogue02_box {
	display:flex;
}
.dialogue02_box img {
	width:100px;
	height:100px;
}
.dialogue02_item {
	margin-left:30px;
}
.dialogue02_item h3 {
	padding:5px 0 15px 0!important;
	text-align:left!important;
}
.dialogue02_item p {
	margin-top: 15px;
	font-size:14px;
}

#interview_schedule {
	margin-bottom:8rem!important;
}

/*  吹き出し部分*/
.c-balloon__icon {
	width:100px;
}
.c-balloon .c-balloon__iconImg {
    height: 100px;
    width: 100px;
}
.dialogue03 h2 {
	margin-top:10%;
}
.dialogue03 .swell-block-fullWide__inner {
	width:70%;
	margin:0 auto;
}
.dialogue03 .wp-block-image {
	margin-top:5%;
	margin-bottom:8%;
}
.dialogue03 .wp-block-image img{
	width:100%;
}
.dialogue03 .c-balloon__iconName {
	font-size:15px;
	font-weight:bold;
	padding-top:5px;
}
.dialogue03 .swell-block-balloon {
	margin-top:8%!important;
	margin-bottom:0%!important;
}
.dialogue03 .c-balloon__body {
	padding:0!important;
}
.dialogue03 .c-balloon__text {
	background: white;
	margin-left: 20px;
	padding:0!important;
	max-width:100%;
}
.dialogue03 .c-balloon__before {
	border-right-color:white;
}
.border-bottom {
	border-bottom:none!important;
}
.dialogue03 .wp-image-1079 {
	margin-top:50px;
}

/* 1日のスケジュール */
.toprecruit_interview .swell-block-fullWide__inner {
    max-width: 100%;
    width: 66%;
    margin: 0 auto;
}
.toprecruit_interview h2 span {
	border-bottom:1px solid;
	padding-bottom:20px;
}

/* スケジュール全体の中央配置 */
.schedule,
.schedule_lunch,
.schedule_night{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 450px;
  position: relative;
	margin:0;
}
.schedule_timeline.lunch, .schedule_lunch {
	height:170px;
}
/* ナイトタイムのタイムラインの高さ変更 */
.schedule_night , .schedule_timeline.night {
	height:140px;
}
/*  nozomi*/
.schedule.nozomi,
.schedule_timeline.nozomi {
	height:470px;
}
.schedule_lunch.nozomi,
.schedule_timeline.lunch.nozomi {
	z-index:2;
	height:170px;
}
.schedule_night.nozomi,
.schedule_timeline.night.nozomi {
	z-index:1;
	height:220px;
}

/*  itaru*/
.schedule .schedule_timeline.itaru {
    height: 420px;
}
.schedule.itaru,
.schedule_timeline.itaru {
	height:400px;
}
.schedule_lunch.itaru,
.schedule_timeline.lunch.itaru {
	z-index:2;
	height:210px;
}
.schedule_night.itaru,
.schedule_timeline.night.itaru {
	z-index:1;
	height:220px;
}

/*  satoshi*/
.schedule .schedule_timeline.satoshi {
    height: 420px;
}
.schedule.satoshi,
.schedule_timeline.satoshi {
	height:400px;
}
.schedule_lunch.satoshi,
.schedule_timeline.lunch.satoshi {
	z-index:2;
	height:210px;
}
.schedule_night.satoshi,
.schedule_timeline.night.satoshi {
	z-index:1;
	height:280px;
}

/* 縦線のスタイル */
.schedule_timeline {
  width: 5px;
  background-color: #29A7E1;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

/* 通常の朝のタイムライン */
.schedule .schedule_timeline {
  height: 500px;
}

/* ランチタイムのタイムラインの高さ変更 */
.schedule_timeline.lunch {
  background-color: #106EB8;
}

/* ナイトタイムのタイムラインの高さ変更 */
.schedule_timeline.night {
  background-color: #052365;
}

/* タイムポイントのスタイル */
.schedule_time-point {
  position: relative; /* 吹き出しの位置を相対的に調整 */
  text-align: center; /* 中央揃え */
}

/* 時間の丸のスタイル */
.schedule_time-circle {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 60px; /* 丸の直径 */
  height: 60px; /* 丸の直径 */
  background-color: #29A7E1; /* 丸の背景色 */
  color: #fff; /* 文字色 */
  border-radius: 50%; /* 丸にするための設定 */
  display: flex;
  justify-content: center; /* 中央に配置 */
  align-items: center; /* 中央に配置 */
  font-size: 14px; /* 文字サイズ */
  font-weight: bold; /* 文字の太さ */
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
}
/*  お昼*/
.lunch {
	background-color: #106EB8!important;
}
.night {
	background-color: #052365!important;
}

/* 吹き出しのスタイル */
.schedule_bubble {
  text-align: left;
  position: absolute;
  width: 470px; /* 吹き出しの幅 */
  background-color: #fff; /* 吹き出しの背景色 */
  border: 1px solid #ccc; /* 吹き出しのボーダー */
  border-radius: 5px; /* 吹き出しの角を丸く */
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
  z-index: 1; /* 吹き出しを前面に */
}

/* 吹き出しのタイトルのスタイル */
.schedule_bubble-title {
  font-size: 14px;
  font-weight: bold;
  background-color: #29A7E1; /* タイトルの背景色 */
  color: #fff; /* タイトルの文字色 */
  padding: 10px;
	border-radius:5px;
}

/* 吹き出しの説明のスタイル */
.schedule_bubble-description {
  background-color:#fff;
  font-size: 0.8em;
  margin-top: 0; /* タイトルと説明の間にスペース */
  padding: 20px;
border-radius:5px;
}

/* 吹き出しの三角形 */
/* 左側の吹き出し（三角形を右側に表示） */
.schedule_left .morning::before {
    content: "";
    position: absolute;
    top: 15px;
    right: -9px; /* 右側に配置 */
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 10px 0;
    border-color: transparent #29A7E1 transparent transparent;
    transform: rotate(-180deg); /* 三角形が右に向くように設定 */
}

/* 右側の吹き出し（三角形を左側に表示） */
.schedule_right .morning::before {
    content: "";
    position: absolute;
    top: 15px;
    left: -9px; /* 左側に配置 */
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent #29A7E1;
    transform: rotate(180deg); /* 三角形が左に向くように設定 */
}

.schedule_left .lunch::before {
    content: "";
    position: absolute;
    top: 15px;
    right: -9px; /* 右側に配置 */
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 10px 0;
    border-color: transparent #106EB8 transparent transparent;
    transform: rotate(-180deg); /* 三角形が右に向くように設定 */
}

/* 右側の吹き出し（三角形を左側に表示） */
.schedule_right .lunch::before {
    content: "";
    position: absolute;
    top: 15px;
    left: -9px; /* 左側に配置 */
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent #106EB8;
    transform: rotate(180deg); /* 三角形が左に向くように設定 */
}

.schedule_left .night::before {
    content: "";
    position: absolute;
    top: 15px;
    right: -9px; /* 右側に配置 */
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 10px 0;
    border-color: transparent #052365 transparent transparent;
    transform: rotate(-180deg); /* 三角形が右に向くように設定 */
}

/* 右側の吹き出し（三角形を左側に表示） */
.schedule_right .night::before {
    content: "";
    position: absolute;
    top: 15px;
    left: -9px; /* 左側に配置 */
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent #052365;
    transform: rotate(180deg); /* 三角形が左に向くように設定 */
}


/* 吹き出しの位置 */
.schedule_left {
  top: -25px;
  left: -530px; /* 吹き出しを左側に配置 */
}

.schedule_right {
  top: -25px;
  right: -530px; /* 吹き出しを右側に配置 */
}

.others_interview .swell-block-fullWide__inner {
	width:60%;
}
.others_interview h3 {
	font-size:0.9em;
	margin-bottom:10px;
}

.others_interview p {
	font-size:12px;
}

.schedule.sp,
.schedule_lunch.sp,
.schedule_night.sp {
	display:none;
}
.sp .schedule_timeline {
    width: 5px;
    background-color: #29A7E1;
    position: absolute;
    left: 20%;
    transform: translateX(-50%);
}
.sp .schedule_bubble-description {
    background-color: #fff;
    font-size: 0.8em;
    margin-top: 0;
    padding: 10px;
}
.sp .schedule_timeline.lunch, .sp .schedule_lunch {
	top:54px;
    height: 400px;
}
html[lang="en-US"] .sp .schedule_timeline.lunch, html[lang="en-US"] .sp .schedule_lunch {
	top:46px;
    height: 400px;
}
.sp.schedule_night, .sp .schedule_timeline.night {
    margin-top: 23%;
    height: 200px;
}





/*  新卒採用トップ*/
.newrecruit .swell-block-column {
	margin:0;
	text-align:center;
}
.newrecruit01 {
	padding-bottom:0!important;
}
.newrecruit01 h1 {
	font-size:40px;
}
.newrecruit01 .wp-block-columns {
	width:85%;
	margin: 0 auto;
}
.newrecruit01_menu .wp-block-columns {
	width:100%;
}
/*  ナビメニュー*/
.newrecruit01_nav-container {
  text-align: center;
  margin-bottom: 20px;
}

.newrecruit01_page-nav .newrecruit01_nav-list {
  display: flex;
  justify-content: flex-end; /* 中央揃え */
  list-style: none;
  padding: 0;
  margin: 0;
}

.newrecruit01_page-nav .newrecruit01_nav-list li {
  margin: 0 15px; /* メニュー間の幅を小さく調整 */
}


.newrecruit01_page-nav .newrecruit01_nav-list a {
  text-decoration: none;
  color: #333;
  font-weight: bold;
}
a.anker_btn {
    border: 1px solid;
    border-radius: 30px;
    padding: 15px;
}

.newrecruit01_page-nav .newrecruit01_nav-list a:hover {
  color: #106EB8; /* 好みの色に変更可能 */
}

.toprecruit02 .sp {
	display:none;
}

/*  for global by global*/
.newrecruit03 .global {
	display:block;
	width:90%;
	background: linear-gradient(45deg, #106EB8, #052365)!important; /* グラデーションの色と角度を設定 */
  -webkit-background-clip: text!important; /* 背景をテキストの形にクリップ */
  -webkit-text-fill-color: transparent; /* テキストの色を透明にする */
	margin:0 auto;
	margin-left:8%;
	line-height:1.2;
}
.newrecruit03 .wp-block-image .alignleft {
    margin: 0;
}
/*  テキスト部分*/
.newrecruit03_item {
	width:80%;
	margin:0 auto;
}
.newrecruit03_item p{
	font-size:1.3em;
}

/*  こんな方にピッタリ*/
.newrecruit04 .wp-block-list {
	background:white;
	width:800px;
	padding:40px 80px;
	margin:0 auto;
}
.newrecruit04 .is-style-check_list li:before {
	color:#70B300;
}
/*  インターンシップ*/
.newrecruit05 h2 {
	margin-bottom:30px!important;
}
.newrecruit05 .wp-block-columns {
	gap:0px!important;
}
.newrecruit05 .wp-block-table td,
.newrecruit05 .wp-block-table th{
	padding:40px 5px;
}
.day {
	display:inline-block;
	border:1px solid black;
	padding:7px;
	margin-bottom:10px;
}
.newrecruit05 .universal_btn {
	width:300px;
	margin:0 auto;
}
.newrecruit05 .arrow_top_right::after,
.newrecruit06_online .arrow_top_right::after,
.newrecruit06_selection .arrow_top_right::after{
    background: #106eb8;
}

.newrecruit05 .arrow_top_right::before,
.newrecruit06_online .arrow_top_right::before,
.newrecruit06_selection .arrow_top_right::before{
    border-top: 1px solid #106eb8;
    border-right: 1px solid #106eb8;
}
/*  選考ステップ*/
.newrecruit06 .swell-block-fullWide__inner,
.newrecruit07 .swell-block-fullWide__inner,
.newrecruit08 .swell-block-fullWide__inner{
	max-width:100%;
	width:80%;
	margin: 0 auto;
}
.newrecruit06 .newrecruit06_online {
	padding: 30px;
	box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
}
.newrecruit06_online .wp-block-column h2{
	margin-top:30px!important;
}

.newrecruit06_online .universal_btn,
.newrecruit06_selection .universal_btn {
    width: 300px;
    margin-top: 95px!important;
    margin-left: auto;
    margin-right: 30px;/*2025/06/27追加*/
}
.newrecruit06_online .universal_btn {
	width:190px;
/* 	margin-right:auto; */
}
.newrecruit06_selection .universal_btn {
	margin-top:0!important;
}

.newrecruit06_online .wp-block-image img {
    position: relative;
    vertical-align: bottom;
    top: 37px;
}

.newrecruit06_selection {
	box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
}
.newrecruit06_selection .wp-block-columns {
	position:relative;
}
.newrecruit06_number {
	position:absolute;
	margin:0;
	padding:0;
	top:-35px;
	color:#29A7E1;
}
.senko_txt {
	padding:0 15%;
}
/*  雇用条件*/
.newrecruit07 .wp-block-table td, 
.newrecruit07 .wp-block-table th {
	padding:40px 0;
	line-height:2;
}
/*  ツールチップ*/
/* Tooltip container */
.tooltip {
    font-weight: bold;
    width: 23px;
    border-radius: 50%;
    text-align: center;
    height: 23px;
    margin-left: 15px;
    line-height: 24px;
    background-color: #106EB8;
    color: white;
    position: relative;
    display: inline-block;
}

/* Tooltip text */
.tooltip .tooltiptext {
	font-weight:normal;
    visibility: hidden;
    font-size: 14px;
    width: 356px;
    background-color: #ffffff;
    color: #000000;
    text-align: left;
    padding: 25px 25px;
    border: 2px solid #106EB8;
    border-radius: 6px;
    position: absolute;
    top: -120px;
    left: 50px;
    z-index: 1;
}
.tooltip .tooltiptext.stoc {
	font-weight:normal;
    visibility: hidden;
    font-size: 14px;
    width: 356px;
    background-color: #ffffff;
    color: #000000;
    text-align: left;
    padding: 25px 25px;
    border: 2px solid #106EB8;
    border-radius: 6px;
    position: absolute;
    top: -180px;
	left:unset;
    right:-23px;
    z-index: 1;
}
html[lang="en-US"] .tooltip .tooltiptext.stoc {
    top: -210px;
    left: unset;
    right: -20px;
    z-index: 1;
}


.tooltip .tooltiptext::before {
  content: "";
  position: absolute;
  top: 85%;
  left: 0;
  border-style: solid;
  border-width: 0 20px 20px 0;
  border-color: transparent #106eb8 transparent transparent;
  translate: -100% -50%;
  transform: skew(0, -46deg);
  transform-origin: right;
}

.tooltip .tooltiptext::after {
  content: "";
  position: absolute;
  top: 85%;
  left: 0;
  border-style: solid;
  border-width: 0 15.2px 15.2px 0;
  border-color: transparent #ffffff transparent transparent;
  translate: -100% calc(-50% - 0.4px);
  transform: skew(0, -46deg);
  transform-origin: right;
}

.tooltip .tooltiptext.stoc::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 91%;
  border-style: solid;
  border-width: 20px 0 0 20px;
  border-color: #106eb8 transparent transparent;
  translate: -50% 100%;
  transform: skew(-25deg);
  transform-origin: top;
}

.tooltip .tooltiptext.stoc::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 91%;
  border-style: solid;
  border-width: 15.2px 0 0 15.2px;
  border-color: #fff transparent transparent;
  translate: calc(-50% + 0.4px) 100%;
  transform: skew(-25deg);
  transform-origin: top;
}



/* Show the tooltip text when you mouse over the tooltip container */
.tooltip:hover .tooltiptext {
  visibility: visible;
}

/* 職種別 */
.newrecruit08_box {
  padding: 20px 40px;
  width: 100%;
  background-color: white;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.2);
}

.newrecruit08_box span {
  font-size: 14px;
  margin-right: 5px;
}

.newrecruit08_box h2 {
  text-align: left !important;
  position: relative;
  cursor: pointer;
  padding-right: 30px; /* アイコン分の余白 */
}

.lightblue {
  color: #106EB8;
}

.newrecruit08_box .swell-block-accordion__title {
	background:unset;
	padding:0!important;
	font-size:24px;
	font-weight:bold;
}
.newrecruit08_container {
	width: 95%;
    margin: 0 auto;
}
.margin-left {
	width:95%;
	margin:0 auto;
}
.small_font {
	font-size:12px!important;
}
.newrecruit08_item {
	border-bottom:1px solid #E0E0E0;
	padding-bottom:50px;
}
.newrecruit08_item .swell-block-accordion__title {
	font-size:16px;
	background-color:#F8F9FE;
	padding:20px 30px!important;
}
.newrecruit08_box .swell-block-accordion__body {
	padding:0;
}
p.newrecruit08_txt {
	font-size:1.1em;
	padding-top:0!important;
	padding:3em;
}
.newrecruit08_box .swell-block-accordion__icon {
	font-size:25px;
	color:#106EB8;
}
.newrecruit08_box li::marker {
	color:#106EB8!important;
}
.newrecruit08 .wp-block-table th {
	width:15%!important;
}
.newrecruit08 .wp-block-table.programming th {
	width:30%!important;
}
.newrecruit08 .margin-left {
	margin-left:30px;
}

/*  キャリア採用トップ*/
.midcareer01 .swell-block-fullWide__inner {
	max-width:100%;
	width:80%;
	margin: 0 auto;
	font-size: calc(1vw + 1vh + 0.5vmin); /* コンテナ幅に応じて文字サイズが変わる */
}
.midcareer01 .wp-block-column h2 {
	margin:30px 0 30px!important;
}
.midcareer01 .swell-block-fullWide__inner .wp-block-columns {
	gap: 70px!important;
}
.midcareer01 .weight {
	font-weight:500;
}
/*  join us*/
.scroll-join {
    position: fixed;
    width:100%;
    bottom:0;
    left:0;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    color: #052365;
    z-index: 1000;
    text-align:center;
	margin-bottom:0;
}

.scroll-join p {
  font-weight:bold;
  color:#052365;
    margin: 0;
    font-size: 2rem;
    margin-right: 35px; /* 「Join Us」とボタンの間隔 */
}

.join-buttons {
    display: flex;
    gap: 10px; /* ボタン間の間隔 */
  padding:10px 0;
  text-align:center;
}

.button {
  width:220px;
  font-weight:bold;
    background-color: #fff;
    color: #052365;
    text-decoration: none;
    padding: 8px 12px;
    border-radius: 20px;
    transition: background-color 0.3s;
	position: relative; /* 相対位置指定で矢印を右端に配置 */
	transition: background 0.3s ease, color 0.3s ease;
}
.join-buttons .button {
	font-size:0.8rem;
    width: 220px;
    font-weight: bold;
    background-color: #052365;
    color: #ffffff;
    text-decoration: none;
    padding: 8px 12px;
    border-radius: 20px;
    transition: background-color 0.3s;
    position: relative;
    transition: background 0.3s ease, color 0.3s ease;
}

.button:hover {
   background: linear-gradient(to right, #29a7e1, #052365);
  color:#fff;
}
.button:hover,
.arrow_top_right:hover::before {
    color: #fff; /* ホバー時に矢印の色も変更 */
	border-color:#fff;
}
.arrow_top_right:hover::after {
	background:#fff;
}

.arrow_top_right {
  position: relative;
  padding-right: 30px; /* 右側に余白を作成 */
  display: inline-block; /* 横並びにするための設定 */
}
 
.arrow_top_right::before {
    content: "";
    position: absolute;
    top: 47%;
    right: 12px;
    transform: translateY(-50%) rotate(0deg);
    width: 7px;
    height: 7px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
}
 
.arrow_top_right::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 11px;
    transform: translateY(-50%) rotate(135deg);
    width: 11px;
    height: 1px;
    background: #fff;
}

/*  一番下のキャリア、新卒ボタン*/
.scroll-join span  {
	text-align:center;
	margin-right:35px;
}
.join_recruit_btn, .join_recruit_btn2 {
	width:200px;
    border: 2px solid #FFF;
    border-radius: 30px;
    display: block;
    background-color: #106EB8;
    color: white;
    text-align: center;
    text-decoration: none;
    font-size: 16px;
    font-weight: bold;
}
.join_recruit_btn {
    background-color: #052365;
}

/*  よくある質問ページ*/
.page-id-103 .l-topTitleArea,
.page-id-1610 .l-topTitleArea,
.page-id-1785 .l-topTitleArea{
	display:none;
}
.faq_ttl .swell-block-fullWide__inner {
	max-width:100%;
	width:80%;
	margin:0 auto;
}
.faq_container .swell-block-fullWide__inner {
	max-width:100%;
	width:75%;
	margin:0 auto;
}
.faq_container .swell-block-accordion__body p:before {
    content: "A ";
    position: absolute;
    display: block;
    text-align: center;
    background: #106EB8;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    font-weight: bold;
    color: #fff;
	left: 23px; /*2025/06/28*/
    margin-right: 4px;
}

.faq_menu {
	margin:0;
}
.faq_menu .wp-block-column{
	position:relative;
	padding-bottom:10px;
	border-bottom:1px solid;
}
.faq_menu .wp-block-column a{
	color:inherit;
}
.faq_menu .wp-block-column a::before {
    content: "";
    position: absolute;
    display: block;
    margin-right: 10px;
    right: 0;
    width: 10px;
    height: 10px;
    transform: rotate(135deg);
    border-top: 3px solid #000;
    border-right: 3px solid #000;
}

.faq_menu .wp-block-column:hover,
.faq_menu .wp-block-column p a:hover::before {
	color:#106EB8;
	border-top-color: #106EB8; /* ホバー時の色 */
    border-right-color: #106EB8;
	border-bottom-color:#106EB8;
}

.faq_container .swell-block-accordion {
	margin:0;
}
.faq_container .swell-block-fullWide__inner .swell-block-accordion {
	border-top: 1px solid #E0E0E0;
}

.faq_container .swell-block-fullWide__inner .swell-block-accordion:last-child {
    border-bottom: 1px solid #E0E0E0; /* 下部にボーダーを追加 */
}
.faq_container .swell-block-accordion__icon {
	color:#106EB8;
}
.faq_container .swell-block-accordion__title {
    background: none;
    padding: 1.5em;
}

.faq_container .swell-block-accordion__title .swell-block-accordion__label:before {
    content: "Q ";
    display: inline-block;
    text-align: center;
    background: #106EB8;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    font-weight: bold;
    color: #fff;
    margin-right: 15px;
}

.faq_container .swell-block-accordion__body {
	background-color:#F8F9FE;
	margin-bottom:20px;
}
.faq_container .swell-block-accordion__body p {
    padding: 20px;
    margin-left: 33px;
}
/*  ニュース　2025/06/28*/
.-type-card .p-postList__item {
    padding: 0.5em 1.3rem;
}