.wpcf7 .screen-reader-response {
position: absolute;
overflow: hidden;
clip: rect(1px, 1px, 1px, 1px);
clip-path: inset(50%);
height: 1px;
width: 1px;
margin: -1px;
padding: 0;
border: 0;
word-wrap: normal !important;
}
.wpcf7 .hidden-fields-container {
display: none;
}
.wpcf7 form .wpcf7-response-output {
margin: 2em 0.5em 1em;
padding: 0.2em 1em;
border: 2px solid #00a0d2; }
.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output {
display: none;
}
.wpcf7 form.sent .wpcf7-response-output {
border-color: #46b450; }
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
border-color: #dc3232; }
.wpcf7 form.spam .wpcf7-response-output {
border-color: #f56e28; }
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
border-color: #ffb900; }
.wpcf7-form-control-wrap {
position: relative;
}
.wpcf7-not-valid-tip {
color: #dc3232; font-size: 1em;
font-weight: normal;
display: block;
}
.use-floating-validation-tip .wpcf7-not-valid-tip {
position: relative;
top: -2ex;
left: 1em;
z-index: 100;
border: 1px solid #dc3232;
background: #fff;
padding: .2em .8em;
width: 24em;
}
.wpcf7-list-item {
display: inline-block;
margin: 0 0 0 1em;
}
.wpcf7-list-item-label::before,
.wpcf7-list-item-label::after {
content: " ";
}
.wpcf7-spinner {
visibility: hidden;
display: inline-block;
background-color: #23282d; opacity: 0.75;
width: 24px;
height: 24px;
border: none;
border-radius: 100%;
padding: 0;
margin: 0 24px;
position: relative;
}
form.submitting .wpcf7-spinner {
visibility: visible;
}
.wpcf7-spinner::before {
content: '';
position: absolute;
background-color: #fbfbfc; top: 4px;
left: 4px;
width: 6px;
height: 6px;
border: none;
border-radius: 100%;
transform-origin: 8px 8px;
animation-name: spin;
animation-duration: 1000ms;
animation-timing-function: linear;
animation-iteration-count: infinite;
}
@media (prefers-reduced-motion: reduce) {
.wpcf7-spinner::before {
animation-name: blink;
animation-duration: 2000ms;
}
}
@keyframes spin {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
@keyframes blink {
from {
opacity: 0;
}
50% {
opacity: 1;
}
to {
opacity: 0;
}
}
.wpcf7 [inert] {
opacity: 0.5;
}
.wpcf7 input[type="file"] {
cursor: pointer;
}
.wpcf7 input[type="file"]:disabled {
cursor: default;
}
.wpcf7 .wpcf7-submit:disabled {
cursor: not-allowed;
}
.wpcf7 input[type="url"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"] {
direction: ltr;
}
.wpcf7-reflection > output {
display: list-item;
list-style: none;
}
.wpcf7-reflection > output[hidden] {
display: none;
}.wpcf7 form{position:relative}.wpcf7 form>div,.wpcf7 form>p{margin-bottom:1.2em}.wpcf7 .wpcf7-form-control-wrap{width:100%;display:block}.wpcf7 input:not([type=submit]):focus,.wpcf7 select:focus,.wpcf7 textarea:focus{border-color:var(--ast-border-color);outline:0}.wpcf7 input:not([type=submit]),.wpcf7 select,.wpcf7 textarea{width:100%;padding:.75em}.wpcf7 input[type=file]{color:#666;height:auto;border-width:1px;border-style:solid;border-color:var(--ast-border-color);border-radius:2px;background:#fafafa;box-shadow:none;box-sizing:border-box;transition:all .2s linear}.wpcf7 input[type=checkbox],.wpcf7 input[type=radio]{display:inline-block;background:#e9eef2;color:#555;clear:none;cursor:pointer;line-height:0;height:1.2em;margin:-3px 4px 0 0;outline:0;padding:0;border-radius:.2em;text-align:center;vertical-align:middle;width:1.4em;min-width:1.4em;transition:all .2s linear}.ast-container {
max-width: 100% !important;
padding: 0 !important;
}html, body {
width: 100%;
max-width: 100%;
overflow-x: hidden;
box-sizing: border-box;
}
*, *::before, *::after {
box-sizing: border-box;
}  body {
font-size: 16px;
line-height: 1.6;
color: #1F2937;
} h1 {
font-size: 48px;
font-weight: 700;
line-height: 1.4;
margin: 0 0 20px 0;
color: #1F2937;
}
h2 {
font-size: 48px;
font-weight: 400;
font-family: Arial, Helvetica, sans-serif;
line-height: 1.5;
margin: 0 0 30px 0;
color: #1F2937;
}
h3 {
font-size: 20px;
font-weight: 600;
line-height: 1.4;
margin: 0 0 25px 0;
color: #1F2937;
}
h4 {
font-size: 18px;
font-weight: 600;
line-height: 1.4;
margin: 0 0 15px 0;
color: #1F2937;
} ul, ol {
font-size: 14px;
line-height: 1.8;
margin: 0;
padding: 0;
}
li {
font-size: 14px;
line-height: 1.8;
margin: 0 0 5px 0;
} a {
font-size: 16px;
color: #1F2937;
text-decoration: none;
transition: color 0.3s ease;
}
p{
font-size: 14px;
font-family: Arial, Helvetica, sans-serif;
} small {
font-size: 12px;
} @media (max-width: 768px) {
h1 {
font-size: 24px;
}
h2 {
font-size: 22px;
}
h3 {
font-size: 18px;
}
h4 {
font-size: 16px;
}
a {
font-size: 12px;
}
p {
font-size: 12px;
}
ul, ol, li {
font-size: 14px;
}
}
.text-right{
text-align: right;
} .tsc-custom-header {
background: #ffffff;
position: relative;
overflow: hidden;
padding: 20px 0;
opacity: 1;
z-index: 3;
}
.tsc-header-container {
max-width: 1400px;
margin: 0 auto;
padding: 0 40px;
display: flex;
align-items: center;
justify-content: space-between;
position: relative;
z-index: 4;
} .tsc-header-logo {
flex: 0 0 auto;
}
.tsc-logo-link {
text-decoration: none;
flex-direction: column;
line-height: 1.2;
}
.tsc-logo-text {
font-size: 36px;
font-weight: 700;
color: #6B46C1;
letter-spacing: 2px;
text-transform: uppercase;
}
.tsc-logo-subtitle {
font-size: 12px;
color: #6B7280;
font-weight: 400;
letter-spacing: 0.5px;
margin-top: 2px;
} .tsc-header-nav {
flex: 1 1 auto;
display: flex;
justify-content: center;
margin: 0 40px;
}
.tsc-nav-menu {
list-style: none;
margin: 0;
padding: 0;
display: flex;
gap: 40px;
align-items: center;
}
.tsc-nav-menu li {
margin: 0;
position: relative;
}
.tsc-nav-menu a {
text-decoration: none;
color: #1F2937;
font-size: 15px;
font-weight: 500;
transition: color 0.3s ease;
position: relative;
padding: 8px 0;
display: block;
}
.tsc-nav-menu a:hover {
color: #6B46C1;
} .tsc-nav-menu .sub-menu {
position: absolute;
top: 100%;
left: 0;
background: #ccc;
min-width: 200px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
border-radius: 4px;
padding: 8px 0;
margin: 0;
list-style: none;
opacity: 1;
visibility: hidden; transition: all 0.3s ease;
z-index: 9999;
}
.tsc-nav-menu li:hover > .sub-menu,
.tsc-nav-menu li.menu-item-has-children:hover > .sub-menu {
opacity: 1;
visibility: visible;
transform: translateY(0);
}
.tsc-nav-menu .sub-menu li {
margin: 0;
padding: 0;
width: 100%;
}
.tsc-nav-menu .sub-menu a {
padding: 10px 20px;
color: #1F2937;
white-space: nowrap;
}
.tsc-nav-menu .sub-menu a:hover {
color: #6B46C1;
background-color: #f3f4f6;
} .tsc-nav-menu .sub-menu .sub-menu {
top: 0;
left: 100%;
margin-left: 8px;
margin-top: 0;
} .tsc-header-actions {
flex: 0 0 auto;
display: flex;
gap: 12px;
align-items: center;
}
.tsc-btn {
display: inline-block;
padding: 12px 24px;
border-radius: 50px;
text-decoration: none;
font-weight: 600;
transition: all 0.3s ease;
border: none;
cursor: pointer;
white-space: nowrap;
}
.tsc-btn-recruitment,
.tsc-btn-contact {
background-color: #3B82F6;
color: #ffffff;
}
.tsc-btn-recruitment:hover,
.tsc-btn-contact:hover {
background-color: #2563EB;
transform: translateY(-1px);
box-shadow: 0 4px 8px rgba(59, 130, 246, 0.3);
} .tsc-custom-footer {
background: #f2f5f7;
position: relative;
overflow: hidden;
padding: 60px 0 30px;
margin-top: 80px;
} .tsc-footer-bg-image {
position: absolute;
top: -40px;
right: -10%;
width: 50%;
height: 100%;
object-fit: contain;
object-position: top right;
z-index: 0;
pointer-events: none;
opacity: 0.1;
}
.tsc-footer-container {
max-width: 1400px;
margin: 0 auto;
padding: 0 40px;
align-items: flex-start;
z-index: 1;
}
.tsc-footer-divider{
display: flex;
justify-content: space-between;
align-items: stretch;
gap: 0px;
} .tsc-footer-left {
flex: 0 1 60%;
display: flex;
flex-direction: column;
}
.tsc-footer-logo {
margin-bottom: 20px;
}
.tsc-footer-logo-text {
font-size: 42px;
font-weight: 700;
color: #6B46C1;
letter-spacing: 2px;
text-transform: uppercase;
display: block;
line-height: 1.2;
}
.tsc-footer-company-name {
color: #000000;
font-weight: 400;
display: block;
margin-top: 5px;
line-height: 1.5;
}
.tsc-footer-address p {
margin: 0 0 5px 0;
color: #374151;
line-height: 1.6;
}
.tsc-footer-contact p {
margin: 0;
color: #374151;
line-height: 1.6;
}
.divider {
width: 200px;
border-top: solid 1px #ccc;
margin: 20px 0;
}
.tsc-footer-related {
margin-bottom: 10px;
}
.tsc-footer-related p {
margin: 0;
line-height: 1.6;
} .tsc-footer-certifications {
display: flex;
gap: 20px;
align-items: flex-start;
flex-wrap: wrap;
}
.tsc-cert-logo {
flex: 0 0 auto;
display: flex;
align-items: center;
}
.tsc-cert-image {
max-width: 150px;
height: 100px;
width: auto;
display: block;
object-fit: contain;
} .tsc-cert-health {
background: #000000;
padding: 0;
border-radius: 4px;
min-width: 200px;
max-width: 220px;
position: relative;
overflow: hidden;
}
.health-waves {
width: 100%;
height: 50px;
background: linear-gradient(90deg, #D4E157 0%, #66BB6A 30%, #4DD0E1 60%, #26A69A 100%);
position: relative;
overflow: hidden;
margin-bottom: 0;
} .health-waves::before {
content: '';
position: absolute;
width: 100%;
height: 100%;
background: 
repeating-linear-gradient(
45deg,
transparent,
transparent 8px,
rgba(255, 255, 255, 0.15) 8px,
rgba(255, 255, 255, 0.15) 16px
);
opacity: 0.6;
}
.health-year {
position: absolute;
top: 50%;
right: 12px;
transform: translateY(-50%);
font-size: 13px;
font-weight: 600;
color: #374151;
z-index: 2;
font-family: sans-serif;
}
.health-label {
color: #374151;
font-weight: 500;
margin: 12px 12px 6px 12px;
line-height: 1.4;
}
.health-english {
font-size: 10px;
color: #6B7280;
margin: 0 12px 12px 12px;
line-height: 1.3;
}
.health-category {
background: #26A69A;
color: #ffffff;
padding: 8px 12px;
font-size: 11px;
text-align: center;
line-height: 1.3;
margin: 0;
width: 100%;
box-sizing: border-box;
} .tsc-footer-right {
flex: 0 1 40%;
display: flex;
flex-direction: column;
justify-content: space-between;
}
.tsc-footer-nav {
width: 100%;
display: flex;
gap: 40px;
align-items: flex-start;
}
.tsc-footer-nav-list {
list-style: none;
margin: 0;
padding: 0;
flex: 1 1 50%;
}
.tsc-footer-nav-list li {
margin: 0 0 12px 0;
padding-left: 15px;
position: relative;
}
.tsc-footer-nav-list li::before {
content: '•';
position: absolute;
left: 0;
color: #000000;
font-size: 16px;
line-height: 1.5;
}
.tsc-footer-nav-list a {
text-decoration: none;
font-weight: 400;
transition: color 0.3s ease;
line-height: 1.5;
}
.tsc-footer-nav-list a:hover {
color: #6B46C1;
} .tsc-footer-copyright {	
text-align: left;
position: relative;
z-index: 1;
}
.tsc-footer-copyright p {
margin: 0;
font-size: 12px;
color: #6B7280;
} .tsc-footer-buttons {
display: none;
} @media (max-width: 1024px) {
.tsc-footer-container {
padding: 0 30px;
gap: 40px;
}
.tsc-footer-certifications {
gap: 15px;
}
.tsc-cert-image {
max-width: 120px;
}
.tsc-footer-nav {
gap: 30px;
}
}
@media (max-width: 768px) {
.tsc-custom-footer {
padding: 0;
margin-top: 60px;
position: relative;
overflow: hidden;
}
.tsc-footer-bg-image {
display: none;
}
.tsc-footer-container {
flex-direction: column;
padding: 0;
gap: 0;
position: relative;
}
.tsc-footer-logo {
background: #ffffff;
padding: 30px 20px 20px 20px;
margin-bottom: 0;
}
.tsc-footer-logo-text {
font-size: 36px;
}
.tsc-footer-divider {
background: #ffffff;
padding: 0 20px 30px 20px;
flex-direction: column;
}
.tsc-footer-left,
.tsc-footer-right {
flex: 1 1 100%;
width: 100%;
}
.tsc-footer-company-name {
font-size: 13px;
margin-bottom: 10px;
}
.tsc-footer-address p {
font-size: 13px;
margin: 0 0 8px 0;
}
.divider {
width: 100%;
margin: 20px 0;
}
.tsc-footer-related {
margin-bottom: 20px;
}
.tsc-footer-related p {
font-size: 13px;
}
.tsc-footer-certifications {
justify-content: flex-start;
gap: 15px;
flex-wrap: wrap;
margin-bottom: 20px;
}
.tsc-cert-image {
max-width: 100px;
height: auto;
}
.tsc-cert-health {
min-width: 180px;
}
.tsc-footer-right {
padding: 20px 0;
margin-top: 0;
}
.tsc-footer-nav {
flex-direction: row;
gap: 30px;
margin-bottom: 30px;
}
.tsc-footer-nav-list {
flex: 1 1 50%;
}
.tsc-footer-nav-list li {
margin: 0 0 15px 0;
}
.tsc-footer-copyright {
text-align: left;
padding: 0;
margin-top: 0;
}
.tsc-footer-copyright p {
color: #9CA3AF;
font-size: 11px;
}
.tsc-footer-buttons {
display: flex;
gap: 15px;
padding: 20px;
width: 100%;
}
.tsc-footer-btn {
flex: 1;
display: inline-block;
padding: 14px 24px;
border-radius: 50px;
text-decoration: none;
font-size: 14px;
font-weight: 500;
transition: all 0.3s ease;
text-align: center;
background-color: #3B82F6;
color: #ffffff;
border: none;
}
.tsc-footer-btn:hover {
background-color: #2563EB;
transform: translateY(-1px);
box-shadow: 0 4px 8px rgba(59, 130, 246, 0.3);
}
} main {
margin: 0 auto;
width: 100%;
max-width: 100%;
font-size: 16px;
overflow-x: hidden;
} .tsc-hero-section {
padding: 250px 150px 0 150px;
background: #ffffff;
position: relative;
overflow: hidden;
height: 760px;
width: 100%;
max-width: 100%;
}
.tsc-hero-section::before {
content: '';
position: absolute;
right: 0;
top: 0;
width: 60%;
height: 80%;
background-image: var(--tsc-upload-url-hero1);
background-size: contain;
background-position: top right;
background-repeat: no-repeat;
z-index: 2;
min-width: 300px;
}
.tsc-hero-section::after {
content: '';
position: absolute;
left: 10%;
top: 0;
width: 10%;
height: 30%;
background-image: var(--tsc-upload-url-hero3);
background-size: contain;
background-position: center;
background-repeat: no-repeat;
z-index: 0;
opacity: 1;
transform: translateY(100%);
}
.tsc-hero-container {
max-width: 1400px;
margin: 0 auto;
display: flex;
justify-content: space-between;
gap: 10px;
position: relative;
z-index: 1;
height: 100%;
}
.tsc-divi-section {
position: absolute;
top: 0;
right: 0;
width: 50%;
max-width: 800px;
height: 1320px;
z-index: 1;
pointer-events: none;
overflow: hidden;
transform: translateY(40%);
}
.tsc-divi-section img {
width: 100%;
height: 100%;
object-fit: contain;
object-position: center right;
}
.tsc-hero-content {
flex: 1 1 50%;
}
.tsc-hero-title {
font-weight: 700;
color: #1F2937;
}
.tsc-hero-subtitle {
color: #6B7280;
}
.tsc-hero-image {
flex: 1 1 50%;
position: relative;
}
.tsc-hero-image img {
width: 100%;
height: auto;
display: block;
border-radius: 8px;
}
.tsc-banner-about-en {
font-size: 48px;
font-weight: 400;
color:#FFF;
display: block;
}
.tsc-banner-services-en{
font-size: 48px;
font-weight: 400;
display: block;
margin-bottom: 5px;
color: #00a8ff;
line-height: 1;
position: relative;
}
.tsc-banner-news-en {
font-size: 48px;
font-weight: 400;
display: block;
margin-bottom: 5px;
color: #00a8ff;
line-height: 1;
position: relative;
z-index: 2;
}
.tsc-banner-services-en::before {
content: attr(data-text);
position: absolute;
left: 2px;
top: 2px;
color: #000;
z-index: -1;
}
.tsc-banner-news-en::before {
content: attr(data-text);
position: absolute;
left: 2px;
top: 2px;
color: #000;
z-index: -1;
}
.tsc-banner-about-ja {
color: #FFF;
display: block;
}
.tsc-banner-services-ja {
display: block;
} .tsc-about-services-section {
background: #ffffff;
position: relative;
overflow: hidden;
padding-bottom: 100px;
width: 100%;
max-width: 100%;
}
.tsc-about-services-section::before {
content: '';
position: absolute;
top: 0;
width: 30%;
height: 100%;
background-image: var(--tsc-upload-url-about-bg);
background-size: contain;
background-position: center top;
background-repeat: no-repeat;
z-index: 0;
}
.tsc-about-services-section:after {
content: '';
position: absolute;
right: 0;
top: 0;
width: 34%;
height: 100%;
background-image: var(--tsc-upload-url-about-bg2);
background-size: contain;
background-position: bottom right;
background-repeat: no-repeat;
z-index: 0;
}
.circle-img-1 {
position: absolute;
width: 250px;
height: 250px;
top: 0;
right: 10%;
z-index: 2;
}
.circle-img-2 {
position: absolute;
width: 100px;
height: 100px;
top: 37%;
left: 44%;
z-index: 2;
}
.tsc-about-content {
display: flex;
align-items: flex-start;
gap: 10px;
}
.tsc-about-banner-col {
flex: 1 1 50%;
z-index: 2;
padding-left: 10%;
padding-top: 3%;
}
.tsc-about-text-col {
flex: 1 1 50%;
position: relative;
z-index: 2;
padding-top: 3%;
}
.tsc-about-text {
position: relative;
z-index: 2;
}
.tsc-about-image {
position: absolute;
left: -1%;
top: 32%;
transform: translateY(-50%);
width: 40%;
max-width: 600px;
z-index: 1;
}
.tsc-about-image img {
width: 100%;
height: auto;
display: block;
border-radius: 8px;
}
.tsc-services-container {
margin-top: 250px;
padding-left:10%;
position: relative;
z-index: 1;
display: flex;
gap: 10%;
}
.tsc-services-content{
display: flex;
flex-direction: column;
position: relative;
margin-top: 0;
text-align: left;
flex: 1 1 50%;
}
.tsc-services-text {
flex: 1 1 30%;
position: relative;
z-index: 2;
}
.tsc-services-container {
display: flex;
flex-direction: row;
gap: 10%;
margin-top: 30%;
padding-left: 10%;
padding-right: 0;
}
.tsc-services-container::before {
display: none;
}
.tsc-services-banner {
display: block;
}
.tsc-services-detail-text {
flex: 1 1 auto;
position: relative;
z-index: 2;
margin-top: 0;
}
.tsc-services-detail-text .tsc-section-title {
text-align: left;
font-size: 28px;
margin-top: 0;
}
.tsc-services-detail-text .tsc-section-description {
text-align: left;
}
.tsc-services-detail-text .tsc-section-btn {
width: auto;
max-width: none;
background: transparent;
color: #3B82F6;
border: 1px solid #3B82F6;
}
.tsc-services-detail-text .tsc-section-btn .tsc-btn-arrow {
color: #3B82F6;
}
.tsc-services-img {
flex: 1 1 50%;
position: relative;
z-index: 2;
}
.tsc-services-img img {
width: 100%;
height: auto;
display: block;
border-radius: 8px;
clip-path: none;
-webkit-clip-path: none;
} .tsc-message-container {
margin-top: 250px;
position: relative;
z-index: 1;
display: flex;
gap: 10%;
}
.tsc-message-banner {
display: block;
margin-bottom: 40px;
}
.tsc-message-content {
display: flex;
flex-direction: column;
position: relative;
margin-top: 0;
text-align: left;
flex: 1 1 50%;
}
.tsc-message-content .tsc-services-detail-text {
flex: 1 1 auto;
position: relative;
z-index: 2;
margin-top: 0;
}
.tsc-message-content .tsc-section-title {
text-align: left;
font-size: 28px;
margin-top: 0;
margin-bottom: 30px;
}
.tsc-message-content .tsc-section-description {
text-align: left;
margin-bottom: 40px;
}
.tsc-message-signature {
font-size: 16px;
color: #1F2937;
font-weight: 500;
text-align: left;
margin-top: 40px;
margin-bottom: 0;
}
.tsc-message-img {
flex: 1 1 50%;
position: relative;
z-index: 2;
}
.tsc-message-img img {
width: 100%;
height: auto;
display: block;
border-radius: 8px;	
}
.tsc-recruit-banner-mobile {
display: none;
}
.tsc-recruit-text .tsc-section-banner {
display: flex;
}
.tsc-recruit-banner-btn-mobile {
display: none;
}
.tsc-services-image img {
width: 100%;
height: auto;
display: block;
border-radius: 8px;
} .tsc-section-title {
font-weight: 700;
color: #1F2937;
}
.tsc-section-description {
color: #000;
} .tsc-section-btn {
display: inline-flex;
align-items: center;
gap: 10px;
color: #3B82F6;
border: 1px solid #3B82F6;
padding: 14px 28px;
border-radius: 50px;
text-decoration: none;
font-size: 16px;
font-weight: 600;
transition: all 0.3s ease;
}
.tsc-section-btn:hover {
background: #2563EB;
color: #3B82F6;
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(59, 130, 246, 0.3);
}
.tsc-btn-arrow {
font-size: 18px;
transition: transform 0.3s ease;
}
.tsc-section-btn:hover .tsc-btn-arrow {
transform: translateX(5px);
} .tsc-recruit-section {
background: #3B82F6;
position: relative;
margin-bottom: 100px;
width: 100%;
max-width: 100%;
overflow: hidden;
}
.tsc-recruit-container {
max-width: 1400px;
margin: 0 auto;
padding: 0 40px;
}
.tsc-recruit-content {
display: flex;
align-items: center;
gap: 10%;
padding-left: 10%;
}
.tsc-recruit-images-grid {
flex: 1 1 40%;
overflow: hidden;
position: relative;
height: 600px;
}
.tsc-recruit-slider-wrapper {
overflow: hidden;
position: relative;
height: 100%;
width: 100%;
}
.tsc-recruit-slider-track {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 15px;
animation: slideUp 30s linear infinite;
will-change: transform;
transform: translateZ(0); backface-visibility: hidden; }
@keyframes slideUp {
0% {
transform: translate3d(0, -50%, 0); }
100% {
transform: translate3d(0, 0, 0); }
}
@keyframes slideRight {
0% {
transform: translate3d(-50%, 0, 0); }
100% {
transform: translate3d(0, 0, 0); }
}
.tsc-recruit-image-item {
position: relative;
overflow: hidden;
border-radius: 8px;
aspect-ratio: 1;
}
.tsc-recruit-image-item img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.3s ease;
transform: translateZ(0); will-change: transform; } .tsc-recruit-image-item:nth-child(even) {
animation: slideDownReverse 30s linear infinite;
}
@keyframes slideDownReverse {
0% {
transform: translate3d(0, 50%, 0); }
100% {
transform: translate3d(0, 100%, 0); }
}
.tsc-recruit-image-item:hover img {
transform: scale(1.05);
}
.tsc-banner-right{
display: flex;
gap: 5%;
}
.tsc-recruit-banner-text {
flex: 1 1 30%;
}
.tsc-recruit-banner-btn {
flex: 1 1 70%;
padding-top: 80px;
}
.tsc-recruit-text {
flex: 1 1 50%;
}
.tsc-banner-recruit-en {
font-size: 60px;
color: #FFF;
}
.tsc-banner-recruit-ja {
font-size: 18px;
color: #FFF;
}
.tsc-recruit-btn {
color: #3B82F6;
border: 1px solid #3B82F6;
border-radius: 40px;
padding: 15px 80px;
background-color: #FFF;
font-size: 16px;
font-weight: bold;
justify-content: center;
position: relative;
}
.recruit-arrow {
position: absolute;
right: 20px;
top: 10px;
}
.tsc-section-recruit-title {
margin-top: 50px;
color: #FFF;
font-size: 36px;
font-weight: 500;
}
.tsc-section-recruit-description {
margin-top: 50px;
color: #FFF;
font-weight: 300;
} .tsc-news-section {
position: relative;
width: 100%;
max-width: 100%;
overflow: hidden;
}
.tsc-news-container {
margin: 0 auto;
padding: 0 10%;
display: flex;
}
.tsc-news-filters {
display: flex;
gap: 24px;
margin-bottom: 40px;
flex-wrap: wrap;
}
.tsc-filter-btn {
background: #ffffff;
border: 1px solid #3B82F6;
color: #3B82F6;
padding: 10px 30px;
border-radius: 50px;
font-weight: 500;
cursor: pointer;
transition: all 0.3s ease;
}
.tsc-filter-btn:hover,
.tsc-filter-btn.active {
background: #3B82F6;
color: #ffffff;
border-color: #3B82F6;
}
.tsc-news-list {
margin-bottom: 40px;
}
.tsc-news-item {
display: flex;
flex-direction: row;
gap: 10px;
padding: 20px 0;
border-bottom: 1px solid #E5E7EB;
border-top: 1px solid #E5E7EB;
transition: background 0.3s ease;
justify-content: space-between;
}
.tsc-news-row-1 {
display: flex;
flex-direction: row;
align-items: center;
gap: 15px;
flex-wrap: wrap;
}
.tsc-news-row-2 {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 15px;
}
.news-btn-container {
text-align: center;
}
.news-btn {
position: relative;
padding: 10px 80px;
justify-content: center;
}
.news-arrow {
position: absolute;
right: 20px;
}
.tsc-news-item:hover {
background: rgba(59, 130, 246, 0.05);
}
.tsc-news-date {
color: #6B7280;
min-width: auto;
}
.tsc-news-category {
color: #3B82F6;
border: 1px solid #3B82F6;
padding: 4px 20px;
border-radius: 15px;
font-size: 12px;
font-weight: 500;
min-width: 70px;
text-align: center;
}
.tsc-news-title {
flex: 1;
color: #1F2937;
text-decoration: none;
transition: color 0.3s ease;
font-weight: 500;
}
.tsc-news-title:hover {
color: #3B82F6;
}
.tsc-news-arrow {
font-size: 18px;
color: #3B82F6;
width: 32px;
height: 32px;
border: 1px solid #3B82F6;
border-radius: 50%;
padding: 0;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
background: rgba(59, 130, 246, 0.1);
}
.tsc-banner-news-ja {
font-size: 24px;
color: #000;
}
.tsc-banner-news-left {
flex: 1 1 30%;
}
.tsc-news-content {
max-width: 1400px;
flex: 1 1 70%;
padding-top: 50px;
}  @media (max-width: 1024px) {
.tsc-hero-title {
font-size: 36px;
} .tsc-hero-section {
padding: 250px 150px;
background: #ffffff;
position: relative;
overflow: hidden;
height: 550px;
margin-bottom: 100px;
}
.tsc-hero-section::before {
width: 73%;
height: 100%;
min-width: 250px;
background-position: top;
}
.tsc-hero-section::after {
background-position: center;
height: 20%;
left: 20%;
}
.tsc-about-section::before,
.tsc-services-section::before {
width: 100%;
clip-path: none;
opacity: 0.3;
}
.tsc-about-image {
top: 30%;
width: 38%;
}
.tsc-header-container {
padding: 0 20px;
}
.tsc-top-page {
width: 100%;
}
.tsc-hero-section {
padding-top: 200px;
padding-bottom: 80px;
}
.tsc-nav-menu {
gap: 24px;
}
.tsc-about-services-section::before {
width: 30%;
}
.tsc-services-container {
margin-top: 150px;
}
.tsc-services-detail-text {
margin-top: 20px;
}
.tsc-services-text {
flex: 1 1 40%;
}
.tsc-services-img {
flex: 1 1 60%;
}
.tsc-section-title {
margin-bottom: 15px;
}
.tsc-banner-recruit-en {
font-size: 48px;
color: #FFF;
}
.tsc-banner-recruit-ja {
font-size: 18px;
color: #FFF;
}
.tsc-recruit-btn {
color: #3B82F6;
border: 1px solid #3B82F6;
border-radius: 40px;
padding: 12px 50px;
background-color: #FFF;
font-size: 16px;
font-weight: bold;
justify-content: center;
position: relative;
}
.recruit-arrow {
position: absolute;
right: 20px;
top: 5px;
}
.tsc-section-recruit-title {
margin-top: 50px;
color: #FFF;
font-size: 28px;
font-weight: 500;
}
.tsc-section-recruit-description {
margin-top: 30px;
color: #FFF;
}
.tsc-recruit-section {
margin-bottom: 60px;
}
.tsc-banner-news-ja {
font-size: 18px;
color: #000;
}
.tsc-banner-news-left {
flex: 1 1 20%;
}
.tsc-news-content {
flex: 1 1 80%;
padding-top: 50px;
}
.tsc-news-list {
padding-right: 20px;
}
}  .tsc-mobile-menu-toggle {
display: none;
background: #3B82F6;
border: none;
border-radius: 50%;
width: 50px;
height: 50px;
cursor: pointer;
align-items: center;
justify-content: center;
flex-direction: column;
gap: 4px;
position: relative;
z-index: 1001;
transition: all 0.3s ease;
padding: 0;
}
.tsc-mobile-menu-toggle:hover {
background: #2563EB;
}
.tsc-hamburger-icon {
display: block;
width: 24px;
height: 3px;
background: #fff;
border-radius: 2px;
position: relative;
transition: all 0.3s ease;
}
.tsc-hamburger-icon::before,
.tsc-hamburger-icon::after {
content: '';
display: block;
width: 24px;
height: 3px;
background: #fff;
border-radius: 2px;
position: absolute;
left: 0;
transition: all 0.3s ease;
}
.tsc-hamburger-icon::before {
top: -8px;
}
.tsc-hamburger-icon::after {
bottom: -8px;
}
.tsc-mobile-menu-toggle.toggled .tsc-hamburger-icon {
background: transparent;
}
.tsc-mobile-menu-toggle.toggled .tsc-hamburger-icon::before {
transform: rotate(45deg);
top: 0;
}
.tsc-mobile-menu-toggle.toggled .tsc-hamburger-icon::after {
transform: rotate(-45deg);
bottom: 0;
} .tsc-mobile-menu-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: #0f68f8;
z-index: 10000;
opacity: 0;
visibility: hidden;
transition: opacity 0.3s ease, visibility 0.3s ease;
overflow-y: auto;
padding-top: 50px;
}
.tsc-mobile-menu-overlay::before {
content: '';
position: absolute;
left: 0;
top: 0;
width: 115%;
height: 60%;
background-image: var(--tsc-upload-url-security);
background-size: cover;
background-position: center;
background-repeat: no-repeat;
z-index: -2;
min-width: 300px;
opacity: 0.3;
}
.tsc-mobile-menu-overlay.active {
opacity: 1;
visibility: visible;
}
.tsc-mobile-menu-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: 30px 20px;
}
.tsc-mobile-menu-logo {
flex-direction: column;
}
.tsc-mobile-logo-text {
font-size: 36px;
font-weight: 700;
color: #ffffff;
letter-spacing: 2px;
text-transform: uppercase;
line-height: 1.2;
}
.tsc-mobile-logo-subtitle {
font-size: 12px;
color: #ffffff;
font-weight: 400;
letter-spacing: 0.5px;
margin-top: 2px;
}
.tsc-mobile-menu-close {
background: #ffffff;
border: none;
border-radius: 50%;
width: 40px;
height: 40px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.3s ease;
padding: 0;
}
.tsc-mobile-menu-close:hover {
background: #f3f4f6;
transform: rotate(90deg);
}
.tsc-close-icon {
font-size: 28px;
color: #3B82F6;
line-height: 1;
font-weight: 300;
} .tsc-mobile-menu-nav {
padding: 40px 20px;
flex: 1;
}
.tsc-mobile-menu-list {
list-style: none;
margin: 0;
padding: 0;
position: relative;
}
.tsc-mobile-menu-list::before {
content: '';
position: absolute;
left: 15px;
top: 0;
bottom: 0;
width: 2px;
background: rgba(255, 255, 255, 0.3);
}
.tsc-mobile-menu-list li {
margin: 0 0 30px 0;
padding-left: 40px;
position: relative;
}
.tsc-mobile-menu-list li::before {
content: '•';
position: absolute;
left: 20px;
color: #FFF;
font-size: 20px;
line-height: 1.5;
}
.tsc-mobile-menu-list a {
color: #ffffff;
font-size: 18px;
font-weight: 400;
text-decoration: none;
display: block;
transition: color 0.3s ease;
line-height: 1.5;
}
.tsc-mobile-menu-list a:hover {
color: rgba(255, 255, 255, 0.8);
} .tsc-mobile-menu-buttons {
padding: 30px 20px 40px;
display: flex;
flex-direction: column;
gap: 15px;
align-items: center;
}
.tsc-mobile-menu-btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
background: #ffffff;
color: #3B82F6;
border: none;
padding: 15px 40px;
border-radius: 50px;
text-decoration: none;
font-size: 16px;
font-weight: 600;
width: 100%;
max-width: 300px;
transition: all 0.3s ease;
}
.tsc-mobile-menu-btn:hover {
background: #f3f4f6;
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.tsc-mobile-menu-btn .tsc-btn-arrow {
color: #3B82F6;
font-size: 18px;
} @media (max-width: 768px) {
.tsc-mobile-menu-list li > ul{
list-style: none;
margin: 0;
} .tsc-custom-header {
padding: 15px 0;
}
.tsc-header-container {
padding: 0 20px;
position: relative;
}
.tsc-header-nav {
display: none;
}
.tsc-header-actions {
display: none;
}
.tsc-mobile-menu-toggle {
display: flex;
}
.tsc-logo-text {
font-size: 28px;
}
.tsc-logo-subtitle {
font-size: 11px;
} .tsc-hero-section {
padding: 120px 20px 60px;
height: auto;
min-height: 60vh;
margin-bottom: 60px;
}
.tsc-hero-section::before {
width: 100%;
height: 520px;
top: 0;
background-image: var(--tsc-upload-url-hero1-mobile);
background-size: cover;
background-position: center;
}
.tsc-hero-section::after {
width: 100%;
top: 53%;
left: -16%;
background-size: contain;
background-position: center;
}
.tsc-divi-section {
display: none;
}
.tsc-hero-container {
text-align: center;
padding-top: 500px;
}
.tsc-hero-content {
width: 100%;
}
.tsc-hero-title {
font-size: 24px;
line-height: 1.4;
margin-bottom: 15px;
}  .tsc-about-services-section {
margin-bottom: 60px;
padding: 0;
position: relative;
overflow: visible;
display: flex;
flex-direction: column;
z-index: 0;
}
.tsc-about-services-section::before {
content: '';
position: absolute;
width: 90%;
height: 40%;
top: 0;
left: -10%;
background-size: cover;
background-position: center top;
background-repeat: no-repeat;
border-radius: 20px 0 0 0;
z-index: 0;
background-image: var(--tsc-upload-url-about-bg);
opacity: 1;
pointer-events: none;
}
.tsc-banner-about-en {
font-size: 36px;
font-weight: 400;
color: #ffffff;
display: block;
margin-bottom: 5px;
}
.tsc-banner-about-ja {
font-size: 18px;
color: #ffffff;
display: block;
}
.circle-img-1,
.circle-img-2 {
display: none;
}
.tsc-about-container {
padding: 0;
background: transparent;
}
.tsc-about-content {
flex-direction: column;
gap: 0;
}
.tsc-about-banner-col {
flex: 1 1 100%;
padding: 40px 20px 20px 20px;
padding-left: 0;
padding-top: 0;
width: 100%;
position: relative;
z-index: 2;
order: 1;
background: transparent;
}
.tsc-banner-left {
padding: 30px 20px;
padding-left: 20px;
position: relative;
z-index: 2;
background: transparent;
}
.tsc-about-image {
position: relative;
transform: none;
width: 80%;
margin-top: 0;
order: 2;
z-index: 1;
left: auto;
top: auto;
max-width: 100%;
}
.tsc-about-image img {
width: 100%;
border-radius: 0 0 20px 0;
display: block;
}
.tsc-about-text-col {
flex: 1 1 100%;
order: 3;
text-align: center;
width: 100%;
}
.tsc-about-text {
width: 100%;
}
.tsc-about-text .tsc-section-btn {
margin-top: 20px;
}
.tsc-section-description {
margin-top: 30px;
line-height: 1.7;
margin-bottom: 30px;
}
.tsc-section-btn {
padding: 14px 28px;
font-size: 12px;
background: #3B82F6;
color: #ffffff;
border: none;
border-radius: 50px;
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
margin: 0 auto;
width: 80%;
text-align: center;
}
.tsc-section-btn:hover {
background: #2563EB;
}
.tsc-section-btn .tsc-btn-arrow {
color: #ffffff;
} .tsc-services-container {
margin-top: 60px;
padding: 0 20px;
display: flex;
flex-direction: column;
gap: 0;
position: relative;
}
.tsc-services-container::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 40%;
height: 30%;
background: linear-gradient(135deg, rgba(59, 130, 246, 0.1) 0%, rgba(59, 130, 246, 0.05) 100%);
border-radius: 0 0 50px 0;
z-index: 0;
pointer-events: none;
}
.tsc-services-banner {
order: 1;
padding: 20px 0;
position: relative;
z-index: 1;
}
.tsc-banner-services-en {
font-size: 32px;
font-weight: 400;
color: #3B82F6;
display: block;
margin-left: 0;
line-height: 1.2;
}
.tsc-banner-services-ja {
display: block;
margin-top: 5px;
margin-left: 0;
line-height: 1.4;
}
.tsc-services-content{
order: 2;
}
.tsc-services-img {
order: 1;
width: 100%;
position: relative;
margin-top: 0;
overflow: visible;
z-index: 1;
}
.tsc-services-img img {
width: 100%;
display: block;
border-radius: 0;
clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 100%, 0 15%);
-webkit-clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 100%, 0 15%);
position: relative;
z-index: 1;
}
.tsc-services-detail-text {
order: 3;
margin-top: 30px;
padding: 0;
text-align: center;
width: 100%;
position: relative;
z-index: 1;
background: #ffffff;
}
.tsc-services-detail-text .tsc-section-description {
text-align: center;
line-height: 1.8;
margin-bottom: 30px;
margin-top: 0;
}
.tsc-services-detail-text .tsc-section-btn {
margin-top: 20px;
width: auto;
width: 60%;
} .tsc-message-container {
margin-top: 60px;
padding: 0 20px;
display: flex;
flex-direction: column;
gap: 0;
position: relative;
}
.tsc-message-banner {
order: 1;
padding: 20px 0;
position: relative;
z-index: 1;
}
.tsc-message-img {
order: 1;
width: 100%;
position: relative;
margin-top: 0;
overflow: visible;
z-index: 1;
}
.tsc-message-img img {
width: 100%;
display: block;
border-radius: 0;
clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 100%, 0 15%);
-webkit-clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 100%, 0 15%);
position: relative;
z-index: 1;
}
.tsc-message-content {
order: 2;
margin-top: 30px;
padding: 0;
text-align: center;
width: 100%;
position: relative;
z-index: 1;
background: #ffffff;
}
.tsc-message-content .tsc-section-description {
text-align: center;
margin-bottom: 30px;
}
.tsc-message-signature {
text-align: center;
margin-top: 30px;
} .tsc-recruit-section {
margin-bottom: 60px;
padding: 40px 20px;
}
.tsc-recruit-container {
padding: 0;
}
.tsc-recruit-content {
flex-direction: column;
gap: 30px;
padding-left: 0;
}
.tsc-recruit-banner-mobile {
order: 1;
padding: 20px 0;
display: block;
text-align: left;
}
.tsc-recruit-banner-mobile .tsc-recruit-banner-text {
display: flex;
flex-direction: column;
gap: 5px;
align-items: flex-start;
text-align: left;
}
.tsc-recruit-banner-mobile .tsc-banner-recruit-en {
text-align: left;
font-size: 36px;
font-weight: 400;
color: #ffffff;
display: block;
line-height: 1.2;
}
.tsc-recruit-banner-mobile .tsc-banner-recruit-ja {
text-align: left;
font-size: 18px;
color: #ffffff;
display: block;
line-height: 1.4;
}
.tsc-recruit-images-grid {
order: 2;
height: auto;
max-height: none;
min-height: auto;
}
.tsc-recruit-slider-wrapper {
overflow: hidden;
position: relative;
width: 100%;
height: 560px;
}
.tsc-recruit-slider-track {
display: grid;
grid-template-rows: repeat(2, 280px);
grid-auto-columns: 280px;
grid-auto-flow: column;
gap: 10px;
animation: slideRight 30s linear infinite;
will-change: transform;
width: max-content;
}
.tsc-recruit-image-item {
width: 280px;
height: 280px;
}
.tsc-recruit-image-item:nth-child(even) {
animation: none;
}
.tsc-recruit-image-item img {
width: 100%;
height: 100%;
object-fit: cover;
border-radius: 8px;
display: block;
}
.tsc-recruit-text {
flex: 1 1 100%;
width: 100%;
order: 3;
}
.tsc-recruit-text .tsc-section-banner {
display: none;
}
.tsc-recruit-banner-btn-mobile {
display: block;
margin-top: 30px;
text-align: center;
}
.tsc-section-banner.tsc-banner-right {
flex-direction: column;
gap: 20px;
}
.tsc-recruit-banner-text {
flex: 1 1 100%;
}
.tsc-banner-recruit-en {
font-size: 36px;
}
.tsc-recruit-banner-btn {
flex: 1 1 100%;
padding-top: 0;
display: block;
margin-top: 30px;
text-align: center;
}
.tsc-recruit-btn {
padding: 14px 40px;
font-size: 14px;
gap: 10px;
width: 80%;
margin: 0 auto;
}
.tsc-recruit-btn:hover {
background: #f3f4f6;
border-color: #2563EB;
color: #2563EB;
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(59, 130, 246, 0.2);
}
.recruit-arrow {
position: static;
margin-left: 0;
color: #3B82F6;
font-size: 18px;
transition: transform 0.3s ease;
}
.tsc-recruit-btn:hover .recruit-arrow {
color: #2563EB;
transform: translateX(5px);
}
.tsc-section-recruit-title {
text-align: center;
margin-top: 30px;
font-size: 24px;
line-height: 1.4;
}
.tsc-section-recruit-description {
margin-top: 20px;
line-height: 1.6;
text-align: center;
margin-bottom: 0;
} .tsc-news-section {
padding: 40px 20px;
}
.tsc-news-container {
padding-left: 0;
flex-direction: column;
}
.tsc-banner-news-left {
flex: 1 1 100%;
margin-bottom: 30px;
}
.tsc-banner-news-en {
font-size: 32px;
}
.tsc-news-content {
flex: 1 1 100%;
padding-top: 0;
}
.tsc-news-filters {
gap: 10px;
margin-bottom: 30px;
flex-wrap: wrap;
}
.tsc-filter-btn {
padding: 8px 20px;
font-size: 12px;
border-radius: 20px;
}
.tsc-news-list {
margin-bottom: 30px;
}
.tsc-news-item {
flex-direction: column;
gap: 10px;
padding: 15px 0;
}
.tsc-news-row-1 {
display: flex;
flex-direction: row;
align-items: center;
gap: 10px;
flex-wrap: wrap;
}
.tsc-news-row-2 {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 10px;
}
.tsc-news-date {
min-width: auto;
width: auto;
}
.tsc-news-category {
font-size: 12px;
padding: 4px 15px;
min-width: auto;
}
.tsc-news-title {
width: auto;
flex: 1;
font-weight: 500;
}
.tsc-news-arrow {
font-size: 16px;
width: 32px;
height: 32px;
margin-left: 0;
flex-shrink: 0;
}
.news-btn-container {
text-align: center;
}
.news-btn {
padding: 12px 20px;
max-width: 50%;
}
.news-arrow {
position: absolute;
right: 20px;
}
} body.mobile-menu-open {
overflow: hidden;
} .tsc-services-hero {
background: #ffffff;
padding: 40px 0 80px;
position: relative;
overflow: hidden;
}
.tsc-services-hero-container {
max-width: 1400px;
margin: 0 auto;
padding: 0 40px;
} .tsc-services-breadcrumb {
margin-bottom: 40px;
color: #6B7280;
}
.tsc-services-breadcrumb a {
color: #6B7280;
text-decoration: none;
transition: color 0.3s ease;
}
.tsc-services-breadcrumb a:hover {
color: #3B82F6;
}
.tsc-breadcrumb-separator {
margin: 0 10px;
color: #6B7280;
}
.tsc-breadcrumb-current {
color: #1F2937;
font-weight: 500;
}
.tsc-services-hero-content {
padding: 10% 0;
}
.tsc-services-hero-title {
font-size: 72px;
font-weight: 700;
background: linear-gradient(135deg, #3B82F6 0%, #00A8FF 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
line-height: 1.2;
display: inline-block;
}
.tsc-services-hero-subtitle {
color: #1F2937;
font-weight: 500;
}
.tsc-services-hero-section-title {
font-size: 24px;
font-weight: 600;
color: #1F2937;
margin-top: 150px;
}
.tsc-services-hero-description {
color: #1F2937;
}
.tsc-services-hero::before {
content: '';
position: absolute;
top: 0;
right: 0;
width: 100%;
height: 600px;
background-image: var(--tsc-upload-url-service-hero);
background-size: contain;
background-position: top right;
background-repeat: no-repeat;	
z-index: 0;
} @media (max-width: 768px) {
.tsc-services-hero {
padding: 30px 0 40px;
}
.tsc-services-hero-container {
padding: 10px 20px;
}
.tsc-services-breadcrumb {
margin-bottom: 30px;
font-size: 12px;
}
.tsc-services-hero-title {
font-size: 40px;
}
.tsc-services-hero-subtitle {
margin-bottom: 30px;
}
.tsc-services-hero-section-title {
font-size: 20px;
} .tsc-services-hero-right {
flex: 1 1 100%;
height: 300px;
}
.tsc-services-hero-right::before,
.tsc-services-hero-right::after {
clip-path: none;
-webkit-clip-path: none;
}
} .tsc-services-main {
background: linear-gradient(180deg, rgba(59, 130, 246, 0.08) 0%, rgba(59, 130, 246, 0.12) 100%);
padding: 100px 0;
position: relative;
}
.tsc-services-main-container {
max-width: 1400px;
margin: 0 auto;
padding: 40px 40px;
position: relative;
z-index: 1;
display: flex;
flex-direction: column;
gap: 0;
background-color: #ffffff;
border-radius: 40px;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}
.tsc-service-section {
margin-bottom: 100px;
width: 100%;
display: block;
}
.tsc-service-section:last-child {
margin-bottom: 0;
}
.tsc-service-section-header {
margin-bottom: 30px;
display: flex;
align-items: baseline;
justify-content: center;
gap: 30px;
}
.tsc-service-number-wrapper {
display: flex;
flex-direction: column;
align-items: center;
gap: 10px;
}
.tsc-service-number {
font-size: 80px;
font-weight: 900;
color: #3B82F6;
line-height: 1;
}
.tsc-service-label {
display: flex;
align-items: center;
gap: 10px;
}
.tsc-service-label-line {
width: 40px;
height: 2px;
background: #3B82F6;
}
.tsc-service-label-text {
color: #3B82F6;
font-weight: 500;
}
.tsc-service-section-title {
font-size: 32px;
font-weight: 700;
color: #1F2937;
text-align: center;
flex: 1;
} .tsc-service-industry-box {
background: #E5E7EB;
border-radius: 8px;
padding: 20px 30px;
margin-bottom: 40px;
}
.tsc-service-industry-text {
color: #1F2937;
} .tsc-service-stages {
display: flex;
gap: 30px;
margin-bottom: 40px;
flex-wrap: nowrap;
width: 100%;
}
.tsc-service-stage {
flex: 1 1 33.333%;
background: rgba(59, 130, 246, 0.1);
border-radius: 12px;
padding: 30px 20px;
text-align: center;
display: flex;
flex-direction: column;
align-items: center;
min-width: 0;
}
.tsc-service-stage-title {
font-weight: 600;
color: #1F2937;
order: 1;
}
.tsc-service-stage-icon {
margin-bottom: 25px;
display: flex;
justify-content: center;
order: 2;
}
.tsc-icon-circle {
width: 150px;
height: 150px;
border-radius: 50%;
background: #ffffff;
display: flex;
align-items: center;
justify-content: center;
padding: 15px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.tsc-icon-circle img {
width: 100%;
height: 100%;
object-fit: contain;
display: block;
}
.tsc-service-stage-text {
color: #000000;
text-align: left;
order: 3;
list-style: none;
padding: 0;
}
.tsc-service-stage-text li {
margin: 0;
padding: 0;
} .tsc-service-additional-info {
display: flex;
flex-direction: column;
gap: 20px;
margin-top: 40px;
}
.tsc-service-info-box {
border: 1px solid #E5E7EB;
border-radius: 8px;
padding: 20px 30px;
display: flex;
align-items: flex-start;
gap: 40px;
}
.tsc-service-info-label {
font-weight: 600;
color: #3B82F6;
flex-shrink: 0;
min-width: 120px;
}
.tsc-service-info-text {
color: #1F2937;
flex: 1;
} @media (max-width: 768px) {
.tsc-services-main {
padding: 40px 0;
}
.tsc-services-main-container {
padding: 20px 15px;
border-radius: 20px;
margin: 0 15px;
}
.tsc-service-section {
margin-bottom: 50px;
}
.tsc-service-section:last-child {
margin-bottom: 0;
}
.tsc-service-section-header {
flex-direction: column;
align-items: center;
gap: 15px;
margin-bottom: 25px;
}
.tsc-service-number-wrapper {
align-items: center;
width: 100%;
}
.tsc-service-number {
font-size: 64px;
line-height: 1;
}
.tsc-service-label {
justify-content: center;
margin-top: 5px;
}
.tsc-service-label-line {
width: 30px;
}
.tsc-service-section-title {
font-size: 24px;
text-align: center;
margin: 0;
width: 100%;
}
.tsc-service-industry-box {
background: #E5E7EB;
border-radius: 8px;
padding: 20px 15px;
margin-bottom: 30px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.tsc-service-industry-text {
text-align: center;
line-height: 1.6;
}
.tsc-service-stages {
flex-direction: column;
gap: 20px;
margin-bottom: 30px;
}
.tsc-service-stage {
flex: 1 1 100%;
background: rgba(59, 130, 246, 0.1);
border-radius: 12px;
padding: 20px 15px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
display: flex;
flex-direction: column;
align-items: flex-start;
}
.tsc-service-stage-title {
margin-bottom: 15px;
text-align: center;
font-size: 20px;
width: 100%;
order: 1;
flex: 0 0 100%;
} .tsc-service-stage-icon {
margin-bottom: 0;
order: 2;
flex: 0 0 auto;
margin-right: 15px;
display: flex;
justify-content: space-between;
}
.tsc-icon-circle {
width: 80px;
height: 80px;
margin: 0;
flex-shrink: 0;
}
.tsc-service-stage-text {
text-align: left;
margin-top: 0;
order: 3;
flex: 1 1 auto;
display: flex;
flex-direction: column;
min-width: 0;
} .tsc-service-stage {
flex-wrap: wrap;
flex-direction: row;
} .tsc-service-stage-title {
flex-basis: 100%;
} .tsc-service-stage-icon {
flex-basis: auto;
}
.tsc-service-stage-text {
flex-basis: calc(100% - 95px);
}
.tsc-service-stage-text li {
margin-bottom: 8px;
line-height: 1.6;
}
.tsc-service-additional-info {
flex-direction: column;
gap: 15px;
margin-top: 30px;
}
.tsc-service-info-box {
flex-direction: column;
gap: 12px;
padding: 20px 15px;
background: #F9FAFB;
border: 1px solid #E5E7EB;
}
.tsc-service-info-label {
min-width: auto;
text-align: center;
font-size: 16px;
margin-bottom: 5px;
}
.tsc-service-info-text {
text-align: center;
line-height: 1.6;
}
} .tsc-projects-section {
background: #ffffff;
padding: 100px 0;
}
.tsc-projects-container {
max-width: 1400px;
margin: 0 auto;
padding: 0 40px;
}
.tsc-projects-header {	
margin-bottom: 50px;
}
.tsc-projects-title {
font-size: 48px;
font-weight: 700;
background: linear-gradient(135deg, #3B82F6 0%, #00A8FF 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
line-height: 1.2;
margin: 0 0 10px 0;
}
.tsc-projects-subtitle {
color: #1F2937;
font-weight: 500;
}
.tsc-projects-description {
color: #1F2937;
flex: 1;
max-width: 600px;
padding-left: 30%;
}
.tsc-projects-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-template-rows: repeat(2, auto);
gap: 30px;
margin-bottom: 50px;
}
.tsc-project-card {
background: #ffffff;
border-radius: 12px;
overflow: hidden;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
transition: transform 0.3s ease, box-shadow 0.3s ease;
display: flex;
flex-direction: column;
}
.tsc-project-card:hover {
transform: translateY(-5px);
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}
.tsc-project-image {
width: 100%;
height: 200px;
overflow: hidden;
background: #f3f4f6;
}
.tsc-project-image img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.tsc-project-placeholder {
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
color: #9CA3AF;
background: #E5E7EB;
}
.tsc-project-content {
padding: 20px;
flex: 1;
display: flex;
flex-direction: column;
}
.tsc-project-title {
font-size: 18px;
font-weight: 600;
color: #3B82F6;
text-decoration: none;
transition: color 0.3s ease;
display: inline-block;
}
.tsc-project-title:hover {
color: #2563EB;
}
.tsc-project-details {
display: flex;
flex-direction: column;
gap: 15px;
}
.tsc-project-detail-item {
display: flex;
align-items: flex-start;
gap: 10px;
}
.tsc-project-bullet {
color: #1F2937;
font-size: 16px;
font-weight: bold;
flex-shrink: 0;
margin-top: 2px;
}
.tsc-project-detail-content {
flex: 1;
}
.tsc-project-detail-label {
font-weight: 600;
color: #1F2937;
display: block;
margin-bottom: 5px;
}
.tsc-project-detail-text {
color: #1F2937;
}
.tsc-projects-button-container {
text-align: center;
margin-top: 20px;
}
.tsc-projects-button {
display: inline-flex;
align-items: center;
gap: 10px;
background: #ffffff;
color: #3B82F6;
border: 1px solid #3B82F6;
padding: 14px 40px;
border-radius: 50px;
text-decoration: none;
font-size: 16px;
font-weight: 600;
transition: all 0.3s ease;
}
.tsc-projects-button:hover {
background: #f3f4f6;
border-color: #2563EB;
color: #2563EB;
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(59, 130, 246, 0.2);
}
.tsc-projects-button .tsc-btn-arrow {
color: #3B82F6;
font-size: 18px;
transition: transform 0.3s ease;
}
.tsc-projects-button:hover .tsc-btn-arrow {
transform: translateX(5px);
color: #2563EB;
} @media (max-width: 768px) {
.tsc-projects-section {
padding: 60px 0;
}
.tsc-projects-container {
padding: 0 20px;
}
.tsc-projects-header {
flex-direction: column;
gap: 20px;
}
.tsc-projects-title {
font-size: 36px;
}
.tsc-projects-description {
max-width: 100%;
}
.tsc-projects-grid {
grid-template-columns: 1fr;
gap: 20px;
}
.tsc-project-content {
padding: 15px;
}
.tsc-project-details {
gap: 12px;
}
} .tsc-recruit-contact-section {
width: 100%;
overflow: hidden;
}
.tsc-recruit-contact-container {
display: flex;
width: 100%;
} .tsc-recruit-column {
flex: 1 1 50%;
position: relative; display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
padding: 80px 60px;
overflow: hidden;
}
.tsc-recruit-background-images {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 0;
overflow: hidden;
}
.tsc-recruit-background-images img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
}
.tsc-recruit-content-services {
position: relative;
z-index: 2;
width: 100%;
max-width: 500px;
text-align: center;
}
.tsc-recruit-title {
font-size: 72px;
font-weight: 400;
color: #ffffff;
margin: 0 0 15px 0;
line-height: 1.2;
}
.tsc-recruit-subtitle {
font-size: 18px;
color: #ffffff;
margin: 0 0 30px 0;
font-weight: 400;
}
.tsc-recruit-description {
font-size: 16px;
color: #ffffff;
line-height: 1.8;
margin: 0 0 40px 0;
}
.tsc-recruit-button {
display: inline-flex;
align-items: center;
gap: 10px;
background: #ffffff;
color: #3B82F6;
padding: 16px 40px;
border-radius: 50px;
text-decoration: none;
font-size: 16px;
font-weight: 600;
transition: all 0.3s ease;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.tsc-recruit-button:hover {
background: #f3f4f6;
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.tsc-recruit-button .tsc-btn-arrow {
color: #3B82F6;
font-size: 18px;
transition: transform 0.3s ease;
}
.tsc-recruit-button:hover .tsc-btn-arrow {
transform: translateX(5px);
} .tsc-contact-column {
flex: 1 1 50%;
position: relative;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
padding: 80px 60px;
overflow: hidden;
}
.tsc-contact-background-image {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 0;
}
.tsc-contact-background-image img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
}
.tsc-contact-content {
position: relative;
z-index: 2;
width: 100%;
max-width: 500px;
text-align: center;
}
.tsc-contact-title {
font-size: 72px;
font-weight: 400;
color: #ffffff;
margin: 0 0 15px 0;
line-height: 1.2;
}
.tsc-contact-subtitle {
font-size: 18px;
color: #ffffff;
margin: 0 0 30px 0;
font-weight: 400;
}
.tsc-contact-description {
font-size: 16px;
color: #ffffff;
line-height: 1.8;
margin: 0 0 40px 0;
}
.tsc-contact-button {
display: inline-flex;
align-items: center;
gap: 10px;
background: #ffffff;
color: #3B82F6;
padding: 16px 40px;
border-radius: 50px;
text-decoration: none;
font-size: 16px;
font-weight: 600;
transition: all 0.3s ease;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.tsc-contact-button:hover {
background: #f3f4f6;
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.tsc-contact-button .tsc-btn-arrow {
color: #3B82F6;
font-size: 18px;
transition: transform 0.3s ease;
}
.tsc-contact-button:hover .tsc-btn-arrow {
transform: translateX(5px);
} @media (max-width: 768px) {
.tsc-recruit-contact-container {
flex-direction: column;
min-height: auto;
}
.tsc-recruit-column,
.tsc-contact-column {
flex: 1 1 100%;
padding: 60px 30px;
min-height: 500px;
}
.tsc-recruit-title,
.tsc-contact-title {
font-size: 48px;
}
.tsc-recruit-subtitle,
.tsc-contact-subtitle {
font-size: 16px;
}
.tsc-recruit-description,
.tsc-contact-description {
margin-bottom: 30px;
}
.tsc-recruit-button,
.tsc-contact-button {
padding: 14px 30px;
width: 100%;
justify-content: center;
}
.tsc-recruit-background-images img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
}
} @media screen and (max-width: 768px) {
.tsc-services-hero::before{
width: 50%;
height: 200px;
background-image: var(--tsc-upload-url-service-sp-hero);
}
.tsc-services-hero-section-title{
margin-top: 30px;
}
}  .tsc-about-page-hero {
background: #ffffff;
position: relative;
overflow: hidden;
padding-bottom: 100px;
width: 100%;
max-width: 100%;
}
.tsc-about-page-hero::before {
content: '';
position: absolute;
top: 3%;
width: 30%;
height: 100%;
background-image: var(--tsc-upload-url-about-bg);
background-size: contain;
background-position: center top;
background-repeat: no-repeat;
z-index: 0;
}
.tsc-about-page-hero::after {
content: '';
position: absolute;
right: 0;
top: -42px;
width: 40%;
height: 100%;
background-image: var(--tsc-upload-url-security);
background-size: contain;
background-position: top right;
background-repeat: no-repeat;
z-index: 0;
opacity: 0.5;
}
.tsc-about-page-hero-container {
position: relative;
max-width: 1400px;
margin: 0 auto;
width: 100%;
z-index: 1;
} .tsc-about-page-breadcrumb {
margin-bottom: 40px;
color: #6B7280;
}
.tsc-about-page-breadcrumb a {
color: #6B7280;
text-decoration: none;
transition: color 0.3s ease;
}
.tsc-about-page-breadcrumb a:hover {
color: #3B82F6;
} .tsc-about-page-container {
position: relative;
z-index: 1;
}
.tsc-about-page-banner-col {	
z-index: 2;
padding-left: 0;
padding-top: 3%;
}
.tsc-about-page-text-col {
position: relative;
z-index: 2;
padding: 15% 10% 0 10%;
text-align: center;
}
.tsc-about-page-text {
position: relative;
z-index: 2;
} .tsc-value-section {
background: #ffffff;
padding: 100px 0;
width: 100%;
}
.tsc-value-container{
max-width: 1400px;
margin: 0 auto;
padding: 0 40px;
}
.tsc-value-content {
padding: 60px 40px;
background: #E6F2FF;
border-radius: 20px;
}
.tsc-value-header {
margin-bottom: 60px;
}
.tsc-value-title {
font-size: 48px;
font-weight: 700;
color: #3B82F6;
margin: 0 0 10px 0;
}
.tsc-value-subtitle {
font-size: 16px;
color: #1F2937;
margin: 0;
}
.tsc-value-item {
margin-bottom: 80px;
}
.tsc-value-item:last-child {
margin-bottom: 0;
}
.tsc-value-item-header {
display: flex;
align-items: flex-start;
gap: 40px;
margin-bottom: 40px;
}
.tsc-value-number-wrapper {
display: flex;
flex-direction: column;
align-items: center;
min-width: 120px;
}
.tsc-value-number {
font-size: 72px;
font-weight: 700;
color: #3B82F6;
line-height: 1;
}
.tsc-value-label {
font-size: 16px;
color: #3B82F6;
font-weight: 500;
margin-top: 10px;
}
.tsc-value-item-title {
font-size: 28px;
font-weight: 600;
color: #1F2937;
margin: 0;
line-height: 1.6;
flex: 1;
}
.tsc-value-item-content {
display: flex;
flex-direction: column;
gap: 40px;
}
.tsc-value-item-content-split {
flex-direction: row;
gap: 60px;
align-items: flex-start;
}
.tsc-value-sub-items {
flex: 1;
display: flex;
flex-direction: column;
gap: 30px;
}
.tsc-value-sub-item {
display: flex;
gap: 50px;
align-items: flex-start;
}
.tsc-value-sub-item-icon {
display: flex;
gap: 20px;
align-items: flex-start;
}
.tsc-value-sub-image {
width: 160px;
height: 160px;
border-radius: 50%;
overflow: hidden;
flex-shrink: 0;
}
.tsc-value-sub-image img {
width: 100%;
height: 100%;
object-fit: cover;
}
.tsc-value-icon-circle {
width: 20px;
height: 20px;
border-radius: 50%;
background: #3B82F6;
flex-shrink: 0;
margin-top: 5px;
}
.tsc-value-sub-content {
flex: 1;
}
.tsc-value-sub-title {
font-size: 18px;
font-weight: 600;
color: #1F2937;
margin: 0 0 15px 0;
border-bottom: solid 1px #ccc;
padding-bottom: 10px;
}
.tsc-value-sub-text {
font-size: 16px;
color: #1F2937;
line-height: 1.8;
margin: 0;
}
.tsc-value-item-image {
flex: 0 0 400px;
height: 500px;
border-radius: 8px;
overflow: hidden;
}
.tsc-value-item-image img {
width: 100%;
height: 100%;
object-fit: cover;
}
.tsc-value-health-content {
flex-direction: row;
gap: 40px;
align-items: center;
}
.tsc-value-health-logo {
flex: 0 0 200px;
}
.tsc-value-health-logo img {
width: 100%;
height: auto;
display: block;
}
.tsc-value-health-text {
flex: 1;
}
.tsc-value-health-description {
font-size: 16px;
color: #1F2937;
line-height: 1.8;
margin: 0;
} @media (max-width: 1024px) {
.tsc-about-page-hero::before {
width: 30%;
}
.tsc-about-page-content {
gap: 50px;
}
}
@media (max-width: 768px) {
.tsc-about-page-hero::before {		
width: 85%;
height: 600px;
top: 40px;
left: -10%;
}
.tsc-about-page-hero::after {
right: 0;
top: -20px;
width: 70%;
height: 300px;
}
.tsc-about-page-hero-container {
padding: 0;
}
.tsc-about-page-breadcrumb {
margin-bottom: 30px;
font-size: 12px;
}
.tsc-about-page-container {
padding: 0;
background: transparent;
}
.tsc-about-page-content {
flex-direction: column;
gap: 0;
}
.tsc-banner-services-en::before{
display: none;
}
.tsc-about-page-banner-col {
flex: 1 1 100%;
padding: 40px 20px 20px 20px;
padding-left: 0;
padding-top: 0;
width: 100%;
position: relative;
z-index: 2;
order: 1;
background: transparent;
}
.tsc-banner-left {
padding: 30px 20px;
padding-left: 20px;
position: relative;
z-index: 2;
background: transparent;
}
.tsc-about-page-text-col {
flex: 1 1 100%;
order: 2;
text-align: center;
width: 100%;
}
.tsc-about-page-text {
width: 100%;
}
.tsc-section-description {
margin-top: 30px;
line-height: 1.7;
margin-bottom: 30px;
} .tsc-value-section {
padding: 60px 20px;
}
.tsc-value-container {
padding: 40px 20px;
border-radius: 15px;
}
.tsc-value-title {
font-size: 36px;
}
.tsc-value-item {
margin-bottom: 60px;
}
.tsc-value-item-header {
flex-direction: column;
gap: 20px;
}
.tsc-value-number-wrapper {
min-width: auto;
}
.tsc-value-number {
font-size: 56px;
}
.tsc-value-item-title {
font-size: 16px;
}
.tsc-value-item-content-split {
flex-direction: column;
gap: 30px;
}
.tsc-value-item-image {
flex: 1 1 100%;
width: 100%;
height: 300px;
}
.tsc-value-sub-item {
flex-direction: column;
gap: 20px;
}
.tsc-value-sub-image {
width: 100px;
height: 100px;
}
.tsc-value-health-content {
flex-direction: column;
gap: 30px;
}
.tsc-value-health-logo {
flex: 1 1 100%;
max-width: 200px;
margin: 0 auto;
}
} .tsc-company-page {
background: #ffffff;
}
.tsc-company-hero {
position: relative;
width: 100%;
overflow: hidden;
}
.tsc-company-hero::before{
content: '';
position: absolute;
right: 0;
top: -42px;
width: 40%;
height: 100%;
background-image: var(--tsc-upload-url-company-hero);
background-size: contain;
background-position: top right;
background-repeat: no-repeat;
z-index: 0;
opacity: 0.5;
} .tsc-company-overview-section {
background: #ffffff;
padding: 80px 0;
}
.tsc-company-overview-container {
max-width: 1400px;
margin: 0 auto;
padding: 0 40px;
display: flex;
gap: 60px;
}
.tsc-company-sidebar {
flex: 0 0 250px;
}
.tsc-company-sidebar-nav {
display: flex;
flex-direction: column;
gap: 0; overflow: hidden;
}
.tsc-sidebar-link {
margin: 5px;
padding: 0 15px;
color: #6B7280;
text-decoration: none;
border-left: 2px solid #3B82F6;
transition: all 0.3s ease;
}
.tsc-sidebar-link:last-child {
border-bottom: none;
}
.tsc-sidebar-link:hover,
.tsc-sidebar-link.active {
color: #3B82F6;
font-weight: 600;
}
.tsc-company-main-content {
flex: 1;
}
.tsc-company-content-block {
background: #ffffff;
}
.tsc-company-content-title, .tsc-sdgs-title, .tsc-history-title{
color: #1F2937;
font-size: 32px;
font-weight: 700;
align-items: center;
}
.tsc-company-content-title{	
margin: 0 0 40px 0;
display: flex;	
gap: 15px;
}
.tsc-company-details {
margin-bottom: 40px;
}
.tsc-company-detail-row {
display: flex;
padding: 20px 0;
border-bottom: 1px solid #E5E7EB;
}
.tsc-company-detail-row:first-child {
border-top: 1px solid #E5E7EB;
}
.tsc-company-detail-label {
flex: 0 0 200px;
font-weight: 600;
color: #1F2937;
font-size: 16px;
}
.tsc-company-detail-value {
flex: 1;
color: #1F2937;
font-size: 16px;
}
.tsc-company-map-embed {
margin-top: 20px;
border-radius: 8px;
overflow: hidden;
width: 100%;
}
.tsc-company-map-embed iframe {
width: 100%;
height: 400px;
border: 0;
display: block;
}
.tsc-company-map {
margin: 40px 0;
border-radius: 8px;
overflow: hidden;
}
.tsc-company-map img {
width: 100%;
height: auto;
display: block;
}
.tsc-company-description {
margin: 40px 0;
}
.tsc-company-description p {
color: #1F2937;
line-height: 1.8;
}
.tsc-company-button {
margin-top: 40px;
} .tsc-company-message-section {
background: #ffffff;
padding: 80px 0;
}
.tsc-company-message-container {
max-width: 1400px;
margin: 0 auto;
padding: 0 40px;
}
.tsc-company-message-content {
margin-top: 40px;
}
.tsc-company-message-text {
max-width: 800px;
}
.tsc-company-message-text p {
color: #1F2937;
line-height: 1.8;
margin-bottom: 20px;
}
.tsc-company-message-signature {
text-align: right;
font-weight: 500;
margin-top: 40px;
} .tsc-sdgs-section {
background: #ffffff;
padding: 80px 0;
}
.tsc-sdgs-title {
margin: 0 0 20px 0;
display: flex;
align-items: center;
gap: 15px;
}
.tsc-sdgs-intro {
font-size: 16px;
color: #1F2937;
margin: 0 0 60px 0;
}
.tsc-sdgs-icons {
display: flex;
justify-content: center;
align-items: center;
margin-top: 40px;
width: 70%;
}
.tsc-sdgs-icons img {
width: 100%;
max-width: 1000px;
height: auto;
display: block;
}
.tsc-sdg-item {
display: flex;
flex-direction: column;
align-items: center;
gap: 20px;
}
.tsc-sdg-icon {
width: 200px;
height: 200px;
border-radius: 8px;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
position: relative;
}
.tsc-sdg-3 {
background: #4CAF50;
}
.tsc-sdg-5 {
background: #FF5722;
}
.tsc-sdg-8 {
background: #A0305C;
}
.tsc-sdg-number {
font-size: 72px;
font-weight: 700;
color: #ffffff;
line-height: 1;
z-index: 2;
}
.tsc-sdg-icon-graphic {
position: absolute;
width: 100%;
height: 100%;
opacity: 0.3;
background-size: contain;
background-repeat: no-repeat;
background-position: center;
}
.tsc-sdg-text {
font-size: 16px;
color: #1F2937;
font-weight: 500;
text-align: center;
margin: 0;
line-height: 1.6;
} .tsc-history-section {
background: #ffffff;
padding: 80px 0;
position: relative;
overflow: hidden;
}
.tsc-history-background {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 0;
opacity: 0.3;
}
.tsc-history-background img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
}
.tsc-history-container {
max-width: 1200px;
margin: 0 auto;
padding: 0 15%;
position: relative;
z-index: 1;
}
.tsc-history-title {
margin: 0 0 60px 0;
display: flex;
align-items: center;
gap: 15px;
}
.tsc-history-title-icon {
width: 20px;
height: 20px;
border: 2px solid #3B82F6;
border-radius: 50%;
display: inline-flex;
}
.tsc-history-timeline {
display: flex;
flex-direction: column;
gap: 10px;
position: relative;
padding-left: 60px;
}
.tsc-history-timeline::before {
content: '';
position: absolute;
left: 23px;
top: 0;
bottom: 0;
width: 2px;
background: #3B82F6;
}
.tsc-history-item {
display: flex;
align-items: flex-start;
gap: 40px;
position: relative;
}
.tsc-history-item::before {
content: '';
position: absolute;
left: -42px;
top: 8px;
width: 12px;
height: 12px;
border-radius: 50%;
background: #3B82F6;
border: 2px solid #ffffff;
box-shadow: 0 0 0 2px #3B82F6;
z-index: 2;
}
.tsc-history-year {
min-width: 100px;
flex-shrink: 0;
}
.tsc-history-text {
font-size: 16px;
color: #1F2937;
line-height: 1.8;
margin: 0;
flex: 1;
} @media (max-width: 1024px) {	
.tsc-company-hero {
padding: 80px 80px 120px 80px;
}
.tsc-company-overview-container {
flex-direction: column;
gap: 40px;
}
.tsc-company-sidebar {
flex: 1 1 100%;
}
.tsc-company-sidebar-nav {
flex-direction: row;
overflow-x: auto;
border-radius: 0;
}
.tsc-sidebar-link {
white-space: nowrap;
border-bottom: none;
border-right: 1px solid #E5E7EB;
}
.tsc-sidebar-link:last-child {
border-right: none;
}
.tsc-sdgs-icons {
gap: 40px;
}
}
@media (max-width: 768px) {
.tsc-company-hero::before{
top: -24px;
width: 300px;
height: 100%;
}
.tsc-company-hero {
padding: 10px 20px 10px 20px;
}
.tsc-company-overview-container {
padding: 0 20px;
}
.tsc-company-content-title, .tsc-sdgs-title, .tsc-history-title{
font-size: 24px;
}
.tsc-company-detail-row {
flex-direction: column;
gap: 10px;
}
.tsc-company-detail-label {
flex: 1 1 100%;
}
.tsc-company-detail-value {
flex: 1 1 100%;
}
.tsc-sdgs-container,
.tsc-history-container {
padding: 0 20px;
}
.tsc-sdg-icon {
width: 150px;
height: 150px;
}
.tsc-sdg-number {
font-size: 56px;
}
.tsc-history-section {
padding: 60px 0;
}
.tsc-history-timeline {
padding-left: 50px;
gap: 25px;
}
.tsc-history-timeline::before {
left: 15px;
}
.tsc-history-item {
gap: 20px;
}
.tsc-history-item::before {
left: -37px;
width: 10px;
height: 10px;
}
.tsc-history-year {
font-size: 18px;
min-width: 80px;
}
} .tsc-privacy-page {
background: #ffffff;
}
.tsc-privacy-content-section {
background: #ffffff;
padding: 80px 0;
}
.tsc-privacy-content-container {
max-width: 1200px;
margin: 0 auto;
padding: 0 40px;
}
.tsc-privacy-main-content {
max-width: 900px;
margin: 0 auto;
}
.tsc-privacy-main-heading {
font-size: 28px;
font-weight: 700;
color: #1F2937;
margin: 0 0 30px 0;
}
.tsc-privacy-intro {
margin-bottom: 40px;
}
.tsc-privacy-intro p {
font-size: 16px;
color: #1F2937;
line-height: 1.8;
margin: 0;
}
.tsc-privacy-policy-list {
list-style: decimal;
padding-left: 30px;
margin: 0 0 50px 0;
}
.tsc-privacy-policy-item {
margin-bottom: 30px;
}
.tsc-privacy-policy-item::marker {
color: #3B82F6;
font-weight: 700;
}
.tsc-privacy-policy-text {
font-size: 16px;
color: #1F2937;
line-height: 1.8;
margin: 0;
padding-left: 10px;
}
.tsc-privacy-contact-box {
background: #F3F4F6;
border-radius: 8px;
padding: 40px;
margin: 50px 0;
display: flex;
gap: 60px;
align-items: flex-start;
}
.tsc-privacy-contact-content {
flex: 1;
}
.tsc-privacy-contact-title {
font-size: 20px;
font-weight: 600;
color: #1F2937;
margin: 0 0 20px 0;
}
.tsc-privacy-contact-text {
font-size: 16px;
color: #1F2937;
line-height: 1.8;
margin: 0 0 15px 0;
}
.tsc-privacy-contact-info {
font-size: 16px;
color: #1F2937;
line-height: 1.8;
margin: 0;
font-weight: 500;
}
.tsc-privacy-company-info {
flex: 0 0 300px;
text-align: right;
}
.tsc-privacy-company-name {
font-size: 16px;
color: #1F2937;
font-weight: 600;
margin: 0 0 10px 0;
}
.tsc-privacy-representative {
font-size: 16px;
color: #1F2937;
margin: 0;
}
.tsc-privacy-button {
text-align: center;
margin-top: 50px;
}
.tsc-privacy-button .tsc-section-btn {
background: transparent;
color: #3B82F6;
border: 1px solid #3B82F6;
padding: 14px 50px;
}
.tsc-privacy-button .tsc-section-btn:hover {
background: #3B82F6;
color: #ffffff;
}
.tsc-privacy-button .tsc-section-btn .tsc-btn-arrow {
color: #3B82F6;
transform: translateY(10px);
}
.tsc-privacy-button .tsc-section-btn:hover .tsc-btn-arrow {
color: #ffffff;
} @media (max-width: 1024px) {
.tsc-privacy-content-container {
padding: 0 40px;
}
}
@media (max-width: 768px) {
.tsc-privacy-content-section {
padding: 60px 0;
}
.tsc-privacy-content-container {
padding: 0 20px;
}
.tsc-privacy-main-heading {
font-size: 24px;
}
.tsc-privacy-policy-list {
padding-left: 25px;
}
.tsc-privacy-contact-box {
flex-direction: column;
gap: 30px;
padding: 30px 20px;
}
.tsc-privacy-company-info {
flex: 1 1 100%;
text-align: left;
}
.tsc-privacy-button {
margin-top: 40px;
}
} .tsc-news-page-section {
padding: 80px 0;
background: #ffffff;
}
.tsc-news-page-container {
max-width: 1400px;
margin: 0 auto;
padding: 0 10%;
display: flex;
gap: 60px;
align-items: flex-start;
} .tsc-news-sidebar {
flex: 0 0 200px;
position: sticky;
top: 100px;
}
.tsc-news-sidebar-nav {
display: flex;
flex-direction: column;
gap: 12px;
}
.tsc-news-filter-link {
display: block;
padding: 12px 24px;
background: #ffffff;
border: 1px solid #E5E7EB;
border-radius: 8px;
color: #1F2937;
text-decoration: none;
font-weight: 500;
text-align: center;
transition: all 0.3s ease;
}
.tsc-news-filter-link:hover {
background: #F3F4F6;
border-color: #3B82F6;
color: #3B82F6;
}
.tsc-news-filter-link.active {
background: #3B82F6;
border-color: #3B82F6;
color: #ffffff;
} .tsc-news-page-content {
flex: 1;
}
.tsc-news-page-list {
display: flex;
flex-direction: column;
gap: 0;
margin-bottom: 60px;
}
.tsc-news-page-item {
display: flex;
gap: 30px;
padding: 30px 0;
border-bottom: 1px solid #E5E7EB;
transition: background 0.3s ease;
}
.tsc-news-page-item:hover {
background: rgba(59, 130, 246, 0.02);
}
.tsc-news-page-item:first-child {
border-top: 1px solid #E5E7EB;
}
.tsc-news-page-image {
flex: 0 0 200px;
height: 200px;
overflow: hidden;
border-radius: 8px;
}
.tsc-news-page-image img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.3s ease;
}
.tsc-news-page-item:hover .tsc-news-page-image img {
transform: scale(1.05);
}
.tsc-news-page-details {
flex: 1;
display: flex;
flex-direction: column;
gap: 12px;
position: relative;
}
.tsc-news-page-meta {
display: flex;
align-items: center;
gap: 12px;
}
.tsc-news-page-date {
display: inline-block;
padding: 6px 16px;
background: #E0F2FE;
color: #0369A1;
border-radius: 20px;
font-size: 12px;
font-weight: 500;
}
.tsc-news-page-title {
margin: 0;
font-size: 20px;
font-weight: 500;
line-height: 1.5;
}
.tsc-news-page-title a {
color: #1F2937;
text-decoration: none;
transition: color 0.3s ease;
}
.tsc-news-page-title a:hover {
color: #3B82F6;
}
.tsc-news-page-excerpt-row {
display: flex;
flex-direction: row;
align-items: center;
gap: 20px;
margin-top: 12px;
}
.tsc-news-page-excerpt {
margin: 0;
color: #6B7280;
line-height: 1.6;
flex: 1;
}
.tsc-news-page-arrow {
flex-shrink: 0;
width: 40px;
height: 40px;
border: 1px solid #3B82F6;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
color: #3B82F6;
text-decoration: none;
font-size: 18px;
background: rgba(59, 130, 246, 0.1);
transition: all 0.3s ease;
}
.tsc-news-page-arrow:hover {
background: #3B82F6;
color: #ffffff;
transform: scale(1.1);
}
.tsc-news-page-no-results {
padding: 60px 20px;
text-align: center;
color: #6B7280;
} .tsc-news-pagination {
display: flex;
justify-content: center;
align-items: center;
gap: 12px;
margin-top: 40px;
}
.tsc-pagination-prev,
.tsc-pagination-next,
.tsc-pagination-number {
display: flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
border: 1px solid #E5E7EB;
border-radius: 50%;
color: #1F2937;
text-decoration: none;
font-weight: 500;
transition: all 0.3s ease;
background: #ffffff;
}
.tsc-pagination-prev:hover,
.tsc-pagination-next:hover,
.tsc-pagination-number:hover {
background: #3B82F6;
border-color: #3B82F6;
color: #ffffff;
}
.tsc-pagination-number.active {
background: #3B82F6;
border-color: #3B82F6;
color: #ffffff;
} @media (max-width: 1024px) {
.tsc-news-page-container {
padding: 0 40px;
gap: 40px;
}
.tsc-news-sidebar {
flex: 0 0 180px;
}
.tsc-news-page-image {
flex: 0 0 150px;
height: 150px;
}
}
@media (max-width: 768px) {
.tsc-news-page-section {
padding: 60px 0;
}
.tsc-news-page-container {
flex-direction: column;
padding: 0 20px;
gap: 30px;
}
.tsc-news-sidebar {
position: static;
flex: 1 1 100%;
width: 100%;
}
.tsc-news-sidebar-nav {
flex-direction: row;
flex-wrap: wrap;
justify-content: center;
}
.tsc-news-filter-link {
flex: 0 0 auto;
min-width: 100px;
}
.tsc-news-page-item {
flex-direction: column;
gap: 20px;
padding: 20px 0;
}
.tsc-news-page-image {
flex: 1 1 100%;
width: 100%;
height: 200px;
}
.tsc-news-page-details {
position: relative;
}
.tsc-news-page-excerpt-row {
gap: 15px;
}
.tsc-news-pagination {
flex-wrap: wrap;
gap: 8px;
}
.tsc-pagination-prev,
.tsc-pagination-next,
.tsc-pagination-number {
width: 36px;
height: 36px;
font-size: 12px;
}
} .tsc-contact-page {
background: #ffffff;
}
.tsc-contact-form-section {
padding: 80px 0;
background: #ffffff;
}
.tsc-contact-form-container {
max-width: 800px;
margin: 0 auto;
padding: 0 10%;
}
.tsc-contact-form-header {
margin-bottom: 30px;
}
.tsc-contact-form-title {
font-size: 48px;
font-weight: 400;
font-family: Arial, Helvetica, sans-serif;
color: #3B82F6;
margin: 0 0 10px 0;
}
.tsc-contact-form-subtitle {
font-size: 20px;
color: #1F2937;
margin: 0;
}
.tsc-contact-form-intro {
margin-bottom: 40px;
}
.tsc-contact-form-intro p {
line-height: 1.8;
margin: 0;
}
.tsc-contact-form-wrapper {
width: 100%;
} .tsc-contact-form-wrapper .wpcf7-form {
display: flex;
flex-direction: column;
gap: 30px;
}
.tsc-contact-form-wrapper label {
display: block;
font-weight: 500;
color: #1F2937;
margin-bottom: 8px;
}
.tsc-contact-form-wrapper label .required {
color: #EF4444;
margin-left: 4px;
}
.tsc-contact-form-wrapper input[type="text"],
.tsc-contact-form-wrapper input[type="email"],
.tsc-contact-form-wrapper input[type="tel"],
.tsc-contact-form-wrapper input[type="url"],
.tsc-contact-form-wrapper textarea {
width: 100%;
padding: 12px 16px;
border: 1px solid #D1D5DB;
border-radius: 4px;
background: #ffffff;
transition: border-color 0.3s ease;
font-family: inherit;
}
.tsc-contact-form-wrapper input[type="text"]:focus,
.tsc-contact-form-wrapper input[type="email"]:focus,
.tsc-contact-form-wrapper input[type="tel"]:focus,
.tsc-contact-form-wrapper input[type="url"]:focus,
.tsc-contact-form-wrapper textarea:focus {
outline: none;
border-color: #3B82F6;
}
.tsc-contact-form-wrapper input[type="text"]::placeholder,
.tsc-contact-form-wrapper input[type="email"]::placeholder,
.tsc-contact-form-wrapper input[type="tel"]::placeholder,
.tsc-contact-form-wrapper input[type="url"]::placeholder,
.tsc-contact-form-wrapper textarea::placeholder {
color: #9CA3AF;
}
.tsc-contact-form-wrapper textarea {
min-height: 200px;
resize: vertical;
}
.tsc-contact-form-wrapper .wpcf7-checkbox,
.tsc-contact-form-wrapper .wpcf7-radio {
display: flex;
align-items: flex-start;
gap: 12px;
margin-top: 20px;
}
.tsc-contact-form-wrapper .wpcf7-list-item {
margin: 0;
}
.tsc-contact-form-wrapper input[type="checkbox"] {
width: 20px;
height: 20px;
margin: 0;
cursor: pointer;
flex-shrink: 0;
margin-top: 2px;
}
.tsc-contact-form-wrapper .wpcf7-list-item-label {
color: #1F2937;
cursor: pointer;
line-height: 1.6;
}
.tsc-contact-form-wrapper .wpcf7-submit {
width: 100%;
max-width: 400px;
margin: 20px auto 0;
padding: 16px 40px;
background: #3B82F6;
color: #ffffff;
border: none;
border-radius: 4px;
font-size: 16px;
font-weight: 500;
cursor: pointer;
transition: all 0.3s ease;
display: flex;
align-items: center;
justify-content: center;
gap: 10px;
position: relative;
}
.tsc-contact-form-wrapper .wpcf7-submit:hover {
background: #2563EB;
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(59, 130, 246, 0.3);
}
.tsc-contact-form-wrapper .wpcf7-submit::after {
content: "→";
font-size: 18px;
color: #ffffff;
} .tsc-contact-form-wrapper .wpcf7-not-valid-tip {
color: #EF4444;
font-size: 12px;
margin-top: 4px;
display: block;
}
.form-row.privacy p{
display: flex;
}
.tsc-contact-form-wrapper .wpcf7-form-control-wrap{
width: auto;
display: block;
}
.tsc-contact-form-wrapper .wpcf7-validation-errors,
.tsc-contact-form-wrapper .wpcf7-mail-sent-ok,
.tsc-contact-form-wrapper .wpcf7-mail-sent-ng {
padding: 12px 16px;
border-radius: 4px;
margin-top: 20px;
}
.tsc-contact-form-wrapper .wpcf7-validation-errors {
background: #FEE2E2;
color: #991B1B;
border: 1px solid #FCA5A5;
}
.tsc-contact-form-wrapper .wpcf7-mail-sent-ok {
background: #D1FAE5;
color: #065F46;
border: 1px solid #6EE7B7;
}
.tsc-contact-form-wrapper .wpcf7-mail-sent-ng {
background: #FEE2E2;
color: #991B1B;
border: 1px solid #FCA5A5;
}
.tsc-contact-form-error {
color: #EF4444;
text-align: center;
padding: 20px;
background: #FEE2E2;
border: 1px solid #FCA5A5;
border-radius: 4px;
} @media (max-width: 1024px) {
.tsc-contact-form-container {
padding: 0 40px;
}
}
@media (max-width: 768px) {
.tsc-contact-form-section {
padding: 60px 0;
}
.tsc-contact-form-container {
padding: 0 20px;
}
.tsc-contact-form-title {
font-size: 32px;
}
.tsc-contact-form-subtitle {
font-size: 16px;
}
.tsc-contact-form-intro {
margin-bottom: 30px;
}
.tsc-contact-form-intro p {
font-size: 13px;
}
.tsc-contact-form-wrapper .wpcf7-form {
gap: 25px;
}
.tsc-contact-form-wrapper input[type="text"],
.tsc-contact-form-wrapper input[type="email"],
.tsc-contact-form-wrapper input[type="tel"],
.tsc-contact-form-wrapper input[type="url"],
.tsc-contact-form-wrapper textarea {
padding: 10px 14px;
}
.tsc-contact-form-wrapper textarea {
min-height: 150px;
}
.tsc-contact-form-wrapper .wpcf7-submit {
max-width: 100%;
padding: 14px 30px;
}
} .tsc-news-single-hero {
align-items: center;
text-align: center;
}
.tsc-news-single-section {
padding: 80px 0;
}
.tsc-news-single-container {
max-width: 900px;
margin: 0 auto;
padding: 0 10%;
}
.tsc-news-single-header {
text-align: left;
margin-bottom: 40px;
}
.tsc-news-single-meta {
display: flex;
align-items: center;
gap: 12px;
margin-bottom: 16px;
}
.tsc-news-single-title {
font-size: 28px;
font-weight: 500;
line-height: 1.6;
margin: 0;
}
.tsc-news-single-image {
margin: 40px 0;
border-radius: 16px;
overflow: hidden;
}
.tsc-news-single-image img {
width: 100%;
height: auto;
display: block;
}
.tsc-news-single-content {
color: #1F2937;
line-height: 2;
}
.tsc-news-single-content p {
margin: 0 0 24px 0;
}
.tsc-news-single-content h2,
.tsc-news-single-content h3 {
font-size: 18px;
margin: 40px 0 16px;
font-weight: 500;
}
.tsc-news-single-content ul {
margin: 0 0 24px 1.5em;
padding: 0;
}
.tsc-news-single-content li {
margin-bottom: 6px;
}
.tsc-news-single-content a {
color: #3B82F6;
text-decoration: underline;
word-break: break-all;
} .tsc-news-single-pagination {
display: flex;
justify-content: center;
align-items: center;
gap: 40px;
margin: 60px 0 0;
}
.tsc-news-single-prev,
.tsc-news-single-next {
flex: 0 0 auto;
}
.tsc-news-single-list {
flex: 0 0 auto;
}
.tsc-news-single-list-btn {
min-width: 220px;
border-radius: 999px;
}
@media (max-width: 1024px) {
.tsc-news-single-container {
padding: 0 40px;
}
}
@media (max-width: 768px) {
.tsc-news-single-section {
padding: 60px 0;
}
.tsc-news-single-container {
padding: 0 20px;
}
.tsc-news-single-title {
font-size: 22px;
}
.tsc-news-single-image {
margin: 30px 0;
}
.tsc-news-single-pagination {
flex-direction: column;
gap: 16px;
}
.tsc-news-single-list-btn {
min-width: 100%;
}
}