.home .header-box::before {
	height: 189vw;
}
.home #head-key::before {
	width: 100.5vw;
	height: 214vw;
	background: url(../img/index/key_bg_sp.png) no-repeat center center;
	-webkit-background-size: 100% 100%;
	background-size: 100% auto;
}
.home #key {
	position: relative;
	z-index: 2;
	width: 150vw;
	margin-left: -34vw;
}
.home .key-catch__text {
	position: absolute;
	top: 71vw;
	left: -7vw;
}
.home .key-catch__title {
	position: absolute;
	top: 119vw;
	right: -4vw;
	width: 30vw;
	height: 89vw;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-direction: row-reverse;
}
.home .key-catch__title p {
	width: 9vw;
	height: 82vw;
	font-size: 4.2vw;
	color: #000000;
	font-weight: 600;
}
.home .key-catch__title p:nth-child(2) {
	padding-top: 7vw;
	font-size: 4.9vw;
}
.home .key-catch__title p:nth-child(3) {
	font-size: 4.9vw;
	text-align: right;
}
.home .key-catch__deco {
	position: absolute;
	top: 185vw;
	left: -13vw;
	width: 59vw;
}

@media screen and (min-width: 768px) {
.home .header-box::before {
	height: 1566px;
}
.home #head-key::before {
	width: 1500px;
	height: 1748px;
	background: url(../img/index/key_bg.png) no-repeat bottom center;
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
}
	

.home #key {
	width: 100%;
	margin-left: 0;
}
	
