/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Aug 28 2025 | 04:02:24 */
/* ここにCSSコードを追加

例:
.example {
    color: red;
}

CSS の知識に磨きをかけるためにご覧ください。
http://www.w3schools.com/css/css_syntax.asp

コメント終わり */ 
.page-id-119 h1 {
	left:0;
}
.about_section .swell-block-fullWide__inner {
	width:75%;
	margin:0 auto;
}
.about_section_img {
	margin-left:auto;
	width:95%!important;
	height:auto;
	text-align:right!important;
}
/* 1ミリでもより透明で
フェアな社会を目指して */
.about_section01 h2 {
	margin-bottom:30px;
}
.about_section01 .sp {
	display:none;
}
/*  CEOの顔写真とテキスト*/
.about_ceo {
	position: relative;
    overflow: hidden;
}
.about_ceo::before {
	content: "Top Message"; /* 表示したいテキスト */
    position: absolute;
    top: 0%; /* 垂直方向の中央 */
    left: 0%; /* 水平方向の中央 */
	writing-mode: vertical-rl;
    font-size: 120px; /* テキストのサイズ */
	font-weight:bold;
    color: #ebedf8; /* 色と透明度を調整（背景テキストとして見えやすくするために薄く） */
    z-index: 1; /* 他のコンテンツの背後に表示するために低いz-index */
    white-space: nowrap; /* テキストが改行されないようにする */
}

@media(max-width:768px) {
	.about_ceo::before {
    left: 3%; /* 水平方向の中央 */
	writing-mode: unset;
    font-size: 40px; /* テキストのサイズ */
  }
}
.about_section01::before {
	content: "COMPANY"; /* 表示したいテキスト */
    position: absolute;
    top: 0%; /* 垂直方向の中央 */
    left: -2%; /* 水平方向の中央 */
	writing-mode: vertical-rl;
    font-size: 120px; /* テキストのサイズ */
	font-weight:bold;
    color:#ebedf8; /* 色と透明度を調整（背景テキストとして見えやすくするために薄く） */
    z-index: 1; /* 他のコンテンツの背後に表示するために低いz-index */
    white-space: nowrap; /* テキストが改行されないようにする */
}

@media(max-width:768px) {
	.about_section01::before {
    left: 3%; /* 水平方向の中央 */
	writing-mode: unset;
    z-index: 50; 
    font-size: 40px; /* テキストのサイズ */
  }
}
.about_section01 .swell-block-columns__inner {
	justify-content:space-between;
	width:80%;
	margin:0 auto;
}
.about_section01 h3 {
	margin-bottom:20px!important;
}
.about_section01 .wp-block-group p{
	margin:0;
}
.about_section01_group p {
	margin:0;
	line-height:1;
}
p.masa {
	font-size:1.4rem;
}
p.masa span {
	font-size:1rem;
}
.about_ceo img,
.about_ceo p {
	margin-left:20px!important;
}
@media(max-width:768px) {
  .about_ceo img,
  .about_ceo p {
	  margin-left:0px!important;
  }	
}

