﻿.top_slide_box{
	width: 99vw;
	height: 700px;
	position: relative;
	margin-bottom: 100px;
	margin-left: calc(50% - 50vw);
	overflow: hidden;
}

.swiper-slide{
	width: 100%;
	height: 700px;
	overflow: hidden;
}
.swiper-slide img{
	width: 100%;
	height: 700px;
	object-fit: cover;
	overflow-x: hidden;
}

.top_area{
	position: absolute;
	text-align: center;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
	z-index: 5;
}

.top_area_logo{
	width: 96px;
	height: 166px;
	margin: 0 auto 40px;
}
.top_area_logo img{
	width: 96px;
	height: 166px;
}

.top_area_midashi{
	width: 100%;
	font-size: 60px;
	font-family: 'Oswald', sans-serif;
	font-weight: 500;
	color: #fff;
	line-height: 60px;
	margin-bottom: 20px;
}
.top_area_txt{
	width: 100%;
	font-size: 24px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	color: #fff;
	line-height: 32px;
	margin-bottom: 30px;
}

.top_area_btn a{
	height: 30px;
	margin: 0 auto;
	padding: 15px 20px 35px;
	font-family: 'Oswald', sans-serif;
	background-color: #fff;
	text-align: center;
	font-size: 30px;
	display: inline-block;
}
.top_area_btn a:hover{
	text-decoration: none;
}

.top_scroll{
	width: 46px;
	height: 33px;
	position: absolute;
	bottom: 8%;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	z-index: 5;
}
.top_scroll img{
	width: 46px;
	height: 33px;
}


/****SPACE CREATE****/
.content_01{
	width: 100%;
	display: inline-block;
	margin-bottom: 50px;
}

.content_02{
	width: 100%;
	display: inline-block;
	margin-bottom: 150px;
}

.content_03{
	width: 100%;
	display: inline-block;
	margin-bottom: 50px;
}

.content_04{
	width: 100%;
	display: inline-block;
	margin-bottom: 20px;
}

.content_en{
	width: 160px;
	height: 250px;
	float: left;
	margin: 0 25px 0 0;
}

.content_txt01_area{
	width: 510px;
	float: left;
}

.content_txt01_midashi{
	width: 510px;
	font-size: 66px;
	line-height: 66px;
	font-family: 'Oswald', sans-serif;
	font-weight: 600;
	margin: 40px 0 40px;
}
.content_txt01_txt{
	width: 510px;
	font-size: 18px;
	line-height: 32px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}

.content_txt02_area{
	width: 430px;
	margin: 0 20px 0 0;
	padding-bottom: 40px;
	float: left;
}

.content_txt02_midashi{
	width: 430px;
	font-size: 40px;
	line-height: 40px;
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	margin: 0 0 20px;
}
.content_txt02_txt01{
	width: 430px;
	font-size: 26px;
	line-height: 38px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	margin-bottom: 30px;
}
.content_txt02_txt02{
	width: 430px;
	font-size: 18px;
	line-height: 24px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	margin-bottom: 40px;
}
.content_txt02_txt03{
	width: 430px;
	font-size: 16px;
	line-height: 22px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}

.content_img_area{
	width: 630px;
	height: 371px;
	margin: 0;
	float: left;
	position: relative;
}
.content_img_area img{
	width: 630px;
	height: 371px;
	z-index: 1;
}
.content_img_no{
	position: absolute;
	bottom: -30px;
	right: 10px;
	font-size: 100px;
	line-height: 100px;
	font-family: 'Oswald', sans-serif;
	color: #fff;
	z-index: 5;
}

.content_txt03_area{
	width: 430px;
	padding-bottom: 40px;
	float: left;
}

.content_txt03_midashi{
	width: 430px;
	font-size: 40px;
	line-height: 40px;
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	margin: 0 0 20px;
}
.content_txt03_txt01{
	width: 430px;
	font-size: 26px;
	line-height: 38px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	margin-bottom: 30px;
}
.content_txt03_txt02{
	width: 430px;
	font-size: 18px;
	line-height: 24px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	margin-bottom: 40px;
}
.content_txt03_txt03{
	width: 430px;
	font-size: 16px;
	line-height: 22px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}

.content_img_area02{
	width: 630px;
	height: 371px;
	margin: 0 20px 0 0;
	float: left;
	position: relative;
}
.content_img_area02 img{
	width: 630px;
	height: 371px;
	z-index: 1;
}
.content_img_no02{
	position: absolute;
	bottom: -30px;
	right: 10px;
	font-size: 100px;
	line-height: 100px;
	font-family: 'Oswald', sans-serif;
	color: #fff;
	z-index: 5;
}

