@charset "UTF-8";

.page_ttl_area {
	background: url(../img/contents/index/parallax_img_03.png) no-repeat center 55% / cover;
	max-width: 100vw;
}

#breadcrumbs,
.cn-container {
	width: 100vw;
	margin: 0 auto;
	padding-right: 15px;
	padding-left: 15px;
	box-sizing: border-box;
}
.sec-greeting {
	background: #fff;
}
.greeting-inner {
	padding: 40px 0 50px;
	color: #00509a;
}

.greeting-inner h2 {
font-size: 22px;
padding-left: 40px;
position: relative;
margin-bottom: 15px;
}

.greeting-inner h2::before {
	content: '';
	display: block;
	width: 28px;
	height: 22px;
	background: url(../../img/contents/corporation_new/icon_1.jpg) no-repeat center center;
	background-size: contain;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

.greeting-inner p {
	font-size: 16x;
	line-height: 1.6;
	letter-spacing: 0.15em;
}

.greeting-name {
	width: 250px;
	display: inline-block;
	margin: 30px 0 0 0 !important;
}

.text-end {
	text-align: right;
}

.sec-movie {
	padding: 40px 0;
}
.sec-movie .movie-content{
	background: #fff;
	padding: 20px 10px;
}
.sec-movie .movie-inner {
	max-width: 800px;
	margin: 0 auto;
}

.sec-movie .movie-inner h3 {
	text-align: center;
	margin-bottom: 30px;
}

.sec-movie .movie-inner h3 .sub{
	font-size: 14px;
	color: #0D7EB4;
	letter-spacing: 0.1em;
	display: block;
}
.sec-movie .movie-inner h3 .main {
	font-size: 15px;
	letter-spacing: 0;
}

#video-container {
    position: relative;
    display: inline-block;
    width: 100%;
	padding-bottom: 56.25%;
    background-color: #000;
}

#loading-screen {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.9);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 10;
}

.loader {
    border: 8px solid #f3f3f3;
    border-top: 8px solid #3498db;
    border-radius: 50%;
    width: 60px;
    height: 3.75rem;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.loading-text {
    color: white;
    font-size: 1.25rem;
    margin-top: 1.25rem;
    font-family: Arial, sans-serif;
}

.fade-out {
    animation: fadeOut 0.5s forwards;
}

@keyframes fadeOut {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        visibility: hidden;
    }
}

#thumbnail-screen {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url(../../img/contents/corporation_new/thumbnail.jpg);
    background-size: cover;
    background-position: center;
    display: none;
    cursor: pointer;
    z-index: 5;
}

#thumbnail-screen::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.1);
}

#thumbnail-screen::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 40px 0 40px 70px;
    border-color: transparent transparent transparent rgba(255, 255, 255, 0.9);
}

#thumbnail-screen:hover::after {
    border-color: transparent transparent transparent rgba(255, 255, 255, 1);
}

#thumbnail-screen.show {
    display: block;
}

#myVideo {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#myVideo.show {
    display: block;
}

/* ダウンロードボタンを非表示 */
video::-webkit-media-controls-download-button {
    display: none;
}

video::-internal-media-controls-download-button {
    display: none;
}

video::-webkit-media-controls-enclosure {
    overflow: hidden;
}

video::-webkit-media-controls-panel {
    width: calc(100% + 30px);
}

.bg-white {
	background: #fff;
}

.bg-gray {
	background: #FAFAFA;
}

.split .flex {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: column;
}
.split .left {
	width: 100%;
}
.split .right {
	width: 100%;
}

.split .left h2 {
	text-align: center;
	margin-bottom: 20px;
}
.split .left h2 .sub {
	color:#00509a;
	font-size: 25px;
	display: block;
	font-weight: 900;
	line-height: 1.1;
	margin-bottom: 5px;
}
.split .left h2 .main {
	font-size: 18px;
	letter-spacing: 0.1em;
}

.split .right .table {
	width: 100%;
	border: 1px solid #000;
}
.split .right .table .row {
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid #000;
}

.split .right .table .row:last-child {
	border-bottom: none;
}

.split .right .table .row .title {
	width: 25%;
	padding: 10px;
	background: #F7F9FA;
	display: flex;
	align-items: center;
	justify-content: center;
}

.split .right .table .row .value {
	width: 75%;
	padding: 20px 25px;
	line-height: 1.2;
	background: #fff;
}

.split .right .table .row .value a:not(.company-link) {
	color: #000;
	text-decoration: underline;
}

.split .right .table.type2 .row {
	display: block;
	padding: 20px;
	font-size: 12px;
}

.split .right .table.type2 .row:nth-child(odd) {
	background: #F7F9FA;
}

.business-link {
	color: #000;
	text-decoration: none;
	display: inline-block;
	position: relative;
	padding-right: 22px;
}

.business-link:hover {
	text-decoration: underline;
}

.business-link::after {
	content: '';
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-left: 6px;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%2300509a" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"%3E%3Ccircle cx="12" cy="12" r="10" stroke="%2300509a" fill="none"/%3E%3Cpolyline points="10 16 14 12 10 8"%3E%3C/polyline%3E%3C/svg%3E');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.company-link {
	color: #000;
	text-decoration: none;
	display: inline-block;
	position: relative;
	padding-right: 22px;
}

.company-link:hover {
	text-decoration: underline;
}

.company-link::after {
	content: '';
	display: inline-block;
	width: 14px;
	height: 14px;
	margin-left: 6px;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%2300509a" stroke-width="1.5"%3E%3Crect x="3" y="6" width="15" height="13" rx="2" fill="none" stroke="%2300509a"/%3E%3Cpath d="M6 6 L6 4 C6 2.9 6.9 2 8 2 L20 2 C21.1 2 22 2.9 22 4 L22 16 C22 17.1 21.1 18 20 18 L18 18" stroke="%2300509a" fill="none"/%3E%3C/svg%3E');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.sec-padding {
	padding-top: 60px;
	padding-bottom: 60px;
}

.split + .split {
	padding-top: 40px;
}

.sec-partner .list {
	display: flex;
	flex-wrap: wrap;
}

.sec-partner .list ul {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	flex: 1 1 50%;
}

.sec-partner .list ul li {
	list-style: none;
	font-size: 11px;
	line-height: 1.5;
}

.sec_fourth .sec_fourth_inner {
	width: auto;
	margin: 0 auto;
	padding: 0;
}

.sec_fourth .info_area {
	margin: 0;
}

.sec_fourth .info_area .second .rt {
	float: none;
	width: 100%;
	font-size: 14px;
}

.sec_fourth .info_area .second .rt .date {
	color: #00509a;
}

.sec_fourth .info_area .second .rt li {
	display: flex;
}

.sec_fourth .info_area .second .rt li .date {
	width: 73px;
}

.sec_fourth .info_area .second .rt li .txt {
	flex: 1;
}

.sec-banner {
	margin: 30px auto 0;
}
.sec-banner img {
	width: 100%;
}

.sec-access {
	padding-bottom: 30px;
}

.sec-access h2 {
	border: 1px solid #00509a;
	color: #00509a;
	text-align: center;
	font-size: 22px;
	padding: 8px 20px;
	margin-bottom: 35px;
}

.sec-access .access_area ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 20px 0;
}
.sec_fourth .access_area li {
	width: auto;
	flex: 1 0 100%;
}

.sec_fourth .access_area .cont_block .rt_item,
.sec_fourth .access_area .cont_block .lt_item {
	width: auto;
	height: auto;
	flex: 1 1 50%;
}

.sec_fourth .access_area .cont_block .lt_item img {
	width: 100%;
}