﻿#dammy {
	display: block;
	overflow: hidden;
	background: url('../images/') no-repeat;
	background-size: px px;
	padding: 40px 0 0;
	width: 216px;
	height: 0!important;
}

#dammy {
	position: absolute;
	left:0;
	bottom:0;
	content: '';
	width:0;
	height:6px;
	background-color: #FFF;
}

#dammy:last-child {
	margin-bottom:0;
}

/*
=================================== */
.pbox {
	position: absolute;
}

.kv_slide {
	position: relative;
}

.kv_sbox img {
	transform: scale(1);
	transition-duration: 8s;
	transition-timing-function: linear;
}

.kv_sbox.zoom img {
	transform: scale(1.2);
}

.kv_slide .slick-dots {
	position: absolute;
	top:100%;
	left:calc(50% - 500px);
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
	width:1000px;
	height:30px;
	z-index:10;
}

.kv_slide .slick-dots li {
	margin:0 10px 0 0;
	width:86x;
}

.kv_slide .slick-dots li:last-child {
	margin:0;
}

.kv_slide .slick-dots li button {
	display: block;
	overflow: hidden;
	background-color: #FFF;
	padding: 6px 0 0;
	width: 100%;
	height: 0!important;
	border:none;
	border-radius: 10px;
}

.kv_slide .slick-dots li.slick-active button {
	background-color: #e53c51;
}

.kv_body {
	position: relative;
}

.kv_body::before {
	position: absolute;
	top:0;
	left:0;
	content: '';
	background-color: #1e505f;
	width:100%;
	height:100%;
	z-index:-10;
}

.kv_body .pbox {
	display: none;
}

.kv_body .block1 {
	padding:110px 0 50px;
	position: relative;
}

.kv_body .kv_mleadblock {
	position: absolute;
	top:-225px;
	left:15px;
}

.kv_body .kv_mleadblock .checkbox {
	display: flex;
	justify-content: center;
	align-items: center;
	margin:0 0 15px;
	width:200px;
	height:28px;
	line-height:1.0;
	text-align: center;
	color:#FFF;
	font-weight: 700;
	letter-spacing: 0.04em;
	border:1px solid #FFF;
	opacity: 0;
	transform: translateX(30px);
	transition-delay: 0.6s;
	transition-duration: .6s;
}

.kv_body .kv_mleadblock.action .checkbox {
	opacity: 1;
	transform: translateX(0);
}

.kv_body .kv_mleadblock .checkbox b {
	padding:0 0 0 0.1em;
	line-height:1.0;
	font-size:1.8rem;
	font-weight: 700;
	font-family: "Bricolage Grotesque", serif;
	letter-spacing: 0.1em;
}

.kv_body .kv_mleadblock .catch {
	margin:0 0 15px;
	line-height:1.4;
	font-size:1.7rem;
	letter-spacing: 0.04em;
	color:#FFF;
	opacity: 0;
	transform: translateX(30px);
	transition-delay: 0.8s;
	transition-duration: .6s;
}

.kv_body .kv_mleadblock.action .catch {
	opacity: 1;
	transform: translateX(0);
}

.kv_body .kv_mlead p {
	line-height:55px;
	color:#cadc45;
	font-size:6.5rem;
	font-weight: 700;
	font-family: "Bricolage Grotesque", serif;
	letter-spacing: 0.04em;
}

.kv_body .kv_mlead p b {
	font-weight: 700;
	opacity: 0;
	transition-duration: .6s;
}

.kv_body .action .kv_mlead p.line1 b:nth-child(1),
.kv_body .action .kv_mlead p.line2 b:nth-child(4),
.kv_body .action .kv_mlead p.line3 b:nth-child(3) {
	transition-delay: .3s;
}

.kv_body .action .kv_mlead p.line1 b:nth-child(2),
.kv_body .action .kv_mlead p.line2 b:nth-child(1),
.kv_body .action .kv_mlead p.line3 b:nth-child(6) {
	transition-delay: .1s;
}

.kv_body .action .kv_mlead p.line1 b:nth-child(3) {
	transition-delay: .4s;
}

.kv_body .action .kv_mlead p.line1 b:nth-child(4) {
	transition-delay: .15s;
}

.kv_body .action .kv_mlead p.line1 b:nth-child(5),
.kv_body .action .kv_mlead p.line2 b:nth-child(2),
.kv_body .action .kv_mlead p.line3 b:nth-child(4) {
	transition-delay: .25s;
}

.kv_body .action .kv_mlead p.line1 b:nth-child(6),
.kv_body .action .kv_mlead p.line3 b:nth-child(2) {
	transition-delay: .2s;
}

.kv_body .action .kv_mlead p b {
	opacity: 1;
}

.kv_body .kv_slead {
	margin:0 0 65px;
	padding:0 0 0 20px;
	position: relative;
}

.kv_body .kv_slead .slead {
	margin:0 0 25px;
	padding:0 0 0 5px;
	color:#FFF;
}

.kv_body .kv_slead .slead p {
	line-height:1.9;
	font-weight: 500;
}

.kv_body .kv_slead .sppbox1 {
	position: absolute;
	top:-8vw;
	right:0;
	width:42.67vw;
}