.home .key-catch__text {
	top: 558px;
	left: 67px;
}
.home .key-catch__title {
        top: 947px;
        right: auto;
        width: 254px;
        height: 581px;
        letter-spacing: 5px;
        left: calc(50% + 122px);
}
.home .key-catch__title p {
	width: 45px;
	height: 519px;
	font-size: 24px;
}
.home .key-catch__title p:nth-child(2) {
	padding-top: 43px;
	font-size: 30px;
	margin-right: 31px;
}
.home .key-catch__title p:nth-child(3) {
	padding-top: 40px;
	font-size: 30px;
	margin-right: 27px;
}
.home .key-catch__deco {
	width: 566px;
	top: 1094px;
	left: -39px;
}
}
#sec1 {
	position: relative;
	text-align: center;
	color: #000;
	padding-top: 40vw;
}
#sec1 h2 {
	line-height: 1;
	font-size: 18.8vw;
	text-align: center;
	margin-bottom: 10vw;
}
#sec1 h3 {
	text-align: center;
	line-height: 2.2;
	font-size: 5.9vw;
	margin-bottom: 7vw;
	font-weight: 700;
}
#sec1 h3 span {
	position: relative;
}
#sec1 h3 span::before {
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 50%;
	position: absolute;
	top: -1vw;
	left: 50%;
	transform: translateX(-50%);
	background: #074384;
}
#sec1 .text {
	margin-bottom: 0;
	text-align: left;
}
#sec1 .deco-1 {
	position: absolute;
	width: 40vw;
	top: -20vw;
	left: -18vw;
}
#sec1 .deco-2 {
	position: absolute;
	width: 39vw;
	top: 15vw;
	left: -18vw;
}
#sec1 .deco-3 {
	position: absolute;
	width: 27vw;
	top: -39vw;
	right: -12vw;
}
#sec1 .deco-4 {
	position: absolute;
	width: 39vw;
	top: 10vw;
	right: -24vw;
}
#sec1 .set2 {
	padding-top: 0;
	height: 90vw;
	position: relative;
}
#sec1 .set2 .ob-img {
	height: 100%;
}
#sec1 .set2 .ob-img img {
	object-position: 50% 50%;
}
#sec1 .scroll__image {
	margin-bottom: 0;
}
#sec1 .scroll__image_o {
	width: 100%;
	height: 100%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-webkit-clip-path: polygon(20% 20%, 80% 20%, 80% 75%, 20% 75%);
	clip-path: polygon(20% 20%, 80% 20%, 80% 75%, 20% 75%);
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
}
#sec1 .scroll__image_o img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media screen and (min-width: 768px) {
#sec1 {
	margin-bottom: -1px;
	padding-top: 21px;
}
#sec1 h2 {
	font-size: 118px;
	margin-bottom: 47px;
}
#sec1 h3 {
	line-height: 75px;
	font-size: 30px;
	margin-bottom: 60px;
	letter-spacing: 6px;
}
#sec1 h3 span {
	margin-bottom: 0;
}
#sec1 h3 span::before {
	width: 10px;
	height: 10px;
	top: -10px;
}
#sec1 .text {
	line-height: 35px;
	margin-bottom: 0;
	text-align: center;
}
#sec1 .deco-1 {
	width: 445px;
	top: 44px;
	left: -137px;
}
#sec1 .deco-2 {
	width: 515px;
	top: 506px;
	left: -229px;
}
#sec1 .deco-3 {
	width: 262px;
	top: -169px;
	right: -100px;
}
#sec1 .deco-4 {
	width: 523px;
	top: 340px;
	right: -242px;
}
#sec1 .set2 {
	padding-top: 0;
	height: 100vh;
	position: relative;
}
#sec1 .set2 .ob-img {
	height: 100%;
}
#sec1 .set2 .ob-img img {
	object-position: 50% 50%;
}
#sec1 .scroll__image {
	margin-bottom: 0;
}
#sec1 .scroll__image_o {
	width: 100%;
	height: 100%;
	-webkit-clip-path: polygon(34% 14%, 66% 14%, 66% 70%, 34% 70%);
	clip-path: polygon(34% 14%, 66% 14%, 66% 70%, 34% 70%);
}
#sec1 .scroll__image_o img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
}
#sec2 {
/*
	background: url(../img/index/sec2_bg01_sp.jpg) no-repeat 50% 50%;
	background-size: cover;
*/
margin-top: -1px;
	position: relative;
}
#sec2 .bg-parallax {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
#sec2::before, #sec2::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
}
#sec2::before {
	background: url(../img/shared/bg03.jpg);
	z-index: 1;
	width: 100vw;
	height: 35vw;
}
#sec2::after {
	background: rgba(0, 0, 0, 0.5);
	width: 50%;
	bottom: 0;
	display: none;
}
#sec2 .two-col {
	position: relative;
	z-index: 2;
}
#sec2 .stick {
	z-index: 2;
	padding-top: 9vw;
	position: relative;
}
#sec2 .stick h2 {
}
#sec2 .col-right {
	position: relative;
	padding: 15vw 6vw 20vw;
}
#sec2 .col-right .col-right__inside {
	max-width: 1200px;
	margin: 0 auto;
}
#sec2 .col-right .title {
	position: relative;
	z-index: 3;
	margin-bottom: 5vw;
}
#sec2 .col-right .title h2, #sec2 .col-right .title h3 {
	position: relative;
	font-weight: 600;
	display: inline-block;
	padding: 0 7vw 0 3vw;
	letter-spacing: 0.2em;
}
#sec2 .col-right .title h2::after, #sec2 .col-right .title h3::after {
	content: "";
	position: absolute;
	left: 0;
	height: 10.5vw;
	z-index: -1;
}
#sec2 .col-right .title h2 {
	font-size: 6.3vw;
	color: #fff;
	margin-bottom: 4vw;
}
#sec2 .col-right .title h2::after {
	background: #00336a;
	width: 100%;
	top: -1vw;
}
#sec2 .col-right .title h3 {
	font-size: 7.2vw;
	color: #205ea2;
}
#sec2 .col-right .title h3::after {
	background: #fff;
	width: 100%;
	top: 0.5vw;
}
#sec2 .col-right .bnr__style {
	position: relative;
	margin: 0 auto;
}
#sec2 .col-right .text {
	position: relative;
	z-index: 3;
	margin-bottom: 14vw;
}
#sec2 .col-right .photo__group {
	position: relative;
	margin-bottom: 26vw;
}
#sec2 .col-right .photo__group .photo-1 {
	width: 55vw;
	height: 65vw;
	margin-left: auto;
	margin-bottom: -9vw;
}
#sec2 .col-right .photo__group .photo-2 {
	width: 55vw;
	height: 65vw;
}
#sec2 .col-right .photo__group .ttl {
	width: 47vw;
	position: absolute;
	top: 100vw;
	right: 1vw;
	z-index: 2;
}

@media screen and (min-width: 768px) {
#sec2 {
	margin-top: 0;
/*
	background: url(../img/index/sec2_bg01.jpg) no-repeat center;
	background-size: cover;
*/
}
#sec2::before {
      max-width: 320px;
        bottom: 0;
        height: auto;
        width: 22vw;
}
#sec2::after {

	display: block;
}
#sec2 .two-col {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 2;
}
	
	#sec2 .stick {
		padding-top: 0;
	}
