@charset "UTF-8";
/* CSS Document */


/* main-img-top */

.main-img-top {
	width: 100%;
	position: relative;
	margin-top: 200px;
}

.main-img-top::after {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
	background-image: url("common/images/text00.svg");
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 100%;
	height: 140px;
	margin-top: -70px;
}

/*slider*/

.slider {
	height: 1430px;
}

.slider > div {
	width: 100%;
	overflow: hidden;
}

.slider > div:nth-child(1) {
	height: 57%;
}

.slider > div:nth-child(2) {
	height: 43%;
}

.slider ul, .slider ul li {
height: 100%;
}

.slider img {
	width: 100%;
height: 100%;
	object-fit: cover;
}

.title-top {
	position: absolute;
left: 0px;
top: 0px;
	width: 100%;
	height: 100%;
	z-index: 10;
	display: flex;
  justify-content: center;
	align-items: center;
	padding-top: 160px;
}

.title-top h3::before {
	content: "";
	position: absolute;
right: 40px;
top: 220px;
	background-image: url("top/images/text01.svg");
background-position: right bottom;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 100%;
	height: 220px;
}

.title-top h3 {
	text-align: right;
	padding-right: 40px;
	width: 100%;
}

.title-top h3 img {
	width: 78%;
	height: auto;
}

.title-top .box01 {
	position: absolute;
left: 0px;
bottom: 70px;
	width: 100%;
	text-align: center;
}

.title-top .box01 h4, .title-top .box01 h5 {
	font-family: 'Zen Old Mincho', serif;
color: #FFF;
line-height: 1.4;
font-weight: normal;
}

.title-top .box01 h4 {
	font-size: 44px;
	margin-bottom: 20px;
}

.title-top .box01 h5 {
	font-size: 30px;
}

/* contents-top */

.contents-top {
}

/* contents01 */

.contents01 {
	background-image: url("top/images/back01.png");
background-position: center center;
background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	padding-top: 100px;
	padding-bottom: 100px;
	text-align: center;
}

.contents01 .box {
	width: 1020px;
}

.contents01 .box p span {
	font-weight: 500;
	color: #ed1e79;
}

.contents01 h3 {
	margin-bottom: 40px;
}

.contents01 .box-in {
	margin-top: 60px;
	display: flex;
  justify-content: center;
}

.contents01 .box-in h6 a {
	margin: 0px 20px;
	background-color: rgba(255,255,255,0.9);
}


/* contents02 */

.contents02 {
	background-image: url("top/images/back02.jpg");
background-position: center center;
background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	padding: 80px 0px 100px;
	text-align: center;
}

.contents02 h3, .contents02 h4, .contents02 h5 {
	font-family: 'Zen Old Mincho', serif;
line-height: 1.4;
font-weight: normal;
}

.contents02 h3 {
	font-size: 34px;
color: #5a83a6;
}

.contents02 h4 {
	font-size: 20px;
color: #000;
	margin: 30px 0px 40px;
}

.contents02 h5 {
	font-size: 22px;
color: #5a83a6;
	line-height: 1.8;
	padding: 30px 40px 40px;
	background-color: #FFF;
	width: 1000px;
	text-align: left;
}

.contents02 h5 span {
	text-align: center;
	display: block;
	padding-top: 30px;
	font-size: 26px;
}

.contents02 p {
	margin: 80px 0px 80px;
}

.contents02 p img {
	height: 600px;
	width: auto;
}


/* contents03 */

.contents03 {
	width: 100%;
	padding: 100px 0px;
	text-align: center;
}

.contents03 h3, .contents01 h3 {
	font-family: 'Cinzel', serif;
	font-size: 65px;
color: #5a83a6;
line-height: 1.2;
font-weight: normal;
	
}

.contents03 .box-in {
	width: 1280px;
	margin: 50px auto 50px;
	display: flex;
  justify-content: flex-start;
	flex-wrap: wrap;
}

.contents03 .box {
	width: 23.5%;
	margin-right: 2%;
	margin-bottom: 40px;
	text-align: left;
}

.contents03 .box:nth-child(4n) {
	margin-right: 0%;
}

.contents03 .box img {
	width: 100%;
height: auto;
}

.contents03 .box-box {
	display: flex;
  justify-content: flex-start;
	align-items: flex-start;
	margin: 18px 0px 15px;
}

.contents03 .box h5 {
	font-family: 'Zen Old Mincho', serif;
color: #4d4d4d;
line-height: 1.2;
font-weight: normal;
}

.contents03 .box h5:first-child {
	margin-right: 10px;
}

.contents03 .box p {
	font-size: 14px;
	line-height: 1.6;
}

/* contents04 */

.contents04 {
	width: 100%;
    padding: 0px 2%;
    padding-bottom: 70px;
    text-align: center;
}

.contents04 h2 {
   margin-bottom: 25px;
}

.contents04 h2 img {
    height: 45px;
    width: auto;
}

.contents04 iframe {
	width: 100%;
}


    .sp-view {
        display: none;
    }