.kv_body .kv_slead .sppbox2 {
	width:61.3vw;
}

.kv_body .kv_slead .sppbox3 {
	position: absolute;
	bottom:-17.34vw;
	right:25px;
	width:30.67vw;
}

.kv_body .sppbox .inbox {
	position: relative;
}

.kv_body .sppbox .inbox::before,
.kv_body .sppbox .inbox::after {
	position: absolute;
	content: '';
	background-color: #cbdd45;
	z-index:-3;
}

.kv_body .kv_slead .sppbox1 .inbox::before {
	top:-15px;
	left:-10px;
	width:25px;
	height:1px;
}

.kv_body .kv_slead .sppbox1 .inbox::after {
	top:-15px;
	left:-10px;
	width:1px;
	height:55px;
}

.kv_body .kv_slead .sppbox2 .inbox::before {
	bottom:-10px;
	left:-10px;
	width:15px;
	height:1px;
}

.kv_body .kv_slead .sppbox2 .inbox::after {
	bottom:-10px;
	left:-10px;
	width:1px;
	height:20px;
}

.kv_body .sppbox .inbox p {
	position: relative;
}

.kv_body .sppbox .inbox p::before {
	position: absolute;
	content: '';
	background-color: #f0e6cf;
	mix-blend-mode: multiply;
	z-index:-5;
}

.kv_body .kv_slead .sppbox1 .inbox p::before {
	top:9.33vw;
	left:18.67vw;
	width:100%;
	height:100%;
}

.kv_body .kv_slead .sppbox2 .inbox p::before {
	top:10.67vw;
	left:-10.67vw;
	width:100%;
	height:100%;
}

.kv_body .sppbox .inbox p img {
	opacity: 0;
	transition-duration: .6s;
}

.kv_body .sppbox.anim_action .inbox p img {
	opacity: 1;
}

.kv_body .kv_message {
	padding:0 0 0 50px;
	position: relative;
}

.kv_body .kv_message .message {
	margin:0 0 100px;
	padding:0 0 0 5px;
	color:#FFF;
}

.kv_body .kv_message .message p {
	margin:0 0 20px;
	line-height:1.85;
	font-size:1.3rem;
}

.kv_body .kv_message .message p:last-child {
	margin-bottom:0;
}

.kv_body .kv_message .sppbox1 {
	position: absolute;
	bottom:11.33vw;
	right:0;
	width:62.67vw;
}

.kv_body .kv_message .sppbox2 {
	width:26.67vw;
}

.kv_body .kv_message .sppbox2 .inbox p::before {
	top:-40vw;
	left:-8vw;
	width:41.33vw;
	height:56vw;
}

.kv_body .kv_message .sppbox2 .inbox::before {
	bottom:-7px;
	right:-14px;
	width:10px;
	height:1px;
}

.kv_body .kv_message .sppbox2 .inbox::after {
	bottom:-7px;
	right:-14px;
	width:1px;
	height:35px;
}

.area_mtitle {
	margin:0 0 45px;
	padding:0 0 20px;
	position: relative;
}

.area_mtitle::after {
	position: absolute;
	left:calc(50% - 23px);
	bottom:0;
	content: '';
	background-color: #2d2522;
	width:46px;
	height:1px;
}

.area_mtitle h2 {
	display: flex;
	justify-content: center;
	align-items: baseline;
	line-height:1.0;
	text-align: center;
	font-size:1.3rem;
	letter-spacing: 0.04em;
}

.area_mtitle h2 b {
	margin:0 3px 0 0;
	line-height:1.0;
	font-size:2.2rem;
	font-weight: 400;
	font-family: "Bricolage Grotesque", serif;
}

.top_area1 {
	position: relative;
}

.top_area1:before {
	position: absolute;
	top:0;
	left:0;
	content: '';
	background-color: #f1e5c6;
	width:100%;
	height:100%;
	z-index:-10;
}

.top_area1 .block1 {
	padding:65px 0;
}

.top_area1 .area_mtitle {
	background: url('../images/common/area_mtitle.webp') no-repeat center top;
	background-size: 150px auto;
	margin:0 0 70px;
	padding:35px 0 20px;
}

.area1exblock {
}

.area1exblock.ex1 {
	margin:0 0 40px;
	padding:0 0 0 45px;
}

.area1exblock.ex2 {
	margin:0 0 50px;
	padding:0 0 0 70px;
}

.area1exblock.ex3 {
	margin:0 0 55px;
	padding:0 0 0 45px;
}

.area1exblock.ex4 {
	margin:0 0 50px;
	padding:0 0 0 75px;
}

.area1exblock.ex5 {
	margin:0 0 50px;
	padding:0 0 0 32px;
}

.area1exblock.ex6 {
	margin:0 0 55px;
	padding:0 0 0 45px;
}

.area1exblock.ex7 {
	padding:0 0 0 110px;
}

.area1exblock .imagearea {
	position: relative;
}

.area1exblock.ex1 .imagearea {
	margin:0 8px 20px 0;
}

.area1exblock.ex2 .imagearea {
	margin:0 15px 20px 0;
}

.area1exblock.ex3 .imagearea {
	margin:0 60px 20px 0;
}

.area1exblock.ex4 .imagearea {
	margin:0 25px 20px 45px;
}