#sec2 .stick h2 {
	width: 207px;
}
#sec2 .col-right {
	width: calc(100% - 207px);
	margin-left: auto;
	padding: 257px 0 119px;
}
#sec2 .col-right .col-right__inside {
	position: relative;
	}
#sec2 .col-right .title {
	position: absolute;
        top: -18px;
        left: calc(50% - 320px);
	width: 141px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-direction: row-reverse;
	gap: 35px;
	z-index: 3;
	margin-bottom: 0;
}
#sec2 .col-right .title h2, #sec2 .col-right .title h3 {
	width: 50px;
	padding: 0;
}
#sec2 .col-right .title h2::after, #sec2 .col-right .title h3::after {
	position: absolute;
	top: -14px;
	left: 13px;
	height: 102%;
	z-index: -1;
}
#sec2 .col-right .title h2 {
	font-size: 36px;
	width: 50px;
	height: 423px;
	margin-bottom: 0;
}
#sec2 .col-right .title h2::after {
	width: 65px;
}
#sec2 .col-right .title h3 {
	font-size: 48px;
	width: 50px;
	height: 200px;
	margin-right: 13px;
}
#sec2 .col-right .title h3::after {

width: 59px;

height: 248px;
	left: 10px;
}
#sec2 .col-right .bnr__style {
	position: absolute;
        top: 633px;
        left: calc(50% - 223px);
}
#sec2 .col-right .text {
width: 310px;
        height: 327px;
        position: absolute;
        top: 344px;
        left: calc(50% - 576px);
        margin-bottom: 0;
}
#sec2 .col-right .photo__group {
	width: 622px;
	margin-left: auto;
	margin-bottom: 0;
}
#sec2 .col-right .photo__group .photo-1 {
	width: 422px;
	height: 496px;
	margin-left: auto;
	margin-bottom: 190px;
}
#sec2 .col-right .photo__group .photo-2 {
	width: 418px;
	height: 470px;
}
#sec2 .col-right .photo__group .ttl {
	width: 369px;
	top: 445px;
	right: 54px;
}
}
#sec3 {
/*
	background: url(../img/index/sec3_bg01_sp.jpg) no-repeat center;
	background-size: cover;
*/
	position: relative;
}

#sec3 .bg-parallax {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

#sec3::before, #sec3::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
}
#sec3::before {
	background: url(../img/shared/bg02.jpg);
	z-index: 1;
	width: 100vw;
	height: 34vw;
}
#sec3::after {
	background: rgba(0, 0, 0, 0.5);
	width: 50%;
	bottom: 0;
	display: none;
}
#sec3 .two-col {
	position: relative;
	z-index: 2;
}
#sec3 .stick h2 {padding-top: 13vw;}
#sec3 .col-right {
	position: relative;
	padding: 15vw 6vw;
}
#sec3 .col-right .col-right__inside {
	max-width: 1200px;
	margin: 0 auto;
}
#sec3 .col-right .title {
	position: relative;
	z-index: 2;
	margin-bottom: 5vw;
}
#sec3 .col-right .title h2, #sec3 .col-right .title h3 {
	position: relative;
	font-weight: 600;
	font-size: 6.3vw;
	display: block;
	padding: 0 7vw 0 3vw;
	width: 68vw;
	letter-spacing: 0.2em;
}
#sec3 .col-right .title h2 span, #sec3 .col-right .title h3 span {
	position: relative;
	display: block;
	margin-top: 2vw;
}
#sec3 .col-right .title h2 span::after, #sec3 .col-right .title h3 span::after {
	content: "";
	position: absolute;
	top: 0;
	left: -3vw;
	bottom: 0;
	z-index: -1;
	height: 10vw;
	width: 100%;
}
#sec3 .col-right .title h2 {
	color: #fff;
	margin-bottom: 0;
}
#sec3 .col-right .title h2 span::after {
	background: #453223;
}
#sec3 .col-right .title h3 {
	color: #453223;
}
#sec3 .col-right .title h3 span::after {
	background: #fff;
}
#sec3 .col-right .bnr__style {
	position: relative;
	z-index: 2;
	margin: 0 auto;
}
#sec3 .col-right .text {margin-bottom: 9vw;}
#sec3 .col-right .photo__group {
	position: relative;
	margin-bottom: 33vw;
}
#sec3 .col-right .photo__group .photo-1 {
	width: 65vw;
	height: 50vw;
	margin-bottom: -4vw;
	margin-left: auto;
}
#sec3 .col-right .photo__group .photo-2 {
	width: 50vw;
	height: 50vw;
}
#sec3 .col-right .photo__group .ttl {
	width: 57vw;
	position: absolute;
	top: 73vw;
	right: -5vw;
	z-index: 2;
}

