body{font-family: 'Noto Serif JP', serif;}
.o750{display: block!important;}
.u750{display: none!important;}
.btmnon{margin-bottom: 0px!important;}

a img:hover{
	opacity: 0.8;
	transition: 0.4s;
}

p{font-size: 1.143em;}

.movetext{opacity:0;}
.movetext span{opacity:0;}
	
.arigatou{
	width: 33.3%;
	display: block;
	margin: 0px auto 50px;
	color: #945a9c;
	line-height: 3.6;
	letter-spacing: 1px;
}

.message{
	padding: 150px 0px 700px;
	width: 100%;
	margin: 0 auto;
    overflow: hidden;
    background: url(../image/photo_4.png);
    background-position: bottom center;
    background-size: contain;
	background-repeat: no-repeat;
	transition: 0.4s;
}

@media screen and (max-width: 1300px) {
p{font-size: 1.071em;}
	
.message {
    padding: 100px 0px 400px;
	transition: 0.4s;
}
	
.arigatou{
	margin: 0px auto 40px;
	line-height: 2.6;
}
}

@media screen and (max-width: 1000px) {	
.message {
	padding: 100px 0px 300px;
	transition: 0.4s;
}
	
.arigatou{
	margin: 0px auto 40px;
	line-height: 2;
}
}
	
@media screen and (max-width: 750px) {
.o750{display: none!important;}
.u750{display: block!important;}
	
p{font-size: 1.071em;}
	
.arigatou{
	width: 50%;
	line-height: 3.0;
	display: block;
    margin: 40px auto 0px;	
}	
}

@media screen and (max-width: 375px) {	
p{font-size: 0.857em;}
	
.arigatou {
    width: 50%;
    margin: 10px auto 0px;	
}
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝

頭

＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

@media screen and (min-width: 1540px) {
header{
	width: 1480px!important;
	padding: 25px 20px;
	overflow: hidden;
	margin: 0 auto;
	display: block;
}
}

@media screen and (max-width: 1540px) {
header{
	width: 100%;
	padding: 25px 20px;
	overflow: hidden;
	margin: 0 auto;
	display: block;
	box-sizing: border-box;
}
}


header > p{
	font-size: 16px;
	color:#000;
	float:left;
	padding-top: 10px;
	line-height: normal;
}

h1{
	width: 300px;
	float: right;
	margin-right: 0px;
}

h1 img{width: 100%;}


@media screen and (max-width: 750px) {
header{
	padding: 15px 5%;
}
	
header p{
		width: 40%; 
		box-sizing: border-box;
		display: block;
}

header p img{width: 100%;}
	
header h1{
		width: 60%; 
		box-sizing: border-box;
		display: block;
		overflow: hidden;
}	
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝

FV

＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/


.mv{
	width: 100%;
	overflow: hidden;
}

.sns img{
	width: 100%;
}

.sns{
	position: fixed;
	z-index: 3;
	top:115px;
	right: 20px;
	width: 37px;
	display: block;
	overflow-x: hidden;	
}

.sns li{
	margin-bottom: 10px;
}

.sns li:first-child{
	margin-bottom: 30px;
}

.sns li:last-child{
	margin-bottom: 0px;
}

.sns li:nth-child(2){
	margin-bottom: 30px;
}

.mv_in{
	position: relative;
	width: 1296px;
	height: 730px;
	margin: 0 auto;
	display: block;
	overflow: hidden;
	background-color: #000;
}

h2{
	position: absolute;
	width: 476px;
	left: 0;
	top: 50%;
	margin-left: 40px;
	z-index: 1;
}

h2 img{
	width: 100%;
}

.mv_in a{
	position: absolute;
	width: 219px;
	overflow: hidden;
	right: 0;
	bottom: 0;
	z-index: 1;
}

.mv_in a img{
	width: 100%;
}

#video{
    position: absolute;
    left: 50%;
    margin-left: -650px;
    z-index: 0;
    height: 730px;
    display: block;
	opacity: 0.8;
}

@media screen and (max-width: 1300px) {
.mv_in {
    width: 100%;
}
	
.mv_in a{
    position: absolute;
    width: 219px;
	left: 0;
    bottom: 0;
    z-index: 1;
}
	
.mv_in a img {
    width: 100%;
}
}

@media screen and (max-width: 750px) {
h2 {
    position: absolute;
    width: 278px;
    left: 0;
    top: 50%;
    margin-left: 5%;
}
	
.sns {
    top: 80px;
    right: 5%;
    width: 32px;
}
	
#video {
    position: absolute;
    left: 50%;
    margin-left: -480px;
    z-index: 0;
    height: 540px;
    display: block;
    opacity: 0.8;
}
	
.mv_in{
	position: relative;
	width: 100%;
	height: 540px;
	margin: 0 0 0 5%;
	display: block;
	overflow: hidden;
}

.mv_in a{
    width: 40%;
}		
}

