﻿@charset "UTF-8";



/****  ヘッダー  ****/
#Frontispiece .inner {
    overflow: hidden;
    position: relative;
}
#Frontispiece .inner {
    overflow: hidden;
    position: relative;
}
#Frontispiece .inner:before {
    content: "";
    display: block;
    margin-top: 56.25%;
}
#Frontispiece .header-images {
    position: absolute;
    top: -4px;
    left: 0;
    height: 100%;
    width: 100%;
}
#Frontispiece .NextButton ,
#Frontispiece .BackButton {
	position:absolute;
	top:0;
	height:100%;
	width:10%;
	cursor:pointer;
	background-color: rgba(255,255,255,0.0);
	z-index:100;
}
#Frontispiece .NextButton:hover ,
#Frontispiece .BackButton:hover {
	background-color: rgba(255,255,255,0.6);
}
#Frontispiece .NextButton:before ,
#Frontispiece .BackButton:before {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%) scaleY(2.3);
	color: #FFF;
	font-size: 50px;
	font-weight: 700;
	text-shadow: 4px 5px 5px #000D;
}
#Frontispiece .NextButton:before {
	content:'>';
}
#Frontispiece .BackButton:before {
	content: '<';
}
#Frontispiece .meter {
	position:absolute;
	display:block;
	height: 4px;
	bottom:0;
	left:0;
	background: rebeccapurple;
	animation-duration: 1s;
	animation-iteration-count:1;
	animation-name:SlideMeter;
	animation-timing-function: linear;
	z-index:110;
}
@keyframes SlideMeter {
	000% {	width:  0%;min-width:  0%;}
	100% {	width:100%;min-width:100%;}
}
#Frontispiece .header-images img {
    position: absolute;
    height: 100%;
    width: 100%;
    max-width: initial;
    object-fit: cover;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    transition: 0.5s;
}
#Frontispiece .header-images .catchphrase {
    position: absolute;
    width: 100%;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    color: #FFF;
    font-size: 50px;
    font-weight: 700;
    text-shadow: 4px 5px 5px #000D;
    z-index:100;
}
@media screen and (max-width: 800px) { /* スマホ */
	#Frontispiece .header-images .catchphrase,
	#Frontispiece .NextButton:before ,
	#Frontispiece .BackButton:before  {
	    font-size: 24px;
	}
}

/****  小さい幅  ****/
.padding.small {
	padding-left :20%;
	padding-right:20%;
}
@media screen and (max-width: 800px) { /* スマホ */
	.padding.small {
		padding-left :5%;
		padding-right:5%;
	}
}
/****  新着情報  ****/
@media screen and (max-width: 800px) { /* スマホ */
	#news .padding {
		padding-left : 20px;
		padding-right: 20px;
	}
}


#news dt {
	margin: 10px 0 0;
	padding:10px 20px 5px;
	border-left:3px solid #006699;
	background: #FFFA;
}
#news dd {
	margin: 0 0 10px;
	padding: 5px 20px 10px;
	border-left:3px solid #006699;
	background: #FFFA;
}


/****  サービス一覧  ****/
#service h4 {
	width: 200%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	margin: 0;
	text-align: center;
	font-size: 27px;
	color: #FFF;
	text-shadow: 1px 1px 2px rgb(0 0 0 / 70%);
	transition: 0.5s;
}
#service .left33pc a ,
#service .left25pc a {
	display: block;
	position: relative;
	aspect-ratio: 4 / 3;
	overflow: hidden;
}
#service .left33pc a {
	aspect-ratio: 16 / 9;
}
#service .left33pc a img ,
#service .left25pc a img {
	position: relative;
	top: 50%;
	left: 50%;
	object-fit: cover;
	width: 100%;
	height: 100%;
	transform: translateX(-50%) translateY(-50%);
	transition: 0.5s;
	filter: brightness(100%);
}
_::-webkit-full-page-media, _:future, :root #service .left33pc a img {
	top: 50%;
	left: 0;
	transform: translateX(0) translateY(0);
}
_::-webkit-full-page-media, _:future, :root #service .left25pc a img {
	top: 50%;
	left: 0;
	transform: translateX(0) translateY(0);
}
#service .left33pc:hover a img ,
#service .left25pc:hover a img {
	filter: brightness(140%);
}
#service .left33pc:hover h4 ,
#service .left25pc:hover h4 {
	font-size: 36px;
}