.area1exblock.ex5 .imagearea {
	margin:0 105px 20px 35px;
}

.area1exblock.ex6 .imagearea {
	margin:0 10px 20px 0;
}

.area1exblock.ex7 .imagearea {
	margin:0 15px 20px 0;
}

.area1exblock .imagearea .titlebox {
	position: absolute;
	top:-10px;
	left:-45px;
	display: flex;
	align-items: center;
	height:45px;
	background-color: #1e505f;
	z-index:5;
	-webkit-clip-path: inset(0 100% 0 0);
	clip-path: inset(0 100% 0 0);
	transition-duration: .3s;
	transition-timing-function: ease-in;
}

.area1exblock.anim_action .imagearea .titlebox {
	-webkit-clip-path: inset(0 0 0 0);
	clip-path: inset(0 0 0 0);
}

.area1exblock .imagearea .titlebox .no {
	display: flex;
	justify-content: center;
	align-items: center;
	width:45px;
	height:45px;
	color:#cadc45;
	font-size:1.5rem;
	font-weight: 400;
	font-family: "Bricolage Grotesque", serif;
	border-right:1px solid #cadc45;
}

.area1exblock .imagearea .titlebox .title {
	padding:0 10px;
	color:#FFF;
	font-weight: 500;
	letter-spacing: 0.04em;
}

.area1exblock .imagearea .imagebox {
	position: relative;
}

.area1exblock .imagearea .imagebox::before {
	position: absolute;
	top:0;
	left:0;
	content: '';
	background-color: #cadc45;
	width:100%;
	height:100%;
	z-index:-1;
	transition-delay: .4s;
	transition-duration: .6s;
}

.area1exblock.anim_action .imagearea .imagebox::before {
	top:6px;
	left:6px;
}

.area1exblock.ex1 .exbox {
	padding:0 0 0 10px;
}

.area1exblock.ex6 .exbox {
	padding:0 0 0 5px;
}

.area1exblock.ex7 .exbox {
	padding:0 0 0 10px;
}

.area1exblock .exbox p {
	line-heifght:1.6;
	font-size:1.3rem;
}

.top_area23 {
	position: relative;
}

.top_area23:before {
	position: absolute;
	top:0;
	left:0;
	content: '';
	background:url('../images/top/top_area23bgimage.webp') no-repeat center top;
	background-size: cover;
	width:100%;
	height:100%;
	z-index:-10;
}

.top_area2 .block1 {
	padding-top:55px;
	padding-bottom:50px;
}

.top_area2 .area_mtitle {
	color:#FFF;
}

.top_area2 .area_mtitle::after {
	background-color: #cbdd45;
}

.point_block .pointbox {
	margin:0 0 60px;
	color:#FFF;
}

.point_block .pointbox:last-child {
	margin-bottom:0;
}

.point_block .pointbox .imagebox {
	margin:0 auto 20px;
	width:250px;
}

.point_block .pointbox .lead {
	margin:0 0 15px;
	padding:0 0 15px;
	text-align: center;
	line-height:1.65;
	font-size:1.6rem;
	font-weight: 500;
	position: relative;
}

.point_block .pointbox .lead::after {
	position: absolute;
	left:calc(50% - 21px);
	bottom:0;
	content: '';
	background-color: #cadc46;
	width:42px;
	height:1px;
}

.point_block .pointbox .ex {
	line-height:1.75;
	text-align: center;
	letter-spacing: 0.04em;
}

.top_area3 {
	position: relative;
}

.top_area3:before {
	position: absolute;
	top:0;
	left:0;
	content: '';
	background-color: rgba(0, 0, 0, 0.4);
	width:100%;
	height:100%;
	z-index:-10;
}

.top_area3 .block1 {
	padding-top:55px;
	padding-bottom:50px;
}

.top_area3 h2 {
	margin:0 0 45px;
	display: flex;
	justify-content: center;
	align-items: baseline;
	line-height:1.0;
	text-align: center;
	color:#FFF;
	font-size:1.3rem;
	letter-spacing: 0.04em;
}

.top_area3 h2 b {
	margin:0 3px 0 0;
	line-height:1.0;
	font-size:2.2rem;
	font-weight: 400;
	font-family: "Bricolage Grotesque", serif;
}

.check_block .checkbox {
	display: flex;
	justify-content: space-between;
	align-items: center;
	color:#FFF;
}

.check_block .imagebox {
	width:90px;
}

.check_block .cbody {
	padding:15px 0;
	width:calc(100% - 100px);
	min-height:115px;
	position: relative;
}

.check_block .check1 .cbody {
	padding:0 0 15px;
}

.check_block .check5 .cbody {
	padding:15px 0 0;
}

.check_block .checkbox .cbody::after {
	position: absolute;
	left:0;
	bottom:0;
	content: '';
	background-color: #e53c51;
	width:28px;
	height:1px;
}

.check_block .checkbox.check5 .cbody::after {
	display: none;
}

.check_block .checkbox .lead {
	display: flex;
	margin:0 0 10px;
	line-height:1.5;
	font-size:1.5rem;
	font-weight: 500;
	letter-spacing: 0.04em;
}