.btn01 {
	width: 258px;
    text-align: center;
    float: right;
    margin: 180px 0 0;
}
.btn01 a {
    position: relative; 
    display: block;
    color: #fff;
    transition: .6s ease;
    text-decoration: none;
}
.btn01 a span {
    position: relative;
    z-index: 2;
    font-size: 26px;
    line-height: 26px;
    font-family: 'Oswald', sans-serif;
}
.btn01 a::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    display: block;
    width: 258px;
    height: 100%;
    background: #fff;
    opacity: 0;
    transition: .4s ease; 
    transform: scale(0, 1);
    transform-origin: center left;
}
.btn01 a:hover::before {
    opacity: 1;
    transform: scale(1, 1);
}

/* 背景色と文字色、上下の余白・幅の指定 */
.btn-red {
    width: 258px;
    border: solid #000 1px;
}
.btn-red a {
    background: #000;
    padding: 15px 0;
}
.btn-red a:hover {
    color: #000;
}

.btn02 {
	width: 158px;
    text-align: center;
    float: right;
    margin: 20px 0 0;
}
.btn02 a {
    position: relative; 
    display: block;
    color: #fff;
    transition: .6s ease;
    text-decoration: none;
}
.btn02 a span {
    position: relative;
    z-index: 2;
    font-size: 24px;
    line-height: 24px;
    font-family: 'Oswald', sans-serif;
}
.btn02 a::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    display: block;
    width: 158px;
    height: 100%;
    background: #fff;
    opacity: 0;
    transition: .4s ease; 
    transform: scale(0, 1);
    transform-origin: center left;
}
.btn02 a:hover::before {
    opacity: 1;
    transform: scale(1, 1);
}

/* 背景色と文字色、上下の余白・幅の指定 */
.btn-red02 {
    width: 158px;
    border: solid #000 1px;
}
.btn-red02 a {
    background: #000;
    padding: 8px 0;
}
.btn-red02 a:hover {
    color: #000;
}

.bg_img01{
	width: 99vw;
	height: 450px;
	background-image: url("../img/back01.jpg");
	background-size: cover;
	background-position: center;
	margin-bottom: 150px;
	margin-left: calc(50% - 50vw);
}

/****GALLARY****/
.gall_img{
	width: 1080px;
	height: 877px;
}


/****2023.03.17****/
.recbnr_pc{
	width: 720px;
	height: 200px;
	margin: 0 auto 50px;
}
.recbnr_pc img{
	width: 720px;
	height: 200px;
}