.about_ceo p {
	margin-bottom:0;
	line-height:1.5;
}
.about_section01_txt {
	width:90%;
	margin-bottom:30px;
}
.about_section01_txt:last-of-type{
	margin-bottom:30px;
    border-bottom:1px solid #E0E0E0;
	padding-bottom:30px;
}
/*  テーブル表*/
.about_section01 .wp-block-table {
	width:90%;
	display:block;
}
.about_section01 .wp-block-table tr {
	height:30px;
}
.about_section01 .is-style-simple td, .about_section01 .is-style-simple th {
	border:none;
}
.about_section01 .wp-block-table th{
	padding:0;
	font-size:0.9rem;
	width:90px!important;
	
}
.about_section01 .wp-block-table td {
	font-size:0.9rem;
	padding:0;
}
/*  英語*/
html[lang="en-US"] .about_section01_item table tbody{
	border:none!important;
}
html[lang="en-US"] .about_section01_item table th{
	border:none!important;
	width:85px!important;
	padding-left:0;
}
html[lang="en-US"] .about_section01_item table td {
	border:none!important;
}
/*  会社概要*/
.about_section02 {
	background-color:#F8F9FE!important;
	padding-bottom:0!important;
	margin-bottom:0;
}
.about_section02 .swell-block-columns__inner {
	width:80%;
	margin:0 auto;
}
.about_section02 .reveal-text {
    margin-left: 0px;
}
.about_section02 .sp {
	display:none;
}
.about_section02 h2,
.about_section02 p.h2_text{
	color:#052365;
}
.about_section02 th {
	width:150px!important;
	padding: 1.5em 0.75em;
}
.about_section02 td {
	padding: 1.5em 0.75em;
}
.map {
	position:absolute;
	margin:0;
	padding:0!important;
}
.custom_map {
	width:80%;
	height:500px;
	margin:0;
	padding:0;
	position:relative;
	top:-100px;
	
}
.access {
	width:80%;
	margin:60px auto;
	padding-bottom:60px;
	border-bottom:1px solid #E0E0E0;
	position:relative;
	top:-100px;
}
.access .inner-button {
	font-weight:bold;
}
.access .rotate {
    margin-left: 15px;
}
/*  組織図*/
.chart {
	background:white;
	margin-top:600px!important;
	padding:0!important;
}
.chart_item {
	width:80%;
	margin:0 auto;
}
.chart_item .swell-block-columns__inner {
	position:relative;
}
.chart_item_img {
	position:relative;
	left:10%;
	transform: translateX(-50%); /* 要素の中心を基準に調整 */
}
.access .universal_btn {
    position: relative;
    display: flex;
    font-size: 0.8rem;
    width: 170px;
    top: 25%;
    margin: 0 auto;
    /* margin: auto; */
}
.rotate {
    display: inline-block;
    transform: rotate(-45deg);
}
/*  沿革*/
/* タイムラインの基本設定 */
.timeline_box {
	margin-bottom:10rem;
}

.timeline_box .swell-block-fullWide__inner {
	width:80%;
	margin:0 auto;
}
.timeline_box .wp-block-columns {
	align-items:center!important;
}
.timeline-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
}

.timeline-wrapper {
    overflow-x: scroll;
    scroll-behavior: smooth;
    width: 100%;
    position: relative;
}

.timeline {
    display: flex;
    gap: 40px;
    padding: 20px 0;
    position: relative;
}

.timeline .is-style-section_ttl {
    color: #052365;
    margin-bottom: 20px;
    margin-right: auto;
}

.event-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
}

/* h3テキストのスタイル */
h3 {
    margin-bottom: 10px;
    color: #106eb8;
    font-size: 18px;
    font-weight: bold;
    position: relative;
    z-index: 3; /* 他の要素の前面に表示 */
}

/* 横線のスタイル */
.horizontal-line {
	width:2000px;
    position: absolute;
    top: 28%; /* タイムラインの中央 */
    left: 25px;
    right: 0;
    height: 1px;
    background-color: #052365;
    z-index: 1;
}

/* 縦線のスタイル */
.vertical-line {
    width: 1px;
    height: 80px;
    background-color: #052365;
    margin-top: -10px;
    margin-right: auto;
    margin-left: 24px;
    z-index: 2;
}

.vertical-line::after {
    content: "";
    width: 10px; /* 丸の直径 */
    height: 10px;
    background-color: #052365;
    border-radius: 50%; /* 丸にする */
    position: absolute;
    left: 19.5px; /* 縦線の中央に合わせる */
    top: 110px; /* 縦線の下部分に配置 */
    z-index: 1; /* 縦線の後ろに配置 */
}

/* イベントの内容 */
.event {
    background-color: white;
    padding: 50px 0 40px;
    border-radius: 0px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    position: relative;
    z-index: 1;
	top:-20px;
	width:360px;
    min-width: 250px;
	height: 160px;
    text-align: left;
	
}
/*  イベントの中身*/
.event table {
	margin:0!important;
	padding:0!important;
}
.event th,
.event td{
	border:none;
	width:45px;
	padding:0;
	vertical-align:top;
}
.event th {
	text-align:center;
	background:none;
}
.event td {
    width: 260px;
    padding: 0 30px 0 0;
}

