@charset "UTF-8";
#inner.visitor.login .main .visual {
    padding: 150px 0 40px 0;
}
#inner.visitor.login .main .visual .inner {
    width: 980px;
    margin: 0 auto;
    display: flex;
    align-items: end;
}
#inner.visitor.login .main .visual .inner h1 {
    font-size: 70px;
    letter-spacing: 0.1em;
    line-height: 1em;
}
#inner.visitor.login .main .visual .inner .label {
    margin: 0 0 4px 25px;
    font-size: 24px;
    letter-spacing: 0.1em;
}
#inner.visitor.login .main .content {}
#inner.visitor.login .main .content .loginbox {
    border: 1px solid #594d47;
    width: 980px;
    margin: 0 auto 140px auto;
    box-sizing: border-box;
    padding: 100px 130px;
}
#inner.visitor.login .main .content .loginbox .lead {
    letter-spacing: 0.1em;
    line-height: 2.4em;
    font-size: 15px;
}
#inner.visitor.login .main .content form {
    display: flex;
    margin-top: 35px;
}
#inner.visitor.login .main .content form .input_password {
    width: 80%;
}
#inner.visitor.login .main .content form .input_password input#password {
    display: block;
    width: 100%;
    font-size: 20px;
    padding: 24px 20px;
    box-sizing: border-box;
}
#inner.visitor.login .main .content form .input_submit {
    width: 20%;
}
#inner.visitor.login .main .content form .input_submit button {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #594d47;
    width: 100%;
    height: 100%;
    color: #fff;
    font-size: 18px;
}
#inner.visitor.login .main .content .entry {
    margin-top: 100px;
    padding-top: 58px;
    border-top: 1px solid #594d47;
}
#inner.visitor.login .main .content .entry .title {
    color: #594d47;
    font-size: 24px;
    letter-spacing: 0.1em;
    margin-bottom: 9px;
}
#inner.visitor.login .main .content .entry .lead {}
#inner.visitor.login .main .content .entry .bt_entry {
    background: #594d47;
    display: flex;
    color: #fff;
    font-size: 22px;
    padding: 16px 0;
    text-align: center;
    width: 280px;
    margin-top: 24px;
    justify-content: center;
}
#inner.visitor.login .main .content .entry .bt_entry span {
    display: block;
    background: url(../images/icon_arrow_w.webp) no-repeat right 10px top 60% / 37px auto;
    transition: all ease 0.3s;
    padding: 0 55px 0 20px;
}
#inner.visitor.login .main .content .entry .bt_entry:hover span {
    background-position: right 0px top 60%;
    opacity: 1;
}
#inner.visitor.index .main .visual {
    padding: 184px 0 0px 0;
    background: url(./images/img_visual.webp) no-repeat center center / cover;
    color: #182A1B;
    height: 550px;
    box-sizing: border-box;
    position: relative;
}
#inner.visitor.index .main .visual .inner {
    width: 980px;
    margin: 0 auto;
    align-items: end;
}
#inner.visitor.index .main .visual .inner h1 {
    font-size: 70px;
    letter-spacing: 0.1em;
    line-height: 1em;
}
#inner.visitor.index .main .visual .inner .label {
    margin: 20px 0 0 0;
    font-size: 24px;
    letter-spacing: 0.1em;
}
#inner.visitor.index .main .visual .inner .text {
    margin: 20px 0 0 0;
    font-size: 15px;
    letter-spacing: 0.1em;
    line-height: 2.4em;
}
#inner.visitor.index .main .visual .caption {
    position: absolute;
    right: 10px;
    color: #000;
    left: auto;
    text-shadow: none;
}
#inner.visitor.index .main .content {
    padding: 150px 0 140px 0;
}
#inner.visitor.index .main .content .fbox {
    width: 980px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 100px 0;
}
#inner.visitor.index .main .content .fbox a,
#inner.visitor.index .main .content .fbox button {
    width: 45%;
    display: flex;
    background: url(./images/bt_pamphlet.webp) no-repeat center center /cover;
    justify-content: center;
    align-items: center;
    color: #fff;
    height: 360px;
    border: 0.5px solid #594d47;
    position: relative;
}
#inner.visitor.index .main .content .fbox a.new::before,
#inner.visitor.index .main .content .fbox button.new::before {
  content: "NEW";
  position: absolute;
  left: 5px;
  top: 5px;
  color: #a4201b;
  background: #d0db00;
  line-height: 1em;
  width: 72px;
  text-align: center;
  padding: 4px 0px 6px 2px;
  font-family: "Shippori Mincho", serif;
  font-weight: bold;
  font-size: 20px;
}
#inner.visitor.index .main .content .fbox a .caption,
#inner.visitor.index .main .content .fbox button .caption {
	left: auto;
	right: 10px;
	color: #fff;
}
#inner.visitor.index .main .content .fbox a.nolink {
    pointer-events: none;
}
#inner.visitor.index .main .content .fbox .bt_qualitybook {
    background-image: url(./images/bt_qualitybook.webp);
}
#inner.visitor.index .main .content .fbox .bt_modelroomguide {
    background-image: url(./images/bt_modelroomguide.webp);
}
#inner.visitor.index .main .content .fbox .bt_selectguide {
    background-image: url(./images/bt_selectguide.webp);
}
#inner.visitor.index .main .content .fbox a .info,
#inner.visitor.index .main .content .fbox button .info {
	width: 300px;
	margin-left: 25px;
}
#inner.visitor.index .main .content .fbox a .info .label,
#inner.visitor.index .main .content .fbox button .info .label {
    font-size: 24px;
    letter-spacing: 0.1em;
}
#inner.visitor.index .main .content .fbox a .info .title,
#inner.visitor.index .main .content .fbox button .info .title {
    font-size: 24px;
    letter-spacing: 0.2em;
}
#inner.visitor.index .main .content .fbox .info .title.ls {letter-spacing: 0;}
#inner.visitor.index .main .content .fbox a .info .more,
#inner.visitor.index .main .content .fbox button .info .more {
    background: url(../images/icon_arrow_w.webp) no-repeat right 10px top 60% / 37px auto;
    transition: all ease 0.3s;
    padding: 0 60px 0 0px;
    margin-top: 10px;
    display: block;
    width: 90px;
}
#inner.visitor.index .main .content .fbox a:hover,
#inner.visitor.index .main .content .fbox button:hover {
    opacity: 1;
}
#inner.visitor.index .main .content .fbox a:hover .info .more,
#inner.visitor.index .main .content .fbox button:hover .info .more {
    background-position: right 0px top 60%;
    opacity: 1;
}

