@charset "UTF-8";
/* =======================================================
* max-width: 1099px
* ======================================================= */
@media screen and (max-width: 1099px) {
	#header-container {
		width: 100%;
		background-color: rgba(255, 255, 255, 0.92);
		position: fixed;
		top: 0;
		left: 0;
		z-index: 10000;
	}

	#header-container .flex-space-between {
		height: 60px;
		padding: 0;
	}

	.site-logo {
		top: auto;
	  margin: 2% 0 2% 2%;
		z-index: 1001;
	}

	.site-logo img {
		max-width: 100px;
		min-width: 80px;
		width: 100%;
		height: auto;
	}

	#menu-btn {
		display: block;
		width: 24px;
		height: 24px;
		cursor: pointer;
		position: absolute;
		top: 32%;
		right: 1%;
		transition: 0.5s;
		z-index: 1001;
	}

	#menu-btn.open {
		background: #282728;
		box-sizing: content-box;
		top: 1%;
		right: 0%;
		padding: 2%;
	}

	#menu-btn.open::before,
	#menu-btn.open::after {
		background-color: #FFF;
	}

	#nav-container {
		padding: 63.5px 0;
	}

	#main-navigation {
		margin: 6% 3%;
	}

	#main-navigation ul {
		margin: 0;
	}

	#main-navigation ul li {
		display: block;
	}

	#main-navigation ul li a {
		text-align: center;
		padding: 15px 0;
	}

	#sub-navigation.sp_hide {
		display: flex !important;
		width: 280px;
    justify-content: flex-end;
		padding: 5% 24% 4% 4%;
	}

	#sub-navigation.sp_hide .btn {
		margin: 0 1%;
	}

	#sub-navigation.sp_hide .btn a {
		font-size: 10px;
		padding: 3px 15px;
	}

	#nav-container .sp_hide {
		width: 250px;
		margin: 0 auto;
	}

	#nav-container .sp_hide a {
		padding: 4% 0;
		margin: 4% auto;
	}

	#eyecath {
    background: #F7F6F3;
    padding: 65px 0 1%;
	}

	.search-container input[type="text"] {
		font-size: 12px;
	}

	#top #wrapper {
		padding-top: 60px;
	}

	#top #borrow {
		padding-top: 60px;
	  margin-top: -60px;
	}


	/* 下層共通 */
	#under #eyecath {
		margin-top: 60px;
		padding: 18.4% 0;
	}

	.under-inner {
		padding: 0 4%;
	}

	.under-inner .form-inner {
		padding: 0;
	}
	
}

@media screen and (max-width: 883px) {
	.search-container input[type="text"] {
		width: 100%;
	}
}