@media screen and (min-width: 768px) {
#sec3 {
/*
	background: url(../img/index/sec3_bg01.jpg) no-repeat center;
	background-size: cover;
*/
	position: relative;
}
	
	
#sec3::before {
        max-width: 320px;
        bottom: 0;
        height: auto;
        width: 22vw;
}
#sec3::after {
	display: block;
}
#sec3 .two-col {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}
#sec3 .stick h2 {
	width: 207px;
	padding-top: 6px;
}
#sec3 .col-right {
	position: relative;
	width: calc(100% - 207px);
	margin-left: auto;
	padding: 143px 0 299px;
}
#sec3 .col-right .col-right__inside {
	position: relative;
}
#sec3 .col-right .title {
	position: absolute;
        top: 189px;
        left: calc(50% - 586px);
	z-index: 2;
	margin-bottom: 0;
}
#sec3 .col-right .title h2, #sec3 .col-right .title h3 {
	position: relative;
	font-weight: 600;
	font-size: 36px;
	padding: 0;
	width: auto;
}
	
	#sec3 .col-right .title h2 span, #sec3 .col-right .title h3 span {

margin-top: 0;

display: inline;
}
#sec3 .col-right .title h2 span::after, #sec3 .col-right .title h3 span::after {
	left: -0;
	bottom: 0;
	z-index: -1;
	height: 50px;
	width: 100%;
}
	
	
#sec3 .col-right .title h2 span::after, #sec3 .col-right .title h3 span::after {
	top: 0;
	left: 0;
	bottom: 0;
	right: -50px;
	z-index: -1;
}
#sec3 .col-right .title h2 {
	margin-bottom: 52px;
	letter-spacing: 10px;
	line-height: 1;
}
#sec3 .col-right .title h2 span::after {
	height: 60px;
	top: -16px;
	left: -13px;
	right: -37px;
	width: auto;
}
#sec3 .col-right .title h3 span::after {
	height: 57px;
	top: -11px;
	left: -12px;
	right: -36px;
	width: auto;
}
#sec3 .col-right .bnr__style {
	position: absolute;

	
	
        top: 735px;
        left: calc(50% - 316px);
	
}
#sec3 .col-right .text {
	width: 360px;
	position: absolute;
top: 403px;
        left: calc(50% - 404px);
	margin-bottom: 0;
	z-index: 2;
}
#sec3 .col-right .photo__group {
	width: 745px;
	margin-left: auto;
	margin-bottom: 0;
}
#sec3 .col-right .photo__group .photo-1 {
	width: 595px;
	height: 451px;
	margin-left: auto;
	margin-bottom: 129px;
	margin-right: -20px;
}
#sec3 .col-right .photo__group .photo-2 {
	width: 435px;
	height: 510px;
}
#sec3 .col-right .photo__group .ttl {
	width: 380px;
	position: absolute;
	top: 843px;
	right: 8px;
}
}
#sec4 {
	margin-bottom: 0;
}
#sec4 .set1 {
	height: 90vw;
	position: relative;
	z-index: 3;
	min-height: auto;
}
#sec4 .set1 h3 {
	color: #fff;
	font-size: 18.2vw;
	line-height: 1;
	position: absolute;
	bottom: -28vw;
	left: 0;
	z-index: 2;
}
#sec4 .set2 {
	position: relative;
	padding-top: 15vw;
}
#sec4 .set2::before {
	content: "";
	background: url(../img/index/sec4_bg_sp.png) no-repeat bottom center;
	-webkit-background-size: 100% 100%;
	background-size: 100% 100%;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: -40vw;
}
#sec4 .set2 .box {
	position: relative;
	z-index: 2;
	padding-top: 20vw;
	padding-bottom: 22vw;
}
#sec4 .set2 .box::before {
	content: "";
	background: url(../img/index/sec4_deco01.png) no-repeat;
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
	width: 29vw;
	height: 658px;
	position: absolute;
	top: 88vw;
	left: -15vw;
}
#sec4 .set2 .box::after {
	content: "";
	background: url(../img/index/sec4_img_sp.png) no-repeat center;
	background-size: 100% 100%;
	position: absolute;
	top: 0;
	left: -10vw;
	right: -10vw;
	bottom: 0;
	z-index: -1;
}
#sec4 .set2 .box h2 {
	text-align: center;
	margin: 0 auto 8vw;
	width: 60vw;
}
#sec4 .set2 .box .title {
	line-height: 1;
	margin-bottom: 10vw;
	text-align: center;
}
#sec4 .set2 .box .title h3 {
    font-size: 4.6vw;
    font-weight: 600;
    position: relative;
    z-index: 2;
    margin-bottom: -1vw;
}
#sec4 .set2 .box .title h3 span {
	position: relative;
}
#sec4 .set2 .box .title h3 span::before {
	content: "";
	width: 4px;
	height: 4px;
	border-radius: 50%;
	position: absolute;
	top: -2vw;
	left: 50%;
	transform: translateX(-50%);
	background: #fff;
}
#sec4 .set2 .box .title h5,  #sec4 .set2 .box .title h4 {
	font-size: 8vw;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	width: 60vw;
	padding-top: 2vw;
	letter-spacing: 0.1em;
	font-weight: 600;
}
#sec4 .set2 .box .title h5::after,  #sec4 .set2 .box .title h4::after {
	content: "";
	background: #084787;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
