@charset "utf-8";
/*
Theme Name: realestate
Theme URI: https://toikota.com/
Author: toikota design studio
Author URI: https://toikota.com/
Version: 0.0.1
*/
/* リセットCSS */
*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}main{display:block}h1,h2,h3,h4,h5,h6{font-size:inherit;line-height:inherit;font-weight:bold;}a{text-decoration:none;color:inherit;transition:all .3s ease-in-out}img{display: block;max-width:100%;height:auto;vertical-align: middle;}ol,ul{list-style:none}table{border-collapse:collapse}input,textarea,select{font:inherit;line-height:inherit;border:1px solid #ccc;padding:8px;}textarea{resize:vertical}button{padding: 0;font-family: inherit;appearance: none;cursor: pointer;background-color: transparent;border: none;}fieldset{border:0;padding:0;margin:0;min-width:0}legend{display:block;width:100%;max-width:100%;padding:0;white-space:normal;}[hidden],template{display:none}:focus-visible{outline:2px solid #000}

/* 汎用CSS
===================================================== */

/* スマホでテキストの折り返し用 */
.ib {display: inline-block}

/* フォーム */
label {margin-bottom:8px;}
select,
input[type=date],
input[type=email],
input[type=number],
input[type=password],
input[type=tel],
input[type=text],
input[type=url],
textarea {width: 100%;max-width: 100%;padding: 8px 16px;background-color: #fff;margin-top: 4px;}
select,input,textarea {line-height: 1.1;font-family: inherit;font-size: inherit;font-weight: inherit;}

input[type="submit"],
input[type="button"]{padding: 12px 16px;}

.fontM{font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;}
.fontG{font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;}
.fonten{font-family:var(--en-font)}

:root {
	--font-color: #013064;
	--main-color:#EA602A;
	--bg-color: #2e2e2e;
	--main-font:"Noto Sans JP", sans-serif;
	--hover-transform:all .3s ease-in-out;
	--hamburger-transform:display .5s ease-in-out;
	--show-anime:opacity .5s , translate 1s;
	--clip-triangle-top: polygon(50% 0, 100% 100%, 0 100%);
	--clip-triangle-bottom: polygon(0 0, 100% 0, 50% 100%);
	--clip-triangle-right: polygon(0 0, 100% 50%, 0 100%);
	--clip-triangle-left: polygon(0 50%, 100% 0, 100% 100%);
	--clip-triangle-lower-left: polygon(0 0, 100% 100%, 0 100%);
	--clip-triangle-upper-left: polygon(0 0, 100% 0, 0 100%);
	--clip-triangle-lower-right: polygon(100% 0, 100% 100%, 0 100%);
	--clip-triangle-upper-right: polygon(0 0, 100% 0, 100% 100%);
}

::selection {background-color: var(--main-color);color:#fff;}

/* 基本レイアウト
===================================================== */

html{height: -webkit-fill-available;}
body{min-height: 100vh;min-height: -webkit-fill-available;}

body {font-size: 16px;font-family:var(--main-font);line-height:1.6;letter-spacing: .05em;color: var(--font-color);text-align: justify;font-feature-settings: "palt";}

#page{overflow:hidden;}
.page-content{padding-block: 80px;}
.container{width: 1140px;max-width: 100%;padding-inline: 20px;margin-inline: auto;position: relative;z-index:11}

@media(max-width:720px){
	body{font-size:14px;}
}

/* 投稿一覧
===================================================== */
.posts-archive-list{display:grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 40px;}
.posts-item{position:relative;display: flex;flex-direction: column;}
.posts-thumbnail{width:100%;aspect-ratio:3/2;overflow:hidden}
.posts-thumbnail img{display:block;width:100%;height:100%!important;object-fit:cover;transition:var(--hover-transform);}
.posts-item-des{margin-top: 32px;}
.posts-cat-list{display:flex;flex-wrap:wrap;gap:8px 1em;}
.posts-cat-list li{padding-block:2px;padding-inline:16px;border:1px solid #fff;font-size:14px;color:#fff;}
.posts-tit{font-size:18px;color:#fff;margin-top:16px;}
.posts-more{width:fit-content;margin-top: auto;margin-left:auto;padding-top: 16px;}
.posts-more span{font-weight:900;text-transform:uppercase;color:var(--main-color)}

.article-wrap{width: 800px;max-width: 100%;margin-inline:auto;}
.posts-list-content{position:relative;display:flex;flex-direction:column;}
/* ページネーション */
.pagination{margin-top: 80px;}
.nav-links ul{position: relative;display:flex;gap: 8px;align-items: center;justify-content: center;width: 100%;flex-wrap: wrap;font-family: var(--en-font);line-height: 1;}
.nav-links li .page-numbers{width:40px;aspect-ratio:1;border: 1px solid;display:grid;place-items:center;background-color: #fff;position:relative;}
.nav-links li .page-numbers.current{background-color: var(--main-color);border: none;}

/* 記事
===================================================== */

/* 関連記事 */
.single-related{margin-top:80px;}
.single-related-list{display:grid;gap: 32px;grid-template-columns:repeat(2,minmax(0,1fr))}
.single-related-list li{position:relative;}
.single-related-tit{font-size: 24px;color: var(--main-color);margin-block:1em .5em;padding-top: .5em;border-top:1px solid var(--font-color);}
.single-related-item{display:grid;grid-template-columns: 160px minmax(0,1fr);gap: 16px;}
.single-related-img{width:100%;aspect-ratio:3/2;}
.single-related-img img{width:100%;height:100%;object-fit:cover;}
.single-related-des{display:flex;flex-direction:column;}
.single-related-des h4{line-height:1.2;color: #fff;}

/* 投稿者情報 */
.author-info{padding-block: 40px;padding-inline: 24px;background-color: #E4E4E4;}
.author-name{width:fit-content;}
.author-name img{width: 240px;}
.author-data{margin-top: 1em;}
.author-data-head{font-size:12px;}
.author-data-body{margin-top:1em;font-size: 12px;}
.author-googlemap{margin-top: 8px;}
.author-googlemap a{font-size:14px;font-family:var(--en-font);line-height:1;display:inline-block;padding:8px 24px;background-color: #fff;}
.author-contact{margin-top: 1em;}

.single-content-item{margin-top:40px;}
.shingle-update{font-family:var(--en-font)}
.single-title{font-size: 24px;margin-bottom: 1em;color: #fff;}
.single-thumbnail{margin-bottom: 40px;}

/* 記事コンテンツ内部 */
.single-content h2{font-size: 24px;padding-block:8px;padding-inline:8px;margin-block:1em;background-color:var(--gray-color)}
.single-content h3{font-size: 24px;padding-block:8px;margin-block:1em;border-bottom:1px solid var(--font-color);}
.single-content h4{font-size: 24px;color: var(--main-color);margin-block: 1em 4px;padding-top: .5em;border-top:1px solid var(--font-color);}
.single-content h5{font-size: 16px;font-weight: 700;margin-block:1em}
.single-content a {text-decoration:underline;text-underline-offset:4px;}
.single-content img{display:block;}

/* レイアウト用 */
/* 文字に蛍光ペンで引いたような下線 */
.marker{background:linear-gradient(transparent 65%, #fff366 65%);display:inline;font-weight:600}

.single-posts-nav{margin-block: 40px;}
.single-posts-nav ul{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:40px;}
.single-posts-nav ul li a{display:block;padding-inline:24px;color: #fff;position: relative;}
.single-posts-nav ul li a::after{content:'';position:absolute;width:10px;aspect-ratio:1/1;border-top:1px solid;border-right:1px solid;top: 24px;}
.single-posts-nav ul li.single-next{text-align:right;}
.single-posts-nav ul li.single-next a::after{rotate:45deg;right:0;}
.single-posts-nav ul li.single-previous a::after{rotate:225deg;left:0;}
.single-posts-nav ul li.single-previous{border-right:1px solid}
.single-prev-txt,
.single-next-txt{font-size:12px;}

.single-more{width:fit-content;margin-top:40px;margin-inline:auto}
.single-more a{display:block;padding-block:8px;padding-inline:24px;background-color:var(--main-color);color:var(--font-color);font-size:16px;font-weight:bold;text-align:center;text-transform:uppercase}

/* 記事ページネーション */
.single-pagination{width:400px;max-width: calc(100% - 32px);margin:64px auto 0;}
.single-pagination ul{display:flex;justify-content: space-between;gap: 16px;}
.single-pagination li a{display:block;font-size:14px;font-weight: bold;padding: 4px 24px;border:1px solid #000;text-align:center;position:relative;line-height: 1;}
.single-pagination li.single-previous,
.single-pagination li.single-next{width: 97px;font-size:12px;font-family: var(--en-font);font-weight:bold;}
.single-pagination li.single-previous a::before{content:'';display:inline-block;width: 8px;height: 8px;border-bottom:1px solid #000;border-left:1px solid #000;margin-right:8px;transform: rotate(45deg);vertical-align: 1px;}
.single-pagination li.single-next a::after{content:'';display:inline-block;width: 8px;height: 8px;border-top:1px solid #000;border-right:1px solid #000;margin-left:8px;transform: rotate(45deg);vertical-align: 1px;}

/* ヘッダー
===================================================== */
.sec-header{position: fixed;top:0;left:0;right:0;z-index: 1;background-color:#fff;}
.header-content{display:grid;grid-template-columns: 280px minmax(0,1fr);gap:40px;align-items:center;padding-block: 16px;padding-inline: 40px;}
.header_Menu_list{display:flex;justify-content:flex-end;gap:2em;}
.header_Menu_list li a{font-size:18px;font-weight: bold;}

/* ハンバーガーメニュー */
.header-hamburger{display:none}
.hamburgerbutton {position: fixed;display: block;text-decoration: none;-webkit-appearance: none;-moz-appearance: none;appearance: none;border: none;cursor: pointer;height: 78px;width: 78px;background-color: transparent;padding: 0;margin:0 auto;top: 0;right: 0;z-index: 111;}
.hamburgerbutton-line {position: absolute;inset:0;margin: auto;width: 40px;height: 3px;-webkit-transition: inherit;transition: inherit;background-color: var(--main-color);}
.hamburgerbutton-line::before,
.hamburgerbutton-line::after {position: absolute;display: block;width: 100%;height: 100%;background-color: inherit ;content: '';-webkit-transition: inherit;transition: inherit;transition: transform .2s;}
.hamburgerbutton-line::before {top: -10px;}
.hamburgerbutton-line::after {top: 10px;}
.hamburgerbutton[aria-expanded="true"] .hamburgerbutton-line {background-color: transparent;}
.hamburgerbutton[aria-expanded="true"] .hamburgerbutton-line::before,
.hamburgerbutton[aria-expanded="true"] .hamburgerbutton-line::after {top: 0;background-color: var(--main-color);}
.hamburgerbutton[aria-expanded="true"] .hamburgerbutton-line::before {transform: rotate(45deg);width:100%;}
.hamburgerbutton[aria-expanded="true"] .hamburgerbutton-line::after {transform: rotate(-45deg);width:100%;}
.visuallyHidden {position: absolute;white-space: nowrap;width: 1px;height: 1px;overflow: hidden;border: 0;padding: 0;clip: rect(0 0 0 0);clip-path: inset(50%); margin: -1px;}
.nav_hamburger_menu{position:fixed;inset: 0;margin: auto;width: 100%;height: 100dvh;overflow: auto;transition: opacity .5s;align-items: center;pointer-events: none;}

.hamburger-content{width: 640px;max-width: 89%;height: 100%;margin-left: auto;background-color: #2e2e2e;padding-inline: 20px;padding-block: 40px;overflow: auto;opacity:0;transition:opacity 1.4s cubic-bezier(0.14,1,0.34,1)}

.hamburger-logo{width: fit-content;padding-inline:40px;}
.hamburger-logo .hamburger-site-logo{position:relative;z-index:111;}
.hamburger-logo .hamburger-site-logo img{height:auto;width:264px;position:relative;z-index:111;}
.hamburger-logo .hamburger-site-logo::before{content:'';position:absolute;width:calc(100% + 10px);height:100%;background-color:#fff;z-index:0;transform:skew(-45deg);left:-20px;top:-8px;}
.hamburger-logo .hamburger-site-logo::after{content:'';position:absolute;width:calc(100% + 10px);;height:100%;background-color:#fff;z-index:0;transform:skew(-45deg);left:10px;top:8px;}
.hamburger_Menu{margin-top: 40px;}
.hamburger_Menu li:not(:first-child){margin-top: 1em;}
.hamburger_Menu li a{display: flex;align-items:center;justify-content:space-between;font-size: 16px;color: #fff;padding-inline: 8px;padding-bottom:4px;border-bottom:1px solid #E4E4E4}
.hamburger_Menu li a::after{content:attr(title);display: inline-block;font-size:18px;font-weight:bold;text-transform:uppercase;color:var(--main-color)}

.hamburger_Menu li.hamburger-contact a{display:block;padding-block:16px;padding-inline:16px;background-color:var(--main-color);color:var(--font-color);text-align:center;border:none;margin-top:24px;}
.is-drawerActive .hamburgerbutton{z-index: 1112;background-color:transparent}
.is-drawerActive .nav_hamburger_menu{pointer-events: auto;}


.is-drawerActive .hamburgerbutton{z-index: 1112;background-color:transparent}
.is-drawerActive .nav_hamburger_menu{display: flex;}
.is-drawerActive .hamburger-content{opacity:1}
.hamburger-link{display:flex;align-items:center;justify-content: center;gap: 40px;margin-top: 24px;}
.hamburger-link p{width:48px;aspect-ratio:1/1;display:grid;place-items:center;filter:grayscale(100%)}

.is-drawerActive .sec-header{position:absolute;width:100%;z-index: 1111;}

/* フッター
---------------------------- */


@media(max-width:1260px){
	.header-nav{display:none;}
	.header-hamburger{display:block;}
}

@media(max-width:676px){
}

/*-------------------------------------
/* 共通
--------------------------------------- */
.noPost{text-align:center;}

.link-over{position:absolute;inset:0;margin:auto;z-index:1}

.fadeUP{opacity: .0;translate: 0 50px;transition:var(--show-anime);}
.fadeLeft{opacity: .0;translate: -50px 0;transition:var(--show-anime);}
.fadeRight{opacity: .0;translate: 50px 0;transition:var(--show-anime);}
.show .fadeUP{opacity:1;translate:0}
.show .fadeLeft{opacity:1;translate:0}
.show .fadeRight{opacity:1;translate:0}
.show .delay2{transition-delay:.2s}
.show .delay4{transition-delay:.4s}
.show .delay6{transition-delay:.6s}

@media(max-width:1024px){
	.page-tit-en{font-size:56px;}
	.page-tit-jp{font-size:18px;}
}

@media(max-width:767px){
	.page-tit{grid-template-columns:minmax(0,1fr);gap:8px}
	.page-tit-en{font-size:48px;}
}

/*-------------------------------------
/* ホバースタイル
--------------------------------------- */

@media (hover: hover){
	.header_Menu_list li a:hover{opacity:.5}
	.footer_navi a:hover{opacity:.5}
	.link-over:hover ~ figure img{scale:1.05}
}


/* TOP
===================================================== */





/* お問い合わせ
===================================================== */
.page-contact-des{text-align:center;padding-top:40px;}

.c-table {width: 800px;max-width:100%;margin-inline: auto;}
.from-item{display:flex;flex-wrap: wrap;padding-block: 40px;border-bottom: 1px solid #E4E4E4;color: #fff;}
.c-table .fl{width:240px;padding-block: 4px;display: block;}
.c-table .fr{width:calc(100% - 240px)}
.required{font-size: 12px;color: var(--font-color);padding-block: 4px;padding-inline: 8px;background-color: var(--main-color);margin-right: 16px;vertical-align: 1px;}
.any{font-size: 12px;padding: 4px 8px;background-color: #b4b5b5;margin: 0 16px 0 0;vertical-align: 1px;}
.example{font-size: 14px;letter-spacing: -1px;}
.from-item input[type=email]{width:100%}
.from-item input[type=tel]{width:310px;}
.from-item textarea {height: 140px;width:100%}
.from-note{width: 420px;max-width: 100%;text-align:center;margin:40px auto 0;padding: 32px 16px;background-color: #fff;border-radius:6px;}
.from-note p{color:#000;}
.from-note .acceptance-wrap{font-weight:bold;margin:16px 0 0}
.from-note .doui{width: 18px;height: 18px;margin: 0 8px 0 0;border: none;vertical-align: -3px;}
.wpcf7-submit:disabled{opacity: 0.3;pointer-events: none}
.formsubmit{margin: 60px auto 0;position:relative;width:fit-content;}
.formsubmit .wpcf7-submit{width: 300px;max-width:100%;margin-inline: auto;padding-block: 24px;background-color: var(--main-color);line-height:1;text-align: center;position: relative;font-size: 20px;transition:var(--hover-transform)}
.wpcf7-spinner{display:block;margin:16px auto}
.policy-link{padding:0 8px;text-decoration: underline;}

@media(max-width:720px){
  .c-table .fl,
  .c-table .fr{width:100%;}
}

@media(max-width:560px){
  .c-table{margin-top:24px}
}

/* privacypolicy
===================================================== */

.privacypolicy-item{width: 800px;max-width:100%;margin-inline:auto;color:#fff;}
.privacypolicy-item h3{font-size:20px;color:#fff;margin-block:40px 8px}
.privacypolicy-item h4{font-size:18px;margin-block:32px 8px}
.privacypolicy-item h4::before{content:'';display:inline-block;width:16px;height:16px;background-color: #fff;margin-right:8px;}
.privacypolicy-item h5{margin-block:24px 8px}
.privacypolicy-item h5::before{content:'';display:inline-block;width:16px;height:1px;background-color: #fff;margin-right:8px;vertical-align: 6px;}
.privacypolicy-item ul,
.privacypolicy-item ol{margin-block:16px}
.privacypolicy-item li{position:relative;padding-left: 24px;}
.privacypolicy-item li::before{content:'';position: absolute;width:10px;height:10px;border-radius:10px;background-color: #fff;margin-right:8px;top: 8px;left: 4px;}