/* =======================================================
* max-width: 768px
* ======================================================= */
@media screen and (max-width: 768px) {

	input::placeholder,
	input ::-webkit-input-placeholder {
		line-height: 1.286;
	}

	button {
		width: 100%;
	}

	section {
		padding: 7% 4%;
	}

	#sub-navigation.sp_hide {
    width: 250px;
	}

	#menu-btn.open::before,
	#menu-btn.open::after {
		/*left: 13px;*/
	}

	#eyecath {
		padding: 7.7% 0 1%;
	}

	.arrival {
		width: 90%;
		bottom: -110px;
		padding: 12px 18px;
	}

	.arrival .flex-align-center {
		display: block !important;
	}

	.arrival .news {
		font-size: 15px;
	}

	.arrival .day {
		padding-right: 10px;
	}

	.arrival a {
		display: block;
	}

	.search-container {
		width: 100%;
	}

	.search-container input[type="text"] {
		padding: 0;
	}

	#main-container {
		padding: 0;
	}

	#main {
		width: 100%;
		padding: 0;
	}

	#main #search {
		padding: 45% 4% 10%;
	}

	#main #search .flex .btn {
		flex: 1;
		padding: 2%;
	}

	#main #search .btn:first-of-type {
		margin-right: 2%;
	}

	#main #search .btn:last-of-type {
		margin-left: 2%;
	}

	#main #search .btn a {
		padding: 5px 0;
	}

	#main #search span {
		font-size: 12px;
	}

	#borrow,
	#new-property,
	#new-column {
		padding: 0 4%;
	}

	h2 {
		font-size: 20px;
		padding: 8% 0 2%;
	}

	.col3 {
	  width: calc(50% - 10px / 2);
		margin: 0 10px 20px 0;
	}

	.col3:nth-child(2n) {
		margin-right: 0;
	}

	.col3 .title {
		font-size: 14px;
		padding: 3% 0 1%;
	}

	.col3 .place,
	.col3 .price {
		font-size: 13px;
	}
	
  .trim-square img.full {
    bottom: 5px;
    left: 5px;
  }
	
  .trim-square img.full_buy {
    width : 148px;
    height: 30px;
    bottom: 54px;
    left  : 16px;
  }
  
  
	.category img {
		width: 30px;
		top: 5px;
		left: 5px;
	}

	#eims .inner,
	#register {
		padding: 8% 6%;
	}

	#eims {
		padding: 0;
		margin: 8% 4% 2%;
	}

	#eims img {
		max-width: 170px;
	}

	#eims p {
    padding: 6% 0 0 0;
	}

	#buy::before,
	#register {
		border-radius: 0;
	}

	#buy .flex-space-between {
		display: block;
	}

	#buy .btn a {
    padding: 10px;
		margin-bottom: 6%;
	}

  #banner {
    padding-top: 0;
    margin-top: 0;
  }
  
	#banner .flex-space-between {
		display: block;
	}

	#banner img {
		margin: 2% auto;
	}

	#register {
		margin-bottom: 11%;
	}

	#register h2 {
		font-size: 18px;
	}

	#register .flex-center {
		display: block;
	}

	#register .btnOrg {
		width: 220px;
		margin: 0 auto 6%;
	}

	#new-column {
		padding-bottom: 4%;
	}

	.social a {
    padding: 0 6%;
	}

	.social img {
    width: 40px;
	}

	#footer-container .flex {
		display:block;
		padding: 4% 0;
	}

	#footer-container .col2 {
		width: 100%;
		padding: 2% 4%;
	}

	#footer .flex-space-between,
	#footer .list_wrapper {
		display: block !important;
	}

	#footer .flex-space-between {
		padding: 8% 4%;
	}

	#footer .list_wrapper {
		padding: 0;
	}

	#footer ul {
		justify-content: center;
	}

	#footer ul li {
		padding: 1% 1.2%;
	}

	#footer img {
		width: 200px;
	}

	#footer .tel {
		padding: 8% 0 10%;
	}

	.scroll-top_wrapper {
		background-color: #E5E5E5;
	}

	.scroll-top_wrapper img {
		position: relative;
		top: 45px;
		right: 0;
		bottom: 0;
	  left: 50%;
	  transform: translate(-50%,-50%);
	}

	/* popup */
	.btn-close button.close {
		text-align: right;
	}

	.pop button,
	.popup .close {
    padding: 20px 15px;
  }

	.popup_wrapper {
		width: 75%;
	}

	#popup2,
	#popup3,
	#popup4 {
		display: none;
	}

	/* 下層共通 */
	#under #eyecath h2 {
		font-size: 22px;
	}

	.sort {
		flex-wrap: wrap;
		padding-top: 2%;
	}

	.sort p {
		width: calc(50% - 20px / 2);
		font-size: 12px;
		margin: 0 10px 10px 0;
	}

	.pagefeed {
		padding: 8% 0;
	}

	.nav_links {
  padding: 2% 0;
	}

}

/* =======================================================
* max-width: 480px
* ======================================================= */
@media screen and (max-width: 480px) {
	.site-logo {
		margin: 4% 0 4% 4%;
	}

	.site-logo img {
		vertical-align: middle;
	}

	#menu-btn {
		top: 32%;
		right: 5%;
	}

	#menu-btn.open {
		padding: 4%;
	}

	#eyecath {
    padding: 14.7% 0 1%;
	}

	#footer-navigation ul > li > a {
		margin: 1vw;
	}

}

/* =======================================================
* max-width: 320px
* ======================================================= */
@media screen and (max-width: 320px) {
	.site-logo img {
		min-width: 70px;
	}

	#sub-navigation.sp_hide {
		padding-right: 25%;
	}

	#menu-btn {
		top: 26%;
	}

	#menu-btn.open::before,
	#menu-btn.open::after {
    /*left: 13px;*/
	}

	#eyecath {
    padding: 15.7% 0 1%;
	}

}
