@charset "utf-8";


body {
	/*スマホで勝手に文字が大きくなる対策*/
	-webkit-text-size-adjust: 100%;
}
/*/////////////メイリオにする場合////////////////
#contents *{
	font-family: Helvetica, "hiragino kaku gothic pro","メイリオ","ms pgothic",sans-serif;
}
*/
/*/////////////グーグルフォントにする場合////////////////
#contents *{
	font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic ProN','Meiryo', sans-serif;
}
*/


/*-----------------------------------------------------------
reset
-----------------------------------------------------------*/
.h1_section {
	display: none;
}
body {
    /*スマホで勝手に文字が大きくなる対策*/
    -webkit-text-size-adjust: 100%;
}

.l-main * {
    font-family: "Noto Sans JP";
    font-size: 16px;
    color: #000;
    line-height: 1.5;
    box-sizing: border-box;
}

#contents {
    width: 100%;
    background-color: #fff;
	padding-bottom: 12px;
}

#article {
    width: 950px;
    display: contents;
    justify-content: center;
}

#article a {
    display: block;
}

#path {
    display: none;
}




/*-----------------------------------------------------------
コンテンツ名を入れる
-----------------------------------------------------------*/
#article {

}


.plan_mv {
	width: 100%;
	height: 250px;margin-bottom: 54px;
}
.mv_bg {
	background: url(../images/bg_mv.png) no-repeat center / cover;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.mv_txt {
	font-size: 50px;
	font-weight: 600;
	letter-spacing: 0.05em;
	color: #fff;
	text-align: center;
	text-shadow: 2px 2px 10px rgba(0, 0, 0, 0.3);
}
.detail_txt {
	width: 950px;
    margin: 0 auto 26px;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.9;
	text-align: center;
	margin-bottom: 26px;
}
.vr_btn {
	width: 460px;
	height: 67px;
	margin: 0 auto 60px;
}
.vr_btn a {
	font-size: 18px;
	background-color: #B60280;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	position: relative;
	text-decoration: none;
	cursor: pointer;
	border-radius: 10px;
}
.vr_btn a::after {
	position: absolute;
    content: '';
    width: 8px;
    height: 8px;
    background: url(../images/button_arrow_white.svg) no-repeat center;
    background-size: cover;
    right: 12px;
    bottom: 12px;
}
.plan_method {
	height: 335px;
	background-color: #F8E5F2;
	display: flex;
	padding: 30px;
	width: 950px;
    margin: 0 auto 60px;
}
.video_area {
	width: 490px;
	height: 275px;
}
.video_area img {
	width: 100%;
}
.method_detail {
	counter-reset: method-counter;
	padding-top: 44px;
	margin-left: 19px;
}
.method_ttl {
	font-size: 30px;
	font-weight: 500;
	color: #B60280;
	margin-bottom: 2px;
}
.bold {
	font-weight: bold;
}
.method_detail .method_txt {
	display: list-item;
	list-style: none;
	counter-increment: method-counter;
	position: relative;
	padding-left: 23px;
	margin-bottom: 4px;
}
.method_txt::before {
	content: counter(method-counter);
	border: 1px solid;
	box-sizing: border-box;
	border-radius: 50%;
	height: 19px;
	width: 19px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 12px;
	padding-right: 1px;
	position: absolute;
	top: 4px;
	left: 0;
    
}
.plan_search {
	width: 950px;
    margin: 0 auto 10px;
	height: 401px;
	border: 2px solid #E5E5E5;
	border-radius: 10px;
	padding: 28px 0;
	margin-bottom: 10px;
}
.search_ttl {
	font-size: 30px;
	font-weight: 500;
	color: #B60280;
	text-align: center;
}
.attention_txt {
	font-size: 14px;
	line-height: 1.43;
	text-align: center;
	margin-bottom: 11px;
}
.search_area {
	display: flex;
	justify-content: center;
	gap: 25px;
	margin-bottom: 37px;
}
.search_box {
	margin-top: 18px;
}
.search_btn_area {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 35px;
	padding-left: 120px;
}
.search_btn {
	width: 240px;
	height: 44px;
	background-color: #B60280;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	border-radius: 4px;
	cursor: pointer;
}

.plan_counter {
	font-size: 30px;
	font-weight: 500;
	margin-left: 20px;
	color: #B60280;
}
.counter_txt {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
}
.plan_atention {
	width: 950px;
	font-size: 14px;
	line-height: 1.43;
	margin: 0 auto 60px;
}
.atention_indent {
	font-size: 14px;
	line-height: 1.43;
	padding-left: 57px;
}
[class*="btn--"] {
	width: 305px;
	height: 67px;
}
[class*="btn--"] a {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 10px;
	font-size: 18px;
	position: relative;
	padding-left: 11px;
	text-decoration: none;
	cursor: pointer;
}
.btn--white a {
	color: #B60280;
	border: 1px solid #B60280;
	background: #fff;
	text-decoration: none;
	cursor: pointer;
}
.btn--pink a {
	color: #fff;
	background: #B60280;
	text-decoration: none;
	cursor: pointer;
}
.btn--pink a::after {
	position: absolute;
    content: '';
    width: 8px;
    height: 8px;
    background: url(../images/button_arrow_white.svg) no-repeat center;
    background-size: cover;
    right: 4px;
    bottom: 6px;
}
.btn--white a::after {
	position: absolute;
    content: '';
    width: 8px;
    height: 8px;
    background: url(../images/button_arrow_pink.png) no-repeat center;
    background-size: cover;
    right: 4px;
    bottom: 6px;
}
.table_btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 17px;
	padding: 30px 0;
	background: #F8F5F7;
	width: 100%;
}
.blog_area {
	padding: 30px 0 0;
	width: 950px;
    margin: 0 auto;
}
button {
	appearance: none; 
    -webkit-appearance: none; 
    -moz-appearance: none; 
    background: none;
    border: none;
    padding: 0;
    margin: 0;
    font: inherit;
    color: inherit;
    text-align: left;
    cursor: pointer;
    outline: none;
}
[class*="page_list--"] {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 3px;
}

