@charset "utf-8";

.topimg{
	display: flex;
	justify-content: space-between;
	padding: 0 0 20px 20px;
	width: 90%;
	margin: 0 0 0 auto;
}
.topimg img{
	width: 32%;
}

.line{
	width: 70%;
	display: block;
	border-top: solid 0.8px #333;
	margin: 0 0 0 auto;
	padding-bottom: 20px;
	margin-top: 20px;
}

.lineleft{
	width: 60%;
	display: block;
	border-top: solid 0.8px #333;
	margin: 0 auto 0 0;
	padding-bottom: 20px;
	margin-top: 40px;
}


/*----------------*/
.profile h2,.gallery h2{
	padding: 30px 0 7px 10px;
	font-weight: lighter;
	font-size: 1em;
}
.profile img,.gallery img{
	width: 80%;
	height: 400px;
	object-fit: cover;
}
.flex{
	display: flex;
}
.rl{
	width: 20%;
	writing-mode: vertical-rl;
	display: flex;
}
.rl .line{
	width: 80%;
	margin-top: 0;
}
.rl p,.rl a{
	margin-bottom: 15px;
	display: block;
	margin: 0 auto 40px;
}
.rl a{
	border: solid 0.7px #333;
	border-radius: 20px;
	padding: 15px 4px;
}
.rl a:hover{
	background-color: gray;
	transition: 1.0s;
}
/*-------------------*/
.menu h2{
	padding: 30px 0 7px 10px;
	font-weight: lighter;
	font-size: 1em;
}
.menu h3{
	padding-top: 20px;
	padding-bottom: 40px;
	font-size: 0.9em;
}
.menu p{
	padding-bottom: 30px;
	font-size: 0.8em;
}
.menu li{
	list-style-type: none;
	font-size: 0.6em;
	margin-right: 20px;
}
.text{
	margin: auto auto 10px 10px;
	position: absolute;
	bottom: 10px;
	left: auto;
	right: 0;
}
.bridalmenu_img{
	width: 50%;
}
.bridalmenu_img img{
	width: 90%;
	height: 300px;
	object-fit: cover;
}
img.two{
	display: block;
	margin: 20px 0 20px auto;
}
.textarea{
	width: 60%;
	position: relative;
}
a.bridalmenu{
	display: block;
	margin: 20px 20px 0 auto;
	text-align: center;
	border: solid 0.7px #333;
	border-radius: 20px;
	padding: 10px 10px;
	width: 200px;
}
a.bridalmenu:hover{
	background-color: gray;
	transition: 1.0s;
}

/*----------------------*/
figure{
	position: relative;
	padding-bottom: 30px;
}
.textarea.maedori{
	position: absolute;
	top: 42%;
	z-index: 1;
}
figure .text{
	position: absolute;
	top: 70%;
	left: 8%;
}
.maedori_img img{
	width: 90%;
	height: 200px;
	object-fit: cover;
}
.maedori_img{
	width: 90%;
}

/*----------------------*/
div.policy{
	text-align: center;
	padding: 30px 0 40px 0;
}
div.policy a{
	text-decoration: underline;
}

/*---------------------*/
.profile h3{
	font-size: 1.3em;
	margin: 20px;
}
.profile p{
	margin: 20px;
}
.gallery img{
	margin-bottom: 30px;
}
.gallery p{
	font-size: 0.8em;
}
.gallery h2{
	font-weight: bold;
	font-size: 2em;
}