@charset "utf-8";

html{
	font-size: 100%;
	overflow-y:scroll;
}

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
	list-style: none;
}

body {
    line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
	display:block;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
	color: #000;
	text-decoration: none;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;   
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
}

* {-webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box
  }
body {
width: 1250px;
overflow-x: visible !important;
overflow-y: visible !important;
		color: #000;
		line-height: 1.5;
		font-family: 'Zen Old Mincho', serif;
		-webkit-text-size-adjust: 100%;
		font-size: 80%;
		letter-spacing: 1px;
		margin: 0;
	}
	.hea {
		background-size: cover;
		background-position: center center;
		width: 100%;
		height: 100vh;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 999
	}
	.swiper {
		width: 100%;
		height: 100vh;
		overflow: hidden;
		position: relative;
	}
	.swiper-wrapper {
		width: 100%;
		height: 100vh;
	}
	.swiper-slide {
		width: 100%;
		height: 100vh;
	}
	.swiper-img {
		width: 100%;
		height: 100vh;
	}
	.swiper-slide-active .swiper-img, .swiper-slide-duplicate-active .swiper-img, .swiper-slide-prev .swiper-img {
		animation: zoomUp 8s linear 0s normal both;
	}
	.swiper-slide img {
		height: 100%;
		width: 100%;
		object-fit: cover;
	}
	header {
		display: flex;
		justify-content: space-between;
		padding: 50px 100px 50px 80px;
	}
	header ul.ul1 {
		display: flex;
	}
	header ul.ul1 li {
		padding: 0 15px;
	}
	header ul.ul1 li a {
		color: #fff;
		font-size: 120%;
		padding: 5px 0;
		display: inline-block;
		position: relative;
		cursor: pointer
	}
	header ul.ul1 li a::after {
		content: '';
		position: absolute;
		width: 100%;
		transform: scaleX(0);
		height: 2px;
		bottom: 0;
		left: 0;
		background-color: #fff;
		transform-origin: bottom right;
		transition: transform .4s cubic-bezier(.86, 0, .07, 1)
	}
	header ul.ul1 li a:hover::after {
		transform: scaleX(1);
		transform-origin: bottom left
	}
	nav.globalMenuSp {
		position: fixed;
		z-index: 2;
		top: 0;
		left: 0;
		color: #000;
		text-align: center;
		transform: translateY(-100%);
		transition: all 0.6s;
		width: 100%;
		height: 100vh;
	}
	/* このクラスを、jQueryで付与・削除する */
	nav.globalMenuSp.active {
		transform: translateY(0%);
	}
	.nav1 {
		width: 100%;
		height: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		background: rgba(0, 0, 0, .8);
	}
	.nav1 ul li a {
		display: block;
		font-size: 130%;
		color: #fff;
		padding: 10px;
	}
	.navToggle {
		display: block;
		position: fixed; /* bodyに対しての絶対位置指定 */
		right: 30px;
		top: 50px;
		width: 60px;
		height: 60px;
		cursor: pointer;
		z-index: 3;
		text-align: center;
	}
	.navToggle span {
		display: block;
		position: absolute; /* .navToggleに対して */
		width: 40px;
		border-bottom: solid 1px #fff;
		-webkit-transition: .35s ease-in-out;
		-moz-transition: .35s ease-in-out;
		transition: .35s ease-in-out;
		left: 10px;
	}
	.navToggle span:nth-child(1) {
		top: 10px;
	}
	.navToggle span:nth-child(2) {
		top: 17px;
	}
	.navToggle span:nth-child(3) {
		top: 24px;
	}
	/* 最初のspanをマイナス45度に */
	.navToggle.active span:nth-child(1) {
		top: 17px;
		left: 10px;
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	/* 2番目と3番目のspanを45度に */
	.navToggle.active span:nth-child(2), .navToggle.active span:nth-child(3) {
		top: 17px;
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.hea2 {
		position: absolute;
		bottom: 80px;
		left: 0;
		width: 100%;
	}
	.hea2 div {
		width: 94%;
		margin: 0 auto;
		max-width: 1120px;
	}
	.hea2 div img {
		max-width: 100%;
	}
	.hea3 {
		position: absolute;
		bottom: 0;
		right: 30px;
	}
	.section1 {
		background: #e4ded3;
		padding: 120px 0;
	}
	.sec1-1 {
		width: 94%;
		max-width: 1120px;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
	}
	.sec1-1l {
		display: flex;
		justify-content: space-between;
		width: 48%;
		max-width: 480px;
	}
	.sec1-1l .d1 .d1-2 {
		padding-top: 30px;
	}
	.sec1-1l .d2 {
		padding-top: 50px;
	}
	.sec1-1r {
		width: 48%;
		max-width: 480px;
		padding-top: 50px;
	}
	.sec1-1r h2 {
		font-size: 170%;
		margin-bottom: 10px;
		font-weight: normal;
	}
	.sec1-1r .p1 {
		margin-bottom: 50px;
		font-size: 110%;
	}
	.sec1-1r h3 {
		font-size: 250%;
		font-weight: normal;
		margin-bottom: 20px;
		letter-spacing: 2px;
	}
	.sec1-1r h3 span {
		display: block;
	}
	.sec1-1r .p2 {
		line-height: 30px;
		font-size: 110%;
	}
	/*固定する背景*/
		.par1 {
    position: relative;
		height: 500px;
}
.par1:before {
    content: '';
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url("../img/parallax/parara-image-1.jpg") center top no-repeat;
				background-size: cover;
				z-index: -1;
}
	.par1 div {
		width: 94%;
		max-width: 1120px;
		margin: 0 auto;
		display: flex;
		align-items: center;
		height: 100%;
	}
	.section2 {
		background: #f9f9f3;
		padding: 120px 0;
	}
	.section2 h2 {
		font-size: 170%;
		font-weight: normal;
		text-align: center;
		letter-spacing: 2px;
		z-index: 3;
	}
	.sec2-1 {
		z-index: 1;
		position: relative;
		width: 100%;
		overflow: hidden;
	}
	.sec2-1::after {
		position: absolute;
		width: -webkit-calc(50% - 70px);
		width: calc(50% - 70px);
		content: "";
		display: block;
		height: 176px;
		top: 50%;
		right: 0;
		background-image: url("../img/section2/hariback-1.jpg");
		background-size: cover;
		background-repeat: no-repeat;
		margin-top: -88px;
		z-index: 2;
	}
	.sec2m {
		display: flex;
		justify-content: space-between;
		max-width: 1120px;
		padding: 80px 0 30px;
		border-bottom: 1px solid #ccc;
		margin: 0 auto;
		z-index: 4;
	}
	.sec2l {
		width: 50%;
		z-index: 5;
		padding-left: 80px;
	}
	.sec2r {
		width: 50%;
		padding-left: 70px;
		z-index: 6;
		text-align: center;
		overflow: hidden;
	}
	.sec2l h3 {
		font-size: 270%;
		margin-bottom: 20px;
	}
	.sec2l .p1 {
		margin-bottom: 40px;
	}
	.sec2l .p2 {
		margin-bottom: 30px;
		line-height: 28px;
		font-size: 110%;
	}
	.sec2l .p3 {
		margin-bottom: 10px;
		font-size: 110%;
	}
	.sec2l .p4 {
		margin-bottom: 10px;
		font-size: 110%;
	}
	.sec2-1_2 {
		z-index: 1;
		position: relative;
		width: 100%;
		overflow: hidden;
	}
	.sec2-1_2::after {
		position: absolute;
		width: -webkit-calc(50% - 70px);
		width: calc(50% - 70px);
		content: "";
		display: block;
		height: 176px;
		top: 50%;
		left: 0;
		background-image: url("../img/section2/hariback-2.jpg");
		background-size: cover;
		background-repeat: no-repeat;
		margin-top: -88px;
		z-index: 2;
	}
	.sec2m_2 {
		display: flex;
		justify-content: space-between;
		max-width: 1120px;
		padding: 80px 0 30px;
		border-bottom: 1px solid #ccc;
		margin: 0 auto;
		z-index: 4;
	}
	.sec2l_2 {
		width: 50%;
		z-index: 5;
		padding-right: 80px;
	}
	.sec2r_2 {
		width: 50%;
		padding-right: 70px;
		z-index: 6;
		text-align: center;
		overflow: hidden;
	}
	.sec2l_2 h3 {
		font-size: 270%;
		margin-bottom: 20px;
	}
	.sec2l_2 .p1 {
		margin-bottom: 40px;
	}
	.sec2l_2 .p2 {
		margin-bottom: 30px;
		line-height: 28px;
		font-size: 110%;
	}
	.sec2l_2 .p3 {
		margin-bottom: 10px;
		font-size: 110%;
	}
	.sec2l_2 .p4 {
		margin-bottom: 10px;
		font-size: 110%;
	}
	.sec2-1_3 {
		z-index: 1;
		position: relative;
		width: 100%;
		overflow: hidden;
	}
	.sec2-1_3::after {
		position: absolute;
		width: -webkit-calc(50% - 70px);
		width: calc(50% - 70px);
		content: "";
		display: block;
		height: 176px;
		top: 50%;
		right: 0;
		background-image: url("../img/section2/hariback-3.jpg");
		background-size: cover;
		background-repeat: no-repeat;
		margin-top: -88px;
		z-index: 2;
	}
	.sec2m_3 {
		display: flex;
		justify-content: space-between;
		max-width: 1120px;
		padding: 80px 0 30px;
		border-bottom: 1px solid #ccc;
		margin: 0 auto;
		z-index: 4;
	}
	.sec2l_3 {
		width: 50%;
		z-index: 5;
		padding-left: 80px;
	}
	.sec2r_3 {
		width: 50%;
		padding-left: 70px;
		z-index: 6;
		text-align: center;
		overflow: hidden;
	}
	.sec2l_3 h3 {
		font-size: 270%;
		margin-bottom: 20px;
	}
	.sec2l_3 .p1 {
		margin-bottom: 40px;
	}
	.sec2l_3 .p2 {
		margin-bottom: 30px;
		line-height: 28px;
		font-size: 110%;
	}
	.sec2l_3 .p3 {
		margin-bottom: 10px;
		font-size: 110%;
	}
	.sec2l_3 .p4 {
		margin-bottom: 10px;
		font-size: 110%;
	}
	.sec2-1_4 {
		z-index: 1;
		position: relative;
		width: 100%;
		overflow: hidden;
	}
	.sec2-1_4::after {
		position: absolute;
		width: -webkit-calc(50% - 70px);
		width: calc(50% - 70px);
		content: "";
		display: block;
		height: 176px;
		top: 50%;
		left: 0;
		background-image: url("../img/section2/hariback-4.jpg");
		background-size: cover;
		background-repeat: no-repeat;
		margin-top: -88px;
		z-index: 2;
	}
	.sec2m_4 {
		display: flex;
		justify-content: space-between;
		max-width: 1120px;
		padding: 80px 0 30px;
		border-bottom: 1px solid #ccc;
		margin: 0 auto;
		z-index: 4;
	}
	.sec2l_4 {
		width: 50%;
		z-index: 5;
		padding-right: 80px;
	}
	.sec2r_4 {
		width: 50%;
		padding-right: 70px;
		z-index: 6;
		text-align: center;
		overflow: hidden;
	}
	.sec2l_4 h3 {
		font-size: 270%;
		margin-bottom: 20px;
	}
	.sec2l_4 .p1 {
		margin-bottom: 40px;
	}
	.sec2l_4 .p2 {
		margin-bottom: 30px;
		line-height: 28px;
		font-size: 110%;
	}
	.sec2l_4 .p3 {
		margin-bottom: 10px;
		font-size: 110%;
	}
	.sec2l_4 .p4 {
		margin-bottom: 10px;
		font-size: 110%;
	}
	.sec2-1_5 {
		z-index: 1;
		position: relative;
		width: 100%;
		overflow: hidden;
	}
	.sec2-1_5::after {
		position: absolute;
		width: -webkit-calc(50% - 70px);
		width: calc(50% - 70px);
		content: "";
		display: block;
		height: 176px;
		top: 50%;
		right: 0;
		background-image: url("../img/section2/hariback-5.jpg");
		background-size: cover;
		background-repeat: no-repeat;
		margin-top: -88px;
		z-index: 2;
	}
	.sec2m_5 {
		display: flex;
		justify-content: space-between;
		max-width: 1120px;
		padding: 80px 0 30px;
		margin: 0 auto;
		z-index: 4;
	}
	.sec2l_5 {
		width: 50%;
		z-index: 5;
		padding-left: 80px;
	}
	.sec2r_5 {
		width: 50%;
		padding-left: 70px;
		z-index: 6;
		text-align: center;
		overflow: hidden;
	}
	.sec2l_5 h3 {
		font-size: 270%;
		margin-bottom: 20px;
	}
	.sec2l_5 .p1 {
		margin-bottom: 40px;
	}
	.sec2l_5 .p2 {
		margin-bottom: 30px;
		line-height: 28px;
		font-size: 110%;
	}
	.sec2l_5 .p3 {
		margin-bottom: 10px;
		font-size: 110%;
	}
	.sec2l_5 .p4 {
		margin-bottom: 10px;
		font-size: 110%;
	}

	.par2 {
		background-image: url('../img/parallax/parara-image-2.jpg');
		background-attachment: fixed;
		background-position: center center;
		background-size: cover;
		background-repeat: no-repeat;
		height: 500px;
	}

	.section3 {
		position: relative;
	}
	.sec3-1m {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 600px;
	}
	.sec3-1 {
		width: 94%;
		max-width: 1120px;
		margin: 0 auto;
		padding: 120px 0 60px;
	}
	.sec3-1 h2 {
		font-size: 170%;
		font-weight: normal;
		text-align: center;
		letter-spacing: 2px;
		margin-bottom: 50px;
		color: #fff;
	}
	.sec3-1 p span {
		display: block;
		text-align: center;
		color: #fff;
	}
	.sec3-1 p {
		font-size: 130%;
		line-height: 33px;
		text-align: center;
		margin-bottom: 100px;
		color: #fff;
	}
	.sec3-1 div {
		display: flex;
		justify-content: center;
		color: #fff;
	}
	.sec3-1 div a {
		font-size: 130%;
		padding-bottom: 50px;
		text-align: center;
		background: url("../img/section3/order-image-bg.png") no-repeat center bottom;
		color: #fff;
	}
	.section4 {
		padding: 100px 0 150px;
		background: #f9f9f3;
	}
	.sec4-1 {
		border: 1px solid #4a686a;
		padding: 45px 20px 55px;
		text-align: center;
		width: 94%;
		max-width: 1120px;
		margin: 0 auto 50px;
	}
	.sec4-1 h3 {
		font-size: 180%;
		margin-bottom: 20px;
	}
	.sec4-1 .p1 {
		font-size: 450%;
		letter-spacing: 10px;
	}
	.sec4-1 .p2 {
		font-size: 120%;
		margin-bottom: 25px;
	}
	.sec4-1 .p3 {
		font-size: 120%;
	}
	.sec4-2 {
		border: 1px solid #4a686a;
		padding: 45px 20px 55px;
		width: 94%;
		max-width: 1120px;
		margin: 0 auto;
	}
	.sec4-2 h3 {
		font-size: 180%;
		margin-bottom: 30px;
		text-align: center;
	}
	.sec4-2 .p1 {
		font-size: 120%;
		text-align: center;
	}
	.sec4-2 .p1 .s1 {
		color: #e01c24;
	}
	.sec4-3 {
		width: 94%;
		margin: 0 auto;
		max-width: 800px;
	}
	.sec4-3 h4 {
		padding: 50px 0 5px;
		font-size: 130%;
	}
	.sec4-3 h4 span.s2 {
		color: #e01c24;
		display: inline-block;
		margin-left: 10px;
	}
	.sec4-3 div input {
		width: 100%;
		height: 60px;
		text-indent: 1em;
		background: #ffffff;
		border: 1px solid #ccc;
	}
	.sec4-3 div textarea {
		width: 100%;
		height: 120px;
		padding: 10px;
		line-height: 1.5;
		font-family: 'Zen Old Mincho', serif;
		-webkit-text-size-adjust: 100%;
		letter-spacing: 1px;
		font-size: 95%;
		background: #ffffff;
		border: 1px solid #ccc;
	}
	.sec4-5 {
		display: flex;
		justify-content: center;
	}
	.sec4-5 input[type="submit"] {
		outline: none;
		overflow: hidden;
		-webkit-appearance: none;
		width: 380px;
		height: 70px;
		background: #e4ded3;
		font-weight: bold;
		font-size: 140%;
		letter-spacing: 2px;
		cursor: pointer;
		border: 1px solid #ccc;
		font-family: 'Zen Old Mincho', serif;
		transition: 0.4s;
	}
	.sec4-5 input[type="submit"]:hover, .sec4-5 input[type="submit"]:focus {
		box-shadow: inset 0 0 0 2em #fff;
	}
	.sec3-2 {
		width: 100%;
		height: 600px;
	}
	.sec4-4 {
		width: 100%;
		height: 178px;
		overflow-y: scroll;
		border: 1px solid #ccc;
		margin-top: 50px;
	}
	.sec4-4 div {
		width: 100%;
		padding: 20px 20px 50px;
	}
	.sec4-4 div p {
		padding-bottom: 30px;
	}
	.sec4-4 div h6 {
		font-size: 120%;
	}
	.sec4-6 {
		text-align: center;
		padding: 30px 0;
		line-height: 24px;
	}
	.sec4-6 span {
		display: block;
		text-align: center;
	}
	.sec5-1 {
		display: flex;
		align-items: center;
		height: 400px;
		width: 100%;
		overflow-x: hidden;
		overflow-y: hidden;
	}
	.sec5-2 {
		display: flex;
		animation: loop-slide 80s infinite linear 1s both;
	}
	.sec5-2 li {
		width: 400px;
		height: 400px;
	}
	.sec5-2 li img {
		object-fit: cover;
		width: 100%;
		height: 400px;
		line-height: 0;
	}
	.sec6 {
		width: 100%;
		margin: 0;
		padding: 0;
	}
	.top {
		width: 39px;
		height: 166px;
		position: fixed;
		right: 100px;
		bottom: 20px;
		line-height: 0;
		cursor: pointer;
		z-index: 10000000000;
	}
	.top img {
		max-width: 100%;
	}
	footer {
		background-color: #e4ded3;
		padding: 120px 0 0;
		margin-top: -5px;
	}
	.sec7 {
		width: 94%;
		margin: 0 auto;
		text-align: center;
	}
	footer h6 {
		font-size: 150%;
		padding: 30px 0 10px;
		font-weight: normal;
	}
	.sec7-2 {
		font-size: 110%;
		padding-bottom: 5px;
	}
	.sec7-3 {
		font-size: 110%;
		padding-bottom: 80px;
	}
	.sec7-3 span {
		display: inline-block;
		padding-left: 25px;
	}
	.sec7-4 {
		font-size: 90%;
		padding-bottom: 5px;
	}
	.hover-effects button {
		padding: 1rem 2.4rem;
		background-color: #f9f9f9;
		border: 1px solid #444444;
		outline: none;
		border-radius: 40px;
		overflow: hidden;
		margin: 5px 10px;
		font-family: "Open Sans";
		font-weight: 600;
		font-size: 16px;
	}
	/*Backround Fill*/
	.ann-bg-fill {
		padding: 1em 2em;
		transition: 0.4s;
	}
	.ann-bg-fill:hover, .ann-bg-fill:focus {
		box-shadow: inset 0 0 0 2em #000;
	}