#sec4 .set2 .box .title h5 span,  #sec4 .set2 .box .title h4 span {
	position: relative;
	z-index: 3;
}
#sec4 .set2 .box .title h4 {
	margin-bottom: 3vw;
}
#sec4 .set2 .box .title h4::after {
	width: 100%;
}
#sec4 .set2 .box .title h5::after {
	width: 100%;
}
#sec4 .set2 .box .ttl {
	position: relative;
	z-index: 2;
	width: 41vw;
	height: 44vw;
	border: 1px solid #fff;
	margin: 0 auto 8vw;
}
#sec4 .set2 .box .ttl p {
	font-size: 4.5vw;
	line-height: 2.5;
	width: 33vw;
	margin: 0 auto;
	height: 39vw;
	padding-top: 5vw;
	letter-spacing: 0.1em;
}
#sec4 .set2 .box .ttl p .int {
	line-height: 1;
	position: relative;
}
#sec4 .set2 .box .ttl p .int::after {
	content: "";
	background: #084787;
	width: 7vw;
	height: 7vw;
	border-radius: 50%;
	position: absolute;
	top: -1vw;
	left: -1vw;
	z-index: -1;
}
#sec4 .set2 .box .text {margin-bottom: 10vw;}
#sec4 .set2 .box .bnr__style {
	position: relative;
	margin: 0 auto;
}