#inner.visitor.index .main .content .movie {
    margin: 120px auto 0px auto;
    width: 740px;
}
#inner.visitor.index .main .content .movie .title {
    font-size: 22px;
    line-height: 1.8em;
    text-align: center;
    letter-spacing: 0.15em;
    margin-bottom: 30px;
}
#inner.visitor.index .main .content .movie .bt_movie {
    width: auto;
    margin: 30px auto 0 auto;
    display: block;
    position: relative;
}
#inner.visitor.index .main .content .movie .bt_movie::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 110px;
    height: 110px;
    background: #fff;
    border-radius: 100px;
    transform: translate(-50%, -50%);
    opacity: 0.8;
}
#inner.visitor.index .main .content .movie .bt_movie::after {
    left: 50%;
    top: 50%;
    border: solid transparent;
    content: "";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(136, 183, 213, 0);
    border-left-color: #71635b;
    border-width: 25px;
    margin: -25px 0 0 -1px;
    transform: scale(1.5, 1);
}
#inner.visitor.index .main .content .bnr_modelroom {display: block;width: 982px;margin: 100px auto 0px auto;}
#inner.visitor.index .main .content .bnr_modelroom:hover {
	opacity: 0.75;
}
/**************************************************************/
/** SP ********************************************************/
/**************************************************************/
@media screen and (max-width: 767px) {
	#inner.visitor.login .main .visual {
		padding: 60px 0 40px 0;
	}
	#inner.visitor.login .main .visual .inner {
		width: 80%;
		margin: 0 auto;
		display: block;
		align-items: end;
	}
	#inner.visitor.login .main .visual .inner h1 {
		font-size: 34px;
		letter-spacing: 0.1em;
		line-height: 1em;
	}
	#inner.visitor.login .main .visual .inner .label {
		margin: 10px 0 0 0;
		font-size: 18px;
		letter-spacing: 0.1em;
	}
	#inner.visitor.login .main .content {}
	#inner.visitor.login .main .content .loginbox {
		/* border: 1px solid #d0db00; */
		width: 80%;
		margin: 0 auto 60px auto;
		box-sizing: border-box;
		padding: 36px 20px;
	}
	#inner.visitor.login .main .content .loginbox .lead {
		letter-spacing: 0.1em;
		line-height: 2em;
		font-size: 13px;
	}
	#inner.visitor.login .main .content form {
		display: flex;
		margin-top: 20px;
	}
	#inner.visitor.login .main .content form .input_password {
		width: 78%;
	}
	#inner.visitor.login .main .content form .input_password input#password {
		display: block;
		width: 100%;
		font-size: 16px;
		padding: 10px 10px;
		box-sizing: border-box;
	}
	#inner.visitor.login .main .content form .input_submit {
		width: 22%;
	}
	#inner.visitor.login .main .content form .input_submit button {
		display: flex;
		justify-content: center;
		align-items: center;
		/* background: #d0db00; */
		width: 100%;
		height: 100%;
		/* color: #182c1b; */
		font-size: 11px;
	}
	#inner.visitor.login .main .content .entry {
		margin-top: 40px;
		padding-top: 20px;
		/* border-top: 1px solid #d0db00; */
	}
	#inner.visitor.login .main .content .entry .title {
		/* color: #d0db00; */
		font-size: 20px;
		letter-spacing: 0.1em;
		margin-bottom: 9px;
	}
	#inner.visitor.login .main .content .entry .lead {}
	#inner.visitor.login .main .content .entry .bt_entry {
		/* background: #d0db00; */
		display: flex;
		/* color: #000; */
		font-size: 14px;
		padding: 10px 0;
		text-align: center;
		width: 180px;
		margin-top: 18px;
		justify-content: center;
	}
	#inner.visitor.login .main .content .entry .bt_entry span {
		display: block;
		background: url(../images/icon_arrow_w.webp) no-repeat right 10px top 60% / 27px auto;
		transition: all ease 0.3s;
		padding: 0 42px 0 16px;
	}
	#inner.visitor.login .main .content .entry .bt_entry:hover span {
		background-position: right 0px top 60%;
		opacity: 1;
	}
	#inner.visitor.index .main .visual {
		padding: 69px 0 0px 0;
		background: url(./images/img_visual.webp) no-repeat center center / cover;
		color: #182A1B;
		height: 210px;
		box-sizing: border-box;
		position: relative;
	}
	#inner.visitor.index .main .visual .inner {
		width: 80%;
		margin: 0 auto;
		align-items: end;
	}
	#inner.visitor.index .main .visual .inner h1 {
		font-size: 34px;
		letter-spacing: 0.1em;
		line-height: 1em;
	}
	#inner.visitor.index .main .visual .inner .label {
		margin: 10px 0 0 0;
		font-size: 18px;
		letter-spacing: 0.1em;
	}
	#inner.visitor.index .main .visual .inner .text {
		margin: 20px 0 0 0;
		font-size: 15px;
		letter-spacing: 0.1em;
		line-height: 2.4em;
	}
	#inner.visitor.index .main .visual .caption {
		position: absolute;
		right: 10px;
		color: #000;
		left: auto;
		text-shadow: none;
	}
	#inner.visitor.index .main .content {
		padding: 55px 0 60px 0;
	}
	#inner.visitor.index .main .content > .text {
		font-size: 13px;
		letter-spacing: 0.1em;
		line-height: 2.4em;
		width: 80%;
		margin:  0 auto;
	}
	#inner.visitor.index .main .content .fbox {
		width: 80%;
		margin: 50px auto 0 auto;
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		gap: 50px;
	}
	#inner.visitor.index .main .content .fbox a,
	#inner.visitor.index .main .content .fbox button {
		width: auto;
		display: flex;
		justify-content: center;
		align-items: center;
		/* color: #d0db00; */
		height: 70vw;
		/* border: 0.5px solid #d0db00; */
	}
	#inner.visitor.index .main .content .fbox a.new::before,
	#inner.visitor.index .main .content .fbox button.new::before {
	  content: "NEW";
	  position: absolute;
	  left: 5px;
	  top: 5px;
	  color: #a4201b;
	  background: #d0db00;
	  line-height: 1em;
	  width: 70px;
	  text-align: center;
	  padding: 4px 0px 6px 2px;
	  font-family: "Shippori Mincho", serif;
	  font-weight: bold;
	  font-size: 18px;
	}
	#inner.visitor.index .main .content .fbox a.nolink {
		pointer-events: none;
	}
	#inner.visitor.index .main .content .fbox a .info,
	#inner.visitor.index .main .content .fbox button .info {
		width: 255px;
		margin-left: 25px;
	}
	#inner.visitor.index .main .content .fbox a .info .label,
	#inner.visitor.index .main .content .fbox button .info .label {
		font-size: 20px;
		letter-spacing: 0.1em;
		line-height: 1.8em;
	}
	#inner.visitor.index .main .content .fbox a .info .title,
	#inner.visitor.index .main .content .fbox button .info .title {
		font-size: 20px;
		letter-spacing: 0.2em;
		line-height: 1.8em;
	}
	#inner.visitor.index .main .content .fbox a .info .more,
	#inner.visitor.index .main .content .fbox button .info .more {
		background: url(../images/icon_arrow_w.webp) no-repeat right 10px top 60% / 37px auto;
		transition: all ease 0.3s;
		padding: 0 54px 0 0px;
		margin-top: 6px;
		display: block;
		width: 80px;
		font-size: 14px;
	}
	#inner.visitor.index .main .content .fbox a:hover {
		opacity: 1;
	}
	#inner.visitor.index .main .content .fbox a:hover .info .more {
		background-position: right 0px top 60%;
		opacity: 1;
	}
	#inner.visitor.index .main .content .movie {
	    margin: 60px auto 0px auto;
	    width: 90%;
	}
	#inner.visitor.index .main .content .movie .title {
	    font-size: 15px;
	    line-height: 1.8em;
	    text-align: center;
	    margin-bottom: 20px;
	}
	#inner.visitor.index .main .content .movie .bt_movie {
		width: auto;
		margin: 20px auto 0 auto;
		display: block;
		/* border: 6px solid #CFDB00; */
		position: relative;
	}
	#inner.visitor.index .main .content .movie .bt_movie::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		width: 50px;
		height: 50px;
		/* border: 3px solid #CFDB00; */
		border-radius: 100px;
		transform: translate(-50%, -50%);
	}
	#inner.visitor.index .main .content .movie .bt_movie::after {
		left: 50%;
		top: 50%;
		border: solid transparent;
		content: "";
		height: 0;
		width: 0;
		position: absolute;
		pointer-events: none;
		border-color: rgba(136, 183, 213, 0);
		border-left-color: #71635b;
		border-width: 12px;
		margin: -12px 0 0 -1px;
		transform: scale(1.5, 1);
	}
	#inner.visitor.index footer .movie .bnr_kurasu {
		/* margin-top: 0; */
	}
	#inner.visitor.index .main .content .bnr_modelroom {display: block;width: 90%;margin: 40px auto 0px auto;}
	#inner.visitor.index .main .content .bnr_modelroom:hover {
		opacity: 0.75;
	}
}