@charset "utf-8";
/* Author: c.nz */
/* ---------------------------------------------------
	common
------------------------------------------------------ */
h1 {}
h2, h3, h4, h5, h6 { font-family:var(--fontfamily), 'Noto Sans JP', sans-serif; }
h3, h4, h5, h6 { font-weight: 500; }


/*=======================================
メインビジュアル
=========================================*/
#video-area{
    position: fixed;
    z-index: -1;/*最背面に設定*/
    top: 0;
    right:0;
    left:0;
    bottom:0;
    overflow: hidden;
}

#video {
    /*天地中央配置*/
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    /*縦横幅指定*/
    width: 177.77777778vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
    height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
    min-height: 100%;
    min-width: 100%;
}

.l-kv1 { position: relative; }
.l-kv1 .top-slide { overflow: hidden; }
.l-kv1 .top-slide.slick-slider { margin-bottom: 0; padding: 0;}
.l-kv1 .top-slide .item { background: center no-repeat; background-size: cover; height: 100vh; }
/*.l-kv1 .top-slide .item.item1 { background-image: url(../images/top/mv1.jpg); }
.l-kv1 .top-slide .item.item2 { background-image: url(../images/top/mv2.jpg); }
.l-kv1 .top-slide .item.item3 { background-image: url(../images/top/mv3-dammy.jpg); }*/
.l-kv1 .top-slide .slick-slide { height: 100vh; }
.l-kv1 .top-slide .slick-dots { bottom: 2rem; left: 2rem; right: auto; text-align: left; z-index: 99; }
.l-kv1 .top-slide .slick-dots li { width: auto; height: auto; margin: 0 1rem 0 0; }
.l-kv1 .top-slide .slick-dots li button { width: 1rem; height: 1rem; background-color: #fff; text-indent: -300vw; border-radius: 0; margin: 0; padding: 0;}
.l-kv1 .top-slide .slick-dots li.slick-active { opacity: 0.5; }
@media (orientation: portrait) { .l-kv1 .top-slide .item { height: 94rem; }
  .l-kv1 .top-slide .slick-slide { height: 94rem; } }
.l-kv1__txt { position: absolute; top: 0; left: 0; padding-left: 2rem; width: 100%; box-sizing: border-box; height: 100%; pointer-events: none; }
.l-kv1__txt .c-wrap { position: relative; height: 100%; }
.l-kv1__txt .catch { pointer-events: auto; font-size: 6rem; color: #fff; text-shadow: 0px 3px 6px #222222a6; letter-spacing: 0.12em; line-height: 1.33;position: absolute; bottom: 24%; left: 0;  font-family:var(--fontfamily), 'Noto Serif JP';font-weight: 600;}
.l-kv1 .top-news {position: absolute; right: 0; bottom: 0; width: 35.5%; display: flex; z-index: 9; background-color: #FFF; }
.l-kv1 .top-news .heading { font-size: 2rem; letter-spacing: 0.05em; color: #fff; text-align: center; width: 10rem; height: 10rem; background-color: var(--themecolor); display: flex; flex-direction: column; align-items: center; justify-content: center; font-family:var(--fontfamilyspecial), 'Libre Baskerville', serif;font-weight: 700;line-height: 1.38;}
.l-kv1 .top-news .post { width: calc(100% - 10rem); box-sizing: border-box; height: 100%; padding: 2rem 3rem; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }
.l-kv1 .top-news .post a { width: 100%; box-sizing: border-box; }
.l-kv1 .top-news .post .date { color: var(--datecolor); font-size: 1.6rem;line-height: 1.4;font-weight: 500; font-family:var(--fontfamily), 'Noto Serif JP';}
.l-kv1 .top-news .post__title { width: 100%;font-size: 1.8rem;line-height: 1.44; box-sizing: border-box; font-weight: 400; margin-top: 0.5rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;font-family:var(--fontfamily), 'Noto Serif JP';}

.is_tablet .l-kv1 .top-news{bottom: -0.5px;}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation:landscape) {
	.l-kv1 { position: relative; }
	.l-kv1 .top-slide { overflow: hidden; }
	.l-kv1 .top-slide.slick-slider { margin-bottom: 0; }
	.l-kv1 .top-slide .item { background: center no-repeat; background-size: cover; height: 17rem; }
	.l-kv1 .top-slide .slick-slide { height: 17rem; }
	.l-kv1 .top-slide .slick-dots { line-height: 1; bottom: 1rem; left: 2rem; right: auto; text-align: left; z-index: 99; }
	.l-kv1 .top-slide .slick-dots li { width: auto; height: auto; margin: 0 0.6rem 0 0; }
	.l-kv1 .top-slide .slick-dots li button { padding: 0; width: 0.6rem; height: 0.6rem; background-color: #fff; text-indent: -300vw; }
	.l-kv1 .top-slide .slick-dots li.slick-active { opacity: 0.5; }
	.l-kv1__txt { position: absolute; top: 0; left: 0; width: 100%; box-sizing: border-box; height: 100%; pointer-events: none; padding-left: 0;}
	.l-kv1__txt .c-wrap { position: relative; height: 100%; }
	.l-kv1__txt .catch { pointer-events: auto; font-size: 1.9rem; color: #fff; text-shadow: 0px 3px 6px #222222a6; letter-spacing: 0.12em; position: absolute; top: 11.5rem; left: 2rem; }
	.l-kv1 .top-news { display: flex; width: 100%; z-index: 9; position: relative; background-color: #FFF;}
	.l-kv1 .top-news .heading { font-size: 13px; letter-spacing: 0.05em; color: #fff; text-align: center; width: 6rem; height: 6rem; background-color: var(--themecolor); line-height: 1.4; display: flex; flex-direction: column; align-items: center; justify-content: center; }
	.l-kv1 .top-news .post { width: calc(100% - 6rem); box-sizing: border-box; height: 100%; padding: 0 2rem; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; height: 6rem; }
	.l-kv1 .top-news .post a { width: 100%; box-sizing: border-box; line-height: 1.2; }
	.l-kv1 .top-news .post .date { color: var(--datecolor); font-size: 88.88%; }
	.l-kv1 .top-news .post__title { width: 100%; box-sizing: border-box; font-weight: 500; margin-top: 0.5rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px;}
}

@media screen and (max-width: 896px) and (orientation:landscape) {
	.l-kv1 .top-slide{height: 17rem;}
	.l-kv1 .top-slide .slick-list,.l-kv1 .top-slide .slick-list .slick-track{height: 17rem;}
	.l-kv1 .top-slide .slick-list .item{height: 17rem;}
	.l-kv1__txt .catch{left: 6rem;}
	.l-kv1 .top-slide .slick-dots{left: 6rem; width: 80%;}
}
/*=======================================
トップページ
=========================================*/
.p-top__ideas { padding: 13.5rem 0 16rem; background: bottom center no-repeat; background-size: 100% auto; background-image: url(../images/top/catch_bg.png); }
.p-top__ideas h2 {font-size: 1em;}
.p-top__ideas .catch {font-family:var(--fontfamily), 'Noto Serif JP';font-size:2.2rem; font-weight: 500; text-align: center;  margin-top: 5rem; letter-spacing: 0.05em;line-height: 3.05;}
.p-top__service { padding: 15rem 0 0; }
.p-top__service h2 {font-size: 1em;}
.p-top__service .block .lead { text-align: center; line-height: 2; font-family:var(--fontfamily), 'Noto Serif JP';font-size: 18px;font-weight: 500;}

.p-top__service .block2 { margin-top: 10rem; }
.p-top__service .block2 .box { display: flex; background-color: var(--subthemecolor); }
.p-top__service .block2 .box__txt { width: 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 0 1%;}
.p-top__service .block2 .box__txt .heading {font-family:var(--fontfamily), 'Noto Serif JP';font-weight: 600; letter-spacing: 0.05em; font-size: 4rem; text-align: center; margin-bottom: 4.5rem; margin-bottom: 4.6875%; line-height: 1.4;}
.p-top__service .block2 .box__txt .heading span { font-weight: 700; letter-spacing: 0.05em; font-size: 1.6rem; text-align: center;}
.p-top__service .block2 .box__txt .heading span img {vertical-align: text-bottom;}
.p-top__service .block2 .link1 { display: block; width: 50%; box-sizing: border-box; }
.p-top__service .block2 .link1__box { width: 100%; background: #3EB2C9; color: #fff; letter-spacing: 0.05em; font-size: 111.11%; font-weight: bold; line-height: 1.6; text-align: center; text-decoration: none !important; transition: opacity 0.1s; opacity: 1; display: flex; justify-content: space-between; align-items: center; padding: 5rem 12rem; box-sizing: border-box;transition: .4s;}
.p-top__service .block2 .link1__box:hover { text-decoration: none !important; opacity: 1; background:#FFF; color: #3EB2C9; }
.p-top__service .block2 .link1__box:nth-child(n+2) { background-color: #5AC7DC; }
.p-top__service .block2 .link1__box::after {content: ""; display: block; width: 2rem; height: 5rem; background: url("../images/common/icon-arrow-01.svg") no-repeat center center/contain; margin-left: auto;}
.p-top__service .block2 .link1__box:first-of-type:hover::after{background:url("../images/common/icon-arrow-01-b.svg") no-repeat center center/contain;}
.p-top__service .block2 .link1__box:last-of-type:hover::after{background:url("../images/common/icon-arrow-01-lb.svg") no-repeat center center/contain;}
.p-top__service .block2 .link1__box .icon { display: flex; justify-content: center; align-items: center; border-radius: 50%; background: #FFF; width: 14rem; height: 14rem; margin-right: 4rem;}
.p-top__service .block2 .link1__box .txt2 {text-align: left;}
.p-top__service .block2 .link1__box:nth-child(n+2):hover{background-color: #FFF; color: #5AC7DC;}
.p-top__service .block2 .link2 { display: flex; flex-wrap: wrap; justify-content: center; width: 100%; box-sizing: border-box; background-color: #EDF9F9; padding: 4rem 0 10rem;}
.p-top__service .block2 .link2 a { width: 45.833%; max-width: 88rem; color: #2E95AA; letter-spacing: 0.1em; border: 1px solid #2E95AA; text-align: center; padding: 5.5rem 0; text-decoration: none !important; transition: opacity 0.1s; opacity: 1; font-size: 2.2rem; font-weight: bold; color: var(--charactercolor);}
.p-top__service .block2 .link2 a:last-of-type{display: none;}
.p-top__service .block2 .link2 a:hover { text-decoration: none !important; opacity: 0.8; }
.p-top__service .block2 .link2 a:nth-child(n+2) { margin-left: 6rem; }
.p-top__service .block2 .link2 a::after { content: ""; display: inline-block;  vertical-align: middle; width: 3rem; height: 3rem; background: center no-repeat; background-size: contain; background-image: url(../images/common/btn-arrow.svg); margin-left: 1.8rem; }
.p-top__service .block2 .link2 a span { display: inline-block; vertical-align: middle; }
.p-top__service .block2 .box__txt .button a { letter-spacing: 0.1em; padding-left: 2rem; padding-right: 2rem; width: 26rem;max-width: none;line-height: 1.4; font-family:var(--fontfamilyspecial), 'Libre Baskerville', serif;font-size: 1.7rem;font-weight: 400;}
@media screen and (max-width: 1280px) {
  /* .p-top__service .block2 .link1 { margin-top: 5.166%; } */
  .p-top__service .block2 .link1__box { height: 23.4rem; font-size: 100%; }
  /* .p-top__service .block2 .link1__box:nth-child(n+2) { margin-left: 11.25%; } */
  .p-top__service .block2 .link1__box .icon { transform: scale(0.9); }
  .p-top__service .block2 .link2 a { font-size: 90%; }
  .p-top__service .block2 .link2 a::after { width: 1.8rem; height: 1.8rem; }
}
.p-top__service .block2 .box__img { width: 50%; }
.p-top__service .block2 .box:nth-child(even) .box__img { order: 1; text-align: right;}

.p-top__service .block3 { margin-top: 10rem; }
.p-top__service .block3 ul { display: flex; justify-content: center; }



.p-top__service .block3 ul li { width: 25%; height: 0; padding-top: 25%; position: relative; background-color: #880202; text-decoration: none !important;}
.p-top__service .block3 ul li:nth-of-type(2) { background-color: #A40000; }
.p-top__service .block3 ul li:nth-of-type(3) { background-color: #B12626; }
.p-top__service .block3 ul li:nth-of-type(4) { background-color: #BF4C4C; }



.p-top__service .block3 ul li:hover { text-decoration: none !important; opacity: 0.8; }
.p-top__service .block3 ul li a { position: absolute; top: 0; left: 0; width: 100%; box-sizing: border-box; height: 100%; display: flex; justify-content: center; align-items: center; color: #fff; font-size: 2.8rem; text-align: center; text-decoration: none; font-weight: 700; letter-spacing: 0.1em; font-family:var(--fontfamily), 'Noto Serif JP';line-height: 1.4;}
/* .p-top__service .block3 ul li:nth-child(2) a span, .p-top__service .block3 ul li:nth-child(3) a span {margin-top: -1em;} */
.p-top__service .block3 ul li a span b {font-size: 0.714285em;}

/* .p-top__service .block3 ul li a span::after { content: ""; display: block; margin: 2rem auto; width: 3rem; height: 3rem; background: center no-repeat; background-size: contain; background-image: url(../images/common/btn-arrow-w.svg); } */

.p-top__service .block3 ul li a span svg{display: block; margin: 2rem auto; width: 3rem; height: 3rem;}


.p-top .p-top__info { padding-top: 10rem; padding-bottom: 13rem; display: flex; justify-content: center; }
.p-top .p-top__info.info-win {padding-bottom: 10rem;}
.p-top .p-top__info > section { width: 46.67%; box-sizing: border-box; }
.p-top .p-top__info > section:nth-of-type(n+2) { margin-left: 6.66%; }
.p-top .p-top__info > section .title { margin-bottom: 2.5rem; font-size: 1em;}
.p-top .p-top__info .p-otp__info__winhelath {width: 100%;}
.p-top .p-top__info .p-otp__info__winhelath .c-info-inner {width: 800px; margin: 0 auto;}
.p-top .info-group .p-top__info {padding-top: 0;}
.p-top .info-group .title {margin-bottom: 2.5rem; font-size: 1em;}
.p-top .p-top__info .p-otp__info__winhelath .c-info-inner .post a {/*display: flex;*/}
.p-top .p-top__info .p-otp__info__winhelath .c-info-inner .post a .post__title {/*margin-top: 0;margin-left: 1.5em;*/}
.p-top .info-group .p-top__info h3 {text-align: center; font-weight: bold;}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation:landscape) {
	.p-top__ideas { padding: 6rem 0 7rem; background: bottom center no-repeat; background-size: 100% auto; background-image: url(../images/top/catch_bg.png); }
	.p-top__ideas .catch { line-height: 1.4; font-size: 18px; font-size: 1.8rem; font-weight: 500; text-align: center; margin-top: 0; margin-bottom: 1.8rem; letter-spacing: 0.05em; }
	.p-top__service { padding: 7rem 0 0; }
	.p-top__service .block .lead { text-align: center; line-height: 2; font-size: 14px;}
	.p-top__service .block2 { margin-top: 5rem; }
	.p-top__service .block2 .box {display: block; background-color: var(--subthemecolor); }
	
	.p-top__service .block2 .box__txt { width: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 4rem 1.5rem 5rem; }
	.p-top__service .block2 .box__txt .heading { font-weight: 500; font-size: 22px; font-size: 2.2rem; text-align: center; margin-bottom: 2.3rem; }
	.p-top__service .block2 .box__txt .heading span { font-weight: 700; letter-spacing: 0.05em; font-size: 1.6rem; text-align: center;}
	.p-top__service .block2 .box__txt .heading span img {vertical-align: text-bottom;}
	.p-top__service .block2 .link1 { display: block; width: 100%; box-sizing: border-box; margin-top: 0; }
	.p-top__service .block2 .link1__box { width: 100%; max-width: 100%; background: #3EB2C9; color: #fff; letter-spacing: 0.05em; font-size: 12px; font-size: 1.2rem; font-weight: bold; line-height: 1.4; text-align: center; text-decoration: none !important; transition: opacity 0.1s; opacity: 1; display: flex; justify-content: space-between; align-items: center; padding: 20px; box-sizing: border-box; height: auto;}
	.p-top__service .block2 .link1__box:hover { text-decoration: none !important; opacity: 0.8; }
	.p-top__service .block2 .link1__box:nth-child(n+2) {background-color: #5AC7DC; margin-left: 0;}
	.p-top__service .block2 .link1__box::after {content: ""; display: block; width: 1rem; height: 2.5rem; background: url("../images/common/icon-arrow-01.svg") no-repeat center center/contain; margin-left: auto;}
	.p-top__service .block2 .link1__box .icon { display: flex; justify-content: center; align-items: center; border-radius: 50%; background: #FFF; width: 7rem; height: 7rem; margin-right: 2rem;}
	.p-top__service .block2 .link1__box .icon img {max-width: 50%;}
	.p-top__service .block2 .link1__box .txt2 {text-align: left;}
	.p-top__service .block2 .link2 { display: flex; flex-wrap: wrap; justify-content: center; width: 100%; box-sizing: border-box; background-color: #EDF9F9; padding: 2rem 0 5rem; margin-top: 0;}
	.p-top__service .block2 .link2 a { width: 48%; max-width: 20rem; color: #2E95AA; letter-spacing: 0; border: 1px solid currentColor; text-align: center; padding: 1.2rem; text-decoration: none !important; transition: opacity 0.1s; opacity: 1; font-size: 11px; font-size: 1.1rem; line-height: 1; box-sizing: border-box;}
	.p-top__service .block2 .link2 a:hover { text-decoration: none !important; opacity: 0.8; }
	.p-top__service .block2 .link2 a:nth-child(n+2) { margin-left: 2%; }
	.p-top__service .block2 .link2 a::after { content: ""; display: inline-block;   vertical-align: middle; width: 1.2rem; height: 1.2rem; background: center no-repeat; background-size: contain; background-image: url(../images/common/btn-arrow.svg); margin-left: 1rem; }
	.p-top__service .block2 .link2 a span { display: inline-block;  vertical-align: middle; }
	.p-top__service .block2 .box__txt .button a { letter-spacing: 0.05em; width: 100%; max-width: none; font-size: 1.3rem;padding: 1.1rem 7rem 1.2rem;line-height: 1;}
	.p-top__service .block2 .box__img { width: 100%; }
	.p-top__service .block2 .box__img img { width: 100%; }

	.p-top__service .block3 { margin-top: 5rem; }
	.p-top__service .block3 ul { display: flex; flex-wrap: wrap; justify-content: center; }
	.p-top__service .block3 ul li { width: 50%; height: 0; padding-top: 25%; position: relative; background-color: #880202; text-decoration: none !important; transition: opacity 0.1s; opacity: 1; }
	.p-top__service .block3 ul li:nth-of-type(2) { background-color: var(--themecolor); }
	.p-top__service .block3 ul li:nth-of-type(3) { background-color: #B12626; }
	.p-top__service .block3 ul li:nth-of-type(4) { background-color: #BF4C4C; }
	.p-top__service .block3 ul li:hover { text-decoration: none !important; opacity: 0.8; }
	.p-top__service .block3 ul li a { position: absolute; top: 0; left: 0; width: 100%; box-sizing: border-box; height: 100%; display: flex; justify-content: center; align-items: center; color: #fff; font-size: 15px; font-size: 1.5rem; text-align: center; text-decoration: none; font-weight: bold; letter-spacing: 0.1em; }
	.p-top__service .block3 ul li a span{width: 82.5px;}

	/* .p-top__service .block3 ul li a span::after { content: ""; display: block; margin: 0.4rem auto; width: 1.5rem; height: 1.5rem; background: center no-repeat; background-size: contain; background-image: url(../images/common/btn-arrow-w.svg); } */
	
	.p-top__service .block3 ul li a span svg { display: block; margin: 0.4rem auto; width: 1.5rem; height: 1.5rem;}

	.p-top .p-top__info { padding-top: 5rem; padding-bottom: 6rem; display: block;}
	.p-top .p-top__info > section {width: 100%;}
	.p-top .p-top__info > section:nth-of-type(n+2) { margin-top: 4rem; margin-left: 0;}
	.p-top .p-top__info > section .title { margin-bottom: 2.5rem; }
  .p-top .p-top__info .p-otp__info__winhelath .c-info-inner {width: 100%;}
	.p-top .p-top__info .p-otp__info__winhelath .post {width: 100%;}
	.p-top .p-top__info.info-win {padding-bottom: 0;}
  .p-top .info-group {margin-top: 6rem;}
  .p-top .p-top__info .p-otp__info__winhelath .c-info-inner .post a {display: block;}
  .p-top .p-top__info .p-otp__info__winhelath .c-info-inner .post a .post__title {margin-top: 0.5rem;margin-left: 0;font-size: 14px;}
}


/* アニメーション */
.anim-trigger{opacity: 0; transform: translateY(12%); transition: 1.6s;}
.anim-trigger.is-active{opacity: 1; transform: translateY(0);}
.index-anim > *{opacity: 0; transform: translateY(12%); transition: 1.6s;}
.index-anim > .is-active{opacity: 1; transform: translateY(0);}

.p-top__service .block2 .link1.index-anim > *{transform: translateX(12%); opacity: 0;}
.p-top__service .block2 .link1.index-anim > .is-active{animation:oem-anim 1.8s forwards;}
@keyframes oem-anim {
	0%{transform: translateX(12%); opacity: 0;}
	60%{transform: translateX(0%);}
	100%{transform: translateX(0%); opacity: 1;}
}
.p-top__service .block2 .link2 a{opacity: 0 !important; transition: 1s;}
.p-top__service .block2 .link2 a.is-active{opacity: 1 !important;}
.p-top__service .block2 .link2 a.is-active:hover{opacity: .6 !important; transition: .4s !important;}

/*.p-top__service .block2 .index-anim.img-l > .box__img{transform: translateX(-12%); transition: 1.4s;}
.p-top__service .block2 .index-anim.img-l > .box__img.is-active{transform: translateX(0);}
.p-top__service .block2 .index-anim.img-r > .box__img{transform: translateX(12%); transition: 1.4s;}
.p-top__service .block2 .index-anim.img-r > .box__img.is-active{transform: translateX(0);}*/

.p-top__service .block2 .index-anim.img-lr > .box__img img{width: 96rem; height: 70rem;object-fit: cover;}

.p-top__service .block2 .index-anim.img-lr:nth-of-type(odd) > .box__img{transform: translateX(-12%); transition: 1.4s;}
.p-top__service .block2 .index-anim.img-lr:nth-of-type(odd) > .box__img.is-active{transform: translateX(0);}
.p-top__service .block2 .index-anim.img-lr:nth-of-type(even) > .box__img{transform: translateX(12%); transition: 1.4s;}
.p-top__service .block2 .index-anim.img-lr:nth-of-type(even) > .box__img.is-active{transform: translateX(0);}

.p-top__service .block3 ul.index-anim > li.is-active{transition: .8s;}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape){
    
    .p-top__service .block2 .index-anim.img-lr > .box__img img{height: 270px;}
    
	.p-top__service .block3 ul li{transition: .6s !important; opacity: 0; transition: none;}
	.p-top__service .block3 ul li.is-active{opacity: 1;}
}