@media screen and (min-width: 768px) {
#sec4 {
	margin-bottom: 170px;
}
#sec4 .set1 {
	height: 598px;
}
#sec4 .set1 h3 {
	font-size: 116px;
	line-height: 108px;
	bottom: -171px;
	left: 0;
}
#sec4 .set2 {
	margin-bottom: 0;
	padding-top: 100px;
}
#sec4 .set2::before {
	background: url(../img/index/sec4_bg.png) no-repeat bottom center;
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
	height: 1249px;
}
#sec4 .set2 .box {
	padding-top: 113px;
	padding-bottom: 155px;
}
#sec4 .set2 .box::before {
	width: 347px;
	height: 658px;
	bottom: -74px;
	left: -80px;
	top: auto;
}
#sec4 .set2 .box::after {
	background: url(../img/index/sec4_img.png) no-repeat center;
	background-size: 100% 100%;
	position: absolute;
	top: 0;
	left: -20px;
	right: -20px;
	bottom: 0;
}
#sec4 .set2 .box h2 {
	width: 511px;
	margin: 0 auto 42px;
}
#sec4 .set2 .box .title {
	margin-bottom: 46px;
}
#sec4 .set2 .box .title h3 {
	font-size: 25px;
	margin-bottom: 0;
}
#sec4 .set2 .box .title h3 span::before {
	width: 5px;
	height: 5px;
	top: -5px;
}
#sec4 .set2 .box .title h5,  #sec4 .set2 .box .title h4 {
	font-size: 45px;
	width: 390px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 11px;
	letter-spacing: 7px;
	line-height: 1;
}
#sec4 .set2 .box .title h4 {
	margin-bottom: 20px;
}
#sec4 .set2 .box .title h4::after {
	top: -8px;
	height: 72px;
}
#sec4 .set2 .box .title h5::after {
	top: -8px;
	height: 70px;
}
#sec4 .set2 .box .ttl {
	position: absolute;
	top: 87px;
	right: 56px;
	width: 172px;
	height: 225px;
	margin: 0;
}
#sec4 .set2 .box .ttl p {
	font-size: 26px;
	line-height: 50px;
	width: 158px;
	height: 218px;
	padding-top: 25px;
	letter-spacing: 0px;
}
#sec4 .set2 .box .ttl p .int::after {
	width: 45px;
	height: 45px;
	top: -8px;
	left: -8px;
}
#sec4 .set2 .box .text {
	width: 468px;
	margin: 0 auto;
}
#sec4 .set2 .box .bnr__style {
	position: absolute;
	top: 600px;
	right: 122px;
}
}
#sec5 {
	color: #000;
	padding: 45vw 0 20vw;
}
#sec5 .set1 {
	margin-bottom: 10vw;
	text-align: center;
}
#sec5 .set1 .title {
	line-height: 1;
	font-size: 5.9vw;
	margin-bottom: 10vw;
	letter-spacing: 0.3em;
}
#sec5 .set1 .title h2 {
	font-weight: 600;
}
#sec5 .set1 .title span {
	display: block;
	font-size: 18.8vw;
	margin-bottom: 3vw;
	letter-spacing: 0.1em
}
#sec5 .set1 .logo-s {
	width: 51vw;
	box-shadow: 7.713px 9.193px 9px 0px rgba(0, 0, 0, 0.29);
	margin: 0 auto 7vw;
}
#sec5 .set1 .note {
	font-size: 12px;
	line-height: 25px;
}
#sec5 .set2 {
	padding-top: 0px;
	margin-bottom: 10vw;
}
#sec5 .set2 .set2__wrap {
	max-width: 1000px;
	margin: 0 auto;
	position: relative;
}
#sec5 .set2 .left {width: 270px;margin: 0 auto;}
#sec5 .set2 .left .headerOpen-tel {
	margin-bottom: 7vw;
}
#sec5 .set2 .left .headerOpen-tel dl {
	line-height: 1;
	padding: 15px 0 10px 49px;
	margin-bottom: 12px;
	border: 1px solid #000;
}
#sec5 .set2 .left .headerOpen-tel dl dt {
	font-size: 14px;
}
#sec5 .set2 .left .headerOpen-tel dl dd {
	font-size: 33px;
}
#sec5 .set2 .left .headerOpen-tel dl dd span {
	letter-spacing: 5px;
}
#sec5 .set2 .left .headerOpen-tel dl dd span::before {
	filter: brightness(0) invert(0);
}
#sec5 .set2 .left .bnr__shared a {
	color: #fff;
}
#sec5 .set2 .left .sns__c {
	width: 143px;
	margin: 0 auto;
}
#sec5 .set2 .right {
	padding-top: 7vw;
}
#sec5 .set2 .v__card {
	margin-bottom: 10vw;
}
#sec5 .set2 .v__card dl {
	padding: 15px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	font-size: 15px;
	line-height: 25px;
	position: relative;
	letter-spacing: 0.02em;
}
#sec5 .set2 .v__card dl::after {
	content: "";
	height: 1px;
	background: #786d5e;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}