@media screen and (max-width: 375px) {	
.mv_in {height: 540px;}
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝

リンクボタン

＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
nav{
	padding: 40px 0px 0px;
	width: 1200px;
	display: block;
	overflow: hidden;
 	margin: 40px auto 0px!important;
}

nav ul{
	margin: 0 auto;
	display: block;
    overflow: hidden;
}

nav ul li{
	width: 23.5%;
	padding: 12px 0px;
	background-color: #fff;
	float: left;
	margin: 0px 1% 0px 1%;
	box-sizing: border-box;
	border-top: 1px solid #945a9c;
	border-bottom: 1px solid #945a9c;
	border-left: 1px solid #945a9c;
	border-right: 1px solid #945a9c;
}

nav ul li:first-child{
	margin: 0px 1% 0px 0%;
}

nav ul li:last-child{
	margin: 0px 0% 0px 1%;
}
nav ul li a{
	text-decoration: none;
    text-align: center;
    display: block;
	font-size: 1em;
	color: #945a9c;
}

nav ul li:hover{
	background-color: #ebdeea;
	transition: 0.4s;
}

@media screen and (max-width: 1400px) {
.mv_in {	
	margin: 0 0 0 5%;
}
	
.mv_in a {
    position: absolute;
    width: 219px;
    left: 0;
    bottom: 0;
    z-index: 1;
}	
	
nav{width: 100%;}

nav ul li{
	width: 25%;
	margin: 0% 0%;
	box-sizing: border-box;
}
	
nav ul li:first-child{
	border-top: 1px solid #945a9c;
	border-bottom: 1px solid #945a9c;
	border-left: 1px solid #945a9c;
	border-right: 1px solid #fff;
}

nav ul li:nth-child(2){
	border-top: 1px solid #945a9c;
	border-bottom: 1px solid #945a9c;
	border-left: 1px solid #945a9c;
	border-right: 1px solid #fff;
}

nav ul li:nth-child(3){
	border-top: 1px solid #945a9c;
	border-bottom: 1px solid #945a9c;
	border-left: 1px solid #945a9c;
	border-right: 1px solid #fff;
}

nav ul li:last-child{
	border-top: 1px solid #945a9c;
	border-bottom: 1px solid #945a9c;
	border-left: 1px solid #945a9c;
	border-right: 1px solid #945a9c;
}		

nav ul li:first-child{
	margin: 0% 0%;
}

nav ul li:last-child{
	margin: 0% 0%;
}
}
	
@media screen and (max-width: 750px) {
nav{width: 100%;}

nav ul li{
	width: 50%;
	margin: 0% 0%;
	box-sizing: border-box;
}
	
nav ul li:first-child{
	border-top: 1px solid #945a9c;
	border-bottom: 1px solid #fff;
	border-left: 1px solid #945a9c;
	border-right: 1px solid #fff;
}

nav ul li:nth-child(2){
	border-top: 1px solid #945a9c;
	border-bottom: 1px solid #fff;
	border-left: 1px solid #945a9c;
	border-right: 1px solid #945a9c;
}

nav ul li:nth-child(3){
	border-top: 1px solid #945a9c;
	border-bottom: 1px solid #945a9c;
	border-left: 1px solid #945a9c;
	border-right: 1px solid #fff;
}

nav ul li:last-child{
	border-top: 1px solid #945a9c;
	border-bottom: 1px solid #945a9c;
	border-left: 1px solid #945a9c;
	border-right: 1px solid #945a9c;
}		

nav ul li:first-child{
	margin: 0% 0%;
}

nav ul li:last-child{
	margin: 0% 0%;
}
}

@media screen and (max-width: 750px) {	
nav ul li a{
	font-size: 0.857em;
}
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝

コピー

＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
@media screen and (min-width: 1500px) {
.message{
	padding: 150px 0px 800px;
}
}

@media screen and (min-width: 2000px) {
.message{
	padding: 150px 0px 1000px;
}
}

.message_in{
	position: relative;
	width: 1200px;
	margin: 150px auto 0px;
}

.p1,.p2,.p3{
	width: 33.3%;
}

.p1 img,.p2 img,.p3 img{
	width: 100%;
}


.p1{
	position: absolute;
	top:-130px;
}

.p2{
	position: absolute;
	top:280px;
	right: 0;
}

.p3{
	position: absolute;
	bottom:0px;
}

.arigatou p{margin-bottom: 80px;}


h3{
	width: 505px;
	overflow: hidden;
	display: block;
	margin: 0 auto!important;
}

h3 img{
	width: 100%;
	margin: 0 auto;
}


@media screen and (max-width: 1300px) {
.message_in {
    position: relative;
    width: 90%;
}
	
.p2 {
    top: 100px;
}	
}

@media screen and (max-width: 750px) {
	
.message_in {
    position: static;
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
}

.message_in div{overflow: hidden;}

.message_in{width: 100%;}

	
.arigatou_r{
	float:right;
	padding-right: 5%;
    box-sizing: border-box;
}

.arigatou_l{
	float:left;
	padding-left: 5%;
    box-sizing: border-box;
}
	
.arigatou p{
	letter-spacing: -2px!important;
}	
	
.p1, .p2, .p3{
	width: 50%;
}

.p1 img, .p2 img, .p3 img{
	width: 100%;
}	
	
	
.p1{
	position: static;
	float: left;
}

.p2{
	position: static;
	float: right;
}

.p3{
	position: static;
	float: left;
}
	
.message{
	padding: 70px 0px 200px;
	width: 100%;
	margin: 0 auto;
    overflow: hidden;
    background: url(../image/sp/sp_photo_4.png);
    background-position: bottom center;
    background-size: contain;
	background-repeat: no-repeat;
	transition: 0.4s;
}
	
h3{
	width: 100%;
	margin-bottom: 40px!important;
	display: block;
	overflow: hidden;
}

h3 img{width: 100%;
}
}	
	
@media screen and (max-width: 640px) {
.message {padding: 50px 0px 200px;}
	
h3 {margin-bottom: 20px!important;
}
}

@media screen and (max-width: 370px) {
	header {
    padding: 15px 5% 5px;
}
}
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝

ボタン

＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

.btn {
	padding: 100px 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}


.btn a{
	color: #945a9c;
	font-size: 1.5em;
	padding: 20px 100px;
	background: linear-gradient(-90deg, #e4cde2, #ffc4e3);
	text-decoration: none;
	border-radius: 50px;
	border: 1px solid #945a9c;
	box-sizing: border-box;
	transition: 0.4s;
}

.btn a:hover{
	background: linear-gradient(-90deg, #ffc4e3, #e4cde2);
	transition: 0.4s;
}

.btn a:before {
	content:'';
	display: inline-block;
	background-image: url(../image/icon_1.png);
	width: 41px;
	height: 35px;
	margin-right: 20px;
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
}

@media screen and (max-width: 750px) {
.btn {
	padding: 50px 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}
	
.btn a {
	font-size: 1em;
    padding: 10px 0px;
	width: 90%;
    text-align: center;
}
	
.btn a:before {
    content: '';
    display: inline-block;
    background-image: url(../image/icon_1.png);
    width: 30px;
    height: 26px;
    margin-right: 10px;
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
}
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝

フッター

＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
footer{
	width: 100%;
	padding: 90px 0 30px;
	background-color: #ebdeea;
	overflow: hidden;
	display: block;
}

.mark{
	width: 300px;
	display: block;
	margin: 0 auto 40px;
}

footer > p{
	font-family: sans-serif;
	color: #000;
	text-align: center;
	line-height: normal;
	margin-bottom: 40px;
	font-weight: normal;
}

small{
	text-align: center;
    display: block;
	font-family: sans-serif;
	color: #945a9c;
	font-weight: normal;
}

.sns2{
	width: 100%;
	margin-bottom: 40px;
}

footer ul{
	width: 232px;
	margin: 0 auto;
	display: block;
	overflow: hidden;
}

footer ul li{
	width: 38px;
	float: left;
	margin: 0 10px;
}

footer ul li img{
	width: 100%;
}

@media screen and (max-width: 750px) {
.mark {
    width: 74%;
    display: block;
    margin: 0 auto 40px;
}
	
.sns2{
	margin-bottom: 90px;
}	
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝

ローディング

＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/


.is-hide {display: none;}/* 非表示 */

#loader-bg {
	width: 100%;
	background: #ffffff;
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	z-index: 5;
}

#loader img{
	position: fixed;
	width: 120px;
	height: 120px;
	top: 50%;
	left: 50%;
	margin-top: -60px;
	margin-left: -60px;
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝

ページトップ

＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/


#pageTop {
	z-index: 3;
	position: fixed;
	bottom: 20px;
	left: 20px;
	display:block;
}

#pageTop a img{
    width: 40px;
    height: 40px;
}

@media screen and (max-width: 750px) {
	
#pageTop {
	bottom: 3%;
	left: 5%;
}
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝

アニメイトCSS

＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/


/* fadeIn */
.fadeIn{
animation-name: fadeInAnime;
animation-duration:3s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeInAnime{
from {
    opacity: 0;
  }

to {
    opacity: 1;
  }
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/

.fadeInTrigger{
    opacity: 0;
}