html[lang="en-US"] .event th {
    width: auto;
    text-align: left;
    display: inline-block;
    margin-left: 20px;
    background: none;
}

html[lang="en-US"] .event td {
    width: 350px;
    padding: 0 55px 0 0;
}



/* ボタンのスタイル */
.prev-btn,
.next-btn {
  margin: 0px 10px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 2px solid #106EB8; /* 外枠の色 */
  background-color: white; /* 通常時の背景色 */
  cursor: pointer;
  transition: background-color 0.3s, color 0.3s; /* ホバースムーズ効果 */
}

/* ホバー時の色変更 */
.prev-btn:hover, 
.next-btn:hover {
  background: linear-gradient(to right, #29a7e1, #052365);
  color: white; /* ホバー時の矢印色 */
  border-color: white; /* 外枠も一体感を持たせて変更 */
}

/* ボタンホバー時の矢印色変更 */
.prev-btn:hover .dli-chevron-round-left,
.next-btn:hover .dli-chevron-round-right {
  color: white; /* ホバー時の矢印色 */
}

.dli-chevron-round-left:hover, 
.dli-chevron-round-right:hover {
	border-color: white; /* 外枠も一体感を持たせて変更 */
	color:white;
}

.dli-chevron-round-left,
.dli-chevron-round-right {
  display: inline-block;
  vertical-align: middle;
  color: #106EB8; /* 通常時の矢印色 */
  line-height: 1;
  position: relative;
  width: 10px;
  height: 10px;
}

/* 左矢印の回転 */
.dli-chevron-round-left {
  transform: translateX(25%) rotate(-135deg);
}

/* 右矢印の回転 */
.dli-chevron-round-right {
  transform: translateX(-25%) rotate(45deg);
}

/* 擬似要素で矢印を再現 */
.dli-chevron-round-left::before, 
.dli-chevron-round-left::after,
.dli-chevron-round-right::before, 
.dli-chevron-round-right::after {
  content: '';
  position: absolute;
  background: currentColor;
  border-radius: 0.1em;
}

/* 矢印の横線 */
.dli-chevron-round-left::before,
.dli-chevron-round-right::before {
  top: 0;
  left: 0;
  right: 0;
  height: 0.1em;
}

/* 矢印の縦線 */
.dli-chevron-round-left::after,
.dli-chevron-round-right::after {
  top: 0;
  right: 0;
  bottom: 0;
  width: 0.1em;
}




/* スクロールバーを非表示にする（オプション） */
.timeline-wrapper::-webkit-scrollbar {
    display: none;
}
.timeline-wrapper {
    -ms-overflow-style: none; /* IE, Edge */
    scrollbar-width: none; /* Firefox */
}

/*  文字のアニメーション*/
.reveal-text {
  margin-left: 100px;
}
/*全共通*/

.bgextend{
	animation-name:bgextendAnimeBase;
	animation-duration:1s;
	animation-fill-mode:forwards;
	position: relative;
	overflow: hidden;/*　はみ出た色要素を隠す　*/
	opacity:0;
}

@keyframes bgextendAnimeBase{
  from {
    opacity:0;
  }

  to {
    opacity:1;  
}
}

/*中の要素*/
.bgappear{
	animation-name:bgextendAnimeSecond;
	animation-duration:1s;
	animation-delay: 0.6s;
	animation-fill-mode:forwards;
	opacity: 0;
}

@keyframes bgextendAnimeSecond{
	0% {
	opacity: 0;
	}
	100% {
	opacity: 1;
}
}

/*左から右*/
.bgLRextend::before{
	animation-name:bgLRextendAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #052365;/*伸びる背景色の設定*/
}
@keyframes bgLRextendAnime{
	0% {
		transform-origin:left;
		transform:scaleX(0);
	}
	50% {
		transform-origin:left;
		transform:scaleX(1);
	}
	50.001% {
		transform-origin:right;
	}
	100% {
		transform-origin:right;
		transform:scaleX(0);
	}
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.bgappearTrigger,
.bgLRextendTrigger{
    opacity: 0;
}