.page_item b{
	background-color: #F6E0F0;
	color: #B61381;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	overflow: hidden;
	color: #A5A5A5;
	border: 1px solid #E5E5E5;
	text-decoration: none;
	cursor: pointer;
	font-size: 22px;
}

.page_item a{
	width: 36px;
	height: 36px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	overflow: hidden;
	color: #A5A5A5;
	border: 1px solid #E5E5E5;
	text-decoration: none;
	cursor: pointer;
	font-size: 22px;
}
.page_item_square {
	width: 60px;
	height: 28px;
	border-radius: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	overflow: hidden;
	color: #A5A5A5;
	border: 1px solid #E5E5E5;
	font-size: 13px;
	line-height: 2;
	text-decoration: none;
	cursor: pointer;
	position: relative;
}

.page_item_square a {
	width: 100%;
	height: 100%;
	border-radius: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	overflow: hidden;
	color: #A5A5A5;
	font-size: 13px;
	line-height: 2;
	text-decoration: none;
	cursor: pointer;
}
 

.left {
	margin-right: 7px;
}
.right {
	margin-left: 8px;
}
.page_list--top {
	margin-bottom: 10px;
}
.blog_detail {
	width: 305px;
	border: 1px solid #CCCCCC;
	border-radius: 5px;
	padding: 10px 10px 12px 10px;
}
.blog_img {
	width: 285px;
	height: 170px;
}
.blog_img img {
	width: 100%;
	height: 100%;
}
.blog_ttl {
	width: 285px;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.825;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
}
.blog_txt {
	width: 285px;
	font-size: 12px;
	line-height: 1.5;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}
.blog_area_info {
	display: flex;
	gap: 22px 17px;
	flex-wrap: wrap;
}
.blog_area_info {
	margin-bottom: 30px;
}
.page_link_l {
	padding-left: 10px;
	background: url(../images/left.png) no-repeat left 11px center / 10px 10px;
}

.page_link_r {
	padding-right: 8px;
	background: url(../images/right.png) no-repeat right 11px center / 10px 10px;
}
.blog_item a {
	text-decoration: none;
	cursor: pointer;
}
a:hover {
	opacity: 0.8;
}
[class*="search_ttl--"] {
	font-size: 18px;
	font-weight: 500;
	line-height: 1.33;
	margin-bottom: 6px;
}
.search_ttl--frontage,
.search_ttl--depth {
	margin-bottom: 6px;
}

.search_top {
	display: flex;
	align-items: center;
	gap: 30px;
	margin-bottom: 21px;
}