@media screen and (max-width:639px) {
/*　画面サイズが639pxまではここを読み込む　*/

.top_slide_box{
	width: 100vw;
	height: 700px;
	position: relative;
	margin-bottom: 100px;
	margin-left: calc(50% - 50vw);
	overflow: hidden;
}

.swiper-slide{
	width: 100%;
	height: 700px;
	overflow: hidden;
}
.swiper-slide img{
	width: 100%;
	height: 700px;
	object-fit: cover;
	overflow-x: hidden;
}

.top_area_logo{
	width: 58px;
	height: 100px;
	margin: 0 auto 20px;
}
.top_area_logo img{
	width: 58px;
	height: 100px;
}

.top_area_btn a{
	height: 30px;
	margin: 0 auto;
	padding: 15px 20px 36px;
	font-family: 'Oswald', sans-serif;
	background-color: #fff;
	text-align: center;
	font-size: 30px;
	display: inline-block;
}
.top_area_btn a:hover{
	text-decoration: none;
}


/****SPACE CREATE****/
.content_01{
	width: 100%;
	display: inline-block;
	margin-bottom: 50px;
}

.content_02{
	width: 100%;
	display: inline-block;
	margin-bottom: 150px;
}

.content_03{
	width: 100%;
	display: inline-block;
	margin-bottom: 50px;
}

.content_04{
	width: 100%;
	display: inline-block;
	margin-bottom: 20px;
}

.content_en{
	width: 20%;
	height: auto;
	float: left;
	margin: 0 2% 0 0;
}
.content_en img{
	width: 100%;
	height: auto;
}

.content_txt01_area{
	width: 78%;
	float: left;
}

.content_txt01_midashi{
	width: 100%;
	font-size: 32px;
	line-height: 32px;
	font-family: 'Oswald', sans-serif;
	font-weight: 600;
	margin: 0 0 10px;
}
.content_txt01_txt{
	width: 100%;
	font-size: 12px;
	line-height: 32px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}

.content_txt02_area{
	width: 100%;
	margin: 0;
	padding-bottom: 40px;
}

.content_txt02_midashi{
	width: 100%;
	font-size: 40px;
	line-height: 40px;
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	margin: 0 0 10px;
}
.content_txt02_txt01{
	width: 100%;
	font-size: 26px;
	line-height: 38px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	margin-bottom: 10px;
}
.content_txt02_txt02{
	width: 100%;
	font-size: 18px;
	line-height: 24px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	margin-bottom: 20px;
}
.content_txt02_txt03{
	width: 100%;
	font-size: 16px;
	line-height: 22px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}

.content_img_area{
	width: 100%;
	height: auto;
	margin: 0;
	position: relative;
}
.content_img_area img{
	width: 100%;
	height: auto;
	z-index: 1;
}
.content_img_no{
	position: absolute;
	bottom: -30px;
	right: 10px;
	font-size: 100px;
	line-height: 100px;
	font-family: 'Oswald', sans-serif;
	color: #fff;
	z-index: 5;
}

.content_txt03_area{
	width: 430px;
	padding-bottom: 40px;
	float: left;
}

.content_txt03_midashi{
	width: 430px;
	font-size: 40px;
	line-height: 40px;
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	margin: 0 0 20px;
}
.content_txt03_txt01{
	width: 430px;
	font-size: 26px;
	line-height: 38px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	margin-bottom: 30px;
}
.content_txt03_txt02{
	width: 430px;
	font-size: 18px;
	line-height: 24px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	margin-bottom: 40px;
}
.content_txt03_txt03{
	width: 430px;
	font-size: 16px;
	line-height: 22px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}

.content_img_area02{
	width: 630px;
	height: 371px;
	margin: 0 20px 0 0;
	float: left;
	position: relative;
}
.content_img_area02 img{
	width: 630px;
	height: 371px;
	z-index: 1;
}
.content_img_no02{
	position: absolute;
	bottom: -30px;
	right: 10px;
	font-size: 100px;
	line-height: 100px;
	font-family: 'Oswald', sans-serif;
	color: #fff;
	z-index: 5;
}

.btn01 {
	width: 258px;
    text-align: center;
    margin: 0 auto;
}
.btn01 a {
    position: relative; 
    display: block;
    color: #fff;
    transition: .6s ease;
    text-decoration: none;
}
.btn01 a span {
    position: relative;
    z-index: 2;
    font-size: 26px;
    line-height: 26px;
    font-family: 'Oswald', sans-serif;
}
.btn01 a::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    display: block;
    width: 258px;
    height: 100%;
    background: #fff;
    opacity: 0;
    transition: .4s ease; 
    transform: scale(0, 1);
    transform-origin: center left;
}
.btn01 a:hover::before {
    opacity: 1;
    transform: scale(1, 1);
}

/* 背景色と文字色、上下の余白・幅の指定 */
.btn-red {
    width: 258px;
    border: solid #000 1px;
    margin: 0 auto;
}
.btn-red a {
    background: #000;
    padding: 15px 0;
}
.btn-red a:hover {
    color: #000;
}

.btn02 {
	width: 158px;
    text-align: center;
    float: right;
    margin: 20px 0 0;
}
.btn02 a {
    position: relative; 
    display: block;
    color: #fff;
    transition: .6s ease;
    text-decoration: none;
}
.btn02 a span {
    position: relative;
    z-index: 2;
    font-size: 24px;
    line-height: 24px;
    font-family: 'Oswald', sans-serif;
}
.btn02 a::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    display: block;
    width: 158px;
    height: 100%;
    background: #fff;
    opacity: 0;
    transition: .4s ease; 
    transform: scale(0, 1);
    transform-origin: center left;
}
.btn02 a:hover::before {
    opacity: 1;
    transform: scale(1, 1);
}

/* 背景色と文字色、上下の余白・幅の指定 */
.btn-red02 {
    width: 158px;
    border: solid #000 1px;
}
.btn-red02 a {
    background: #000;
    padding: 8px 0;
}
.btn-red02 a:hover {
    color: #000;
}

.bg_img01{
	width: 100vw;
	height: 200px;
	background-image: url("../img/back01.jpg");
	background-size: cover;
	background-position: center;
	margin-bottom: 50px;
	margin-left: calc(50% - 50vw);
}

/****GALLARY****/
.gall_img{
	width: 100%;
	height: auto;
}
.gall_img img{
	width: 100%;
	height: auto;
}

/****2023.03.17****/
.recbnr_pc{
	display: none;
}
.recbnr_pc img{
	display: none;
}

.recbnr_sp{
	width: 100%;
	height: auto;
	margin: 0 auto 50px;
}
.recbnr_sp img{
	width: 100%;
	height: auto;
}

}

@media screen and (min-width: 640px) {
/* 640pxからの幅の場合に適応される */
.recbnr_sp{
	display: none;
}
.recbnr_sp img{
	display: none;
}

}