#sec5 .set2 .v__card dl dt {
	width: 26.2%;
}
#sec5 .set2 .v__card dl dd {
	width: 69.8%;
}
#sec5 .set2 .v__info {
	position: relative;
	margin: 0;
}
#sec5 .set2 .v__info dl {
	line-height: 25px;
	padding: 38px 12px 26px;
	letter-spacing: 1.3px;
	font-size: 13px;
	border: 1px solid #000000;
	text-align: center;
	padding-top: 30px;
	padding-bottom: 30px;
}
#sec5 .set2 .v__info dl dt {
	text-align: center;
	font-size: 18px;
	margin-bottom: 18px;
	line-height: 1;
	font-weight: 600;
}
#sec5 .set2 .v__info .v__photo {
	position: relative;
	margin-top: 10vw;
}
#sec5 .set2 .v__info .v__photo .ob-img {
	height: 300px;
}
#sec5 .set2 .v__info .v__photo .v__photo-txt {
	font-size: 17px;
	letter-spacing: 1px;
	line-height: 1;
	width: 33px;
	position: absolute;
	top: 25px;
	bottom: 25px;
	right: 10px;
	background: #084787;
}
#sec5 .set2 .v__info .v__photo .v__photo-txt::after {
	content: "";
	background: url(../img/index/line.png) no-repeat;
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
	height: 255px;
	position: absolute;
	right: 79%;
	width: 33px;
	bottom: -6px;
}
#sec5 .set2 .v__info .v__photo .v__photo-txt span {
	position: relative;
	z-index: 2;
	color: #fff;
	display: block;
	line-height: 35px;
	text-align: center;
}
#sec5 .set3 {
	margin-bottom: 20vw;
}
#sec5 .set3 h3 {
	font-size: 6vw;
	font-weight: 600;
	line-height: 1;
	margin-bottom: 9vw;
}
#sec5 .set3 .ggmap {
	height: 90vw;
	margin-bottom: 8vw;
}
#sec5 .set3 .ggmap iframe {
	width: 100%;
	height: 100%;
}
#sec5 .set3 .links {
	width: 280px;
	margin: 0 auto;
}
#sec5 .set3 .links .bnr__style-2 {
	margin-bottom: 10px;
}
#sec5 .set3 .links .link__a {
	text-decoration-line: underline;
	text-underline-offset: 6px;
	font-size: 13px;
}
#sec5 .set3 .links .link__a:hover {
	text-decoration: none;
}
#sec5 .set4 {
	margin-bottom: 0;
}
#sec5 .set4 .title-2 {margin-bottom: 8vw;text-align: center;}
#sec5 .set4 .title-2 h3 {
	font-size: 18.8vw;
	line-height: 1;
}
#sec5 .set4 .title-2 h3 .txt-latin {
	letter-spacing: 0;
	line-height: 1;
}
#sec5 .set4 .title-2 p {
	font-size: 5.4vw;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.2em;
}
#sec5 .set4 .box {
}
#sec5 .set4 #feed {
	margin-bottom: 10vw;
}
#sec5 .set4 #feed dl {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	line-height: 1;
	border-bottom: 1px solid #171410;
	padding: 10px 0;
}
#sec5 .set4 #feed dl a:hover {
	text-decoration: underline;
}
#sec5 .set4 #feed dl dt {
	margin-right: 20px;
}
#sec5 .set4 .bnr__style-2 {
	width: 167px;
	margin: 0 auto;
}
#sec5 .set4 .bnr__style-2 a {
	padding: 8px 0 10px;
}