.search_bottom {
	display: flex;
	gap: 30px;
}
.floor,
.direction {
	width: 429px;
	height: 72px;
}
.floor label,
.direction label {
	padding: 9px 17px 8px 9px;
	border: 1px solid #CCCCCC;
	border-radius: 4px;
	box-sizing: border-box;
	font-size: 14px;
}
.floor_select,
.direction_select {
	display: flex;
	align-items: center;
	gap: 3px;
}
.floor input,
.direction input {
	transform: scale(1.5);
	margin-right: 9px;
}
.frontage,
.depth {
	width: 180px;
}
.frontage select,
.depth select {
	width: 180px;
	height: 40px;
	font-size: 14px;
	padding-left: 10px;
	-webkit-appearance: none;
    appearance: none;
	background: url(../images/select_btn.png) no-repeat right 10px center / 10px 9px;
}
.page_link_l.active{
	background: url(../images/left_pink.png) no-repeat left 11px center / 9px 8px;
}
.page_link_r.active{
	background: url(../images/right_pink.png) no-repeat right 11px center / 9px 8px;
}
.page_item.active {
	background-color: #F6E0F0;
	color: #B61381;
	border: 1px solid #F6E0F0;
}
.page_item_square.active {
	background-color: #F6E0F0;
	color: #B61381;
	border: 1px solid #F6E0F0;
}
.page_item_square::before {
	content: "";
	background: url(../images/right.png) no-repeat center / contain;
	width: 6px;
	height: 10px;
	position: absolute;
	top: 9px;
    right: 7px;
}
.page_item_square:nth-of-type(1)::before,
.page_item_square:nth-of-type(2)::before {
	content: "";
	background: url(../images/left.png) no-repeat center / contain;
	width: 6px;
	height: 10px;
	position: absolute;
	top: 9px;
    left: 6px;
}
.page_item_square:hover {
	background-color: #F6E0F0;
	color: #B61381;
}
.page_item_square:hover::before {
	content: "";
	background: url(../images/right_pink.png) no-repeat center / contain;
	width: 6px;
	height: 10px;
	position: absolute;
    top: 9px;
    right: 7px;
}

.page_item_square:nth-of-type(1):hover::before,
.page_item_square:nth-of-type(2):hover::before {
	content: "";
	background: url(../images/left_pink.png) no-repeat center / contain;
	width: 6px;
	height: 10px;
	position: absolute;
    top: 9px;
    left: 6px;
}



.modal-contact {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.8);
	justify-content: center;
	align-items: center;
	z-index: 1000;
}

.js-modal-content {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

.member_modal {
	width: 700px;
	padding: 50px 100px 70px;
	background-color: #F6F6F6;
	border-radius: 24px;
}

.mail_ttl,
.password_ttl {
	font-size: 16px;
	line-height: 1.5em;
	margin-bottom: 2px;
	padding: 0;
}

.login_ttl {
	font-size: 30px;
	line-height: 1.5em;
	color: #B60280;
	text-align: center;
	margin-bottom: 20px;
}

.new_member,
.login_member {
	width: 240px;
	height: 57px;
}

.new_member_btn,
.login_member_btn {
	height: 100%;
	font-size: 16px;
	line-height: 1.875em;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	position: relative;
}

.new_member_btn {
	color: #B60280;
	background-color: #fff;
	border: 1px solid #B60280;
}

.login_member_btn {
	color: #fff;
	background-color: #B60280;
}

.forgot_password a {
	font-size: 13px;
	line-height: 1.91em;
	color: #2680EB;
	text-decoration: underline;
}

.forgot_password {
	margin-bottom: 26px;
}

.member_area {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}

.new_member_btn:hover {
	color: #B60280;
	text-decoration: none;
	opacity: 0.7;
}

.login_member_btn:hover {
	color: #fff;
	text-decoration: none;
	opacity: 0.7;
}

.forgot_btn:hover {
	color: #2680EB;
	opacity: 0.7;
}

.new_member_btn::after {
	content: "";
	background: url(/pg-plan/images/new_member_btn.png) no-repeat center / contain;
	width: 8px;
	height: 8px;
	position: absolute;
	top: 42px;
    left: 225px;
}

.login_member_btn::after {
	content: "";
	background: url(/pg-plan/images/member_btn.png) no-repeat center / contain;
	width: 8px;
	height: 8px;
	position: absolute;
	top: 43px;
    left: 226px;
}

.modal-contact-button {
	width: 43px;
	height: 43px;
}

.modal-contact-button {
	position: absolute;
	top: 10px;
    left: 648px;
}

.login-close {
	cursor: pointer;
	background: url(/pg-plan/images/close.png) no-repeat center / contain;
	border: none;
	width: 100%;
	height: 100%;
	display: block;
}

.login_list {
	border: none;
	padding: 0;
	margin: 0;
}

.login_list input {
	width: 500px;
	height: 40px;
}

.mail_box {
	margin-bottom: 10px;
}

.modal-contact {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.8);
	justify-content: center;
	align-items: center;
	z-index: 1000;
}

.js-modal-content {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

.vr-modal {
	width: 700px;
	padding: 50px 93px 70px;
	background-color: #F6F6F6;
	border-radius: 24px;
}

.modal-contact-button {
	width: 43px;
	height: 43px;
}

.modal-contact-button {
	position: absolute;
	top: 10px;
    left: 648px;
}

.vr-modal-ttl {
	font-size: 30px;
    font-weight: 500;
    color: #B60280;
    text-align: center;
	margin-bottom: 24px;
}

.indent {
	padding-left: 20px;
}

.explanation-item:not(:last-of-type) {
	margin-bottom: 10px;
}

.login-img {
	width: fit-content;
    margin: 0 auto 12px;
}

.login-caution {
	text-align: center;
    margin-bottom: 21px;
}

.login_member_btn {
    width: 100%;
}