.check_block .checkbox .ex {
	line-height:1.7;
	font-size:1.3rem;
	letter-spacing: 0.02em;
}

.top_area4 {
	overflow: hidden;
	position: relative;
}

.top_area4:before {
	position: absolute;
	top:0;
	left:0;
	content: '';
	background-color: #1e505f;
	width:100%;
	height:100%;
	z-index:-10;
}

.top_area4 .block1 {
	padding-top:0;
	padding-bottom:0;
}

.top_area4 h2 {
	display: flex;
	justify-content: center;
	align-items: stretch;
	line-height:1.0;
	color:#FFF;
}

.top_area4 h2 .h2box1 {
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
	padding:45px 8px 20px;
	width:115px;
}

.top_area4 h2 .h2box1 b {
	line-height:1.0;
	color:#f1e4c6;
	font-size:2.2rem;
	font-weight: 400;
	font-family: "Bricolage Grotesque", serif;
}

.top_area4 h2 .h2box2 {
	display: flex;
	justify-content: flex-start;
	align-items: flex-end;
	padding:45px 8px 25px;
	width:calc(100% - 115px);
	background-color: #f1e5c6;
	position: relative;
}

.top_area4 h2 .h2box2::after {
	position: absolute;
	top:0;
	left:100%;
	content: '';
	background-color: #f1e5c6;
	width:200px;
	height:100%;
}

.top_area4 h2 .h2box2 b {
	line-height:1.0;
	color:#1e505f;
	font-size:1.3rem;
	letter-spacing: 0.04em;
}

.top_area4 .flowbox {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
}

.top_area4 .flowbox .titlebox {
	display: flex;
	align-items: center;
	padding:0 10px 0 0;
	width:115px;
	position: relative;
}

.top_area4 .flowbox .titlebox::after {
	position: absolute;
	left:0;
	bottom:0;
	content: '';
	background-color: #f1e5c6;
	width:calc(100% - 10px);
	height:1px;
}

.top_area4 .flowbox.flow7 .titlebox::after {
	display: none;
}

.top_area4 .flowbox .titleinbox {
	padding:12px 0;
	width:100%;
	text-align: center;
}

.top_area4 .flowbox .titlebox .no {
	margin:0 0 5px;
	line-height:1.0;
	color:#c9dc44;
	font-size:2.0rem;
	font-weight: 700;
	font-family: "Bricolage Grotesque", serif;
}

.top_area4 .flowbox .titlebox h3 {
	line-height:1.5;
	color:#c9dc44;
	font-weight: 500;
	letter-spacing: 0.04em;
}

.top_area4 .flowbox .exbox {
	display: flex;
	align-items: center;
	padding:0 0 0 10px;
	width:calc(100% - 115px);
	background-color: #f1e5c6;
	position: relative;
}

.top_area4 .flowbox .exbox::after {
	position: absolute;
	top:0;
	left:100%;
	content: '';
	background-color: #f1e5c6;
	width:200px;
	height:100%;
}

.top_area4 .flowbox .exbox .exinbox {
	padding:15px 0;
	width:100%;
	height:100%;
	border-bottom:1px solid #1e505f;
}

.top_area4 .flowbox.flow7 .exbox .exinbox {
	border-bottom:none;
}

.top_area4 .flowbox .exbox .exinbox p {
	line-height:1.7;
	color:#1e505f;
	font-size:1.3rem;
	letter-spacing: 0.02em;
}

.top_area4 .flowbox .exbox .exinbox p.btn {
	padding:10px 0 0;
}

.top_area4 .flowbox .exbox .exinbox p.btn a {
	display: inline-block;
	width:90px;
	line-height:26px;
	text-align: center;
	color:#1e505f;
	font-size:1.2rem;
	font-weight: 500;
	letter-spacing: 0.02em;
	border:2px solid #1e505f;
}

.top_area4 .fline {
	height:50px;
	position: relative;
}

.top_area4 .fline::after {
	position: absolute;
	top:0;
	left:115px;
	content: '';
	background-color: #f1e5c6;
	width:500px;
	height:100%;
}

.top_area5 {
	position: relative;
}

.top_area5:before {
	position: absolute;
	top:0;
	left:0;
	content: '';
	background-color: #bbcd41;
	width:100%;
	height:100%;
	z-index:-10;
}

._area .block1 {
	padding-top:50px;
	padding-bottom:50px;
}

.top_area5 .block1 {
	padding-top:45px;
	padding-bottom:50px;
}

.top_area5 h2 {
	margin:0 0 35px;
	line-height:1.0;
	text-align: center;
	color:#2d2422;
	font-size:2.2rem;
	font-weight: 400;
	letter-spacing: 0.04em;
	font-family: "Bricolage Grotesque", serif;
}

.top_area5 h2 b {
	display: block;
	line-height:26px;
	color:#2d2422;
	font-size:3.0rem;
	font-weight: 800;
	letter-spacing: 0.02em;
}

.journal_block {
	margin:0 0 50px;
}

.journalbox {
	margin:0 auto 50px;
	width:250px;
}

.journalbox:last-child {
	margin-bottom:0;
}

.journalbox a {
	display: block;
}

.journalbox .imagebox {
	margin:0 0 10px;
	position: relative;
}

