@charset "utf-8";
:root {
  --color-pred1:#fa000f;
  --color-pred2:#cc0000;
  --color-pwhite:#ffffff;
  --color-pgray1:#f4f4f4;
  --color-pgray2:#d9d9d9;
  --color-pgray3:#b3b3b3;
  --color-pgray4:#737373;
  --color-pgray5:#4d4d4d;
  --color-pgray6:#222222;
  --color-pblack:#0c0c0c;
	--unit:8px;
	--gap:25px;
	--ratio:16 / 9;
}
h2{
	font-size:2rem;
	font-weight:bold;
	background:none;
}
h3{
	color:var(--color-pblack);
}
.mainvisualArea h2,
.servicesArea h2{
	font-size:3.5rem;
	font-weight:bold;
}
.wrapper{
	max-width:965px;
	margin:auto;
}
.btn, a.btn{
	border-radius:100px;
}
.btn.w50pct{
	display:block !important;
	max-width:10em;
}
.btn.w50pct.center{
	margin:2em auto;
}
.btn.w50pct.left{
	margin-top:2em;
	margin-bottom:2em;
}
	@media (max-width: 994px) {
		.full-bleed {
			margin-left: -15px;
			margin-right: -15px;
			padding-left: 15px;
			padding-right: 15px;
		}
	}
	@media (max-width: 776px) {
		h2{
			margin:0 !important;
		}
		.mainvisualArea h2,
		.servicesArea h2{
			font-size:3rem;
		}
	}

/* hero */
.mainvisualArea{
	position:relative;
	background:url(/image/custom/top/kv.jpg);
	height:500px;
	overflow:hidden;
	color:var(--color-pwhite);
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:2rem;
	text-align:center;
}
.mainvisualArea .wrapper{
	position:relative;
	z-index:1;
}
.mainvisualArea__video{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.mainvisualArea p{
	line-height:1.3;
}
.contentArea__section{
	margin:56px 0;
}
.contentArea__section + .contentArea__section{
	margin-top:80px;
}

	@media (max-width: 776px) {
		.mainvisualArea{
		  font-size: 1.5rem;
		}
	}


/* newslist */
.newsList {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: var(--gap);
	list-style: none;
	padding: 0;
	margin: 0;
}
.newsList__item {
	flex: 1;
}
.newsList__item a {
  display: block;
  height: 100%;
  background: var(--color-pgray1);
  border-radius: 0.5rem;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  transition: transform .3s ease;
}
.newsList__image {
	overflow: hidden;
}
.newsList__image img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  display: block;
	transition: transform .5s ease;
}
.newsList__item:hover .newsList__image img {
	transform: scale(1.08);
}
.newsList__item:hover .newsList__arrow {
  background:var(--color-pred2);
  color:var(--color-pwhite);
}
.newsList__content {
  position: relative;
  padding: 1rem;
  min-height: 4rem;
}
.newsList__content h3 {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.4;
}
.newsList__arrow {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  width: 1.5rem;
  height: 1.5rem;
  background: #000;
  color: #fff;
  border-radius: 0.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
}
.newsList__arrow:after{
  content: '\f105';
  font-family: 'Fontawesome';
  font-size: 1.5rem;
  font-weight: normal;
}
	@media (max-width: 994px) {
		.newsList{
			grid-template-columns: repeat(2, 1fr);
		}
	}
	@media (max-width: 776px) {
		.newsList {
			grid-template-columns: 1fr;
		}
	}


/* related information */
.informationList {
  display: flex;
  gap: var(--gap);
  list-style: none;
  padding: 0;
  margin: 0;
}
.informationList__item {
	flex: 1;
	display: flex;
	flex-direction: column;
}
.informationList__content{
  padding: 1rem;
  font-size: 0.875rem;
}
.informationList__content p{
	line-height:1.5;
}
.informationList__content h3 {
  margin: 0;
  font-size: 1.25rem;
  font-weight:bold;
  line-height: 1.4;
	margin-bottom:calc(var(--unit) * 2);
}
.informationList__card {
	flex: 1;
	border: 1px solid #ddd;
	border-radius: 8px;
	overflow: hidden;
}
.informationList__action {
	margin-top: 16px;
	text-align: right;
}
.informationList__image img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  display: block;
}
	@media (max-width: 776px) {
		.informationList{
			flex-direction:column;
		}
	}


/* newsList&background */
.servicesArea {
  position: relative;
  margin-bottom:56px;
}
.servicesArea__hero {
  position: relative;
  padding-top:3rem;
	padding-bottom:12rem;
  background: url("/image/custom/top/services_bg.jpg") top center / cover no-repeat;
}
.servicesArea__hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, .55);
}
.servicesArea__inner {
  position: relative;
  z-index: 1;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 2rem;
  text-align: center;
  color: #fff;
}
.servicesArea__lead {
  font-size: 1.25rem;
	line-height:1.5;
}
.servicesList {
  position: relative;
  z-index: 2;
  display: flex;
  gap: var(--gap);
  max-width: 965px;
  margin: -8rem auto 0;
  list-style: none;
}
.servicesList__item {
  flex: 1;
  padding: 2rem 1rem;
  background:var(--color-pgray1);
  border-radius: 8px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content:flex-start;
	min-width: 0;
}
.servicesList__item p{
	line-height:1.5;
}
.servicesList__item h3 {
  margin-bottom: 1.5rem;
	overflow-wrap: break-word;
  font-size: 1.5rem;
  font-weight: 600;
}
.servicesList__item--active h3{
  color: var(--color-pwhite);
}
.servicesList__item--active {
  background: var(--color-pred2);
  color: var(--color-pwhite);
}
	@media (max-width: 776px) {
		.servicesList {
			flex-direction:column;
			width:90%;
		}
		.servicesArea__lead {
		  font-size: 1.5rem;
		}
	}


/* Teaser */
.teaserArea {
  background: url("/image/custom/top/teaser-fw-neutral-texture.png") center center / cover no-repeat;
	padding-top:3rem;
	padding-bottom:3rem;
  margin-top:56px;
  margin-bottom:56px;
}
.teaserArea__inner{
	display:flex;
	align-items: center;
	gap:var(--gap);
}
.teaser__image{
	flex-shrink: 0;
}
.teaser__image img {
  width: 100%;
  display: block;
  border-radius: 6px;
  object-fit: cover;
}
.teaser__txt {
	font-size:0.875rem;
}
.teaser__txt p{
	line-height:1.5;
}
.btn-more {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 30px;
    padding: 14px 32px;
    background: #e31717;
    color: #fff;
    text-decoration: none;
    border-radius: 30px;
    font-weight: 600;
    transition: 0.3s;
}
/* about */
#about .teaser__image{
	width: 470px;
}
	@media (max-width: 994px) {
		#about .teaserArea__inner{
			flex-direction:column;
		}
		#about .teaser__image{
			width:90%;
		}
	}










.btn-more:hover {
    background: #c40000;
}

.btn-more span {
    font-size: 20px;
}

.about-image {
    flex: 1.7;
    position: relative;
    z-index: 2;
}
	@media (min-width: 1305px) {
    .teaser__txt {
      max-width: 79.6875rem;
    }
	}