@media screen and (min-width: 768px) {
#sec5 {
	padding: 141px 0 146px;
}
#sec5 .set1 {
	margin-bottom: 72px;
	text-align: center;
}
#sec5 .set1 .title {
	font-size: 30px;
	margin-bottom: 80px;
}
#sec5 .set1 .title span {
	font-size: 118px;
	letter-spacing: 0;
	margin-bottom: 0px;
}
#sec5 .set1 .logo-s {
	width: 278px;
	margin: 0 auto 23px;
}
#sec5 .set1 .note {
	font-size: 12px;
	line-height: 25px;
}
#sec5 .set2 {
	padding-top: 0px;
	margin-bottom: 145px;
}
#sec5 .set2 .set2__wrap {
	margin-bottom: 0;
}
#sec5 .set2 .left {
	margin-left: 45px;
	width: 370px;
}
#sec5 .set2 .left .headerOpen-tel {
	margin-bottom: 34px;
}
#sec5 .set2 .left .headerOpen-tel dl {
	padding: 15px 0 11px 92px;
	margin-bottom: 9px;
	background: #fff;
	border-color: #fff;
}
#sec5 .set2 .left .headerOpen-tel dl dt {
	font-size: 16px;
	margin-bottom: 14px;
}
#sec5 .set2 .left .headerOpen-tel dl dd {
	font-size: 34px;
}
#sec5 .set2 .left .headerOpen-tel dl dd span {
	letter-spacing: 7px;
}
#sec5 .set2 .left .bnr__shared a {
	color: #fff;
	padding: 11px 0;
}
#sec5 .set2 .left .bnr__shared a span::after {
	right: -35px;
}
#sec5 .set2 .left .sns__c {
	width: 143px;
	margin: 0 auto;
}
#sec5 .set2 .right {
	margin-right: -104px;
	width: 604px;
	padding-top: 12px;
	position: relative;
}
#sec5 .set2 .v__card {
	margin-bottom: 0;
}
#sec5 .set2 .v__card dl {
	padding: 14px 0 14px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	font-size: 15px;
	line-height: 27px;
}
#sec5 .set2 .v__card dl::after {
	bottom: 0;
	left: 0;
	right: 9%;
}
#sec5 .set2 .v__card dl dt {
	width: 24.2%;
}
#sec5 .set2 .v__card dl dd {
	width: 75.8%;
}
#sec5 .set2 .v__info {
	width: 370px;
	position: absolute;
	right: 114%;
	bottom: -35px;
	margin: 0;
	padding-top: 340px;
}
#sec5 .set2 .v__info dl {
	line-height: 25px;
	letter-spacing: 1.3px;
	font-size: 13px;
	padding-top: 27px;
	padding-bottom: 30px;
}
#sec5 .set2 .v__info dl dt {
	font-size: 18px;
	margin-bottom: 16px;
}
#sec5 .set2 .v__info .v__photo {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin-top: 0;
}
#sec5 .set2 .v__info .v__photo .ob-img {
	height: 300px;
}
#sec5 .set2 .v__info .v__photo .v__photo-txt {
	font-size: 17px;
	letter-spacing: 1px;
	width: 33px;
	position: absolute;
	top: 25px;
	bottom: 25px;
	right: 10px;
	background: #000;
}
#sec5 .set2 .v__info .v__photo .v__photo-txt::after {
	height: 255px;
	position: absolute;
	right: 21px;
	width: 33px;
	bottom: -13px;
}
#sec5 .set2 .v__info .v__photo .v__photo-txt span {
	color: #fff;
	line-height: 35px;
	text-align: center;
}
#sec5 .set3 {
	margin-bottom: 80px;
}
#sec5 .set3 h3 {
	font-size: 33px;
	margin-bottom: 34px;
	letter-spacing: 2px;
}
#sec5 .set3 .ggmap {
	height: 440px;
	margin-bottom: 22px;
}
#sec5 .set3 .links {
	width: 275px;
	margin-left: auto;
	margin-right: 69px;
	text-align: right;
}
#sec5 .set3 .links .bnr__style-2 {
	margin-bottom: 6px;
}
#sec5 .set4 {
	margin-bottom: 0;
}
#sec5 .set4 .title-2 {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	margin-right: 85px;
	margin-bottom: 0;
	margin-left: 10px;
}
#sec5 .set4 .title-2 h3 {
	font-size: 118px;
	width: 85px;
	height: 256px;
}
#sec5 .set4 .title-2 h3 .txt-latin {
	letter-spacing: 0;
}
#sec5 .set4 .title-2 p {
	width: 30px;
	height: 200px;
	font-size: 25px;
	text-align: left;
	padding-top: 28px;
	letter-spacing: 8px;
}
#sec5 .set4 .box {
	width: 651px;
	padding-top: 18px;
}
#sec5 .set4 #feed {
	margin-bottom: 29px;
}
#sec5 .set4 #feed dl {
	padding: 16px 0;
}
#sec5 .set4 #feed dl a:hover {
	text-decoration: underline;
}
#sec5 .set4 #feed dl dt {
	margin-right: 20px;
}
#sec5 .set4 .bnr__style-2 {
	width: 167px;
	margin: 0;
}
#sec5 .set4 .bnr__style-2 a {
	padding: 8px 0 11px;
	line-height: 1;
}
#sec5 .set4 .bnr__style-2 a span::after {
		height: 11px;
	}
}
.photo-content {
	height: 60vw;
}
.photo-content img {
	object-position: 50% 50%;
}

@media screen and (min-width: 768px) {
.photo-content {
	height: 248px;
}
.photo-content img {
	object-position: 50% 50%;
}
}



@media screen and (min-width: 767px) and (max-width: 1299px) {
    .home #key {
        width: 112%;
        margin-left: -6%;
    }
	#sec2 .col-right .title {
		left: calc(50% - 224px);
	}
	#sec2 .col-right .text {
		left: calc(50% - 496px);
	}
	#sec3 .col-right .title {
		left: calc(50% - 486px);
	}
	#sec5 .set4 .title-2 {
		margin-left: 30px;
	}
}




@media screen and (min-width: 767px) and (max-height: 800px) {
	#sec2 .stick h2 {
		width: 160px;
	}
	#sec3 .stick h2 {
		width: 170px;
	}
}



@media only screen
and (min-device-width: 1024px)
and (max-device-width: 1366px)
and (-webkit-min-device-pixel-ratio: 2) {
	#sec1 .set2 {
		height: 600px;
	}
	.home .key-catch__title {
		left: calc(50% + 200px);
	}
}


@media only screen
and (min-device-width: 768px)
and (max-device-width: 1024px)
and (orientation: portrait)
and (-webkit-min-device-pixel-ratio: 2) {
	#sec1 .set2 {
		height: 600px;
	}
	.home .key-catch__title {
		left: calc(50% + 200px);
	}
}