.journalbox.wb .imagebox::before,
.journalbox.wb .imagebox::after {
	position: absolute;
	top:0;
	left:0;
	content: '';
	z-index:5;
}

.journalbox.wb .imagebox::before {
	background-color: #2d231e;
	width:100%;
	height:1px;
}

.journalbox.wb .imagebox::after {
	background-color: #2d231e;
	width:1px;
	height:100%;
}

.journalbox .imagebox b {
	display: block;
	background-position: center center;
	background-size: cover;
	position: relative;
}

.journalbox.wb .imagebox b::before,
.journalbox.wb .imagebox b::after {
	position: absolute;
	bottom:0;
	right:0;
	content: '';
	z-index:5;
}

.journalbox.wb .imagebox b::before {
	background-color: #2d231e;
	width:100%;
	height:1px;
}

.journalbox.wb .imagebox b::after {
	background-color: #2d231e;
	width:1px;
	height:100%;
}

.journalbox .title {
	margin:0 0 10px;
	padding:0 0 10px;
	line-height:1.55;
	font-size:1.5rem;
	letter-spacing: 0.02em;
	border-bottom:1px solid #403b27;
}

.journalbox .note {
	text-align: right;
}

.journalbox .note p {
	display: inline-block;
	background: url('../images/common/icon_arrow2.webp') no-repeat left center;
	background-size: auto 12px;
	padding:0 0 0 15px;
}

.journalbox .note p b {
	display: block;
	overflow: hidden;
	background: url('../images/common/icon_note.webp') no-repeat right center;
	background-size: auto 13px;
	padding: 16px 0 0;
	width: 70px;
	height: 0!important;
}

.notelink {
	margin:0 auto;
	width:250px;
}

.notelink a {
	display: flex;
	justify-content: center;
	align-items: center;
	height:46px;
	font-size:1.5rem;
	font-weight: 500;
	font-family: "Bricolage Grotesque", serif;
	letter-spacing: 0.08em;
	border:1px solid #FFF;
}

.notelink b {
	display: block;
	overflow: hidden;
	background: url('../images/common/icon_note.webp') no-repeat;
	background-size: auto 15px;
	margin:0 0 0 10px;
	padding: 15px 0 0;
	width: 72px;
	height: 0!important;
}

.top_area6 {
	position: relative;
}

.top_area6:before {
	position: absolute;
	top:0;
	left:0;
	content: '';
	background-color: #2d2522;
	width:100%;
	height:100%;
	z-index:-10;
}

.top_area6 .block1 {
	padding-top:45px;
	padding-bottom:100px;
}

.top_area6 h2 {
	margin:0 0 40px;
	display: flex;
	justify-content: center;
	align-items: baseline;
	line-height:1.0;
	text-align: center;
	color:#FFF;
	font-size:1.3rem;
	letter-spacing: 0.04em;
}

.top_area6 h2 b {
	margin:0 3px 0 0;
	line-height:1.0;
	font-size:2.2rem;
	font-weight: 400;
	font-family: "Bricolage Grotesque", serif;
}

.banner_block {
	margin:0 auto;
	width:345px;
}

.banner_block p {
	margin:0 0 30px;
}

.banner_block p:last-child {
	margin:0;
}

.banner_block p a {
	display: block;
}

.banner_block p b.sp {
	display: block;
}

.banner_block p b.pc {
	display: none;
}

.banner_block p.na b {
	opacity: .5;
}

.banner_block p span {
	display: block;
	padding:10px 0 0;
	line-height:1.0;
	color:#FFF;
	text-align: center;
	font-weight: 500;
	letter-spacing: 0.02em;
}

.top_area7 {
	position: relative;
}

.top_area7:before {
	position: absolute;
	top:0;
	left:0;
	content: '';
	background-color: #1e505f;
	width:100%;
	height:100%;
	z-index:-10;
}

.top_area7 .pbox1 {
	top:-35px;
	left:0;
	width:26.67vw;
}

.top_area7 .pbox2 {
	top:-80px;
	left:calc(50% - 20vw);
	width:41.33vw;
}

.top_area7 .pbox3 {
	top:-60px;
	right:0;
	width:27.2vw;
}

.top_area7 .pbox4,
.top_area7 .pbox5 {
	display: none;
}

.top_area7 .block1 {
	padding-top:180px;
	padding-bottom:50px;
}

.top_area7 .exblock {
	margin:0 0 50px;
	color:#FFF;
	text-align: center;
}

.top_area7 .exblock:last-child {
	margin:0 0 50px;
}

.top_area7 .exblock h3 {
	margin:0 0 35px;
	padding:0 0 15px;
	line-height:1.55;
	font-size:1.6rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	position: relative;
}

.top_area7 .exblock h3::after {
	position: absolute;
	left:calc(50% - 21px);
	bottom:0;
	content: '';
	background-color: #cbdd45;
	width:42px;
	height:1px;
}

.top_area7 .exblock .exbox p {
	line-height:1.9;
	font-size:1.3rem;
	letter-spacing: 0.04em;
}

.top_area7 .link {
	margin:0 auto;
	width:230px;
}

.top_area7 .link a {
	display: block;
	height:38px;
	line-height:34px;
	text-align: center;
	color:#cadc45;
	font-size:1.5rem;
	font-weight: 500;
	font-family: "Bricolage Grotesque", serif;
	letter-spacing: 0.08em;
	border:1px solid #FFF;
}


