@charset "utf-8";

/* ------------------------------
    menu
------------------------------ */
#menu .contents{
	background: url('../img/about-con-bg.jpg') no-repeat;
	background-size:cover;
	z-index: 0;
	margin-top:calc(100vw - 94.2857vw);
}
@media only screen and (max-width: 768px) {
	#menu .contents{
	margin-top: 12.5vw;
}
}
.title {
    display: flex;
    justify-content: center;
    align-items: center;
}
#menu .title h2 {
    height: 11vw;  
    writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -ms-writing-mode: vertical-rl;
    font-size: 1.785vw;
    font-weight: 400;
    line-height: 1em;
    letter-spacing: 0.1em;
    color: #000;
}
*::-ms-backdrop, #menu .title h2 {
	transform: translateX(-50%);
}
.title table.h2 {
    border: none;
}
.title table.h2 tbody tr {
    height: 3.124vw;
}
.title table.h2 tbody tr td.border {
    border-right: 1px solid #000;
}
@media only screen and (max-width: 768px) {
	#menu .title h2 {
    height: 30vw;  
    font-size: 4.5vw;
    margin-top: 0;
	font-weight: bold;
}
.title table.h2 tbody tr {
    height: 4.6875vw;
}
}
.content-block-1{
	background-image:url('../img/menu_01.jpg');
	width:auto;
	height:67.8571vw;
	background-size: cover;
}
.content-block-2{
	background-image:url('../img/menu_02.jpg');
	width:auto;
	height:78.57141vw;
	background-size: cover;
	padding:0 10.7142vw 0;
}
.content-block-3{
	background-image:url('../img/menu_01.jpg');
	width:auto;
	height:46.4287vw;
	background-size: cover;
}
.content-block-4{
	background-image:url('../img/menu_03.jpg');
	width:auto;
	height:48.5717vw;
	background-size: cover;
	padding:9.6vw  10.7142vw 0;
}
@media only screen and (max-width: 768px) {
.content-block-1{
	background-image:url('../img/menu_sp_02.jpg');
	width:100%;
	height:auto;
	padding:0 2.34375vw 11.25vw;
	margin:7vw 0 0;
}
.content-block-2{
	background-image:url('../img/menu_sp_03.jpg');
	width:100%;
	height:auto;
	padding:0 2.34375vw 11.25vw;
}
.content-block-3{
	background-image:url('../img/menu_sp_04.jpg');
	width:100%;
	height:auto;
	padding:8.593vw 6.25vw 11.25vw;
}
.content-block-4{
	background-image:url('../img/menu_sp_05.jpg');
	width:100%;
	height:auto;
	padding:14.6875vw 6.25vw 11.25vw;
}
}
/*#menu .content-block-1 .block{
	margin:5vw 7.1428vw 0;
}*/
#menu .content-block-2 .block,
#menu .content-block-3 .block{
	margin:0;
}
#menu .content-block-3 .block{
	margin:0 7.1428vw 0;
}
@media only screen and (max-width: 768px) {
#menu .content-block-1 .block{
	margin:0;
	position: relative;
}
#menu .content-block-2 .block,
#menu .content-block-3 .block{
	margin:0;
	position: relative;
}
#menu .content-block-3 .block{
	margin:0 7.1428vw 0;
	position: relative;
}
}
#menu .content-block-1 .block img{;
	margin:-5vw 2.34375vw 0;
	width:64.2857vw;
	height:67.5vw;
}
#menu .content-block-2 .block img{
	margin-top:5.7142vw;
	width:75.5714vw;
	height:67.7857vw;
}
#menu .content-block-3 .block img{
	margin-top:-4.2857vw;
	width:48.2857vw;
	height:55.1428vw;
}
#menu .content-block-4 .block img{
	width:42.857vw;
	height:30.7142vw;
}
#menu .content-block-4 .block{
	margin:0;
	text-align: right;
}
@media only screen and (max-width: 768px) {
#menu .content-block-1 .block img{
	position: static;
	margin:-7.1875vw 0 0;
	width:100%;
	height:auto;
}
#menu .content-block-2 .block img{
	position: static;
	width:100%;
	height:auto;
}
#menu .content-block-3 .block img{
	position: static;
	width:100%;
	height:auto;
}
#menu .content-block-4 .block img{
	position: static;
	width:100%;
	height:auto;
}
}
#menu .content-block-1 .content-box{
	padding:0 10.7142vw 0 calc(100% - 50vw);
	margin:-53.78125vw 0 0;
	text-align: center;
}
#menu .content-block-3 .content-box{
	padding:0 10.7142vw 0 calc(100% - 50vw);
	margin:-41.5713vw 0 0;
	text-align: center;
}
#menu .content-block-2 .content-box{
	margin-top:-65.7857vw;
	padding:0 50vw 0 0;
	text-align: center;
}
#menu .content-block-4 .content-box{
	margin-top: -30.7142vw;
	padding:2vw 45vw 0 0;
	text-align: center;
}
@media only screen and (max-width: 768px) {
#menu .content-block-1 .content-box,
#menu .content-block-3 .content-box{
	padding:8vw 0 0 0;
	margin:0;
	text-align: center;
}
#menu .content-block-2 .content-box{
	margin-top:0;
	padding:8vw 0 0 0;
	text-align: center;
}
#menu .content-block-4 .content-box{
	margin-top:0;
	padding:8vw 0 0 0;
	text-align: center;
}
}
.content-box h3{
	font-size: 2.857vw;
	font-weight:bold;
	letter-spacing: 0.1em;
	font-feature-settings : "palt";
	line-height:0.7vw;
	color:#fff;
	text-align: center;
	position: relative;
}
.content-box h3:before {
content: '';
position: absolute;
bottom: -1.8vw;
width: 1.42857vw;
height: 1px;
left: calc((100% - 1.42857vw)/2);
background-color: #fff;
}
.content-box h3 span{
	font-size: 0.7857vw;
	font-weight:bold;
	line-height: 6em;
	letter-spacing: 0.1em;
	font-family: 'Cormorant Garamond', serif;
	color:#fff;
	text-align: center;
}
.content-box p{
	font-size: 1vw;
	font-weight:normal;
	letter-spacing: 0.1em;
	font-feature-settings : "palt";
	line-height:2em;
	color:#fff;
	margin-top:4vw;
	text-align: center;
	position: relative;
}
#menu .content-block-4 .content-box h3:before{
background-color: #000;
}
#menu .content-block-4 .content-box p,
#menu .content-block-4 .content-box h3,
#menu .content-block-4 .content-box span{
	color:#000;
}
.brown .button {
    margin-top:4.2857vw;
    background-color: #5e482d;
    border: 2px solid #5e482d;
}
.button {
    margin-top:4.2857vw;
}
.brown .button::before,.brown .button::after {
    background-color: #5e482d;
}
.brown .button:hover {
    background-color: #fff;
    border-color: #5e482d;
    color: #5e482d;
}
.brown .button:hover::before, .brown .button:hover::after {
    background-color: #5e482d;
}
.content-box-hr{
	margin-top:25vw;
	padding:0 0 0 7.1242vw;
}
.content-box-hr p{
	writing-mode:vertical-rl;
	-webkit-writing-mode: vertical-rl;
	-moz-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-ms-writing-mode: vertical-rl;
	font-size: 1vw;
	font-weight:normal;
	letter-spacing: 0.1em;
	line-height:2em;
	color:#fff;
	position: relative;
}
#menu .block{
	margin:5vw 0 0;
}
/*#menu .block:first-child{
	margin:10vw 0 0;
}
/*#menu .block{
	background-size:100vw 68.75vw;
	padding:62.031vw 0 0 0;
}*/
#menu .block .content-box{
	width:78.125vw;
	margin:0 10.9375vw;
	padding:7.5vw 7.5vw 10.625vw;
	background:#fff;
	position: relative;
}
.content-box h3{
	font-size: 1.8571vw;
	font-weight:bold;
	letter-spacing: 0.1em;
	font-feature-settings : "palt";
	line-height:1.0769vw;
	color:#fff;
	position: relative;
	display: inline-block;
}
.content-box h3:before {
content: '';
position: absolute;
bottom: -1vw;
display: inline-block;
width: 1.42857vw;
height: 1px;
left: calc((100% - 1.42857vw) / 2);
background-color: #fff;
}
.content-box h3 span{
	font-size: 0.7857vw;
	font-weight:bold;
	line-height: 6em;
	letter-spacing: 0.1em;
	font-family: 'Cormorant Garamond', serif;
	color:#fff;
}
.content-box p{
	font-size: 1vw;
	font-weight:normal;
	letter-spacing: 0.1em;
	font-feature-settings : "palt";
	line-height:2em;
	color:#fff;
	margin-top:3.8vw;
	text-align: center;
}
@media only screen and (max-width: 768px) {
#menu .block:first-child{
	margin:0;
}
.content-box h3{
	font-size:6.25vw;
	line-height: 1em;
}
.content-box h3:before {
	bottom: -4vw;
	width: 2.8125vw;
}
.content-box h3 span{
	font-size: 3.3vw;
	font-weight:normal;
}
.content-box p{
	font-size: 3.7vw;
	font-weight:normal;
	letter-spacing: 0.1em;
	font-feature-settings : "palt";
	line-height:2em;
	color:#fff;
	margin-top:10vw;
	text-align: center;
}
.content-box h3:before {
content: '';
position: absolute;
bottom: -5vw;
display: inline-block;
width: 3.90625vw;
height: 1px;
left: calc((100% - 3.90625vw) / 2);
background-color: #fff;
}
.brown .button {
    margin-top:7.03125vw;
}
.content-box-hr {
    margin-top: 6vw;
    padding: 0;
}
.content-box-hr p{
	writing-mode:horizontal-tb;
	-webkit-writing-mode: horizontal-tb;
	-moz-writing-mode: horizontal-tb;
	-ms-writing-mode: horizontal-tb;
	-ms-writing-mode:horizontal-tb;
	text-align: center;
	font-size: 3.7vw;
}
#menu .block{
	padding: 0;
}
br.sp{
	display: none;
}
.sp{
	display: none;
}
#menu .content-block-2 .block{
	background-size:100vw 68.75vw;
	padding:6.5vw 0 0 0;
}
.button {
    margin-top:7.1875vw;
}
}
.pc{
	display: none;
}
@media only screen and (max-width: 768px) {
.pc{
	display: block;
}
}

.top-title p{
	font-size: 1vw;
	font-weight:normal;
	line-height: 2em;
	letter-spacing: 0.1em;
	font-feature-settings : "palt";
}