@media screen and (min-width: 768px) {

	/*
	=================================== */
	.kv_block {
		overflow: hidden;
	}

	.kv_body .pbox {
		display: block;
	}

	.kv_body .pbox1 {
		top:450px;
		left:calc(50% - 880px);
		width:405px;
	}

	.kv_body .pbox2 {
		top:375px;
		left:calc(50% - 430px);
		width:410px;
	}

	.kv_body .pbox3 {
		top:130px;
		left:50%;
		width:320px;
	}

	.kv_body .pbox4 {
		top:350px;
		left:calc(50% + 345px);
		width:200px;
	}

	.kv_body .pbox5 {
		top:265px;
		left:calc(50% + 575px);
		width:380px;
	}

	.kv_body .pbox .inbox {
		position: relative;
	}

	.kv_body .pbox .inbox::before,
	.kv_body .pbox .inbox::after {
		position: absolute;
		content: '';
		background-color: #cbdd45;
		z-index:-3;
	}

	.kv_body .pbox2 .inbox::before {
		top:-20px;
		left:-20px;
		width:50px;
		height:1px;
	}

	.kv_body .pbox2 .inbox::after {
		top:-20px;
		left:-20px;
		width:1px;
		height:115px;
	}

	.kv_body .pbox3 .inbox::before {
		top:-12px;
		right:-12px;
		background-color: #290112;
		width:32px;
		height:1px;
	}

	.kv_body .pbox3 .inbox::after {
		top:-12px;
		right:-12px;
		background-color: #290112;
		width:1px;
		height:37px;
	}

	.kv_body .pbox4 .inbox::before {
		bottom:-20px;
		right:-20px;
		width:20px;
		height:1px;
	}

	.kv_body .pbox4 .inbox::after {
		bottom:-20px;
		right:-20px;
		width:1px;
		height:70px;
	}

	.kv_body .pbox .inbox p {
		position: relative;
	}

	.kv_body .pbox .inbox p::before {
		position: absolute;
		content: '';
		background-color: #f0e6cf;
		mix-blend-mode: multiply;
		z-index:-5;
	}

	.kv_body .pbox2 .inbox p::before {
		top:50px;
		left:-75px;
		width:470px;
		height:555px;
	}

	.kv_body .pbox3 .inbox p::before {
		top:20px;
		left:55px;
		width:310px;
		height:420px;
	}

	.kv_body .pbox4 .inbox p::before {
		top:-50px;
		left:110px;
		width:310px;
		height:420px;
	}

	.kv_body .pbox .inbox p img {
		opacity: 0;
		transition-duration: .6s;
	}

	.kv_body .pbox.anim_action .inbox p img {
		opacity: 1;
	}

	.kv_body .block1 {
		padding:150px 50px 110px;
		position: relative;
	}

	.kv_body .kv_mleadblock {
		top:-380px;
		left:50px;
	}

	.kv_body .kv_mleadblock .checkbox {
		margin:0 0 20px;
		width:392px;
		height:56px;
		font-size:2.8rem;
	}

	.kv_body .kv_mleadblock .checkbox b {
		font-size:3.6rem;
	}

	.kv_body .kv_mleadblock .catch {
		margin:0 0 20px;
		font-size:2.4rem;
	}

	.kv_body .kv_mlead p {
		line-height:100px;
		font-size:12.0rem;
	}

	.kv_body .kv_slead {
		margin:0 0 290px;
		padding:0 0 0 70px;
	}

	.kv_body .kv_slead .slead {
		margin:0;
		padding:0;
	}

	.kv_body .kv_slead .slead p {
		line-height:1.8;
		font-size:2.2rem;
	}

	.kv_body .kv_slead .sppbox {
		display: none;
	}

	.kv_body .kv_message {
		padding:0 0 0 500px;
	}

	.kv_body .kv_message .message {
		margin:0;
		padding:0;
	}

	.kv_body .kv_message .message p {
		margin:0 0 30px;
		line-height:2.15;
		font-size:1.6rem;
	}

	.kv_body .kv_message .sppbox {
		display: none;
	}

	.area_mtitle {
		margin:0 0 70px;
		padding:0 0 35px;
	}

	.area_mtitle::after {
		left:calc(50% - 43px);
		width:86px;
	}

	.area_mtitle h2 {
		font-size:2.0rem;
		letter-spacing: 0.08em;
	}

	.area_mtitle h2 b {
		font-size:4.0rem;
	}

	.top_area1 .block1 {
		padding:95px 50px 90px;
	}

	.top_area1 .area_mtitle {
		background-size: 301px 55px;
		padding:70px 0 35px;
	}

	.area1exblock {
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
		margin:0 0 40px;
	}

	.area1exblock.ex1 {
		margin:0 0 40px;
		padding:0 0 0 70px;
	}

	.area1exblock.ex2 {
		flex-direction: row-reverse;
		padding:0 40px 0 0;
	}

	.area1exblock.ex3 {
		padding:0 0 0 140px;
	}

	.area1exblock.ex4 {
		flex-direction: row-reverse;
		padding:0 115px 0 0;
	}

	.area1exblock.ex5 {
		margin:0 0 35px;
		padding:0 0 0 185px;
	}

	.area1exblock.ex6 {
		flex-direction: row-reverse;
		padding:0 30px 0 0;
	}

	.area1exblock.ex7 {
		margin:0;
		padding:0 0 0 135px;
	}

	.area1exblock.ex1 .imagearea {
		margin:0;
		width:580px;
	}

	.area1exblock.ex2 .imagearea {
		margin:0;
		width:465px;
	}

	.area1exblock.ex3 .imagearea {
		margin:0;
		width:440px;
	}

	.area1exblock.ex4 .imagearea {
		margin:0;
		width:410px;
	}

	.area1exblock.ex5 .imagearea {
		margin:0;
		width:360px;
	}

	.area1exblock.ex6 .imagearea {
		margin:0;
		width:640px;
	}

	.area1exblock.ex7 .imagearea {
		margin:0;
		width:460px;
	}

	.area1exblock .imagearea .titlebox {
		left:-73px;
		height:73px;
	}

	.area1exblock .imagearea .titlebox .no {
		width:73px;
		height:73px;
		font-size:2.0rem;
	}

	.area1exblock .imagearea .titlebox .title {
		padding:0 20px;
		font-size:2.2rem;
	}

	.area1exblock.anim_action .imagearea .imagebox::before {
		top:10px;
		left:10px;
	}

	.area1exblock.ex1 .exbox {
		padding:0;
		width:320px;
	}

	.area1exblock.ex2 .exbox {
		width:480px;
		text-align: right;
	}

	.area1exblock.ex3 .exbox {
		width:390px;
	}

	.area1exblock.ex4 .exbox {
		width:460px;
		text-align: right;
	}

	.area1exblock.ex5 .exbox {
		width:430px;
	}

	.area1exblock.ex6 .exbox {
		padding:0;
		width:320px;
		text-align: right;
	}

	.area1exblock.ex7 .exbox {
		padding:0;
		width:375px;
	}

	.area1exblock .exbox p {
		line-heifght:1.85;
		font-size:1.5rem;
		letter-spacing: 0.04em;
	}

	.top_area2 .block1 {
		padding-top:85px;
		padding-bottom:35px;
	}

	.point_block {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}

	.point_block .pointbox {
		margin:0;
		width:300px;
	}

	.point_block .pointbox.point2 {
		transition-delay: .1s;
	}

	.point_block .pointbox.point3 {
		transition-delay: .2s;
	}

	.point_block .pointbox .imagebox {
		margin:0 0 10px;
		width:auto;
	}

	.point_block .pointbox .lead {
		display: flex;
		justify-content: center;
		align-items: center;
		margin:0 0 20px;
		padding:0;
		height:100px;
		line-height:1.5;
		font-size:2.0rem;
	}

	.point_block .pointbox .lead::after {
		left:calc(50% - 28px);
		width:56px;
	}

	.point_block .pointbox .ex {
		line-height:1.6;
		font-size:1.5rem;
	}

	.top_area3 .block1 {
		padding-top:95px;
		padding-bottom:90px;
	}

	.top_area3 h2 {
		margin:0 0 50px;
		font-size:2.0rem;
	}

	.top_area3 h2 b {
		font-size:4.0rem;
	}

	.check_block {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}

	.check_block .checkbox {
		display: block;
		width:180px;
	}

	.check_block .checkbox:nth-child(2) {
		transition-delay: .1s;
	}

	.check_block .checkbox:nth-child(3) {
		transition-delay: .2s;
	}

	.check_block .checkbox:nth-child(4) {
		transition-delay: .3s;
	}

	.check_block .checkbox:nth-child(5) {
		transition-delay: .4s;
	}

	.check_block .imagebox {
		margin:0 0 10px;
		width:auto;
	}

	.check_block .cbody {
		padding:0;
		width:auto;
		min-height:auto;
	}

	.check_block .check1 .cbody {
		padding:0;
	}

	.check_block .check5 .cbody {
		padding:0;
	}

	.check_block .checkbox .cbody::after {
		display: none;
	}

	.check_block .checkbox .lead {
		justify-content: center;
		align-items: center;
		margin:0 0 20px;
		height:100px;
		text-align: center;
		font-size:2.0rem;
		position: relative;
	}

	.check_block .checkbox .lead::after {
		position: absolute;
		left:calc(50% - 28px);
		bottom:0;
		content: '';
		background-color: #e53c51;
		width:56px;
		height:1px;
	}

	.check_block .checkbox .ex {
		line-height:1.6;
		font-size:1.5rem;
		letter-spacing: 0;
	}

	.top_area4 {
		overflow: hidden;
	}

	.top_area4 .block1 {
		padding:0 50px;
		width:900px;
	}

	.top_area4 h2 .h2box1 {
		padding:100px 10px 35px;
		width:300px;
	}

	.top_area4 h2 .h2box1 b {
		font-size:4.0rem;
	}

	.top_area4 h2 .h2box2 {
		padding:100px 10px 40px;
		width:calc(100% - 300px);
	}

	.top_area4 h2 .h2box2::after {
		width:5000px;
	}

	.top_area4 h2 .h2box2 b {
		font-size:2.0rem;
		letter-spacing: 0.08em;
	}

	.top_area4 .flowbox .titlebox {
		width:300px;
	}

	.top_area4 .flowbox .titlebox::after {
		left:30px;
		width:calc(100% - 40px);
	}

	.top_area4 .flowbox .titlebox::before {
		position: absolute;
		bottom:-4px;
		left:8px;
		content: '';
		background: url('../images/common/icon_arrow1.webp') no-repeat;
		background-size: 13px 8px;
		width:13px;
		height:8px;
	}

	.top_area4 .flowbox.flow7 .titlebox::before {
		display: none;
	}

	.top_area4 .flowbox .titleinbox {
		display: flex;
		justify-content: space-between;
		align-items: stretch;
	}

	.top_area4 .flowbox .titleinbox .no {
		display: flex;
		justify-content: center;
		align-items: center;
		margin:0;
		width:30px;
		font-size:4.0rem;
	}

	.top_area4 .flowbox .titleinbox h3 {
		display: flex;
		justify-content: center;
		align-items: center;
		width:100%;
		text-align: center;
		line-height:1.3;
		font-size:2.0rem;
		letter-spacing: 0.08em;
	}

	.top_area4 .flowbox .exbox {
		width:500px;
	}

	.top_area4 .flowbox .exbox::after {
		width:5000px;
	}

	.top_area4 .flowbox .exbox .exinbox {
		padding:20px 0;
		min-height:95px;
	}

	.top_area4 .flowbox .exbox .exinbox p {
		line-height:1.5;
		font-size:1.6rem;
		letter-spacing: -0.02em;
	}

	.top_area4 .flowbox .exbox .exinbox .wrapbox {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.top_area4 .flowbox .exbox .exinbox p.btn {
		padding:0;
	}

	.top_area4 .flowbox .exbox .exinbox p.btn a {
		width:110px;
		line-height:32px;
		font-size:1.4rem;
	}

	.top_area4 .fline {
		height:105px;
	}

	.top_area4 .fline::after {
		left:300px;
		width:5000px;
	}

	.top_area5 .block1 {
		padding-top:95px;
		padding-bottom:60px;
	}

	.top_area5 h2 {
		margin:0 0 55px;
		font-size:4.0rem;
	}

	.top_area5 h2 b {
		margin:0 0 3px;
		line-height:50px;
		font-size:5.0rem;
	}

	.journal_block {
		display: flex;
		align-items: flex-start;
		margin:0 0 50px;
	}

	.journalbox {
		margin:0 50px 0 0;
		width:300px;
	}

	.journalbox:nth-child(2) {
		transition-delay: .1s;
	}

	.journalbox:last-child {
		margin-right:0;
		transition-delay: .2s;
	}

	.journalbox .imagebox {
		margin:0 0 15px;
	}

	.journalbox .title {
		padding:0 0 15px;
		line-height:1.65;
		font-size:1.7rem;
	}

	.journalbox .note p {
		background-size: auto 9px;
	}

	.journalbox .note p b {
		background-size: auto 11px;
		padding: 14px 0 0;
		width: 52px;
	}

	.notelink {
		width:300px;
	}

	.notelink a {
		height:50px;
		font-size:1.7rem;
		border:2px solid #FFF;
	}

	.top_area6 .block1 {
		padding-top:85px;
		padding-bottom:165px;
	}

	.top_area6 h2 {
		margin:0 0 60px;
		font-size:2.0rem;
	}

	.top_area6 h2 b {
		font-size:4.0rem;
	}

	.banner_block {
		margin:0;
		width:auto;
	}

	.banner_block p {
		margin:0 0 40px;
	}

	.banner_block p b.sp {
		display: none;
	}

	.banner_block p b.pc {
		display: block;
	}

	.banner_block p span {
		display: none;
	}

	.top_area7 .pbox1 {
		top:-10px;
		left:calc(50% - 1220px);
		width:600px;
	}

	.top_area7 .pbox2 {
		top:-40px;
		left:calc(50% - 600px);
		width:370px;
	}

	.top_area7 .pbox3 {
		top:-65px;
		left:calc(50% - 200px);
		width:400px;
	}

	.top_area7 .pbox4 {
		display: block;
		top:-10px;
		left:calc(50% + 215px);
		width:300px;
	}

	.top_area7 .pbox5 {
		display: block;
		top:-90px;
		left:calc(50% + 530px);
		width:580px;
	}

	.top_area7 .block1 {
		padding-top:570px;
		padding-bottom:110px;
	}

	.top_area7 .exblock {
		margin:0 0 85px;
	}

	.top_area7 .exblock:last-child {
		margin:0 0 65px;
	}

	.top_area7 .exblock h3 {
		margin:0 0 35px;
		padding:0 0 25px;
		font-size:2.2rem;
	}

	.top_area7 .exblock h3::after {
		left:calc(50% - 43px);
		width:86px;
	}

	.top_area7 .exblock .exbox p {
		line-height:2.0;
		font-size:1.6rem;
	}

	.top_area7 .link {
		width:300px;
	}

	.top_area7 .link a {
		height:50px;
		line-height:44px;
		font-size:2.0rem;
		border:2px solid #FFF;
	}

}
