@charset "utf-8";
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					FONT

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@font-face {
    font-family: 'Noto Serif Japanese';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/NotoSerifJP-Regular.woff') format('woff');
}

@font-face {
    font-family: 'Noto Serif Japanese';
    font-style: normal;
    font-weight: 500;
    src: url('../fonts/NotoSerifJP-Medium.woff') format('woff');
}

@font-face {
    font-family: 'Noto Serif Japanese';
    font-style: normal;
    font-weight: 600;
    src: url('../fonts/NotoSerifJP-SemiBold.woff') format('woff');
}

@font-face {
    font-family: 'Noto Serif Japanese';
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/NotoSerifJP-Bold.woff') format('woff');
}

br {
    font-family: sans-serif !important;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					RESET

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
body {
    line-height: 0;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, legend, input, textarea, p, blockquote, table, caption, tbody, tfoot, thead, th, td, option, figure, figcaption, small {
    margin: 0;
    padding: 0;
    line-height: 1;
    font-size: 100%;
    /*==================================================
Base Font
====================================================*/
    font-family: "Noto Sans JP", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ proNw3", sans-serif;
}

h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    font-weight: normal;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

caption, th {
    text-align: left;
}

fieldset, img, abbr, acronym {
    border: 0;
    margin: 0px;
    vertical-align: bottom;
}

object, embed, th, td {
    vertical-align: top;
}

address, caption, cite, code, dfn, th, var, optgroup, strong, em, b, i {
    font-style: normal;
    font-weight: normal;
}

ol, ul {
    list-style: none;
}

a, ins, del {
    text-decoration: none;
}

q:before, q:after {
    content: '';
}

* html body {
    font-size: 65%;
}

* + html body {
    font-size: 65%;
}

html {
    overflow: scroll;
    overflow: -moz-scrollbars-vertical;
    overflow-x: scroll;
}

strong {
    font-weight: bold;
}

em {
    font-style: italic;
}

del {
    text-decoration: line-through;
}

a {
    cursor: pointer;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					COMMON

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
/*==================================================
FLOAT
====================================================*/
/*--------------------------------------------------- clf*/
.clf:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0;
}

* html .clf {
    zoom: 1;
}

/* IE6 */
*:first-child + html .clf {
    zoom: 1;
}

/* IE7 */
.clf {
    overflow: hidden;
}

input[type="submit"],
input[type="button"],
input[type="reset"] {
    -webkit-appearance: none;
}

/*--------------------------------------------------- FLOAT*/
.flt_left {
    float: left;
}

.flt_right {
    float: right;
}

.flt_clear {
    clear: both;
}

/*==================================================
TEXT
====================================================*/
/*--------------------------------------------------- FONT*/
.fnt_min {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.fnt_gothic {
    font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}

.fnt_bold {
    font-weight: bold;
}

/*--------------------------------------------------- ALIGN*/
.ta_center, .taC {
    text-align: center;
}

.ta_left, .taL {
    text-align: left;
}

.ta_right, .taR {
    text-align: right;
}

/*==================================================
LAYOUT
====================================================*/
/*--------------------------------------------------- MARGIN*/
.mgn_0 {
    margin: 0;
}

.mgn_auto {
    margin: auto;
}

.mgn_top_0 {
    margin-top: 0;
}

.mgn_top_5 {
    margin-top: 5px;
}

.mgn_top_10 {
    margin-top: 10px;
}

.mgn_top_15 {
    margin-top: 15px;
}

.mgn_top_20 {
    margin-top: 20px;
}

.mgn_top_30 {
    margin-top: 30px;
}

.mgn_top_40 {
    margin-top: 40px;
}

.mgn_top_50 {
    margin-top: 50px;
}

.mgn_btm_0 {
    margin-bottom: 0;
}

.mgn_btm_5 {
    margin-bottom: 5px;
}

.mgn_btm_10 {
    margin-bottom: 10px;
}

.mgn_btm_15 {
    margin-bottom: 15px;
}

.mgn_btm_20 {
    margin-bottom: 20px;
}

.mgn_btm_30 {
    margin-bottom: 30px;
}

.mgn_btm_40 {
    margin-bottom: 40px;
}

.mgn_btm_50 {
    margin-bottom: 50px;
}

/*--------------------------------------------------- PADDING*/
.pdn_0 {
    padding: 0;
}

.pdn_5 {
    padding: 5px;
}

.pdn_10 {
    padding: 10px;
}

.pdn_15 {
    padding: 15px;
}

.pdn_20 {
    padding: 20px;
}

.pdn_30 {
    padding: 30px;
}

.pdn_40 {
    padding: 40px;
}

.pdn_50 {
    padding: 50px;
}

/*==================================================
NO STYLE
====================================================*/
.noStyle {
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    text-decoration: none !important;
    float: none !important;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					LAYOUT

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
/*==================================================
DEFAULT
====================================================*/
* {
    box-sizing: border-box;
    outline: none;
}

html {
    width: 100%;
    height: 100%;
    overflow: auto;
}

body {
    width: 100%;
    /*height:100%;*/
    font-size: 15px;
    color: #525252;
    font-feature-settings: "palt";
}

body.popup_open {
    overflow: hidden;
}

body.hdrfix {
    /*padding-top: 86px;*/
    padding-top: 95px;
}

.semibld {
    font-weight: 500;
}

form .small_txt {
    font-size: 12px;
}

#contact form .small_txt {
    width: 100%;
    display: block;
}

/*==================================================
COLOR
====================================================

accent		: #2061A0
sub			: #D1CDC7
sub light	: #FDF9F2

*/

/*==================================================
HEADER
====================================================*/
#header {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    /*height: 80px;*/
    overflow: hidden;
    z-index: 8900;
}

.hdrchange #header {
    height: 90px;
}

#header:before,
#header:after {
    width: 100%;
    height: 100%;
    content: '';
    position: absolute;
    left: 0;
    transition: all 0.5s;
    -moz-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
}

#header:before {
    z-index: -1;
    top: 0;
}

.hdrfix #header:before,
.hdrchange #header:before {
    background: #fff;
    /*background: #EFF6FA;*/
}

.lnav #header:before {
    top: -100%;
}

#header:after {
    top: 0;
    z-index: -2;
}

.lnav #header:after {
    /*background: rgba(19,118,186,0.85);*/
}

#header .inner {
    position: relative;
    /*max-width: 1040px;*/
    padding: 50px;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    text-align: center;
    display: flex;
    align-items: center;
}

.hdrchange #header .inner {
    padding: 30px 50px;
}

#hdr_logo a {
    width: 130px;
    height: 100%;
    display: flex;
    text-align: center;
    overflow: hidden;
    align-items: center;
}

#hdr_logo svg,
.lnav #hdr_logo svg,
.lnav.hdrchange #hdr_logo svg,
.lnav.hdrfix #hdr_logo svg {
    fill: #fff;
}

.hdrfix #hdr_logo svg,
.hdrchange #hdr_logo svg {
    fill: #1376BA;
}

#nav_default {
    width: calc(100% - 250px);
    height: 100%;
    padding: 0 10px;
}

#nav_default ul {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    height: 100%;
}

#nav_default ul li a {
    padding: 15px;
    /*padding: 10px;*/
    /* font-size: 13px; */
    color: #fff;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.hdrfix #nav_default ul li a,
.hdrchange #nav_default ul li a {
    color: #525252;
}

.lnav #nav_default ul {
    display: none;
}

.lnav #nav_default ul li a,
.lnav.hdrchange #nav_default ul li a {
    color: #fff;
}

#nav_default ul li a span {
    line-height: 1.8;
    padding: 0 0 3px;
    display: inline-block;
    position: relative;
}

.hdrchange #nav_default ul li a span:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    background: #525252;
    height: 1px;
    width: 0;
    transition: all 0.3s ease;
}

#nav_default ul li a span:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    background: #fff;
    height: 1px;
    width: 0;
    transition: all 0.3s ease;
}

#nav_default ul li a:hover span:after {
    width: 100%;
}

.hdrchange #nav_default .hdr_btn_area a span:after,
#nav_default .hdr_btn_area a span:after {
    content: unset;
}

#nav_default ul li .hdr_btn span {
    line-height: 1;
}

#nav_default .hdr_btn_area {
    display: flex;
    align-items: center;
}

#nav_default .hdr_btn_area.mr-10 {
    margin-right: 10px;
}

#nav_default .hdr_btn_area:first-child {
    margin-right: 10px;
}

#nav_default .hdr_btn {
    background-color: #2061A0;
    border-radius: 16px;
    height: fit-content;
    padding: 7px 0;
    width: 134px;
}

.hdrchange #nav_default ul li .hdr_btn {
    color: white;
}


#hdr_contact {
    width: 60px;
    height: 70px;
    text-align: center;
    overflow: hidden;
    padding: 10px;
}

#hdr_contact svg {
    max-width: 100%;
    height: auto;
}

#hdr_contact_hex,
.lnav #hdr_contact_hex,
.lnav.hdrchange #hdr_contact_hex,
.lnav.hdrfix #hdr_contact_hex {
    fill: #f8fbfd;
}

#hdr_contact_mail,
.lnav #hdr_contact_mail,
.lnav.hdrchange #hdr_contact_mail,
.lnav.hdrfix #hdr_contact_mail {
    fill: #1376ba;
}

#hdr_contact_hex {
    fill: #f8fbfd;
}

#hdr_contact_mail {
    fill: #1376ba;
}

.hdrfix #hdr_contact_hex,
.hdrchange #hdr_contact_hex {
    fill: #1376ba;
}

.hdrfix #hdr_contact_mail,
.hdrchange #hdr_contact_mail {
    fill: #f8fbfd;
}

#btn_nav {
    overflow: hidden;
    position: relative;
    z-index: 7000;
    width: 60px;
    height: 60px;
    display: flex;
    text-align: center;
    padding: 10px;
    justify-content: center;
    align-content: center;
    align-items: center;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}

#btn_nav svg {
    max-width: 100%;
    height: auto;
}

#btn_nav_letter,
.lnav #btn_nav_letter,
.lnav.hdrchange #btn_nav_letter {
    fill: #fff;
}

#btn_nav .bar,
#btn_nav .ltr {
    transition: all 0.4s ease-in-out 0s;
    -moz-transition: all 0.4s;
    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
}

#btn_nav .bar {
    display: inline-block;
    width: 42px;
    height: 2px;
    position: absolute;
    left: 9px;
    /*right: 0;*/
    background: #fff;
}

#btn_nav .top {
    top: 10px;
}

#btn_nav .mid {
    top: 20px;
}

#btn_nav .btm {
    top: 30px;
}

.lnav #btn_nav .bar,
.lnav #btn_nav:hover .bar {
    width: 26px;
    top: calc(50% - 10px);
    left: 17px;
}

.lnav #btn_nav .top,
.lnav #btn_nav:hover .top {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.lnav #btn_nav .mid,
.lnav #btn_nav:hover .mid {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.lnav #btn_nav .btm,
.lnav #btn_nav:hover .btm {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

#btn_nav .ltr {
    color: #fff;
    font-weight: bold;
    font-size: 13px;
    position: absolute;
    bottom: 10px;
    left: 50%;
    /*left: 65%;*/
    -webkit-transform: translate3d(-50%, 0px, 0px);
    transform: translate3d(-50%, 0px, 0px);
}

.hdrfix #btn_nav .ltr,
.hdrchange #btn_nav .ltr {
    color: #1376ba;
}

.hdrfix #btn_nav .bar,
.hdrchange #btn_nav .bar {
    background: #1376ba;
}

.hdrfix.lnav #btn_nav .ltr,
.hdrchange.lnav #btn_nav .ltr {
    color: #fff;
}

.hdrfix.lnav #btn_nav .bar,
.hdrchange.lnav #btn_nav .bar {
    background: #fff;
}

.btn_nav_line,
.lnav .btn_nav_line,
.lnav.hdrchange .btn_nav_line {
    fill: none;
    stroke: #fff;
    stroke-width: 2;
}

.hdrfix #btn_nav_letter,
.hdrchange #btn_nav_letter {
    fill: #1376BA;
}

.hdrfix .btn_nav_line,
.hdrchange .btn_nav_line {
    stroke: #1376BA;
}

/*--------------------------------------------------- HEADER GLOBAL NAVI */
#gn {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    padding-top: 116px;
    width: 100%;
    height: 100%;
    z-index: 8100;
    overflow-y: auto;
    background: rgba(19, 118, 186, 0.85);
}

#gn .inner {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 20px;
}

#gn_main {
    display: flex;
    flex-wrap: wrap;
    max-width: 800px;
    margin: 0 auto;
    padding: 60px 0;
}

#gn_main .lst_main {
    border-left: 1px solid #569BDD;
    width: 33.3333%;
    padding: 0 0 0 20px;
}

#gn_main .lst_main li.gn_navi_recruit {
    display: none;
}

#gn_main .lst_main li a {
    font-weight: bold;
    font-size: 20px;
    display: block;
    color: #fff;
    padding: 2px 5px;
    vertical-align: middle;
    line-height: 2;
}

#gn_main .lst_main li a:hover {
    opacity: 0.75;
}

#gn_main .lst_sub {
    margin-left: 22px;
    margin-bottom: 1em;
}

#gn_main .lst_sub li a {
    font-weight: normal;
    color: #CFD7DD;
    font-size: 17px;
    padding: 2px 5px;
    line-height: 2;
    display: block;
    text-indent: 0;
}

#gn_ftr {
    display: flex;
    justify-content: space-between;
    padding: 1em 0 3em;
    align-items: center;
}

.hf_sns {
    display: flex;
    justify-content: end;
}

.hf_sns li a {
    padding: 0 10px;
    display: block;
}

#hdr_copy small {
    font-size: 10px;
    color: #fff;
    line-height: 1.4;
}

.hf_sns li .ig {
    display: flex;
    align-items: center;
}

.hf_sns li .ig p {
    margin-left: 10px;
    font-size: 13px;
    color: white;
}

/*--------------------------------------------------- PAGE TITLE*/
/*--------------------------------------------------- MAIN AND FOOTER */
#main_and_footer {
    overflow: hidden;
    transition: all 0.7s ease-in-out 0s;
    -moz-transition: all 0.7s;
    -webkit-transition: all 0.7s;
    -o-transition: all 0.7s;
    /*margin-top: 20px;*/
}

.lnav #main_and_footer {
    filter: blur(3px);
}

/*==================================================
FOOTER
====================================================*/

#ftr_main {
    overflow: hidden;
    padding: 20px 0 0;
    background: #fff;
}

/*--------------------------------------------------- LPbanner*/
#lp_banner {
    display: block;
    opacity: 0;
    visibility: hidden;
    position: fixed;
    z-index: 7000;
    display: block;
    overflow: hidden;
    bottom: 30px;
    right: 95.6px;
    width: 268.68px;
    height: 106.26px;
}

#lp_banner img{
    width: 100%;
    height: auto;
}

.hdrchange #lp_banner {
    opacity: 1;
    visibility: visible;
}


/*--------------------------------------------------- PAGETOP*/
#gototop {
    opacity: 0;
    visibility: hidden;
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 7000;
    display: block;
    overflow: hidden;
    width: 38px;
    height: 43px;
}

#gototop svg {
    max-width: 100%;
    height: auto;
}

.hdrchange #gototop {
    opacity: 1;
    visibility: visible;
}

#gototop_sp {
    display: none;
}

#ftr_access {
    z-index: 40;
    position: relative;
    width: 100%;
    background: linear-gradient(180deg, #EFF6FA 150px, #EFF6FA 150px, white 150px, white 100%);
}

#ftr_access .ttlarea {
    text-align: center;
    width: 100%;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate3d(-50%, -25%, 0);
    transform: translate3d(-50%, -25%, 0);
    padding: 0 20px;
}

#ftr_access .ttl_ja {
    color: #000;
    font-size: 30px;
}

#ftr_access .ttl_en {
    margin: 10px 0 0;
    font-size: 16px;
    color: #1376ba;
    font-weight: 500;
    display: block;
}

#ftr_access ul {
    max-width: 1060px;
    margin: 0 auto;
    padding: 100px 20px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#ftr_access ul li {
    width: 33.3333%;
    padding: 0 10px 20px;
}

#ftr_access ul li .item {
    height: 100%;
    background-color: #1376ba;
}

#ftr_access ul li iframe {
    max-width: 100%;
}

#ftr_access dl {
    padding: 20px;
}

#ftr_access dt,
#ftr_access dd {
    line-height: 1.6;
    color: white;
}

#ftr_access dt {
    font-weight: 500;
    font-size: 18px;
    padding: 0 0 20px;
}

#ftr_access dd {
    font-size: 14px;
}

/*--------------------------------------------------- FOOTER BREADCRUMB*/
#breadcrumb {
    font-size: 12px;
    text-align: right;
    padding: 10px 20px;
    line-height: 1.2;
    background: #EFF6FA;
    min-height: 30px;
}

#breadcrumb .inner {
    max-width: 1000px;
    margin: 0 auto;
    line-height: 1.4;
}

#breadcrumb a {
    font-family: inherit;
    font-size: 12px;
}

/*--------------------------------------------------- FOOTER BOTTOM*/
#ftr_bottom {
    padding: 0 20px;
    background: url("../images/common/ftr_bottom.jpg") center center / cover no-repeat;
}

#ftr_contact {
    padding: 40px 20px;
    color: #fff;
    background: #2061A0;
}

#ftr_contact .inner {
    display: flex;
    align-items: center;
    /* max-width: 1000px; */
    max-width: 1030px;
    margin: 0 auto;
}


#ftr_contact a {
    color: #fff;
}

#ftr_logo {
    width: 260px;
    padding: 5px;
    display: inline-block;
}

#ftr_sns {
    width: calc(100% - 580px);
    padding: 0 15px;
}

#ftr_sns .ig {
    display: flex;
    align-items: center;
}

#ftr_sns .ig p {
    font-size: 13px;
    margin-left: 10px;
}

#ftr_contact_inq {
    width: 320px;
    text-align: center;
}

#ftr_contact_inq a {
    font-weight: 500;
    display: block;
    font-size: 13px;
    line-height: 1.5;
    border: 1px solid;
    border-radius: 10px;
    padding: 8px 10px;
}

#ftr_contact_inq a:hover {
    opacity: 0.75;
}

#ftr_catch {
    padding: 80px 0;
    color: #fff;
    margin: 0 auto;
    max-width: 1000px;
    display: flex;
    align-items: center;
    border-bottom: 1px solid rgba(248, 230, 221, 0.36);
}

#ftr_catch .idx {
    width: 320px;
}

#ftr_catch .idx {
    font-size: 35px;
    line-height: 1.4;
    font-weight: bold;
}

#ftr_catch .msg {
    width: calc(100% - 320px);
}

#ftr_catch .msg p {
    line-height: 1.8;
    font-size: 13px;
}

#ftr_links {
    padding: 60px 0;
    margin: 0 auto;
    max-width: 1000px;
    display: flex;
    justify-content: space-between;
}

.ftr_links_list {
    display: flex;
    align-items: center;
}

.ftr_links_list li a {
    display: block;
}

#ftr_links_brands {
    width: 77%;
    padding: 0 15px 0 0;
    border-right: 1px solid #838383;
}

#ftr_links_brands li a {
    overflow: hidden;
    padding: 20px 15px;
}

#ftr_links_others {
    width: 23%;
    min-width: 200px;
}

#ftr_links_others li {
    border-right: 1px solid #838383;
}

#ftr_links_others li:last-child {
    border-right: none;
}

#ftr_links_others li a {
    padding: 5px 25px;
}

/*--------------------------------------------------- COPY RIGHT*/
#ftr_copy {
    padding: 10px 20px;
    background: #2061A0;
    text-align: center;
}

#ftr_copy small {
    color: #fff;
    line-height: 1.4;
    font-size: 10px;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					BASE STYLE

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.atp_fadefloat {
    opacity: 0;
    -webkit-transform: translate3d(0, 50px, 0);
    transform: translate3d(0, 50px, 0);
    transition: all 1s;
}

.atp_fadefloat.scrolled {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.atp_fadefloat.rapid,
.atp_fadefloat.rapid.scrolled {
    transition: all 0s;
}

/*==================================================
BOX
====================================================*/
/*--------------------------------------------------- BOX : COMMON*/
.box_content {
    max-width: 1020px;
    margin: 0 auto;
    box-sizing: border-box;
}

.box_inner {
    padding: 60px 0;
}

.box_cmn {
    margin: 0 0 40px;
}

/*--------------------------------------------------- BOX : COMMON*/
.box_bg_gray {
    background: #FDF9F2;
}

/*--------------------------------------------------- BOX : BORDER*/
.box_bdr {
    border: 1px solid #D1CDC7;
}

.box_bdr_btm {
    border-bottom: 1px solid #D1CDC7;
}

/*--------------------------------------------------- BOX : WIDTH*/
.box_w_2_1 {
    width: 50%;
}

.box_w_3_1 {
    width: 33.333%;
}

.box_w_3_2 {
    width: 66.666%;
}

.box_w_4_1 {
    width: 25%;
}

.box_w_4_3 {
    width: 75%;
}

.box_w_5_1 {
    width: 20%;
}

.box_w_5_2 {
    width: 40%;
}

.box_w_5_3 {
    width: 60%;
}

.box_w_5_4 {
    width: 80%;
}

/*--------------------------------------------------- BOX : FLOAT*/
.box_fl {
    margin: 0 0 0 -40px;
}

.box_fl_inner {
    float: left;
    padding: 0 0 0 40px;
    box-sizing: border-box;
}

/*--------------------------------------------------- BOX : TABLE*/
.box_table {
    display: table;
    width: 100%;
}

.box_table.fixed {
    table-layout: fixed;
}

.box_cell {
    display: table-cell;
    vertical-align: top;
}

.box_cell.middle {
    vertical-align: middle;
}

.box_cell.left {
    padding: 0 20px 0 0;
}

.box_cell.center {
    padding: 0 20px;
}

.box_cell.right {
    padding: 0 0 0 20px;
}

/*--------------------------------------------------- BOX : SCROLL*/
.box_scroll {
    max-height: 150px;
    overflow: auto;
    border: 1px solid #D1CDC7;
    padding: 40px;
    border-radius: 5px;
    background: #FDF9F2;
}

/*--------------------------------------------------- BOX : DOCUMENT*/
.box_doc {
    max-width: 720px;
    margin: 0 auto;
}

/*--------------------------------------------------- BOX : ATTENTION*/
.box_attention {
    padding: 20px;
    margin: 20px 0;
    border: 1px solid #AB0507;
    border-radius: 10px;
}

/*--------------------------------------------------- BOX : NORTICE*/
.box_notice {
    padding: 20px;
    margin: 0 0 20px;
}

/*--------------------------------------------------- POINT*/
.box_point {
    padding: 20px;
    margin: 20px 0;
}

/*==================================================
TITLE
====================================================*/
/*--------------------------------------------------- TITLE : H2*/
h2.ttl_cmn {
    margin: 0 0 40px;
    padding: 0 10px 20px;
    font-size: 36px;
    line-height: 1.5;
    text-align: center;
    border-bottom: 1px solid #D1CDC7;
}

/*--------------------------------------------------- TITLE : H3*/
h3.ttl_cmn {
    margin: 20px 0 40px;
    padding: 0 0 20px;
    font-size: 24px;
    line-height: 1.5;
    text-align: center;
    position: relative;
}

h3.ttl_cmn:after {
    content: '';
    position: absolute;
    width: 40px;
    height: 2px;
    bottom: 0;
    left: 50%;
    margin: 0 0 0 -20px;
    background: #000;
}

/*--------------------------------------------------- TITLE : H4*/
h4.ttl_cmn {
    font-weight: bold;
    line-height: 1.5;
    margin: 0 0 20px;
}

/*--------------------------------------------------- TITLE : H5*/
h5.ttl_cmn {
    line-height: 1.5;
}

/*==================================================
TEXT
==================================================*/
.cmn_nopost {
    letter-spacing: 0.05em;
    width: 100%;
    text-align: center;
    line-height: 1.8;
}

/*--------------------------------------------------- TEXT : COMMON*/
p.txt_cmn {
    font-size: 16px;
    line-height: 1.8;
    margin: 0 0 20px;
    text-align: justify;
}

/*--------------------------------------------------- TEXT : ATTENTION*/
p.txt_attention {
    font-weight: bold;
    font-size: 18px;
    line-height: 1.8;
    text-align: center;
}

/*--------------------------------------------------- TEXT : NOTICE*/
p.txt_notice {
    font-size: 12px;
    line-height: 1.5;
    color: #7F7A70;
}

/*--------------------------------------------------- TEXT : REQUIRED*/
p.txt_required {
    color: #AB0507;
}

/*--------------------------------------------------- TEXT : POINT*/
p.txt_point {
    font-size: 20px;
    font-weight: bold;
    color: #2061A0;
    text-align: center;
    margin: 20px 0;
}

span.txt_point {
    font-weight: bold;
    color: #2061A0;
}

.txt_dash {
    position: relative;
    padding: 0 0 0 4.2em;
}

.txt_dash:before {
    background: #525252;
    position: absolute;
    left: 0;
    top: 50%;
    content: '';
    width: 4em;
    height: 1px;
}

.ib {
    display: inline-block;
}

sub {
    font-size: 80%;
}

/*==================================================
LINK
====================================================*/
a {
    color: #111;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.7s ease-in-out 0s;
    -moz-transition: all 0.7s;
    -webkit-transition: all 0.7s;
    -o-transition: all 0.7s;
}

/*--------------------------------------------------- LINK : COLOR*/
a:link {
    color: #111;
}
.wp-block-file__button{
    color: white !important;
}


a:visited {
    color: #111;
}

a:hover {
    color: #2061A0;
    text-decoration: none;
}

a:active {
    color: #111;
    text-decoration: none;
}

/*--------------------------------------------------- LINK : NO TRANSITION*/
a.noanime {
    transition: all 0s ease-in-out 0s;
    -moz-transition: all 0s;
    -webkit-transition: all 0s;
    -o-transition: all 0s;
}

/*--------------------------------------------------- LINK : IMG*/
a img {
    transition: all 0.7s ease-in-out 0s;
    -moz-transition: all 0.7s;
    -webkit-transition: all 0.7s;
    -o-transition: all 0.7s;
}

a:hover img {
    filter: alpha(opacity=75);
    -moz-opacity: 0.75;
    opacity: 0.75;
}

/*--------------------------------------------------- IMG : HOVER*/
.img_hover {
    display: block;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.img_hover img {
    display: block;
    max-width: 100%;
    height: auto;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    transition: all 0.5s;
    -moz-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
}

.img_hover:hover img {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    -ms-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
}

/*--------------------------------------------------- LINK : COMMON*/
a.lnk_cmn {
    display: block;
    min-width: 320px;
    margin: 0 auto;
    padding: 10px;
    color: #FFF;
    background: #2061A0;
    border-radius: 3px;
    text-align: center;
    box-sizing: border-box;
}

.btnarea.center {
    text-align: center;
}

.btnarea .btn {
    color: #525252;
    padding: 20px 60px 20px 20px;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    display: inline-block;
    position: relative;
}

.btnarea .btn .arw {
    display: block;
    width: 40px;
    height: 5px;
    position: absolute;
    top: 50%;
    right: 0;
    margin: -3px 0 0;
    overflow: hidden;
}

.btnarea .btn .arw > span {
    margin: 0 !important;
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    right: 0;
    transition-duration: .5s;
}

.btnarea .btn .arw > span > span {
    animation: arrowline 3s ease-in-out infinite;
    display: block;
    width: 100%;
    height: 100%;
    background: #525252;
    position: absolute;
    top: 0;
    left: 0;
    margin: 0 !important;
}

.btnarea .btn .arw > span > span:after {
    position: absolute;
    height: 1px;
    background: #525252;
    top: 50%;
    content: '';
    margin: -3px 0 0 -6px;
    right: -1px;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    width: 8px;
}

/* WHITE */
.btnarea.white .btn {
    color: #fff;
}

.btnarea.white .btn .arw > span > span:after,
.btnarea.white .btn .arw > span > span {
    background: #fff;
}

/* LARGE */
.btnarea.large .btn {
    padding: 22px 60px;
    font-size: 15px;
    line-height: 1.4;
    display: block;
    background: #2061A0;
}

.btnarea.large.center .btn {
    text-align: center;
}

/* EXTRA LARGE */
.btnarea.xl .btn {
    display: block;
    padding: 1.4em 1em;
    color: #fff;
    letter-spacing: 0.2em;
    text-indent: 0.2em;
    text-align: center;
    background-color: #2061a0;
    border: 1px solid #2061a0;
}

.btnarea.xl.left .btn {
    padding-right: 75px;
    text-align: left;
}

.btnarea.xl .btn .arw {
    right: 20px;
}

.btnarea.xl .btn:hover {
    color: #2061a0;
    background-color: #ffffff;
    border: 1px solid #2061a0;
}

.btnarea.xl.white .btn:hover .arw > span > span::after,
.btnarea.xl.white .btn:hover .arw > span > span {
    background: #2061a0;
}

@-webkit-keyframes arrowline {
    0%, 100%, 30% {
        left: 0;
        opacity: 1
    }
    14% {
        left: 100%;
        opacity: 0
    }
    16% {
        left: -100%;
        opacity: 0
    }
}

@-moz-keyframes arrowline {
    0%, 100%, 30% {
        left: 0;
        opacity: 1
    }
    14% {
        left: 100%;
        opacity: 0
    }
    16% {
        left: -100%;
        opacity: 0
    }
}

@-ms-keyframes arrowline {
    0%, 100%, 30% {
        left: 0;
        opacity: 1
    }
    14% {
        left: 100%;
        opacity: 0
    }
    16% {
        left: -100%;
        opacity: 0
    }
}

@-o-keyframes arrowline {
    0%, 100%, 30% {
        left: 0;
        opacity: 1
    }
    14% {
        left: 100%;
        opacity: 0
    }
    16% {
        left: -100%;
        opacity: 0
    }
}

@keyframes arrowline {
    0%, 100%, 30% {
        left: 0;
        opacity: 1
    }
    14% {
        left: 100%;
        opacity: 0
    }
    16% {
        left: -100%;
        opacity: 0
    }
}

/*--------------------------------------------------- LINK : COMMON*/
a.lnk_txt {
    padding: 3px;
    color: #2061A0;
    border-bottom: 1px dotted;
}

a.lnk_txt:hover {
    border-bottom-style: solid;
}

/*--------------------------------------------------- LINK : SCALE*/
a.lnk_scale img {
    -webkit-transform: scale(1.001);
    transform: scale(1.001);
}

a.lnk_scale:hover img {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

/*==================================================
IMG
==================================================*/
img {
    max-width: 100%;
    height: auto;
}

/*==================================================
LIST
==================================================*/
.lst_cmn {
    margin: 0 0 20px;
    border-top: 1px dotted #D1CDC7;
}

.lst_cmn li {
    line-height: 1.7;
    padding: 10px;
    border-bottom: 1px dotted #D1CDC7;
}

/*--------------------------------------------------- LIST : NEWS*/
.lst_news li {
    border-bottom: 1px dotted #D1CDC7;
}

.lst_news li a {
    display: block;
    padding: 10px 0;
}

.lst_news li a .date {
    display: inline-block;
    font-size: 14px;
    margin: 0 10px 0 0;
}

.lst_news li a .cat {
    display: inline-block;
    font-size: 12px;
    padding: 3px 10px;
    border: 1px solid #2061A0;
    color: #2061A0;
    border-radius: 3px;
}

/*--------------------------------------------------- LIST : FLOAT DL*/
.lst_float {
    display: table;
    width: 100%;
    table-layout: fixed;
}

.lst_float dt {
    padding: 10px 0;
    display: table-cell;
    vertical-align: top;
    border-bottom: 1px solid #D1CDC7;
    width: 20%;
}

.lst_float dd {
    padding: 10px 0 10px 10px;
    display: table-cell;
    vertical-align: top;
    border-bottom: 1px solid #D1CDC7;
}

/*--------------------------------------------------- LIST : INDENT*/
.lst_indent_1 li {
    padding-left: 1em;
}

.lst_indent_1 li:first-letter {
    margin-left: -1em;
}

.lst_indent_2 li {
    padding-left: 2em;
}

.lst_indent_2 li:first-letter {
    margin-left: -2em;
}

.lst_indent_3 li {
    padding-left: 3em;
}

.lst_indent_3 li:first-letter {
    margin-left: -3em;
}

/*==================================================
TABLE
==================================================*/
.tbl_cmn {
    width: 100%;
    margin: 0 0 20px;
    border-top: 1px solid #D1CDC7;
}

.tbl_cmn th, .tbl_cmn td {
    padding: 10px;
    line-height: 1.5;
    vertical-align: middle;
    border-bottom: 1px solid #D1CDC7;
}

.tbl_cmn th {
    white-space: nowrap;
    background: #FDF9F2;
}

/*--------------------------------------------------- TABLE : POSITION*/
table.center th,
table.center td,
table th.center,
table td.center {
    text-align: center;
}

table.right th,
table.right td,
table th.right,
table td.right {
    text-align: right;
}

table.top th,
table.top td,
table th.top,
table td.top {
    vertical-align: top;
}

/*==================================================
FORM
====================================================*/
/*--------------------------------------------------- FORM : INPUT & TEXTAREA*/
.form_cmn input[type="text"],
input[type="text"].input_cmn,
.form_cmn input[type="email"],
input[type="email"].input_cmn,
.form_cmn input[type="password"],
input[type="password"].input_cmn,
.form_cmn input[type="tel"],
input[type="tel"].input_cmn,
.form_cmn input[type="number"],
input[type="number"].input_cmn,
.form_cmn input[type="url"],
input[type="url"].input_cmn,
.form_cmn input[type="date"],
input[type="date"].input_cmn,
.form_cmn textarea,
textarea.input_cmn {
    resize: vertical;
    display: block;
    margin: 0.5em 0;
    width: 100%;
    padding: 5px 10px;
    border: 1px solid #D1CDC7;
    line-height: 1.5;
    border-radius: 3px;
    box-sizing: border-box;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) inset;
}

/*--------------------------------------------------- FORM : INPUT:PLACEHOLDER*/
.form_cmn input::placeholder {
    color: #ccc;
}

/* IE */
.form_cmn input:-ms-input-placeholder {
    color: #ccc;
}

/* Edge */
.form_cmn input::-ms-input-placeholder {
    color: #ccc;
}

/*--------------------------------------------------- FORM : INPUT:NUMBER*/
/* Chrome、Safari スピンボタンを消す */
.form_cmn input[type="number"]::-webkit-outer-spin-button,
input[type="number"].input_cmn::-webkit-inner-spin-button,
.form_cmn input[type="number"]::-webkit-outer-spin-button,
input[type="number"].input_cmn::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox、IE スピンボタンを消す */
.form_cmn input[type="number"],
input[type="number"].input_cmn {
    -moz-appearance: textfield;
}

/*--------------------------------------------------- FORM : LABEL*/
.form_cmn label,
label.label_cmn {
    display: inline-block;
    cursor: pointer;
    border: 1px solid #D1CDC7;
    border-radius: 3px;
}

.form_cmn label.checked,
label.label_cmn.checked {
    border-color: #2061A0;
}

/*--------------------------------------------------- FORM : SELECT*/
.form_cmn select,
select.select_cmn {
    display: block;
    margin: 0 5px 5px 0;
    padding: 5px 10px;
    cursor: pointer;
    border: 1px solid #D1CDC7;
    border-radius: 3px;
    /* デフォルトの Appearance を解除 */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.form_cmn select option,
select.select_cmn option {
    padding: 5px 10px;
    cursor: pointer;
    border-bottom: 1px solid #D1CDC7;
}

/*--------------------------------------------------- FORM : BUTTON*/
.form_cmn input[type="submit"],
input[type="submit"].btn_cmn,
.form_cmn input[type="reset"],
input[type="reset"].btn_cmn,
.form_cmn input[type="button"],
input[type="button"].btn_cmn,
a.lnk_input {
    display: inline-block;
    text-align: center;
    padding: 10px 20px;
    margin: 0.5em 0;
    cursor: pointer;
    background: #2061A0;
    color: #FFF;
    border: none;
    border-radius: 3px;
    vertical-align: middle;
    box-sizing: border-box;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
    transition: all 0.7s ease-in-out 0s;
    -moz-transition: all 0.7s;
    -webkit-transition: all 0.7s;
    -o-transition: all 0.7s;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.form_cmn input[type="reset"],
input[type="reset"].btn_cmn,
a.lnk_input.cancel,
a.lnk_input.back {
    background: #666;
}

.form_cmn input[type="submit"]:hover,
input[type="submit"].btn_cmn:hover,
.form_cmn input[type="reset"]:hover,
input[type="reset"].btn_cmn:hover,
.form_cmn input[type="button"]:hover,
input[type="button"].btn_cmn:hover,
a.lnk_input:hover {
}

/*--------------------------------------------------- FORM : FOCUS*/
.form_cmn input:focus,
input.input_cmn:focus,
.form_cmn textarea:focus,
textarea.input_cmn:focus,
.form_cmn label:focus,
label.label_cmn:focus,
.form_cmn select:focus,
select.select_cmn:focus {
    border-color: #2061A0;
}

#main_and_footer span.wpcf7-not-valid-tip {
    font-size: 12px;
    color: #b02121;
    line-height: 1.6;
}

#main_and_footer div.wpcf7 .ajax-loader {
    display: block;
    margin: 5px auto 0;
}

#main_and_footer div.wpcf7-response-output {
    margin: 0 0 1em;
    padding: 0.5em 1em;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					HOME

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
/*==================================================
HOME MV
====================================================*/
#home_mv {
    position: relative;
}

#home_mv_main {
    position: relative;
    background: #f1f1f1 url("../images/home/sld_img_01.jpg") center center / cover no-repeat;
    padding-top: 684px;
}

#home_mv_main .msg {
    font-size: 30px;
    line-height: 1.8;
    font-weight: 500;
    color: #fff;
    max-width: 100%;
    height: auto;
    position: absolute;
    left: calc((100% - 1000px) / 2);
    top: 50%;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
    z-index: 2;
    letter-spacing: 0.25em;
}

#SliderImg {
    width: 100%;
    height: 100%;
    background: #f1f1f1;
    right: 0;
    top: 0;
    position: absolute;
    overflow: hidden;
}

#SliderImg .sldimg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    display: none;
}

#SliderImg .sldimg .img {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.webp #SliderImg .sldimg#sld_1 .img {
    background-image: url('../images/home/sld_img_01.webp');
}

.webp #SliderImg .sldimg#sld_2 .img {
    background-image: url('../images/home/sld_img_02.webp');
}

.webp #SliderImg .sldimg#sld_3 .img {
    background-image: url('../images/home/sld_img_03.webp');
}

.webp #SliderImg .sldimg#sld_4 .img {
    background-image: url('../images/home/sld_img_04.webp');
}

.webp #SliderImg .sldimg#sld_5 .img {
    background-image: url('../images/home/sld_img_05.webp');
}

#SliderImg .sldimg#sld_1 .img {
    background-image: url('../images/home/sld_img_01.jpg');
}

#SliderImg .sldimg#sld_2 .img {
    background-image: url('../images/home/sld_img_02.jpg');
}

#SliderImg .sldimg#sld_3 .img {
    background-image: url('../images/home/sld_img_03.jpg');
}

#SliderImg .sldimg#sld_4 .img {
    background-image: url('../images/home/sld_img_04.jpg');
}

#SliderImg .sldimg#sld_5 .img {
    background-image: url('../images/home/sld_img_05.jpg');
}

#home_mv_scroll {
    position: absolute;
    bottom: 0;
    right: 40px;
    width: 20px;
    height: 130px;
    background: url("../images/home/sld_SCROLL.png") top center no-repeat;
}

#home_mv_scroll .line {
    width: 100%;
    height: 60px;
    position: absolute;
    top: 70px;
    left: 0;
    overflow: hidden;
}

#home_mv_scroll .line > span {
    display: block;
    height: 100%;
    position: absolute;
    top: 70px;
    left: 10px;
    width: 1px;
    animation: lineline 3s ease-in-out infinite
}

#home_mv_scroll .line span span {
    background: rgba(255, 255, 255, 1);
    display: block;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    transition-duration: .5s;
}

@-webkit-keyframes lineline {
    0%, 100%, 30% {
        top: 0;
        opacity: 1
    }
    14% {
        top: 100%;
        opacity: 0
    }
    16% {
        top: -100%;
        opacity: 0
    }
}

@-moz-keyframes lineline {
    0%, 100%, 30% {
        top: 0;
        opacity: 1
    }
    14% {
        top: 100%;
        opacity: 0
    }
    16% {
        top: -100%;
        opacity: 0
    }
}

@-ms-keyframes lineline {
    0%, 100%, 30% {
        top: 0;
        opacity: 1
    }
    14% {
        top: 100%;
        opacity: 0
    }
    16% {
        top: -100%;
        opacity: 0
    }
}

@-o-keyframes lineline {
    0%, 100%, 30% {
        top: 0;
        opacity: 1
    }
    14% {
        top: 100%;
        opacity: 0
    }
    16% {
        top: -100%;
        opacity: 0
    }
}

@keyframes lineline {
    0%, 100%, 30% {
        top: 0;
        opacity: 1
    }
    14% {
        top: 100%;
        opacity: 0
    }
    16% {
        top: -100%;
        opacity: 0
    }
}

.home_top_openhouse {
    width: 100%;
    padding: 0 50px;
    position: absolute;
    bottom: 50px;
    left: 50%;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
    margin: 0 auto;
    text-align: left;
    overflow: hidden;
}

.ticker .item {
    width: 100%;
    position: relative;
    /* background: rgba(0,0,0,0.3); */
    /* max-width: 830px; */
    margin: 0 auto;
}

.home_top_openhouse dl {
    padding: 10px 0;
    display: none;
    color: #fff;
    width: 100%;
}

.ticker .item dl:first-child {
    display: flex;
}

.home_top_openhouse dt,
.home_top_openhouse dd {
    font-size: 13px;
    font-weight: 500;
    line-height: 1.6;
}

.home_top_openhouse dt {
    min-width: 120px;
    padding: 0 20px 0 0;
    border-right: 1px solid #838383;
}

.home_top_openhouse dd {
    padding: 0 0 0 20px;
}

.home_top_openhouse dt a,
.home_top_openhouse dd a {
    color: #fff;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: block;
}

#home_cap {
    position: relative;
    overflow: hidden;
    z-index: 1;
}

#home_cap_above {
    background: url(../images/home/home_head_2.jpg) center center / cover no-repeat;
    padding: 400px 0 0;
}

#home_cap_below {
    position: absolute;
    height: 100%;
    left: 50%;
    bottom: 0;
    max-width: 600px;
    width: 100%;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
}

#home_cap_below .idx {
    line-height: 1.8;
    text-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
    text-align: center;
    font-weight: 500;
    font-size: 25px;
    margin-bottom: 50px;
}

#home_cap_below p {
    text-align: justify;
    font-size: 15px;
    margin-bottom: 15px;
    line-height: 2;
}

#home_cap_below .btnarea {
    text-align: center;
}

#home_cap_below .upper {
    position: absolute;
    height: 230px;
    overflow: hidden;
    color: #fff;
}

#home_cap_below .lower {
    position: relative;
    z-index: -1;
    color: #525252;
}

.home_cap_txt {
    padding: 0 20px;
    top: 170px;
    left: 0;
    width: 100%;
}

.home_box {
    position: relative;
    width: 100%;
    margin: 100px 0;
    /* background:linear-gradient(180deg,#EFF6FA 150px,#EFF6FA 150px,white 150px,white 100%); */
    background: linear-gradient(180deg, #EFF6FA 150px, #EFF6FA 260px, white 150px, white 100%);
}

.home_box .ttlarea {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate3d(-50%, -25%, 0);
    transform: translate3d(-50%, -25%, 0);
    text-align: center;
    font-weight: 500;
    width: 100%;
    padding: 0 10px;
    font-size: 30px;
}

.home_box .ttl_en {
    font-weight: 500;
    font-size: 15px;
    color: #1376ba;
    display: block;
    margin-top: 10px;
}

#home_philosophy {
    margin-top: 0;
}

#home_philo_list {
    padding: 100px 0 0;
    flex-wrap: wrap;
    display: flex;
}

#home_philo_list .w3 {
    height: 250px;
    width: 33.33%;
}

#home_philo_list .w4 {
    height: 220px;
    width: 25%;
}

#home_philo_list .title {
    line-height: 1.5;
    font-weight: 500;
    text-shadow: 0 0 6px rgba(0, 0, 0, 0.16);
}

#home_philo_list .w3 .title {
    font-size: 25px;
}

#home_philo_list .w4 .title {
    font-size: 20px;
}

#home_philo_list .wooden {
    background: url("../images/home/phil_01.jpg") center center / cover no-repeat;
}

#home_philo_list .concrete {
    background: url("../images/home/phil_02.jpg") center center / cover no-repeat;
}

#home_philo_list .ability {
    background: url("../images/home/phil_03.jpg") center center / cover no-repeat;
}

#home_philo_list .renovation {
    background: url("../images/home/phil_04.jpg") center center / cover no-repeat;
}

#home_philo_list .flow {
    background: url("../images/home/phil_05.jpg") center center / cover no-repeat;
}

#home_philo_list .maintenance {
    background: url("../images/home/phil_06.jpg") center center / cover no-repeat;
}

#home_philo_list .area {
    background: url("../images/home/phil_07.jpg") center center / cover no-repeat;
}

#home_philo_list a {
    text-align: center;
    padding: 20px;
    background: rgba(18, 50, 82, 0.42);
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    align-content: center;
    transition: all 1s;
    -moz-transition: all 1s;
    -webkit-transition: all 1s;
    -o-transition: all 1s;
}

#home_philo_list a:hover {
    background: rgba(18, 50, 82, 0.9);
}

#home_philo_list a .btnarea {
    padding: 20px 0 0;
    width: 100%;
    display: none;
}

#home_philo_list a:hover .btnarea {
    text-align: center;
    display: block;
}

#home_openhouse {
    padding-top: 80px;
}

#home_openhouse .lst_openhouse .item {
    margin: 0 0 30px;
}

#home_works {
    margin-bottom: 80px;
}

#home_works .pc_w_gallery {
    display: block;
}

#home_works .pc_w_gallery #w_gallery .slide {
    height: 560px;
}

#home_works .sp_w_gallery {
    display: none;
}

#w_gallery {
    padding: 100px 40px 0;
}

#w_gallery .slide {
    opacity: 0;
    transition: opacity 0.3s linear;
}

#w_gallery .slide.slick-initialized {
    opacity: 1;
}

#w_gallery .slide {
    display: block;
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    position: relative;
    overflow: visible;
}

#w_gallery .slick-list,
#w_gallery .slide_item {
    width: 100%;
}

#w_gallery .slide_item,
#w_gallery .slick-track {
    width: 100%;

}

#w_gallery .slick-track {
    display: flex;
    /* align-items: center; */
}

#w_gallery .slick-list {
    overflow: hidden;
    margin: 0 auto;
}

/* homeのスライド */
#w_gallery.home_box_gallery .slick-slide {
    transition: .3s ease;
    transform: scale(.75);
    padding-top: 80px;
    /* max-width: 30px; */
    width: 400px !important;
}

#w_gallery.home_box_gallery .slick-current {
    transform: scale(1);
    width: 530px !important;
    padding-top: 0;
}


#w_gallery .slick-slide {
    transition: .3s ease;
    /* max-width: 30px; */
    width: 100%;
}

#w_gallery .slick-current {
    /* transform: scale(1);
	width: 530px !important;
	padding-top: 0; */
}

#w_gallery .slide_item a {
    transition: all 0.5s;
}

#w_gallery .slide_item a:hover {
    opacity: 0.75;
}

/* homeのスライド */
#w_gallery .slick-arrow {
    margin: 0 0 0;
    width: 64px;
    height: 74px;
    position: absolute;
    top: 50%;
    z-index: 3000;
}

#w_gallery.home_box_gallery .slick-arrow {
    top: 250px;
    display: none !important;
}

#w_gallery.home_box_gallery .arrows {
    display: flex;
    height: 100%;
    width: 100%;
    width: 100;
    justify-content: space-between;
    /* position: relative; */
}

#w_gallery.home_box_gallery .arrow-text.prev-arrow.btn {
    padding: 20px 20px 20px 60px;
}

#w_gallery.home_box_gallery .arrow-text.prev-arrow.btn .arw > span > span {
    left: 0;
}

#w_gallery.home_box_gallery .arrow-text.prev-arrow.btn .arw {
    left: 0;
}

#w_gallery.home_box_gallery .arrow-text {
    display: block !important;
    position: absolute;
    top: -10px !important;
    width: auto;
    height: auto;
    cursor: pointer;
}

#w_gallery.home_box_gallery .arrow-text.next-arrow {
    right: 170px;
}

#w_gallery.home_box_gallery .arrow-text.prev-arrow {
    left: 170px;
}

#w_gallery.home_box_gallery .arrow-text.prev-arrow.btn .arw > span > span {
    animation: arrowline 3s reverse ease-in-out infinite;
    left: 0;
}

#w_gallery.home_box_gallery .arrow-text.prev-arrow.btn .arw > span > span:after {
    left: 5px;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
}

#w_gallery.home_box_gallery.slick-prev2.slick-arrow,
#w_gallery.home_box_gallery.slick-next2.slick-arrow {
    /* display: block !important;
    background: unset;
    top: unset;
    width: auto;
    height: auto; */
}

#w_gallery.home_box_gallery .slick-prev {
    background: url(../images/common/sld_nav_prev.png) center center no-repeat;
    left: 0;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
}

#w_gallery.home_box_gallery .slick-next {
    background: url(../images/common/sld_nav_prev.png) center center no-repeat;
    right: 0;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
}


#w_gallery .slick-next {
    background: url(../images/common/sld_nav_next.png) center center no-repeat;
    right: 0;
    /* -webkit-transform: translate3d(50%,-50%,0);
	transform: translate3d(50%,-50%,0); */
}

#w_gallery .slick-prev {
    background: url(../images/common/sld_nav_prev.png) center center no-repeat;
    left: 0;
    /* -webkit-transform: translate3d(50%,-50%,0);
	transform: translate3d(50%,-50%,0); */
}

#w_gallery .slide-dots {
    max-width: 780px;
    margin: 60px auto 0 auto;
    padding: 10px;
    position: relative;
    top: 0 !important;
    /* position: absolute;
	right: calc( ( 100% - 1000px) / 2);
	top: 600px; */
}

#w_gallery.home_box_gallery .blue_btn {
    top: 5px;
    position: absolute;
    right: -30px;
}

#w_gallery.home_box_gallery .blue_btn a {
    max-width: 170px;
    width: 100%;
    color: #fff;
    border-radius: 50px;
    padding: 14px 30px;
    box-shadow: 0px 0px 30px #0000001a;
    background-color: #2061a0;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

#w_gallery .slick-dots {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

#w_gallery .slick-dots li {
    display: inline-block;
    margin: 0 3px;
}

#w_gallery .slick-dots li button {
    padding: 0;
    border: none;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: url("../images/common/sld_nav_inactive.png") center center no-repeat;
    color: transparent;
    -webkit-appearance: none;
}

#w_gallery .slick-dots li.slick-active button {
    background: url("../images/common/sld_nav_active.png") center center no-repeat;
}

#w_gallery .slide_item .img {
    /* padding: 500px 0 0; */
    height: 200px;
    width: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

#w_gallery.home_box_gallery .slide_item.slick-current .img {
    height: 360px;
    width: 530px;
}

#w_gallery .slide_item.slick-current .img {
    height: 360px;
    width: 100%;
}


#w_gallery .slide_item .txt {
    display: flex;
    flex-wrap: wrap;
    padding: 15px 0 0;
}

#w_gallery .slide_item .txt .ttl {
    width: 100%;
    /* padding: 0 40px 0 0; */
    display: flex;
    column-gap: 8px;
    align-items: center;
}

#w_gallery .slide_item .txt .ttl .cat,
#w_gallery .slide_item .txt .ttl .title,
#w_gallery .slide_item .txt .cnt ul li {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

#w_gallery .slide_item .txt .ttl .cat,
#w_gallery .slide_item .txt .ttl .title {
    font-size: 17px;
    font-weight: 600;
    line-height: 1.8;
}

#w_gallery .slide_item .txt .ttl .cat {
    display: block;
    position: relative;
    background-color: #2061a0;
    padding: 5px 10px;
    color: #fff;
    /* padding: 0 0 15px; */
}

#w_gallery .slide_item .txt .ttl .cat:after {
    /* content: ''; */
    position: absolute;
    bottom: 0;
    left: 0;
    background: #2061A0;
    width: 25px;
    height: 1px;
}

#w_gallery .slide_item .txt .ttl .title {
    /* padding: 15px 0 0; */
}

#w_gallery .slide_item .txt .cnt {
    font-size: 17px;
    /* width: calc(100% - 320px); */
    width: 100%;
    display: none;
}

#w_gallery .slide_item.slick-current .txt .cnt {
    display: block;
}

#w_gallery .slide_item.slick-current .txt .cnt.cnt ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#w_gallery .slide_item .txt .cnt ul li {
    line-height: 1.6;
    margin: 5px 0;
    position: relative;
    width: 48%;
    padding-bottom: 5px;
    border-bottom: 1px solid #D0D0D0;
    color: #525252;
    font-weight: 600;
    /* padding: 0 0 0 20px; */
}

#w_gallery .slide_item .txt .cnt ul li:before {
    /* content: url("../images/common/icon_list.png"); */
    position: absolute;
    left: 0;
    top: 2px;
}

#home_works .btnarea {
    /* padding: 30px 0 0; */
}

#home_voice {
    /* height: 300px; */
    display: block;
    background-color: #9caab7;
    width: 100%;
}

#home_voice .inner {
    position: relative;
    height: 100%;
    max-width: 1040px;
    padding: 0 20px;
    margin: 0 auto;
    /* display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between; */
}

#home_voice .home_report_inner li .img img {
    height: 222px;
}

#home_voice .ttlarea {
    font-weight: 500;
    font-size: 30px;
    /* color: white; */
}

#home_voice .ttlarea .ttl_en {
    font-weight: 500;
    font-size: 15px;
    padding-top: 10px;
    display: block;
}

#home_voice .btnarea a {
    /* color: white; */
    z-index: 50;
}

#home_voice .cat_name {
    background-color: #1376ba;
    padding: 8px 24px;
    color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 12px;
}

.home_report_inner {
    max-width: 1040px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 100px 20px 0;
}

.home_report_inner li {
    position: relative;
    width: calc(33.33% - 10px);
    margin-bottom: 50px;
}

.home_report_inner li a {
    display: block;
}

.home_report_inner li .img {
    position: relative;
    margin-bottom: 10px;
    height: 222px;
    display: flex;
    align-items: center;
    background-color: white;
}

.home_report_inner li .img .cat {
    position: absolute;
    top: 0;
    background-color: #1376ba;
    color: white;
    font-size: 15px;
    padding: 5px 10px;
}

.home_report_inner li .img .cat:before {
    content: '\f3c5';
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-style: normal;
    padding: 0 4px 0 0;
}

/*.home_report_inner .txt .cat{*/
/*	background-color: #1376ba;*/
/*	color: white;*/
/*	display: inline-block;*/
/*	font-size: 15px;*/
/*	padding: 5px 10px;*/
/*	margin-bottom: 10px;}*/
/*.home_report_inner .txt .cat:before {*/
/*	content: '\f3c5';*/
/*	font-family: "Font Awesome 5 Free";*/
/*	font-weight: 900;*/
/*	font-style: normal;*/
/*	padding: 0 4px 0 0;}*/

.home_report_inner li .date,
.home_report_inner li .title {
    line-height: 1.6;
    width: 100%;
    display: block;
}

.home_report_inner li .date {
    font-size: 12px;
}

.home_report_inner li .title {
    font-size: 15px;
}

#home_voice .home_report_inner li .title {
    color: #525252;
}

#home_voice .home_report_inner li .title,
#home_voice .cat_name {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-weight: 600;
}

#home_modelhouse span {
    font-size: 15px;
    color: #1376ba;
    display: block;
    margin-top: 10px;
}

#home_modelhouse_list {
    padding: 100px 0 0;
}

.home_modelhouse_box {
    margin-bottom: 5px;
    height: 500px;
    position: relative;
    width: 100%;
}

#home_modelhouse_list .home_modelhouse_box:last-child {
    margin-bottom: 0;
}

.home_modelhouse_box .imgarea {
    display: flex;
    height: 100%;
}

.home_modelhouse_box .imgarea .img.l {
    height: 100%;
    width: 63%;
}

.home_modelhouse_box .imgarea .img.s {
    height: 100%;
    width: 37%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
}

.home_modelhouse_box .imgarea .img.s .ss {
    width: 100%;
    height: 50%;
}

.home_modelhouse_box.dandan .imgarea .img.l {
    background: url("../images/home/img_dd_01.jpg") center center / cover no-repeat;
}

.home_modelhouse_box.dandan .imgarea .img.s .s1 {
    background: url("../images/home/img_dd_02.jpg") center center / cover no-repeat;
}

.home_modelhouse_box.dandan .imgarea .img.s .s2 {
    background: url("../images/home/img_dd_03.jpg") center center / cover no-repeat;
}

.home_modelhouse_box.kaigan .imgarea .img.l {
    background: url("../images/home/img_kg_01.jpg") right center / cover no-repeat;
}

.home_modelhouse_box.kaigan .imgarea .img.s .s1 {
    background: url("../images/home/img_kg_02.jpg") center center / cover no-repeat;
}

.home_modelhouse_box.kaigan .imgarea .img.s .s2 {
    background: url("../images/home/img_kg_03.jpg") center center / cover no-repeat;
}

.home_modelhouse_box .infobox {
    width: 260px;
    background: rgba(25, 40, 60, 0.67);
    text-align: center;
    font-weight: 500;
    position: absolute;
    bottom: 30px;
    padding: 30px 20px;
    color: #fff;
}

.home_modelhouse_box.dandan .infobox {
    left: calc((100% - 1000px) / 2);
}

.home_modelhouse_box.kaigan .infobox {
    right: calc((100% - 1000px) / 2);
}

.home_modelhouse_box .infobox .title {
    font-weight: 500;
    font-size: 25px;
    margin-bottom: 10px;
}

.home_modelhouse_box .infobox p {
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 15px;
}

.home_modelhouse_box .infobox .place {
    font-weight: 500;
}

.home_news_inner {
    max-width: 1020px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    padding: 100px 0 0;
}

.home_news_inner li {
    margin-bottom: 40px;
    padding: 0 10px;
    width: 25%;
}

.home_news_inner li a {
    display: block;
}

.home_news_inner li .img {
    text-align: center;
    margin-bottom: 10px;
}

.home_news_inner li .img img {
    max-width: 100%;
    height: auto;
}

.home_news_inner li .txt {
    display: flex;
    flex-wrap: wrap;
}

.home_news_inner li .cat,
.home_news_inner li .date {
    line-height: 1.6;
    font-size: 12px;
}

.home_news_inner li .cat {
    width: 50%;
    text-align: center;
    border: 1px solid #000;
    display: inline-block;
    padding: 2px 5px;
}

.home_news_inner li .date {
    width: 50%;
    padding: 0 0 0 10px;
    color: #000;
}

.home_news_inner li .title {
    font-size: 15px;
    line-height: 1.6;
    padding: 8px 0 0;
}

#i_gallery {
    background: #fff;
}

#home_insta {
    margin: 100px 0;
    background: #fff url("../images/common/loading.gif") center center no-repeat;
    min-height: 200px;
}

#home_insta .ttlarea {
    padding: 0 20px 50px;
    text-align: center;
}

#home_insta .ttlarea .title {
    color: #000;
    height: 36px;
    line-height: 36px;
    font-size: 30px;
    background: url("../images/common/ico_ig_bk.png") left center no-repeat;
    padding: 0 0 0 45px;
    display: inline-block;
}

#i_gallery .slide {
    opacity: 0;
    transition: opacity 0.3s linear;
    display: block;
    width: 100%;
    margin: 0 auto;
    position: relative;
}

#i_gallery .slide.slick-initialized {
    opacity: 1;
}

#i_gallery .slide .slide_item {
    padding-top: calc((100% / 17) - 20px);
    background-color: #9caab7;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    margin: 0 10px;
}

#i_gallery .slick-list {
    width: 100%;
}

.home_utl_links {
    opacity: 0;
    visibility: hidden;
    display: none;
    position: fixed;
    z-index: 9000;
    width: 50px;
    top: 50%;
    right: 0;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
    transition: all 0.7s ease-in-out 0s;
    -moz-transition: all 0.7s;
    -webkit-transition: all 0.7s;
    -o-transition: all 0.7s;
}

.hdrchange .home_utl_links {
    opacity: 1;
    visibility: visible;
}

.home_utl_links li {
    margin: 0 0 10px;
}

.home_utl_links li:last-child {
    margin: 0 0 0;
}

.home_utl_links li a {
    position: relative;
    color: #fff;
    background: #2061A0;
    color: #fff;
    background: #2061A0;
    display: flex;
    align-items: center;
    align-content: center;
    justify-content: center;
    padding: 15px 10px 35px;
}

.home_utl_links li a:after {
    position: absolute;
    bottom: 10px;
    left: 18px;
    content: url("../images/common/ico_plus.svg");
}

.home_utl_links .sp {
    display: none;
}

.attachment .bottom_banner,
#photo-tags .bottom_banner,
#works .bottom_banner,
#voices .bottom_banner {
    display: none;
}

.hdrchange .bottom_banner {
    opacity: 1;
    visibility: visible;
    pointer-events: unset;
}


.bottom_banner {
    opacity: 0;
    visibility: hidden;
    max-width: 400px;
    width: 100%;
    height: 90px;
    position: fixed;
    bottom: 0;
    z-index: 41;
    display: flex;
    justify-content: space-between;
    pointer-events: none;
}

.bottom_banner .left {
    position: relative;
    background-image: url("../images/hachiken/mv.jpg");
    background-size: cover;
    background-position: center;
    width: calc(100% - 120px);
}

.bottom_banner .filter {
    position: absolute;
    background-color: #123252e0;
    width: 100%;
    height: 100%;
}

.bottom_banner .text {
    position: absolute;
    width: calc(100% - 40px);
    height: fit-content;
    top: 0;
    bottom: 0;
    left: 33px;
    margin: auto;
    font-weight: 500;
    color: white;
}

.bottom_banner .title {
    font-size: 16px;
    margin-bottom: 5px;
}

.bottom_banner .title p {
    font-size: 25px;
    letter-spacing: 0.1em;
    margin-top: 5px;
}

.bottom_banner span {
    font-size: 13px;
    position: relative;
}

.bottom_banner span::before,
.bottom_banner span::after {
    content: '';
    position: absolute;
    background-color: white;
    height: 1px;
}

.bottom_banner span::before {
    width: 48px;
    left: calc(100% + 20px);
    bottom: 0;
}

.bottom_banner span::after {
    left: calc(100% + 58px);
    width: 10px;
    transform: rotate(45deg);
    bottom: 3px;
}

.bottom_banner .right {
    width: 120px;
    height: 100%;
    background-image: url("../images/hachiken/mv.jpg");
    background-size: cover;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					PAGE COMMON

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/

/*==================================================
パララックス
====================================================*/
.para_cmn {
    width: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    height: 260px;
}

.para_box {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 0;
    overflow: hidden;
}

.para_inner {
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.para_overlay {
    overflow: hidden;
    background: #fff;
    position: relative;
    z-index: 30;
}

.para_space {
    height: 260px;
}

.para_inner.home_voices {
    background-image: url(../images/home/home_voice.jpg);
}

.para_inner.philo_wooden {
    background-image: url(../images/wooden-house/para_01.jpg);
}

.para_inner.philo_concrete {
    background-image: url(../images/concrete-house/para_01.jpg);
}

.para_inner.philo_tech_01 {
    background-image: url(../images/technology/para_01.jpg);
}

.para_inner.philo_tech_02 {
    background-image: url(../images/technology/para_02.jpg);
}

.title_blue_bg {
    position: relative;
}

.title_blue_bg:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 150px;
    background: #EFF6FA;
    left: 0;
    top: 50%;
    z-index: -1;
}

.title_blue_bg h2 {
    text-align: center;
    font-size: 30px;
    line-height: 1.3;
    padding: 0 10px;
    letter-spacing: 0.2em;
    margin: 0 0 75px;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					WORKS

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
/*==================================================
WORKS SINGLE
====================================================*/
.works_single_main {
    max-width: 1000px;
    margin: 0 auto 75px;
    text-align: center;
    position: relative;
    z-index: 5;
}

.works_single_main img {
    max-width: 100%;
    height: auto;
}

.works_single_content_area {
    max-width: 700px;
    margin: 0 auto;
    padding: 0 20px;
}

.works_single_content {
    padding: 0 0 5px;
    border-bottom: 1px solid #CBCBCB;
}

.works_single_content p,
.works_single_content li,
.works_single_content dt,
.works_single_content dd {
    font-size: 17px;
    line-height: 30px;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    padding: 0 0 20px 30px;
    position: relative;
}

.works_single_content p:before,
.works_single_content li:before,
.works_single_content dt:before {
    content: '';
    display: block;
    width: 15px;
    height: 16px;
    position: absolute;
    left: 0;
    top: 8px;
    background: url("../images/common/icon_list.png") center center no-repeat;
    background-size: 100% auto;
}

.works_single_info {
    padding: 50px 0 0;
    letter-spacing: -0.4em;
}

.works_single_info_list {
    display: inline-block;
    margin: 0 20px 0 0;
    letter-spacing: normal;
}

.works_single_info_list dt,
.works_single_info_list dd {
    display: inline-block;
    font-size: 15px;
    line-height: 1.5;
    letter-spacing: 0.2em;
    color: #525252;
}

.works_single_photo_area {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    max-width: 1040px;
    margin: 3em auto;
    padding: 0 10px;
}

.works_single_photo_box {
    width: 100%;
    padding: 10px;
}

.works_single_photo_box.vertical {
    width: 50%;
}

.works_single_photo_box_inner {
    display: block;
    position: relative;
}

.works_single_photo_box_inner .works_photo_img {
    display: block;
}

.works_single_photo_box_inner .works_photo_img img {
    max-width: 100%;
    height: auto;
}

.works_photo_tag {
    position: absolute;
    right: 0;
    bottom: 0;
    text-align: right;
}

.works_photo_tag a.works_photo_tag_icon {
    display: inline-block;
    background: rgba(32, 97, 160, 0.8);
    min-width: 127px;
    text-align: center;
    color: #FFF;
    font-size: 15px;
    line-height: 20px;
    padding: 10px;
    letter-spacing: 0.2em;
    margin: 0 0 0 10px;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.works_photo_tag a.works_photo_tag_icon:hover {
    background: rgba(32, 97, 160, 1);
}

#works_archive .catarea {
    max-width: 1000px;
    margin: 0 auto;
    padding: 20px 0;
    border-top: 1px solid #E2E2E2;
}

#works_archive .catarea ul {
    display: flex;
    flex-wrap: wrap;
}

#works_archive .catarea ul li {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

#works_archive .catarea ul li a {
    font-size: 12px;
    display: inline-block;
    padding: 10px;
}

#works_archive .catarea ul li a:before {
    content: '#';
}

.works_single_pagenavi {
    max-width: 1020px;
    margin: 0 auto;
    padding: 40px 20px;
}

.works_freearea {
    max-width: 700px;
    margin: 3em auto;
    padding: 0 20px;
}

.works_freearea,
.works_freearea p {
    line-height: 1.8;
}

.works_freearea p {
    margin-bottom: 0.5em;
}

.works_freearea ul,
.works_freearea ol {
    margin: 1.5em 0 1.5em 2em;
}

.works_freearea ul {
    list-style: disc;
}

.works_freearea ol {
    list-style: decimal;
}

.works_freearea li {
    margin: 0.25em 0;
    line-height: 1.6;
}

.works_freearea blockquote {
    border-left: 5px solid #2061a0;
    padding: 1em 0 1em 1em;
    margin: 1.5em 0 1.5em 1em;
}

.works_freearea blockquote cite {
    display: inline-block;
    line-height: 1.4;
    font-size: 0.875em;
    opacity: 0.5;
    position: relative;
    padding-left: 4.5em;
}

.works_freearea blockquote cite::before {
    content: '';
    width: 3em;
    height: 1px;
    background: #000;
    display: block;
    position: absolute;
    left: 1em;
    top: 50%;
    opacity: 0.4;
}

.works_freearea p a {
    padding: 0 0.25em;
    color: #2061a0;
    border-bottom: 1px dotted;
}

.works_freearea p a:hover {
    border-bottom-style: solid;
}

/*==================================================
WORKS ARCHIVE
====================================================*/
.works_archvie_area {
    max-width: 1020px;
    margin: 0 auto;
    padding: 0 0 50px;
    display: flex;
    flex-wrap: wrap;
}

.works_archvie_pagenavi {
    padding: 0 0 40px;
}

.works_archvie_box {
    width: 33.33%;
    padding: 10px 10px 50px;
}

.works_archvie_box a {
    display: block;
}

.works_archvie_inner .img {
    display: block;
    position: relative;
    overflow: hidden;
    padding: 68.75% 0 0;
}

.works_archvie_box a .works_archvie_inner .img img {
    display: block;
    width: 100%;
    height: auto;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
}

.works_archvie_box a:hover .works_archvie_inner .img img {
    -webkit-transform: translate3d(-50%, -50%, 0) scale3d(1.1, 1.1, 1.1);
    transform: translate3d(-50%, -50%, 0) scale3d(1.1, 1.1, 1.1);
}

.works_archvie_inner .title {
    display: block;
    font-size: 17px;
    line-height: 1.5;
    color: #000;
    padding: 10px 0 0;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-weight: 600;
    letter-spacing: 0.2em;
}

.works_archvie_box a:hover .works_archvie_inner .title {
    color: #2061A0;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			PHOTO

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
#phototag_check_area {
    max-width: 1000px;
    margin: 0 auto 60px;
    border: 1px solid #707070;
    transition: border 0.5s;
    -moz-transition: border 0.5s;
    -webkit-transition: border 0.5s;
    -o-transition: border 0.5s;
}

#phototag_check_area.open {
    border-left-color: #FFF;
    border-right-color: #FFF;
}

.phototag_search_btn_area a.phototag_search_btn {
    display: block;
    position: relative;
    letter-spacing: 0.2em;
    font-size: 17px;
    line-height: 20px;
    padding: 20px;
    color: #000;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.phototag_search_btn_area a.phototag_search_btn:hover {
    color: #2061A0;
}

.phototag_search_btn_area a.phototag_search_btn:before,
.phototag_search_btn_area a.phototag_search_btn:after {
    content: '';
    display: block;
    width: 20px;
    height: 1px;
    position: absolute;
    top: 50%;
    right: 30px;
    background: #707070;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
    transition: all 0.5s;
    -moz-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
}

.phototag_search_btn_area a.phototag_search_btn:hover:before,
.phototag_search_btn_area a.phototag_search_btn:hover:after {
    background: #2061A0;
}

.phototag_search_btn_area a.phototag_search_btn:after {
    -webkit-transform: translate3d(0, -50%, 0) rotate3d(0, 0, 1, 90deg);
    transform: translate3d(0, -50%, 0) rotate3d(0, 0, 1, 90deg);
}

#phototag_check_area.open .phototag_search_btn_area a.phototag_search_btn:after {
    -webkit-transform: translate3d(0, -50%, 0) rotate3d(0, 0, 1, 180deg);
    transform: translate3d(0, -50%, 0) rotate3d(0, 0, 1, 180deg);
}

#phototag_check_list_area {
    display: none;
}

#phototag_check_list {
    padding: 20px 10px 10px;
    display: flex;
    width: 100%;
    flex-wrap: wrap;
}

#phototag_check_list li {
    padding: 0 10px 10px;
    width: 25%;
}

#phototag_check_list li a {
    display: inline-block;
    color: #000;
    font-size: 15px;
    line-height: 20px;
    padding: 5px 0;
    position: relative;
}

#phototag_check_list li a.current,
#phototag_check_list li a:hover {
    color: #2061A0;
}

#phototag_check_list li a:after {
    content: '';
    width: 0;
    height: 1px;
    position: absolute;
    left: 0;
    bottom: 0;
    background: #2061A0;
    transition: all 0.5s;
    -moz-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
}

#phototag_check_list li a.current:after,
#phototag_check_list li a:hover:after {
    width: 100%;
}

.phototag_archive_area {
    max-width: 1020px;
    margin: 0 auto 60px;
    position: relative;
}

.photo_archvie_box {
    width: 255px;
    padding: 10px;
    position: absolute;
    left: 50%;
    top: 0;
    opacity: 0;
    transition: all 0.5s;
    -moz-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
}

.ready .photo_archvie_box {
    opacity: 1;
}

.photo_archvie_box_inner {
    display: block;
    position: relative;
}

.photo_archvie_box_img {
    display: inline-block;
}

.photo_archvie_box_img a {
    display: inline-block;
}

.photo_archvie_box_img img {
    max-width: 100%;
}

.photo_archvie_box_tag {
    padding: 0.5em 0 0;
    position: static;
    text-align: left;
    display: inline-block;
}

.photo_archvie_box_inner a.works_photo_tag_icon {
    color: #000;
    display: inline-block;
    background: none;
    min-width: auto;
    font-size: 12px;
    padding: 0.5em 0;
    line-height: 1;
    letter-spacing: 0.2em;
    margin: 0 0.75em 0 0;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.photo_archvie_box_inner a.works_photo_tag_icon:hover {
    background: inherit;
}

#photo_tag_title {
    text-align: center;
    padding: 0 10px 40px;
    font-size: 30px;
    line-height: 1.2;
    letter-spacing: 0.2em;
    color: #000;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

#photo_single_slide_area {
    max-width: 910px;
    margin: 0 auto;
    padding: 0 40px 50px;
    position: relative;
}

#photo_single_slide {
    width: 100%;
    position: relative;
    height: 0;
    padding: 68.674% 0 0;
    overflow: hidden;
}

#photo_single_slide_inner {
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
}

.photo_single_slide_item {
    height: 100%;
    width: 100%;
    position: relative;
    float: left;
    opacity: 0;
    transition: opacity 0.5s;
    -moz-transition: opacity 0.5s;
    -webkit-transition: opacity 0.5s;
    -o-transition: opacity 0.5s;
}

.photo_single_slide_loaded .photo_single_slide_item {
    opacity: 1;
}

#photo_single_slide_inner img {
    position: absolute;
    max-height: 100%;
    left: 50%;
    top: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
}

.photo_single_slide_inner_tag {
    position: absolute;
    text-align: right;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.photo_single_slide_inner_tag a.works_photo_tag_icon {
    display: inline-block;
    background: rgba(32, 97, 160, 0.8);
    min-width: 127px;
    text-align: center;
    color: #FFF;
    font-size: 15px;
    line-height: 20px;
    padding: 10px;
    letter-spacing: 0.2em;
    margin: 0 0 0 10px;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.photo_single_slide_inner_tag a.works_photo_tag_icon:hover {
    background: rgba(32, 97, 160, 1);
}

#photo_single_slide_prev_btn,
#photo_single_slide_next_btn {
    position: absolute;
    top: 50%;
    margin: -40px 0 0 0;
    width: 80px;
    height: 80px;
    background: url("../images/common/sld_nav_next.png") center center no-repeat;
    background-size: contain;
}

#photo_single_slide_prev_btn {
    left: 0;
    background-image: url("../images/common/sld_nav_prev.png");
}

#photo_single_slide_next_btn {
    right: 0;
}


.phylosopy_head {
    z-index: 40;
    background: #EFF6FA;
    padding: 70px 0 0;
    margin: 0 0 70px;
    position: relative;
}

.phylosopy_head h2 {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    position: absolute;
    left: 50%;
    top: 0;
    font-size: 30px;
    line-height: 40px;
    letter-spacing: 0.2em;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
    width: 100%;
    text-align: center;
}

.phylosopy_head_imgarea {
    width: 100%;
    height: 390px;
    background: url("../images/wooden-house/head.jpg") center center no-repeat;
    background-size: cover;
}

#concretehousing .phylosopy_head_imgarea {
    background-image: url("../images/concrete-house/head.jpg");
}

#technology .phylosopy_head_imgarea {
    background-image: url("../images/technology/head.jpg");
}

#area .phylosopy_head_imgarea {
    background-image: url("../images/area/head.jpg");
}

#flow .phylosopy_head_imgarea {
    background-image: url("../images/flow/head.jpg");
}

#renovation .phylosopy_head_imgarea {
    background-image: url("../images/renovation/head.jpg");
}

#maintenance .phylosopy_head_imgarea {
    background-image: url("../images/maintenance/head.jpg");
}

.phylosopy_head_img {
    position: absolute;
    right: 100px;
    bottom: -70px;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					Concept

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.concept_head {
    position: relative;
    width: 100%;
    height: 150px;
    margin-top: 100px;
    background-color: #EFF6FA;
}

.concept_head .title {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
    text-align: center;
    width: 100%;
    padding: 0 10px;
    font-size: 30px;
    line-height: 1.5;
    font-weight: 500;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.concept_cap {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
    top: -60px;
}

.concept_cap p:last-child {
    margin: 0;
}

.concept_cap_big {
    font-size: 25px;
    margin-bottom: 30px;
    line-height: 1.6;
    font-weight: 500;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.concept_cap_small {
    text-align: justify;
    font-size: 14px;
    margin-bottom: 30px;
    line-height: 1.8;
}

.concept_content {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 20px;
}

.concept_content .concept_content_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    background-color: #EFF6FA;
    margin: 0 0 30px;
}

.concept_content .concept_content_box .img {
    position: relative;
    width: 40%;
}

.concept_content .concept_content_box.chi .img {
    background: url(../images/concept/chi.jpg) center center / cover no-repeat;
}

.concept_content .concept_content_box.hito .img {
    background: url(../images/concept/hito.jpg) center center / cover no-repeat;
}

.concept_content .concept_content_box .title {
    position: absolute;
    left: 20px;
    top: 20px;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    color: #fff;
    font-weight: 500;
    font-size: 40px;
    width: 84px;
    height: 84px;
    line-height: 84px;
    text-align: center;
    border: 1px solid;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 0 3px 0;
}

.ie.win .concept_content .concept_content_box .title {
    padding: 12px 0 0 2px;
}

.chrome.mac .concept_content .concept_content_box .title {
    padding: 12px 0 0 2px;
}

.concept_content .concept_content_box .txt {
    width: 60%;
    padding: 30px;
    font-size: 15px;
    text-align: justify;
    line-height: 1.8;
}

.concept_content .concept_content_box .txt .dots {
    padding: 0 1em 0 0;
    background: url("../images/common/3dots.png") center center no-repeat;
}

.concept_north {
    background-image: url(../images/concept/north.jpg);
    background-size: 100% auto;
    background-position: center center;
    max-width: 1000px;
    margin: 0 auto 100px;
    padding: 0 10px;
}

.concept_north .title {
    text-align: center;
    font-weight: 500;
    width: 100%;
    font-size: 30px;
    line-height: 1.5;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    color: white;
    padding: 60px 30px 10px;
}

.concept_north .txt {
    color: white;
    font-size: 15px;
    line-height: 1.8;
    padding: 30px
}

.concept_access {
    position: relative;
    width: 100%;
    height: 150px;
    margin: 100px 0;
    background-color: #EFF6FA;
    background-size: 100% 150px;
}

.concept_access p {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate3d(-50%, -20%, 0);
    transform: translate3d(-50%, -20%, 0);
    text-align: center;
    padding: 0 10px;
    font-size: 18px;
}

.concept_access p span {
    margin: 10px;
    font-size: 14px;
    display: block;
}

.concept_access div {
    max-width: 1020px;
    margin: 0 auto 100px;
    padding: 0 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.concept_access dl {
    line-height: 1.5;
    margin-top: 100px;
    width: calc(33.33% - 10px);
    background-color: #1376ba;
    display: flex;
    flex-wrap: wrap;
}

.concept_access dt {
    line-height: 1.5;
    color: white;
    font-size: 18px;
    padding: 20px;
}

.concept_access dd {
    line-height: 1.5;
    color: white;
    font-size: 14px;
    padding: 0 20px;
}

.concept_access dd:last-child {
    padding-bottom: 20px;
}

/*▼CONCEPT 上書き部分！▼*/
.concept_north dt {
    color: white;
    text-align: center;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    padding: 50px 20px;
    font-size: 30px;
    line-height: 1.5;
}

.concept_north dd {
    padding: 0 30px 30px;
}

/*▲CONCEPT 上書き部分！ここまで！▲*/
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

	　　　　　　 	Renovation

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.renovation_head {
    position: relative;
    width: 100%;
    margin-top: 100px;
    background-color: #EFF6FA;
}

.renovation_head p {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
    text-align: center;
    font-weight: 500;
    width: 100%;
    padding: 0 10px;
    font-size: 30px;
    line-height: 1.5;
}

.renovation_head img {
    width: 100%;
    margin: 0 auto 80px;
    display: block;
    padding: 100px 0 0;
}

.renovation_cap {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 20px 100px;
}

.renovation_cap p.idx {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-size: 1.6rem;
    line-height: 1.6;
    letter-spacing: 0.2em;
    margin-bottom: 40px;
}

.renovation_cap p.main {
    line-height: 1.8;
    margin-bottom: 80px;
    font-size: 15px;
}

.renovation_cap .btnarea .btn {
    font-family: inherit;
    border: 1px solid #2061a0;
}

.renovation_cap .btnarea .btn .arw {
    right: 20px;
}

.renovation_cap .btnarea .btn:hover {
    color: #2061a0;
    background-color: #ffffff;
    border: 1px solid #2061a0;
}

.renovation_cap .btnarea.white .btn:hover .arw > span > span::after,
.renovation_cap .btnarea.white .btn:hover .arw > span > span {
    background: #2061a0;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

	　　　　　　 	Flow

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.flow_head {
    position: relative;
    width: 100%;
    margin-top: 100px;
    background-color: #EFF6FA;
}

.flow_head p {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
    text-align: center;
    font-weight: 500;
    width: 100%;
    padding: 0 10px;
    font-size: 30px;
}

.flow_head img {
    width: 100%;
    margin: 0 auto 80px;
    display: block;
    padding: 100px 0 0;
}

.flow_cap {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 20px 20px;
}

.flow_cap dt {
    letter-spacing: 0.2em;
    line-height: 1.8;
    margin-bottom: 40px;
    font-size: 25px;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.flow_cap dd {
    letter-spacing: 0.15em;
    line-height: 1.8;
    margin-bottom: 80px;
    font-size: 15px;
}

.flow_flow {
    max-width: 1040px;
    margin: 0 auto 80px;
    padding: 0 20px;
}

.flow_flow div {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    border-bottom: 1px solid #C6C6C6;
}

.flow_flow div p {
    width: 40%
}

.flow_flow div img {
    display: block;
    margin: 0 auto;
}

.flow_flow div:first-child {
    border-top: 1px solid #C6C6C6;
}

.flow_flow div dl {
    width: calc(60%);
    padding: 60px 80px 60px 20px;
}

.flow_flow div dt {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    letter-spacing: 0.15em;
    line-height: 1.8;
    font-weight: 500;
    font-size: 20px;
}

.flow_flow div dd {
    padding: 5px 0 0;
    line-height: 27px;
    font-size: 15px;
}

.flow_flow div dt:nth-of-type(2) {
    margin-top: 30px;
}

.flow_flow div dd span {
    display: block;
    font-size: 12px;
}

.flow .phylosopy_head {
    position: relative;
}

.flow .head_img_illust {
    position: absolute;
    bottom: -94px;
    right: 10.8333%;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

	　　　　　　 	Maintenance

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.maintenance_head {
    position: relative;
    width: 100%;
    margin-top: 100px;
    background-color: #EFF6FA;
}

.maintenance_head p {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
    text-align: center;
    font-weight: 500;
    width: 100%;
    padding: 0 10px;
    font-size: 30px;
}

.maintenance_head img {
    width: 100%;
    margin: 0 auto 80px;
    display: block;
    padding: 100px 0 0;
}

.maintenance_cap {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 20px 20px;
}

.maintenance_cap p.idx {
    letter-spacing: 0.2em;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    line-height: 1.8;
    margin-bottom: 40px;
    font-size: 25px;
}

.maintenance_cap p.main {
    letter-spacing: 0.15em;
    line-height: 1.8;
    margin-bottom: 50px;
    font-size: 15px;
}

.maintenance_about {
    max-width: 1040px;
    margin: 0 auto 80px;
    padding: 0 20px;
}

.maintenance_about .item {
    margin: 0 0 20px;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
}

.maintenance_about .item .idx {
    width: 25.5%;
    display: flex;
    align-items: center;
    background-color: #1376ba;
}

.maintenance_about .idx .title {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    color: white;
    line-height: 1.8;
    font-size: 17px;
    text-align: center;
    margin: 0 auto;
}

.maintenance_about .txt {
    width: 74.5%;
    padding: 40px 20px;
    background-color: #EFF6FA;
}

.maintenance_about .txt p {
    letter-spacing: 0.15em;
    line-height: 1.8;
    font-size: 15px;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

	　　　    　　　 	Area

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.area_head {
    position: relative;
    width: 100%;
    margin-top: 100px;
    background-color: #EFF6FA;
}

.area_head p {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
    text-align: center;
    font-weight: 500;
    width: 100%;
    padding: 0 10px;
    font-size: 30px;
}

.area_head img {
    width: 100%;
    margin: 0 auto 80px;
    display: block;
    padding: 100px 0 0;
}

.area_cap {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 20px 20px;
}

.area_cap p.idx {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    line-height: 1.8;
    margin-bottom: 40px;
    font-size: 25px;
}

.area_cap p.main {
    letter-spacing: 0.15em;
    line-height: 1.8;
    margin-bottom: 40px;
    padding-bottom: 40px;
    font-size: 15px;
    border-bottom: 1px solid #C6C6C6;
}

.area_cap p.areas {
    letter-spacing: 0.15em;
    font-size: 15px;
    line-height: 1.8;
    border-bottom: none;
}

.area_map {
    max-width: 1040px;
    margin: 40px auto 100px;
    padding: 0 20px;
}

.area_map img {
    max-width: 100%;
    display: block;
    margin: 0 auto;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					CASE

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.case_image {
    max-width: 1040px;
    margin: 60px auto 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.case_image div {
    display: inline-block;
    width: 33.33%;
    margin-bottom: 50px;
    padding: 0 10px;
}

.case_image div img {
    width: 100%;
    margin-bottom: 10px;
}

.case_image div p {
    color: #343434;
    line-height: 1.5;
    font-size: 16px;
    font-weight: 500;
}

.case_pagenavi {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    max-width: 1040px;
    margin: 0 auto 80px;
    padding: 0 20px;
}

.case_pagenavi li {
    font-size: 16px;
    font-weight: 500;
    padding: 10px;
}

.case_pagenavi li:first-child {
    margin-right: 30px;
}

.case_pagenavi li:last-child {
    margin-left: 30px;
}

.case_access {
    position: relative;
    width: 100%;
    height: 150px;
    margin: 100px 0;
    background-color: #EFF6FA;
    background-size: 100% 150px;
}

.case_access p {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate3d(-50%, -20%, 0);
    transform: translate3d(-50%, -20%, 0);
    text-align: center;
    font-weight: 500;
    padding: 0 10px;
    font-size: 18px;
}

.case_access p span {
    margin: 10px;
    font-size: 14px;
    display: block;
}

.case_access div {
    max-width: 1020px;
    margin: 0 auto 100px;
    padding: 0 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.case_access dl {
    line-height: 1.5;
    margin-top: 100px;
    width: calc(33.33% - 10px);
    background-color: #1376ba;
    display: flex;
    flex-wrap: wrap;
}

.case_access dt {
    line-height: 1.5;
    color: white;
    font-size: 18px;
    padding: 20px;
}

.case_access dd {
    line-height: 1.5;
    color: white;
    font-size: 14px;
    padding: 0 20px;
}

.case_access dd:last-child {
    padding-bottom: 20px;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

				   MODEL HOUSE

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.lst_modelhouse {
    max-width: 1040px;
    padding: 0 10px;
    margin: 100px auto 75px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.lst_modelhouse .item {
    width: 50%;
    padding: 0 1em 3em;
}

.lst_modelhouse .item a {
    display: block;
}

.lst_modelhouse .item img {
    height: auto;
    max-width: 100%;
}

.lst_modelhouse .cnt {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.lst_modelhouse .ttl {
    width: calc(65% - 10px);
    line-height: 1.5;
    margin-right: 10px;
    margin-top: 20px;
}

.lst_modelhouse .ttl .title {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-weight: 500;
    margin-bottom: 10px;
    font-size: 20px;
}

.lst_modelhouse .ttl span {
    display: block;
    font-size: 16px;
}

.lst_modelhouse .ttl span:before {
    padding: 0 4px 0 0;
    color: #2061A0;
    content: '\f3c5';
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-style: normal;
}

.lst_modelhouse .btn {
    width: 35%;
    margin-top: 20px;
}

.lst_modelhouse .btn a {
    display: block;
    font-size: 13px;
    padding: 20px 10px;
    color: white;
    background-color: #1376ba;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					MODELHOUSE SINGLE

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
#w_gallery.mh {
    padding: 0 40px 0;
}

#w_gallery.mh .slide-dots {
    position: static;
}

#w_gallery.mh .slide_item .img {
    height: 590px;
    padding: 0 0 0;
}

#w_gallery.mh .slide_item .img img {
    max-width: 100%;
    max-height: 100%;
    text-align: center;
    margin: 0 auto;
}

.modelhouse_head {
    background: #EFF6FA;
    padding: 140px 0 0;
    position: relative;
    margin: 0 0 70px;
    bottom: -105px;
}

.modelhouse_head .ttlarea {
    text-align: center;
    width: 100%;
    position: absolute;
    top: -15px;
    left: 0;
}

.modelhouse_head .ttlarea p {
    padding: 0 20px;
    line-height: 1.6;
    font-size: 17px;
}

.modelhouse_head .title {
    font-size: 30px;
    padding: 20px 20px;
}

.model_h_detail_data dd ul li {
    font-weight: 500;
    padding: 18px 45px;
    position: relative;
}

.model_h_detail_data dd ul li:before {
    content: '';
    width: 15px;
    height: 15px;
    position: absolute;
    top: 50%;
    left: 20px;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
    background: url("../images/common/icon_list.png") center center no-repeat;
}

.model_h_detail_data dd {
    line-height: 1.8;
}

.modelhouse_head p,
.model_h_detail_data dd ul li {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.model_h_detail_data dd iframe {
    width: 100%;
    height: 300px;
}

.model_h_detail_slider {
    width: 100%;
    padding: 0 10px;
    margin-bottom: 60px;
}

.model_h_detail_slider p {
    font-size: 15px;
    font-weight: 500;
    text-align: center;
    width: 100%;
    padding: 30px 10px;
}

.model_h_detail_slider span {
    font-size: 30px;
    display: block;
    padding: 30px 10px;
}

.model_h_detail_slider dl {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 20px;
}

.model_h_detail_slider dt {
    width: 30%;
    font-size: 18px;
    padding: 20px 0;
    font-weight: 500;
    line-height: 1.5;
}

.model_h_detail_slider dd {
    width: 70%;
}

.model_h_detail_slider dd ul li {
    padding: 20px;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
}

.model_h_detail_slider dd ul li:nth-of-type(odd) {
    background-color: #EFF6FA;
}

.model_h_detail_data dl {
    max-width: 1040px;
    padding: 0 20px;
    margin: 0 auto;
}

.model_h_detail_data dl {
    padding-bottom: 80px;
    display: flex;
    justify-content: flex-start;
}

.model_h_detail_data dt {
    letter-spacing: 0.15em;
    width: 25%;
    min-width: 200px;
    font-size: 20px;
    padding: 5px 0;
    font-weight: 500;
    line-height: 1.5;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.model_h_detail_data dd {
    width: 75%;
}

.model_h_detail_data dd,
.model_h_detail_data dd p {
    letter-spacing: 0.1em;
    line-height: 1.8;
}

.model_h_detail_data dd p {
    margin: 0 0 1.5em;
}

.model_h_detail_data dd p:last-child {
    margin: 0 0 0;
}

.model_h_detail_data dd ul li {
    font-size: 17px;
    line-height: 1.5;
    letter-spacing: 0.2em;
}

.model_h_detail_data dd ul li:nth-child(odd) {
    background: #EFF6FA;
}

.model_h_detail_data dl a {
    color: #1376ba;
    display: inline-block;
}

.model_h_detail_form {
    padding: 0 40px;
    width: calc(100% - 40px);
    max-width: 1000px;
    margin: 0 auto;
    border: 1px solid #1376ba;
}

.model_h_detail_form.nb {
    border: none;
}

.model_h_detail_form.om {
    padding: 0;
    max-width: 1000px;
}

.model_h_detail_form.om .model_h_detail_form_inner {
    padding: 0;
    max-width: none;
}

.model_h_detail_form h3 {
    text-align: center;
    color: #1376ba;
    font-size: 25px;
    font-weight: 500;
    margin: 40px auto 50px;
}

.mode_h_detail_form_text {
    display: block;
    margin: 10px 0;
    font-size: 15px;
    line-height: 1.8;
}

.mode_h_detail_form_text {
    margin-bottom: 30px;
    text-align: center;
}

/*.model_h_detail_form dl dd a{
	padding: 30px 50px;
	background-color: #EFF6FA;
	display: inline-block;}*/
.model_h_detail_form_inner {
    padding: 20px 0;
    max-width: 830px;
    margin: 0 auto;
}

.modelhouse_tel,
.modelhouse_form {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.modelhouse_tel {
    align-items: stretch;
    margin-bottom: 50px;
}

.modelhouse_tel dt {
    background-color: #1376ba;
    color: white;
    text-align: center;
    padding: 20px 0;
    width: 30%;
    font-weight: 500;
    font-size: 20px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.modelhouse_tel dt span {
    align-self: center;
}

.modelhouse_tel dd {
    background-color: #EFF6FA;
    padding: 20px 10px;
    font-size: 20px;
    width: 70%;
    text-align: center;
    font-weight: 500;
}

.modelhouse_tel dt,
.modelhouse_tel dd {
    line-height: 1.6;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.modelhouse_form {
    padding: 30px 0;
    border-top: 1px solid #d6d6d6;
}

.model_h_detail_form_inner .wpcf7-form .modelhouse_form:last-of-type {
    border-bottom: 1px solid #d6d6d6;
}

.modelhouse_form > dt {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    min-width: 220px;
    line-height: 1.4;
    width: 30%;
    font-size: 19px;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.modelhouse_form.message > dt {
    align-self: flex-start;
}

.modelhouse_form > dt small {
    font-size: 0.8em;
    line-height: 1.4;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.modelhouse_req {
    font-family: "Noto Sans JP", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ proNw3", sans-serif;
    font-weight: normal;
    display: inline-block;
    font-size: 12px;
    color: #fff;
    background: #2061A0;
    margin: 0 0 0 15px;
    padding: 2px 10px 4px;
    line-height: 1.2;
    width: auto;
}

.modelhouse_form > dt .sub {
    display: inline-block;
    font-size: 12px;
}

.modelhouse_form > dd {
    padding: 0 10px;
    font-size: 18px;
    width: 70%;
    text-align: left;
}

.modelhouse_form.the_title > dd {
    letter-spacing: 0.1em;
    font-weight: 500;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.modelhouse_form.the_title > dd:before {
    padding: 0 0.5em 0 0;
    content: '●';
    color: #2061A0;
}

.model_h_detail_more {
    margin: 80px 0;
}

.model_h_detail_more > .title {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    letter-spacing: 0.2em;
    font-weight: 500;
    text-align: center;
    font-weight: 500;
    width: 100%;
    padding: 0 10px;
    font-size: 20px;
}

.model_h_detail_more span {
    font-size: 15px;
    color: #1376ba;
    display: block;
    margin-top: 10px;
}

.model_h_detail_more_inner {
    max-width: 1020px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    padding: 50px 10px 0;
}

.model_h_detail_more_inner .item {
    width: 33.33%;
}

.model_h_detail_more_inner .item a {
    display: block;
    padding: 0 10px 30px;
}

.model_h_detail_more_inner .item .img {
    margin-bottom: 15px;
}

.model_h_detail_more_inner .item img {
    max-width: 100%;
    height: auto;
}

.model_h_detail_more_inner .item .title {
    font-weight: 500;
    font-size: 20px;
    margin-bottom: 10px;
}

.model_h_detail_more_inner .item .address {
    font-size: 15px;
    line-height: 1.5;
}

.model_h_detail_more_inner .item .address:before {
    padding: 0 4px 0 0;
    color: #2061A0;
    content: '\f3c5';
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-style: normal;
}

.model_h_detail_more_inner span {
    display: inline-block;
    text-align: center;
    margin: 0 auto;
}

.model_h_form_table {
    display: flex;
}

.model_h_form_table > dl {
    display: inline-block;
}

.model_h_form_table_inner {
    display: inline-block;
    padding: 0 10px 0 0;
}

.model_h_form_table_inner > dt {
    padding: 0 10px 0 0;
    display: inline-block;
}

.model_h_form_table_inner > dd {
    display: inline-block;
}

.model_h_detail_form input {
    border: none;
    background: #EFF6FA;
    padding: 10px;
    font-size: 14px;
    line-height: 1.5;
    width: 100%;
}

.model_h_detail_form .your-joinday input {
    max-width: 260px;
}

.model_h_detail_form .survey .your-survey .wpcf7-checkbox {
    display: inline-block;
    padding: 0 0 0.5em;
}

.model_h_detail_form .survey span.wpcf7-list-item {
    margin: 0;
}

.model_h_detail_form .survey label {
    font-size: 0.875em;
    position: relative;
    display: inline-block;
    padding: 0.25em 0.25em 0.25em 1.5em;
    margin: 0 1em 0 0;
    line-height: 1.5;
    cursor: pointer;
}

.model_h_detail_form .survey label::before {
    background: #fff;
    border: 1px solid #000;
    content: '';
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 2px;
    top: 16px;
    left: 5px;
    transform: translate3d(0, -50%, 0);
}

.model_h_detail_form .survey label.checked::before {
    background: #2061A0;
}

.model_h_detail_form input[type="checkbox"] {
    display: none;
}

.model_h_detail_form input[type="submit"] {
    color: #fff;
    background: #1376BA;
}

.model_h_detail_form input[type="submit"]:disabled {
    color: #555;
    background: #EFF6FA;
}

.model_h_detail_form .your-name input,
.model_h_detail_form .your-name-furi input {
    max-width: 400px;
}

.model_h_detail_form .your-tel input,
.model_h_detail_form .your-zip_1 input,
.model_h_detail_form .your-jointime input,
.model_h_detail_form .your-contacttime input {
    max-width: 260px;
}

.model_h_detail_form textarea {
    padding: 10px;
    font-size: 14px;
    line-height: 1.5;
    width: 100%;
    resize: vertical;
    background: #EFF6FA;
    border: none;
}

.wpcf7.agreed .model_h_detail_form input {
    background: #2061a0;
    color: #fff;
}

.model_h_detail_form .model_h_form_table_inner > dd input {
    width: 90px;
    text-align: right;
}

.model_h_form_table_inner > dd .num-adult,
.model_h_form_table_inner > dd .num-child {
    background: #eff6fa;
    padding: 0 10px 0 0;
    height: 100%;
    display: inline-block;
}

.model_h_form_table_inner > dd .num-adult:after,
.model_h_form_table_inner > dd .num-child:after {
    color: #9F9F9F;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    content: '人';
}

.model_h_detail_form .your-contacttime {
    position: relative;
}

.model_h_detail_form .your-contacttime input {
    padding: 10px 2.5em 10px 10px;
}

.model_h_detail_form .your-contacttime:after {
    position: absolute;
    right: 10px;
    top: 50%;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
    color: #9F9F9F;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    content: '頃';
}

.model_h_doi {
    text-align: center;
    padding: 70px 0 0;
}

#model_h_submit {
    padding: 20px 0;
    text-align: center;
}

#model_h_submit input {
    width: 140px;
    padding: 20px 40px;
    text-align: center;
}

#model_h_submit input:hover {
    cursor: pointer;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					OPENHOUSE

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
#content_main {
    position: relative;
    z-index: 1;
    padding: 60px 0 0;
}

#content_main::after {
    content: '';
    display: block;
    top: 100px;
    left: 0;
    width: 100%;
    height: 150px;
    position: absolute;
    z-index: -1;
    background: #eff6fa;
}

#content_main.no_after::after {
    content: none;
}

.content_main_ttl {
    text-align: center;
    width: 100%;
}

.content_main_ttl .title {
    font-size: 30px;
    padding: 20px 20px;
    background: linear-gradient(transparent 50%, #eff6fa 50%);
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    letter-spacing: 0.15em;
}

.openhouse_meta_wrapper {
    padding: 40px 20px 50px;
}

.openhouse_meta {
    border-top: 1px solid #E6E6E6;
    border-bottom: 1px solid #E6E6E6;
    max-width: 1000px;
    margin: 0 auto;
    padding: 15px 0;
}

.openhouse_meta .oh_tagline {
    line-height: 1.6;
    font-size: 25px;
    font-weight: 500;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    letter-spacing: 0.1em;
    padding: 0 0 10px;
}

.oh_metas {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.openhouse_meta .oh_meta {
    padding: 0 20px 10px 0;
    line-height: 1.6;
    letter-spacing: 0.1em;
}

.openhouse_meta .oh_address {
    padding-left: 20px;
}

.openhouse_meta .oh_flag {
    padding-left: 25px;
}

.oh_status {
    color: #fff;
    display: inline-block;
    padding: 3px 10px;
    line-height: 1.6;
    letter-spacing: 0.03em;
    background: #525252;
}

.oh_status.open,
.oh_status.undecided {
    background: #1376BA;
}

.oh_address,
.oh_flag {
    position: relative;
    display: inline-block;
    padding: 0 0 0 20px;
    line-height: 1.25;
}

.oh_address:before,
.oh_flag:before {
    padding: 0 4px 0 0;
    color: #2061A0;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-style: normal;
    position: absolute;
    left: 5px;
    top: 0;
}

.oh_address:before {
    content: '\f3c5';
}

.oh_flag:before {
    content: '\f024';
}

.wp-pagenavi.openhouse {
    padding: 100px 20px 80px;
    max-width: 1040px;
    margin: 0 auto;
}

.lst_openhouse {
    max-width: 1040px;
    padding: 0 10px;
    margin: 40px auto;
    display: flex;
    flex-wrap: wrap;
}

.lst_openhouse .item {
    display: block;
    position: relative;
    z-index: 1;
    width: 33.33%;
    padding: 0 10px;
    margin: 0 0 60px;
}

.lst_openhouse .item a {
    display: block;
}

.lst_openhouse .item .oh_status {
    z-index: 2;
    position: absolute;
    left: 0;
    top: -15px;
}

.lst_openhouse .item img {
    height: auto;
    max-width: 100%;
}

.lst_openhouse .ttl .title {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-weight: 500;
    padding: 15px 0;
    font-size: 20px;
    line-height: 1.4;
}

#oh_pagenavi {
    margin: 0 0 90px;
}

.oh_inq_closed {
    padding: 0 20px;
    text-align: center;
}

.oh_inq_closed p {
    line-height: 1.6;
    letter-spacing: 0.1em;
}

#openhouse #w_gallery.mh .slide_item .img {
    height: auto;
}

/*----------------------------------------------------
Password Protected
----------------------------------------------------*/
#oh_protected {
    margin: 0 auto 3em;
    max-width: 1000px;
    padding: 1em;
}

#oh_protected .post-password-form {
    border: 1px solid #1376ba;
    padding: 1.5em 1.5em 0.5em;
}

#oh_protected .post-password-form p {
    margin: 0 0 1em;
    line-height: 1.8;
    letter-spacing: 0.05em;
}

#oh_protected .post-password-form p label {
    margin-right: 0.5em;
    line-height: 1.8;
    border: none;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					ONLINE MEETING

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
/* Header */
#online.hdrfix #header::before,
#online.hdrchange #header::before {
    background: transparent;
}

#online #header .inner {
    border-top: 5px solid #1376ba;
    padding: 0;
    max-width: none;
    align-items: flex-start;
    justify-content: space-between;
}

#online #hdr_logo {
    width: calc(100% - 410px);
    padding: calc(1em + 1px) 0 0 40px;
}

#online #hdr_logo a {
    width: 150px;
    padding: 10px;
}

#online.lnav #hdr_logo a {
    background: transparent;
}

.om_hdr_btn {
    color: #fff;
    background: #1376BA;
}

#btn_omform {
    line-height: 1.2;
    color: #fff;
    height: 70px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
    align-items: center;
    width: 330px;
    margin-right: 10px;
}

#btn_omform .ibpart {
    display: inline-block;
    padding: 0 0 0 0.5em;
}

#btn_omform .ico {
    font-size: 1.4em;
    padding: 0 .25em 0 0;
}

.lnav #btn_omform {
    display: none;
}

#online #btn_nav {
    width: 70px;
    height: 70px;
    padding: 15px;
}

#online #btn_nav .bar {
    left: 14px;
}

#online.lnav #btn_nav .bar,
#online.lnav #btn_nav:hover .bar {
    left: 22px;
}

#online.hdrfix #btn_nav .ltr,
#online.hdrchange #btn_nav .ltr {
    color: #fff;
}

#online.hdrfix #btn_nav .bar,
#online.hdrchange #btn_nav .bar {
    background: #fff;
}

/* title */
#online .page_title_area {
    background: url("../images/online/title_bg.jpg") center center / cover no-repeat;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    height: 645px;
    padding: 0 20px;
}

#online .page_title_area .page_title {
    position: relative;
    padding: 100px 0 0;
}

#online .page_title_area .page_title .sb {
    position: absolute;
    top: -40px;
    left: 20px;
    margin: 0;
    height: 128px;
    width: 128px;
    background: #1376BA;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
}

#online .page_title_area .page_title .sb::after {
    position: absolute;
    bottom: -3px;
    right: 2px;
    margin: 0 0 0 -13px;
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 24px 13px 0 13px;
    border-color: #1377ba transparent transparent transparent;
    transform: rotate3d(0, 0, 1, -45deg);
}

#online .page_title_area .page_title .en {
    letter-spacing: 0.1em;
    font-weight: normal;
    line-height: 1.2;
    font-size: 5em;
}

#online .page_title_area .page_title .en .former,
#online .page_title_area .page_title .en .latter {
    display: inline-block;
}

#online .page_title_area .page_title .en .latter {
    padding-left: 0.5em;
}

#online .page_title_area .page_title .ja {
    letter-spacing: 0.3em;
    font-size: 1.67em;
}

/* Common */
#om_main p,
#om_main dt,
#om_main dd {
    line-height: 1.8;
    letter-spacing: 0.1em;
}

#om_intro {
    max-width: 1040px;
    margin: 0 auto;
    padding: 3em 20px;
}

#om_intro p {
    margin: 0 0 1em;
}

.om_dl_cmn {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 0.4em;
}

.om_dl_cmn.first {
    margin-top: 2em;
}

.om_dl_cmn dt,
.om_dl_cmn dd {
    padding: 0.75em 1.5em;
}

.om_dl_cmn dt {
    background: #1376BA;
    color: #fff;
    width: 12em;
}

.om_dl_cmn dd {
    background: #EFF6FA;
    width: calc(100% - 12em);
}

#om_recommend {
    position: relative;
    padding: 0 0 3em;
    background: #ffffff; /* Old browsers */
    background: -moz-linear-gradient(top, #ffffff 0%, #ffffff 32%, #eff6fa 33%, #eff6fa 33%, #eff6fa 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #ffffff 0%, #ffffff 32%, #eff6fa 33%, #eff6fa 33%, #eff6fa 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #ffffff 0%, #ffffff 32%, #eff6fa 33%, #eff6fa 33%, #eff6fa 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eff6fa', GradientType=0); /* IE6-9 */
}

#om_recommend::after {
    height: 6em;
    content: '';
    width: 1px;
    position: absolute;
    left: 50%;
    bottom: -3em;
    background: #6e6e6e;
}

#om_recommend .idx_normal,
.om_idx .idx {
    line-height: 1.25;
    letter-spacing: 0.15em;
    font-size: 1.67em;
}

#om_recommend .idx_normal {
    max-width: 1040px;
    padding: 0 20px 0.1em;
    margin: 0 auto;
}

#om_lst_rec {
    max-width: 1040px;
    padding: 0 20px 2em;
    margin: 5em auto 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#om_lst_rec li {
    width: 31%;
}

#om_lst_rec li .item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    height: 100%;
    position: relative;
    padding: 7em 1.5em 1.5em;
    background: #fff;
}

#om_lst_rec li .item .img {
    max-width: 100%;
    height: auto;
}

#om_lst_rec li .item .img {
    position: absolute;
    top: -3em;
    left: 50%;
    margin: 0 0 0 -57px;
    height: 114px;
    width: 114px;
    background: #1376BA;
    border-radius: 50%;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
}

#om_lst_rec li .item .img::after {
    position: absolute;
    bottom: -18px;
    left: 50%;
    margin: 0 0 0 -9px;
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 9px 0 9px;
    border-color: #1377ba transparent transparent transparent;
}

#om_lst_rec li .item .txt {
    line-height: 1.5;
    font-size: 1.13em;
}

#om_todo {
    padding: 0 0 2em;
    margin: 6em 0 0;
    background: url("../images/online/om_02_bg.jpg") top center / contain no-repeat;
}

#om_lst_todo {
    max-width: 1000px;
    margin: 0 auto 3em;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
}

#om_lst_todo li {
    width: 100%;
}

#om_lst_todo li .item {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
    align-items: center;
    background: #EFF6FA;
}

#om_lst_todo li .item.rv {
    flex-direction: row-reverse;
}

#om_lst_todo li .item .img,
#om_lst_todo li .item .txt {
    width: 50%;
}

#om_lst_todo li .item .img img {
    max-width: 100%;
    height: auto;
}

#om_lst_todo li .item .txt {
    padding: 0 1em;
}

#om_lst_todo li .item .txt dl {
    max-width: 340px;
    margin: 0 auto;
}

#om_lst_todo li .item .txt dt {
    padding: 0 0 0.5em;
    font-size: 1.13em;
}

#om_lst_todo li .item .txt dd {
}

.om_idx {
    position: relative;
    padding: 18.22% 20px 0;
    margin-bottom: 5.5em;
    text-align: center;
}

.om_idx.wide {
    padding: 0 20px;
    margin-bottom: 3em;
}

.om_idx.wide::before,
.om_idx.wide::after {
    content: none;
}

.om_idx::before,
.om_idx::after {
    content: '';
    display: block;
    position: absolute;
    left: 50%;
    width: 1px;
    height: 3em;
}

.om_idx::before {
    background: #6e6e6e;
    top: -3em;
}

.om_idx::after {
    background: #fff;
    top: 0;
}

.om_idx .idx {
    transform: translate3d(0, 50%, 0);
    padding: 1em;
    text-align: center;
    max-width: 455px;
    margin: 0 auto;
    background: #fff;
}

.om_idx.wide .idx {
    transform: translate3d(0, -50%, 0);
}

#om_flow .om_idx {
    background: url("../images/online/om_03_bg.jpg") top center / cover no-repeat;
}

#om_form .om_idx {
    background: url("../images/online/om_04_bg.jpg") top center / cover no-repeat;
}

.om_idx_below,
.om_form_below {
    max-width: 1040px;
    padding: 0 20px;
    margin: 2em auto;
}

.om_form_below {
    margin: 1em auto 4em;
}

#om_flow {
    padding: 0 0 2em;
}

#om_lst_flow {
    max-width: 1040px;
    padding: 0 10px;
    margin: 5em auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#om_lst_flow li {
    padding: 0 10px;
    width: 25%;
}

#om_lst_flow li .item {
    height: 100%;
    padding: 7em 1.5em 1.5em;
    position: relative;
    border: 1px solid #D6E7F4;
    background: #EFF6FA;
}

#om_lst_flow li .item.w_btn {
    padding-bottom: 3em;
}

#om_lst_flow li .item::after {
    position: absolute;
    right: -13px;
    top: 50%;
    margin: -8px 0 0;
    width: 14px;
    height: 17px;
    content: url("../images/online/om_sb_tri.png");
}

#om_lst_flow li .item.last::after {
    content: none;
}

#om_lst_flow li .item .img {
    position: absolute;
    top: -3em;
    left: 50%;
    margin: 0 0 0 -57px;
    height: 114px;
    width: 114px;
    background: #1376BA;
    border-radius: 50%;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
}

#om_lst_flow li .item .img::after {
    position: absolute;
    bottom: -18px;
    left: 50%;
    margin: 0 0 0 -9px;
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 9px 0 9px;
    border-color: #1377ba transparent transparent transparent;
}

#om_lst_flow li .item .txt {
    height: 100%
}

#om_lst_flow li .item .txt dl {
    height: 100%
}

#om_lst_flow li .item .txt dt {
    padding: 0 0 0.5em;
    font-size: 1.13em;
}

#om_lst_flow li .item .btn {
    font-size: 0.8em;
    letter-spacing: 0.05em;
    background: #1376BA;
    color: #fff;
    width: calc(100% - 3em);
    display: block;
    padding: 1em;
    position: absolute;
    left: 1.5em;
    bottom: 0;
    transform: translate3d(0, 50%, 0);
}

#om_lst_flow li .item .btn::before,
#om_lst_flow li .item .btn::after {
    transition: all 0.5s;
    -moz-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
    display: block;
    width: 11px;
    height: 1px;
    background: #fff;
    position: absolute;
    right: 10px;
    top: 50%;
    content: '';
}

#om_lst_flow li .item .btn::after {
    transform: rotate3d(0, 0, 1, 90deg);
}

#om_lst_flow li .item .bang.open::after {
    transform: rotate3d(0, 0, 1, 180deg);
}

#om_flow_ex {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 20px;
}

#om_flow_ex .flow_ex {
    display: none;
    padding: 2em;
    position: relative;
    border: 1px solid #D6E7F4;
    background: #EFF6FA;
}

#om_flow_ex .flow_ex.open {
    margin: 0 0 4em;
    display: block;
}

#om_flow_ex .flow_ex .arw {
    position: absolute;
    top: -14px;
    right: 50%;
    width: 17px;
    height: 14px;
    background: url("../images/online/om_sb_tri.png") center center no-repeat;
    transform: translate3d(7px, 0, 0) rotate3d(0, 0, 1, -90deg);
}

#om_flow_ex .flow_ex .idx {
    line-height: 1.8;
    letter-spacing: 0.1em;
    padding: 0 0 0.5em;
    font-size: 1.13em;
}

#om_dl_links {
    display: flex;
    flex-wrap: wrap;
}

#om_dl_links li {
    padding: 0 0 0 0.5em;
}

#om_dl_links li a {
    display: inline-block;
    padding: 0.25em;
    color: #1376ba;
    border-bottom: 1px solid;
}

#om_dl_links li a::before {
    content: '【';
}

#om_dl_links li a::after {
    content: '】';
}

#om_flow_ex .flow_ex .floatbox {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    padding: 0 0 1.125em;
    margin: 0 0 1.125em;
    border-bottom: 1px solid #EBEBEB;
}

/* form */
#om_reserve .om_date {
    max-width: 11em;
    width: 100%;
}

#om_reserve .om_sbj_group .wpcf7-checkbox {
    display: block;
}

#om_reserve .om_sbj_group .wpcf7-list-item {
    font-size: 15px;
    margin: 0;
    width: 100%;
}

#om_reserve .om_sbj_group .wpcf7-list-item label {
    position: relative;
    padding: 0.5em 0 0.5em 30px;
    display: flex;
    justify-content: flex-start;
}

#om_reserve .om_sbj_group .wpcf7-list-item label:hover {
    cursor: pointer;
}

#om_reserve .om_sbj_group .wpcf7-list-item label::before {
    position: absolute;
    content: '';
    border: 1px solid #d6d6d6;
    display: block;
    background: #fff;
}

#om_reserve .your-subject .wpcf7-list-item label::before {
    left: 0;
    top: 50%;
    margin: -8px 0 0 0;
    border: 1px solid #d6d6d6;
    display: block;
    width: 16px;
    height: 16px;
    border-radius: 50%;
}

#om_reserve .your-brochure .wpcf7-list-item label::before {
    left: 0;
    top: 50%;
    margin: -8px 0 0 0;
    border: 1px solid #d6d6d6;
    display: block;
    width: 16px;
    height: 16px;
}

#om_reserve .om_sbj_group .wpcf7-list-item label.checked::after {
    position: absolute;
    content: '';
    background: #1376ba;
    display: block;
}

#om_reserve .your-subject .wpcf7-list-item label.checked::after {
    left: 4px;
    top: 50%;
    margin: -4px 0 0 0;
    background: #1376ba;
    width: 10px;
    height: 10px;
    border-radius: 50%;
}

#om_reserve .your-brochure .wpcf7-list-item label.checked::after {
    left: 4px;
    top: 50%;
    margin: -4px 0 0 0;
    background: #1376ba;
    width: 10px;
    height: 10px;
}

#om_reserve .om_sbj_group .wpcf7-list-item input {
    display: none;
}

#om_reserve .om_sbj_group .wpcf7-list-item-label {
    line-height: 1.4;
    letter-spacing: 0.1em;
    width: calc(100% - 20px);
}

#om_reserve .om_sbj_group .optionarea {
    background: #eff6fa;
    padding: 1em;
    margin: 1.5em 0 0;
}

#om_reserve .filearea {
    margin: 0.5em 0 0;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
}

#om_reserve .filearea .your-file {
    margin-right: 1em;
    width: auto;
}

#om_reserve .filearea .om_form_file {
    display: none;
    width: auto;
    background: none;
}

#om_reserve .filearea .your-file label {
    position: relative;
    width: 160px;
    padding: 0.75em 1em;
    border: 1px solid #707070;
    display: inline-block;
    font-size: 12px;
    line-height: 1.2;
}

#om_reserve .filearea .your-file label:hover {
    cursor: pointer;
}

#om_reserve .filearea .your-file label::before,
#om_reserve .filearea .your-file label::after {
    content: '';
    display: block;
    background: #111;
    width: 11px;
    height: 1px;
    position: absolute;
    right: 15px;
    top: 50%;
}

#om_reserve .filearea .your-file label::after {
    transform: rotate3d(0, 0, 1, 90deg);
}

#om_reserve .filearea .filename {
    font-size: 12px;
    line-height: 1.6;
    letter-spacing: normal;
}

#om_reserve .model_h_form_table_inner dt {
    font-size: 15px;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					NEWS ARCHIVE

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
#news_archive,
#news_single,
#live_report,
#live_report_single,
#housingcolumn_single {
    max-width: 1040px;
    margin: 0 auto;
    padding: 100px 20px 40px;
}

.content_area {
    margin: 0 0 40px;
    justify-content: space-between;
}

.flexbox {
    display: flex;
}

.sidebar_area {
    width: 320px;
}

.article_area,
.article_single_area {
    width: calc(100% - 425px);
    margin: 0 105px 0 0;
}

.livereport_article_area,
.live_report_single_area,
.housingcolumn_article_area,
.housingcolumn_single_area {
    width: calc(100% - 285px);
    margin: 0 10.5% 0 0;
}

#housingcolumn_single {
    width: 100%;
    margin: 0 auto;
}

/*==================================================
article_area
====================================================*/
.article_area .article_box a {
    display: block;
    padding: 50px 0;
    justify-content: space-between;
}

.article_area .article_box a:hover {
    opacity: 0.8;
    color: #000;
}

.article_area .article {
    justify-content: space-between;
}

.article_area .txt {
    margin: 0 20px 0 0;
    width: calc(100% - 170px);
}

.article_area .info,
.article_single_area .info {
    padding: 0 0 20px;
    font-size: 12px;
    align-items: center;
}

.article_area .date,
.article_single_area .date {
    line-height: 1.6;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-weight: 500;
    padding: 0 28px 0 0;
}

.article_area .cat,
.article_single_area .cat {
    width: 140px;
    padding: 6px 12px;
    text-align: center;
    border: 1px solid #707070;
}

.article_area .date,
.article_area .cat,
.article_single_area .date,
.article_single_area .cat {
    display: block;
}

.article_area .date {
    line-height: 1.6;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-weight: 500;
}

.article_area .title {
    letter-spacing: 0.2em;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-size: 17px;
    line-height: 1.8;
}

.article_area .img {
    width: 150px;
}

.article_area img {
    width: 100%;
}

#news_archive .article_area li,
#news_archive .article_single_area {
    border-top: 1px solid #D6D6D6;
}

#news_archive .article_area li:last-child {
    border-bottom: 1px solid #D6D6D6;
}

/*==================================================
sidebar_area
====================================================*/
.sidebar_area li {
    margin: 0 0 30px;
}

.sidebar_area .facebook {
    background: url("../images/news/facebook.jpg") center center no-repeat;
}

.sidebar_area .instagram {
    background: url("../images/news/instagram.jpg") center center no-repeat;
}

.sidebar_area .instagram_title {
    margin-bottom: 10px;
}

.sidebar_area .instagram.flex {
    display: flex;
    justify-content: space-between;
    background: unset;
}

.sidebar_area .instagram.flex a:nth-child(1),
.sidebar_area .instagram.flex a:nth-child(2) {
    position: relative;
    width: 49%;
    height: 125px;
}

.sidebar_area .instagram.flex a:nth-child(1) {
    background: url("../images/news/instagram1.jpg");
    background-size: cover;
    background-position: center;
}

.sidebar_area .instagram.flex a:nth-child(2) {
    background: url("../images/news/instagram2.jpg");
    background-size: cover;
    background-position: center;
}

.sidebar_area .instagram.flex .title {
    position: absolute;
    left: 0;
    right: -20px;
    margin: auto;
    width: max-content;
    bottom: 0;
}


.sidebar_area .facebook,
.sidebar_area .instagram {
    background-size: cover;
}

.sidebar_area .facebook .title,
.sidebar_area .instagram .title {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-weight: 500;
    font-size: 17px;
    line-height: 1.8;
    letter-spacing: 0.07em;
    position: relative;
}

.sidebar_area .facebook .title:after,
.sidebar_area .instagram .title:after {
    font-weight: 400;
    font-family: "Font Awesome 5 Brands";
    font-style: normal;
    position: absolute;
    bottom: -40px;
    left: 0;
    color: #fff;
}

.sidebar_area .facebook .title:after {
    content: '\f09a';
}

.sidebar_area .instagram .title:after {
    content: '\f16d';
    bottom: 0;
    left: -20px;
}

.sidebar_area .facebook a,
.sidebar_area .instagram a {
    display: block;
    color: #fff;
    padding: 15px 20px 50px;
    background: rgba(4, 10, 16, 0.2);
    transition: opacity 0.6s;
}

.sidebar_area .facebook a:hover,
.sidebar_area .instagram a:hover {
    opacity: 0.6;
}

.sidebar_area .category,
.sidebar_area .archive .title {
    text-align: center;
}

.sidebar_area .category,
.sidebar_area .archive {
    font-size: 15px;
}

.sidebar_area .category .title,
.sidebar_area .archive .title {
    background: #497EB2;
    color: #fff;
    letter-spacing: 0.14em;
    padding: 10px 0;
}

.sidebar_area .cat_list li {
    margin: 1px 0 0;
}

.sidebar_area .cat_list a {
    display: block;
    background: #EFF6FA;
    color: #525252;
    transition: color 0.6s;
}

.sidebar_area .cat_list a:hover {
    color: #2061A0;
}

.sidebar_area .category .title,
.sidebar_area .archive .title,
.sidebar_area .cat_list a {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    letter-spacing: 0.2em;
    font-weight: 500;
    padding: 10px;
}

.month_select {
    position: relative;
    margin: 1px 0 0;
}

.month_select:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-style: normal;
    content: '\f078';
    position: absolute;
    top: 50%;
    right: 4.6875%;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
    color: #000;
}

.month_select select {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    letter-spacing: 0.2em;
    font-weight: 500;
    width: 100%;
    padding: 10px 15px;
    border: none;
    background: #EFF6FA;
    color: #BEBEBE;
    -webkit-appearance: none;
}

.month_select select:hover {
    cursor: pointer;
}

.month_select optgroup {
    display: none;
}

/*==================================================
pageing_area
====================================================*/
.wp-pagenavi {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    letter-spacing: 0.2em;
    font-weight: 500;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}


.wp-pagenavi .item {
    font-size: 17px;
    color: #000;
    padding: 0 14px;
    display: block;
}

.wp-pagenavi .previouspostslink {
    padding: 20px 35px 20px 63px;
}

.wp-pagenavi .nextpostslink {
    padding: 20px 63px 20px 35px;
}

.wp-pagenavi .previouspostslink {
    background: url("../images/news/arw_prev.png") left center no-repeat;
}

.wp-pagenavi .nextpostslink {
    background: url("../images/news/arw_next.png") right center no-repeat;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .current {
    font-size: 15px;
    color: #525252;
    transition: opacity 0.6s;
}

.wp-pagenavi .item:hover,
.wp-pagenavi .current:hover {
    /* opacity: 0.7; */
    cursor: pointer;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
    width: auto;
    height: auto;
    line-height: inherit;
    align-items: center;
}

.wp-pagenavi .current {
    background: url("../images/news/current.png") center no-repeat;
    color: #fff;
}

.wp-pagenavi > a,
.wp-pagenavi > span {
    line-height: 42px;
    text-align: center;
    width: 38px;
    height: 42px;
}

.wp-pagenavi .extend {
    padding: 0 0 0 14px;
}

.wp-pagenavi ul {
    width: 100%;
    align-items: center;
    justify-content: space-between;
}

.wp-pagenavi li .item {
    letter-spacing: 0.2em;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-size: 15px;
    display: inline-block;
}

.wp-pagenavi li.prev .item {
    /* padding: 10px 10px 10px 80px; */
    padding: 0;
    /* background: url("../images/news/arw_prev.png") left center no-repeat; */
    position: relative;
    transition: all 0.5s;
}

.wp-pagenavi li.next .item {
    /* padding: 10px 80px 10px 10px; */
    padding: 0;
    /* background: url("../images/news/arw_next.png") right center no-repeat; */
    position: relative;
    transition: all 0.5s;
}

.wp-pagenavi li.back .item {
    width: 70px;
    height: 70px;
    background: url("../images/news/back_btn.png") center center no-repeat;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

#works .wp-pagenavi li.back .item {
    /*width: 70px;*/
    /*height: 70px;*/
    /*background: url(../images/news/back_btn.png) center center no-repeat;*/
    /*position: absolute;*/
    /*top: 50%;*/
    /*left: 50%;*/
    /*transform: translate(-50%, -50%);*/
    /*-webkit-transform: translate(-50%, -50%);*/
    /*-ms-transform: translate(-50%, -50%);*/
}

.wp-pagenavi li .txt {
    display: block;
    position: absolute;
    color: #525252;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

.wp-pagenavi li .txt::after {
    content: "";
    width: 60px;
    height: 6px;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    background-position: center;
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

.wp-pagenavi li.next .txt {
    left: -120px;
}

.wp-pagenavi li.next .txt::after {
    background-image: url("../images/news/arw_next.png");
    right: -80px;
}

.wp-pagenavi li.prev .txt {
    right: -120px;
}

.wp-pagenavi li.prev .txt::after {
    background-image: url("../images/news/arw_prev.png");
    left: -80px;
}

.wp-pagenavi li.inactive {
    visibility: hidden;
}

.wp-pagenavi .thum_title {
    position: absolute;
    display: none;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transition: 0.5s;
}

.wp-pagenavi .item:hover .thum_img {
    background-color: #123252;
}

.wp-pagenavi .item:hover .thum_title {
    display: block;
    color: #fff;
    z-index: 100;
    line-height: 1.5;
    width: 100%;
    text-align: center;
    transition: 0.5s;
}

.wp-pagenavi .thum_img {
    max-width: 255px;
    height: 180px;
    display: block;
    position: relative;
}

.wp-pagenavi .thum_img img {
    height: 180px;
}

#housingcolumn .wp-pagenavi li.next .thum_img {
    left: 50px;
}

#housingcolumn .wp-pagenavi li.prev .thum_img {
    right: 50px;
}

#housingcolumn .wp-pagenavi li.next .txt {
    left: -85px;
}

#housingcolumn .wp-pagenavi li.prev .txt {
    right: -85px;
}

#housingcolumn .wp-pagenavi li.next .txt::after {
    right: -65px;
}

#housingcolumn .wp-pagenavi li.prev .txt::after {
    left: -65px;
}


/* 六角形ナビ：OS・ブラウザごと微調整 */
.wp-pagenavi .current,
.wp-pagenavi .page {
    padding: 0 0 0 2px;
}

.mac.chrome .wp-pagenavi .current,
.mac.chrome .wp-pagenavi .page {
    padding: 2px 0 0 2px;
}

.win.ie .wp-pagenavi .current,
.win.ie .wp-pagenavi .page {
    padding: 3px 0 0 2px;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					NEWS SINGLE

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.article_single_area {
    border-bottom: 1px solid #D6D6D6;
    padding: 0 0 75px;
}

.article_single_area .title {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    letter-spacing: 0.2em;
    font-weight: 500;
    font-size: 20px;
    line-height: 1.5;
}

.article_single_area .txt.title_area {
    padding: 0 0 74px;
}

.article_single_area .shere {
    margin: 0 0 55px;
    padding: 25px;
    background: #EFF6FA;
    font-size: 14px;
    align-items: center;
}

.article_single_area .shere span {
    display: block;
}

.article_single_area .shere a {
    font-size: 22px;
}

.article_single_area .shere .txt {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    letter-spacing: 0.05em;
    padding: 0 40px 0 0;
}

.article_single_area .shere li {
    padding: 0 26px 0 0;
}

.article_single_area .shere a {
    display: inline-block;
    margin: 0 20px 0 0;
}

.wp-pagenavi .back_archive a {
    display: block;
}

#news_single .wp-pagenavi .previouspostslink,
#news_single .wp-pagenavi .nextpostslink {
    margin: 0;
}

#news_single .wp-pagenavi {
    justify-content: space-between;
    /* padding: 0 85px; */
}

#news_single .wp-pagenavi li.prev .txt::after {
    left: -70px;
}

#news_single .wp-pagenavi li.next .txt::after {
    right: -70px;
}

.post_content h2 {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    position: relative;
    font-size: 18px;
    margin: 0 0 20px;
    font-weight: 500;
    line-height: 1.8;
}

.post_content h3 {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-weight: 500;
    margin: 0 0 20px;
    font-size: 16px;
    line-height: 2;
}

.post_content h4 {
    font-weight: bold;
    margin: 0 0 20px;
    line-height: 2;
}

.post_content p:not([class]),
.report_single_content > p:not([class]),
.post_content li,
.post_content dt,
.post_content dd,
.post_content th,
.post_content td {
    font-size: 15px;
    line-height: 1.8;
}

.post_content ul,
.post_content ol,
.post_content dl,
.post_content table {
    margin: 0 0 50px;
    clear: both;
}

.post_content > p:not([class]),
.report_single_content > p:not([class]) {
    margin: 0 0 50px;
}

.post_content strong {
    font-weight: bold;
}

.post_content em {
    font-style: italic;
}

.post_content blockquote {
    display: block;
    padding: 20px;
    background: rgba(0, 0, 0, 0.1);
}

.post_content .aligncenter {
    display: block;
    margin: 0 auto;
}

.post_content .alignright {
    float: right;
}

.post_content .alignleft {
    float: left;
}

.post_content .wp-block-image {
    width: 100%;
    margin: 0 0 40px;
    height: auto
}

.post_content .wp-block-media-text {
    width: 100%;
    margin: 0 0 40px;
}

.post_content iframe {
    border: none;
    width: 100%;
    margin: 0 0 15px;
}

.post_content p a,
.report_single_content p a {
    color: #2061A0;
    text-decoration: none;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					LIVE REPORT ARCHIVE

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.livereport_article_area ul {
    flex-wrap: wrap;
}

.livereport_article_area li {
    width: calc((100% - 20px) / 2);
    margin: 0 0 50px;
}

.livereport_article_area li:nth-child(odd) {
    margin: 0 20px 50px 0;
}

.livereport_article_area .img {
    padding: 0 0 20px;
    width: 100%;
}

.livereport_article_area img {
    width: 100%;
}

.livereport_article_area .last_updated {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-weight: 500;
    font-size: 12px;
    padding: 0 0 10px;
}

.livereport_article_area .title {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    letter-spacing: 0.2em;
    font-weight: 500;
    font-size: 17px;
    line-height: 1.5;
}

#live_report .sidebar_area .cat_list .year,
#live_report .sidebar_area .cat_list .item,
#live_report_single .sidebar_area .cat_list .year,
#live_report_single .sidebar_area .cat_list .item,
#housingcolumn_single .sidebar_area .cat_list .year,
#housingcolumn_single .sidebar_area .cat_list .item {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    letter-spacing: 0.2em;
    font-weight: 500;
    background: #EFF6FA;
    color: #2061A0;
    text-align: center;
    border-left: 3px solid rgba(32, 97, 160, 0.8);
    position: relative;
    transition: opacity 0.5s;
}

#live_report .sidebar_area .cat_list .year,
#live_report_single .sidebar_area .cat_list .year,
#housingcolumn .sidebar_area .cat_list .year,
#housingcolumn_single .sidebar_area .cat_list .year {
    padding: 10px 35px;
}

#live_report .sidebar_area .cat_list .year:after,
#live_report_single .sidebar_area .cat_list .year:after,
#housingcolumn .sidebar_area .cat_list .year:after,
#housingcolumn_single .sidebar_area .cat_list .year:after {
    content: '＋';
    position: absolute;
    top: 50%;
    right: 12px;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
    color: #2061A0;
}

#live_report .sidebar_area .cat_list .year:hover,
#live_report .sidebar_area .cat_list .item:hover,
#live_report_single .sidebar_area .cat_list .year:hover,
#live_report_single .sidebar_area .cat_list .item:hover,
#housingcolumn_single .sidebar_area .cat_list .year:hover,
#housingcolumn_single .sidebar_area .cat_list .item:hover {
    cursor: pointer;
    opacity: 0.8;
}

#live_report .sidebar_area .cat_list .item,
#live_report_single .sidebar_area .cat_list .item,
#housingcolumn .sidebar_area .cat_list .item,
#housingcolumn_single .sidebar_area .cat_list .item {
    display: none;
    margin: 1px 0 0;
    border-left: 3px solid rgba(183, 183, 183, 0.8);
}

#live_report .sidebar_area .cat_list .item,
#live_report_single .sidebar_area .cat_list .item,
#housingcolumn .sidebar_area .cat_list .item,
#housingcolumn_single .sidebar_area .cat_list .item {
    color: #525252;
    line-height: 1.3;
}

/*==================================================
SIDEBAR OPEN
====================================================*/
#live_report .sidebar_area .cat_list .sidebar_open .year:after,
#live_report_single .sidebar_area .cat_list .sidebar_open .year:after,
#housingcolumn .sidebar_area .cat_list .sidebar_open .year:after,
#housingcolumn_single .sidebar_area .cat_list .sidebar_open .year:after {
    content: '―';
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					LIVE REPORT SINGLE

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.live_report_single_area .last_updated {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-weight: 500;
    font-size: 12px;
    display: block;
    padding: 0 0 10px;
}

.live_report_single_area .title {
    font-size: 25px;
    padding: 0 0 60px;
}

.live_report_single_area h3 {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    letter-spacing: 0.2em;
    font-weight: 500;
    font-size: 17px;
    color: #2061A0;
    padding: 15px 27px;
    margin: 0;
    border: 1px solid #2061A0;
    position: relative;
    cursor: pointer;
    transition: opacity 0.6s;
}

.live_report_single_area h3:after {
    content: '＋';
    position: absolute;
    top: 50%;
    right: 27px;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
}

.live_report_single_area h3:hover {
    opacity: 0.8;
}

.live_report_single_area .open h3 {
    border-color: #fff;
    border-top-color: #2061A0;
}

.live_report_single_area .open h3:after {
    content: '―';
}

.live_report_single_area .post_content {
    padding: 0 0 30px;
}

#live_report_single .content_area {
    margin: 0 0 70px;
}

.report_single_content {
    display: none;
}

.open .report_single_content {
    display: block;
}

#live_report_single .post_content img {
    margin: 0;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					CUSTOMER VOICE ARCHIVE

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
#costomer_voice {
    margin: 0 0 50px;
}

#costomer_voice .main_content {
    max-width: 1040px;
    padding: 0 20px;
    margin: 0 auto;
}

/*==================================================
 PAGE NAVI
====================================================*/
.page_nav {
    padding: 55px 0 70px;
    background: #fff;
    z-index: 30;
    position: relative;
}

.page_nav.lower {
    max-width: 1000px;
    padding: 60px 20px 60px;
    border-top: 1px solid #C6C6C6;
    border-bottom: 1px solid #C6C6C6;
    margin: 0 auto 40px;
}

.page_nav ul {
    margin: 0 auto;
    flex-wrap: wrap;
    justify-content: center;
}

.page_nav ul li {
    margin: 0 30px;
    flex-wrap: wrap;
    justify-content: center;
}

.page_nav a,
.page_sub_nav a {
    letter-spacing: 0.2em;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-weight: 500;
}

.page_nav a {
    margin: 10px 0;
    color: #000;
    line-height: 1.8;
    display: block;
    position: relative;
    transition: color 0.6s;
    padding: 3px 0 3px;
    transition: all 0.6s;
}

.page_nav .current a {
    color: #2061A0;
}

.page_nav a:hover {
    color: #2061A0;
}

.page_nav a:after {
    position: absolute;
    transition: all 0.6s;
    content: '';
    left: 0;
    bottom: 0;
    width: 0;
    height: 1px;
    background: #2061A0;
}

.page_nav a:hover:after,
.page_nav .current a:after {
    width: 100%;
}

.page_nav.philosophy ul {
    max-width: 800px;
    margin: 0 auto;
}

/*==================================================
 PAGE SUB NAVI
====================================================*/
.page_sub_nav {
    margin: 0 0 75px;
}

.page_sub_nav li {
    width: 50%;
    text-align: center;
}

.page_sub_nav a {
    color: #525252;
    display: block;
    padding: 15px 0;
    transition: color 0.6s;
}

.page_sub_nav a:hover {
    color: #2061A0;
}

.page_sub_nav .new_construction a {
    background: #EFF6FA;
}

.page_sub_nav .renovation a {
    background: #EDF0F2;
}

/*==================================================
 CUSTOMER VOICE ARCHIVE
====================================================*/
.article_list li {
    margin: 0 0 40px;
}

.article_item {
    border-top: 1px solid #C6C6C6;
    border-bottom: 1px solid #C6C6C6;
}

.article_item a.flexbox {
    align-items: center;
}

.article_item .img {
    position: relative;
}

.article_item .cat_name {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    letter-spacing: 0.2em;
    font-weight: 500;
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0;
    color: #fff;
    background: #2061A0;
    width: 34.56%;
    text-align: center;
    padding: 10px;
    font-size: 15px;
}

.article_item .info {
    padding: 0 20px 0 80px;
}

.article_item h2,
.article_item p,
.article_item .vol {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    letter-spacing: 0.2em;
    line-height: 1.6;
}

.article_item .vol {
    letter-spacing: 0.1em;
    color: #2061A0;
    font-size: 20px;
    display: inline-block;
    padding: 0 0 5px;
}

.article_item h2 {
    font-weight: 500;
    font-size: 20px;
    padding: 0 0 30px;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					CUSTOMER VOICE SINGLE

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
#costomer_voice_single {
    margin: 0 0 70px;
}

#costomer_voice_single h2,
#costomer_voice_single p {
    letter-spacing: 0.2em;
}

#costomer_voice_single .title_area {
    background: #EFF6FA;
    height: 150px;
    position: relative;
    top: 55px;
    z-index: -10;
}

#costomer_voice_single .title {
    width: 100%;
    font-size: 25px;
    line-height: 1.6;
    text-align: center;
    position: absolute;
    top: -20px;
    left: 50%;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
}

.voice_content {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 20px;
}

.cv_post p {
    color: #525252;
    line-height: 1.8;
    padding: 0 0 70px;
}

.cv_post .img_box {
    margin: 0 0 70px;
    width: 100%;
}

.cv_post .img_box img {
    width: 100%;
    height: auto;
    padding: 0 0 5px;
}

.cv_post .img_box:nth-child(1) img {
    width: auto;
    display: block;
    margin: 0 auto;
    max-width: 100%;
}

.cv_post .img_box p {
    font-size: 13px;
    line-height: 2;
}

.family {
    padding: 0 0 20px;
}

.family dt,
.family dd {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-size: 17px;
    line-height: 1.8;
    color: #000;
    margin: 0;
}

.published p {
    color: #000;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    padding: 0 0 86px;
    margin: 0;
}

.cv_single img {
    margin: 0;
}

.img_box_double {
    display: flex;
}

.img_box_double .img_box {
    width: calc((100% - 20px) / 2);
    height: auto;
    margin: 0 20px 70px 0;
}

.img_box_double .img_box:last-child {
    margin: 0 0 70px;
}

.cv_post .img_box p {
    padding: 0;
}

.img_box_center .img_box {
    width: calc(100% / 2);
    margin: 0 auto 70px;
}

.architecture_data_wrapper {
    margin: 0 0 66px;
}

.a_data_box {
    display: table;
    width: 100%;
    padding: 0 0 10px;
}

.a_data_box h3 {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-size: 17px;
    width: 255px;
    vertical-align: middle;
    display: table-cell;
    padding: 36px 0;
    color: #fff;
    background: #1376BA;
    text-align: center;
}

.a_data_box .description_box {
    width: calc(100% - 255px);
    vertical-align: middle;
    display: table-cell;
    color: #525252;
    font-size: 15px;
    padding: 36px 45px;
    background: #EFF6FA;
}

.a_data_box .description_box p {
    margin: 0;
    padding: 0;
}

/*.a_data_box .description_box .icon {
  position: relative;
  padding: 0 0 0 15px;}
.a_data_box .description_box .icon:before {
  content: '◻';
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate3d(0, -50%, 0);}*/
.architecture_data_wrapper dl {
    margin: 0;
}

.a_data_box .description_box dt,
.a_data_box .description_box dd {
    line-height: 1.8;
    margin: 0
}

.btn_area a {
    font-size: 15px;
    padding: 22px;
    display: block;
    text-align: center;
    color: #fff;
    background: #2061A0;
}

.cv_single .btn_area {
    padding: 0 0 75px;
    border-bottom: 1px solid #C4C4C4;
}

#costomer_voice_single .wp-pagenavi {
    padding: 50px 20px 0;
    max-width: 1040px;
    margin: 0 auto;
}

.cv_single .post_content {
    margin: 0 auto 98px;
}

.voice_content .btn a {
    display: block;
    padding: 1.4em 1em;
    color: #fff;
    letter-spacing: 0.2em;
    text-indent: 0.2em;
    text-align: center;
    background-color: #2061a0;
    border: 1px solid #2061a0;
}

.voice_content .btn .arw {
    right: 20px;
}

.voice_content .btn a:hover {
    color: #2061a0;
    background-color: #ffffff;
    border: 1px solid #2061a0;
}

.voice_content .btnarea.white .btn:hover .arw > span > span:after,
.voice_content .btnarea.white .btn:hover .arw > span > span {
    background: #2061a0;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

		        	COMPANY

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.company_sudo {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin: 0 auto 70px;
    max-width: 800px;
    padding: 0 10px;
}

.company_sudo div {
    width: 35%;
}

.company_sudo img {
    max-width: 100%;
}

.company_sudo dl {
    width: calc(65% - 20px);
    margin-left: 20px;
}

.company_sudo dt {
    line-height: 1.4;
    font-size: 30px;
    font-weight: 500;
    margin-bottom: 30px;
}

.company_sudo dd {
    font-size: 17px;
    line-height: 2.0;
}

.company_head {
    position: relative;
    width: 100%;
    height: 350px;
    background: url("../images/company/company_head.jpg") center center / cover no-repeat;
    margin-bottom: 100px;
}

.company_head .txt {
    position: absolute;
    top: 50%;
    left: calc((100% - 1000px) / 2);
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
}

.company_head p {
    line-height: 1.6;
    color: white;
    font-size: 25px;
    margin-bottom: 30px;
}

.company_head ul {
    display: flex;
    flex-wrap: wrap;
    padding: 0 0 10px;
}

.company_head li {
    color: white;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    line-height: 1.8;
    font-size: 25px;
    display: flex;
}

.company_head li:after {
    padding: 0 2px;
    content: '、';
    display: flex;
    align-items: center;
}

.company_head li:last-child:after {
    padding: 0 0;
    content: none;
}

.company_head dl {
    display: flex;
}

.company_head dt,
.company_head dd {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    line-height: 1.8;
    max-width: 500px;
}

.company_head dt:after {
    content: '―';
}

.company_head .img {
    position: absolute;
    right: calc((100% - 1000px) / 2);
    bottom: -30px;
}

.company_head .img img {
    max-width: 100%;
    height: auto;
}

.company_cap {
    max-width: 1040px;
    padding: 0 20px;
    margin: 0 auto 100px;
}

.company_cap p {
    font-size: 15px;
    line-height: 1.8;
    text-align: justify;
    margin: 40px;
}

.company_detail {
    position: relative;
    width: 100%;
    margin: 100px 0;
    background: linear-gradient(180deg, #EFF6FA 150px, #EFF6FA 150px, white 150px, white 100%);
}

.company_detail .title {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
    text-align: center;
    font-weight: 500;
    width: 100%;
    padding: 0 10px;
    font-size: 30px;
}

.company_detail_inner {
    padding: 100px 0 0;
}

.company_detail_inner .item {
    padding: 0 20px;
}

.company_detail_inner .item:nth-of-type(odd) {
    background-color: #EFF6FA;
}

.company_detail_inner .item dl {
    display: flex;
    justify-content: flex-start;
    max-width: 1000px;
    margin: 0 auto;
    padding: 30px 0;
}

.company_detail_inner .item.first dl {
    border-top: 1px solid #d6d6d6;
}

.company_detail_inner dt {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-size: 20px;
    margin: 0 auto;
    width: 30%;
    line-height: 1.8;
}

.company_detail_inner dd {
    align-self: center;
    width: 70%;
    line-height: 1.8;
}

.company_detail_access {
    position: relative;
    width: 100%;
    background: linear-gradient(180deg, #EFF6FA 150px, #EFF6FA 150px, white 150px, white 100%);
}

.company_detail_access p {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate3d(-50%, -25%, 0);
    transform: translate3d(-50%, -25%, 0);
    text-align: center;
    width: 100%;
    padding: 0 10px;
    font-size: 30px;
}

.company_detail_access p span {
    margin: 10px;
    font-size: 16px;
    color: #1376ba;
    font-weight: 500;
    display: block;
}

.company_detail_access div {
    max-width: 1020px;
    margin: 0 auto;
    padding: 100px 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.company_detail_access dl {
    width: calc(33.33% - 10px);
    background-color: #1376ba;
    display: flex;
    flex-wrap: wrap;
}

.company_detail_access dt {
    line-height: 1.5;
    color: white;
    font-size: 18px;
    padding: 20px;
}

.company_detail_access dd {
    line-height: 1.5;
    color: white;
    font-size: 14px;
    padding: 0 20px;
}

.company_detail_access dd:last-child {
    padding-bottom: 20px;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

		        	OFFICE

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
#lst_office {
    display: flex;
    margin: 0 auto;
    justify-content: center;
    max-width: 1040px;
    padding: 0 10px;
    position: relative;
    top: -30px;
}

#lst_office li {
    width: 100%;
    padding: 0 10px;
}

#lst_office li a {
    text-align: center;
    letter-spacing: 0.2em;
    padding: 10px;
    line-height: 1.2;
    font-size: 17px;
    color: #2061A0;
    border: 1px solid;
    display: block;
}

#office_list {
    max-width: 1040px;
    padding: 0 20px;
    margin: 0 auto;
}

#office_list .office_box {
    margin: 0 0 100px;
}

#office_list .office_box .img img {
    max-width: 100%;
    height: auto;
}

#office_list .office_box .title {
    line-height: 2;
    letter-spacing: 0.2em;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-size: 20px;
    padding: 40px 0 10px;
}

#office_list .office_data .item {
    display: flex;
    background: #EFF6FA;
    margin: 0 0 10px;
}

#office_list .office_data .item > dt,
#office_list .office_data .item > dd {
    line-height: 1.6;
    padding: 10px 15px;
}

#office_list .office_data .item > dt {
    text-align: center;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    width: 255px;
    background: #1376BA;
    color: #fff;
    font-size: 17px;
}

#office_list .office_data .item > dd {
    width: calc(100% - 255px);
    display: flex;
    flex-wrap: wrap;
}

#office_list .office_data .item > dd .contact {
    display: flex;
    align-items: center;
    margin: 0 20px 0 0;
}

#office_list .office_data .item > dd .contact:last-child {
    margin: 0;
}

#office_list .office_data .item > dd .contact dt,
#office_list .office_data .item > dd .contact dd {
    line-height: 1.6;
}

#office_list .office_data .item > dd .contact dt {
    width: 40px;
}

#office_list .office_data .item > dd .contact dd {
    width: calc(100% - 40px);
}

#office_list .office_box .map {
    margin: 50px 0 0;
}

#office_list .office_box .map iframe {
    max-width: 100%;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					hs_layout

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/

.hs_layout .phylosopy_head {
    padding: 0 0 0 0;
}

.hs_layout h2,
.hs_layout h3,
.hs_layout p,
.hs_layout li,
.hs_layout dt,
.hs_layout dd,
.hs_layout a {
    font-size: 17px;
    line-height: 30px;
    /*padding: 0 0 30px 30px;*/
    padding: 0 20px 30px 20px;
    position: relative;
}

.hs_layout h2, .hs_layout h3, .hs_layout p, .hs_layout li, .hs_layout dt, .hs_layout a {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.hs_layout .inner {
    max-width: 1000px;
    margin: 0 auto;
}

.hs_layout h2 {
    display: block;
    padding: 30px 20px 30px;
    font-size: 2rem;
    line-height: 1.2;
    text-align: center;
    text-indent: 0.1em;
    background: linear-gradient(#fff 50%, #EFF6FA 50%);
}

.hs_layout h2.wide {
    padding: 2.6em 1em;
}

.hs_layout h3.titleSection {
    padding: 0 0 2em;
    font-size: 1.5rem;
    line-height: 1.2;
    letter-spacing: 0.2em;
}

/* ------------------ */
/*** mainvisuai(eachpage) ***/
.hs_layout .page_mv {
    height: 390px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-color: #666666;
}

.hs_layout .mv_concrete {
    background-image: url(../images/concrete-house/mv.jpg);
}

.hs_layout .mv_wooden {
    background-image: url(../images/wooden-house/mv.jpg);
}

.hs_layout .mv_technology {
    background-image: url(../images/technology/mv.jpg);
}


/*** intro ***/
.hs_layout .intro {
    padding: 0 0 30px;
    background-color: #ffffff;
}

.hs_layout .lessBottom {
    margin: 0;
    padding: 80px 0 30px;
}

.hs_layout .intro h3 {
    margin: 0 0 1em;
    font-size: 1.6rem;
    line-height: 1.8;
    letter-spacing: 0.2em;
}

.hs_layout .intro p {
    line-height: 1.8;
    letter-spacing: 0.1em;
    font-family: inherit;
    font-size: inherit;
}


/*** thumbnail ***/
.hs_layout .thumb {
    padding: 0 0 50px;
}

.hs_layout .thumb ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.hs_layout .thumb ul li {
    width: 33.3%;
    height: 215px;
    margin: 0 0 50px;
    font-size: 1.5rem;
    line-height: 1.2;
    text-align: center;
}

.hs_layout .thumb ul li:nth-child(3n+1), .thumb ul li:nth-child(3n+2) {
    padding-right: 20px;
}

.hs_layout .thumb ul li a {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 215px;
    color: #fff;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
}

.hs_layout .thumb ul li a:before {
    content: '';
    z-index: 2;
    position: absolute;
    left: 0;
    top: 0;
    background: rgba(18, 50, 82, 0.42);
    width: 100%;
    height: 100%;
    display: block;
}

.hs_layout .thumb ul li a:after {
    content: url("../images/common/ico_hex_plus.png");
    position: absolute;
    z-index: 3;
    right: 20px;
    bottom: 20px;
    height: 48px;
    width: 42px;
}

.hs_layout .thumb ul li a:hover {
    opacity: 0.75;
}

.hs_layout .thumb ul li a .title {
    z-index: 4;
    position: relative;
}

.hs_layout .thumb ul li a .title .num {
    display: inline-block;
    padding: 0 5px 0 0;
}

/*** list(table) ***/
.hs_layout dl.listTable {
    display: flex;
    flex-wrap: wrap;
}

.hs_layout dl.listTable dt {
    font-weight: 500;
    width: 256px;
    margin: 0 0 10px;
    padding: 0.8em 0;
    color: #fff;
    font-size: 1.1rem;
    line-height: 1.3;
    letter-spacing: 0.2em;
    text-indent: 0.2em;
    text-align: center;
    background-color: #1376ba;
    display: flex;
    justify-content: center;
    align-items: center;
}

.hs_layout dl.listTable dd {
    font-size: inherit;
    width: calc(100% - 256px);
    margin: 0 0 10px;
    padding: 0.9em 1.5em;
    line-height: 1.7;
    letter-spacing: 0.2em;
    background-color: #EFF6FA;
    display: flex;
    align-items: center;
}


/*** content(wooden) ***/

/* spec */
.hs_layout .specWooden {
    padding: 0 0 70px;
    background-color: #ffffff;
}

/* technology */
.hs_layout .techWooden {
    padding: 0 0 100px;
    background-color: #ffffff;
}

.hs_layout .techWooden p {
    margin: 0 0 1em;
    letter-spacing: 0.2em;
}

.hs_layout .techWooden p.last {
    font-family: inherit;
    font-size: inherit;
    padding: 0;
}

.hs_layout .techWooden a {
    font-family: inherit;
}

.confeat_obi {
    background: linear-gradient(180deg, #EFF6FA 150px, #EFF6FA 150px, white 150px, white 100%);
}

/*** content(technology) ***/

.featureConcrete,
.featureWooden {
    padding: 70px 0 0;
}

/* feature */
.technology .phylosopy_head {
    margin: 0 0 0;
}

.hs_layout .featureTech {
    /*margin: 0 0 250px;*/
    background-color: #ffffff;
}

.hs_layout .featureTech .feature {
    position: relative;
    overflow: hidden;
    min-height: 500px;
    padding: 0 0 75px;
}

.hs_layout .featureTech .feature article {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: flex-start;
    margin: 240px 0 0;
}

.hs_layout .featureTech .feature:nth-of-type(2n+1) article {
    justify-content: flex-end;
    padding-right: 100px;
}

.hs_layout .featureTech .feature:nth-of-type(2n) article {
    padding-left: 100px;
}

.hs_layout .featureTech .feature article .column {
    width: 460px;
    margin: 0;
    background-color: #EFF6FA;
}

.hs_layout .featureTech .feature:nth-of-type(2n+1) article .column {
    right: 0;
    padding: 2.8em 2em 3em 3em;
}

.hs_layout .featureTech .feature:nth-of-type(2n) article .column {
    left: 0;
    padding: 2.8em 3em 3em 2em;
}

.hs_layout .featureTech .feature article p.number {
    position: absolute;
    top: -10px;
    width: 220px;
    padding: 0 0 8px;
    font-size: 5rem;
    font-weight: 600;
    height: 5rem;
    border-bottom: 1px solid;
}

.hs_layout .featureTech .feature:nth-of-type(2n+1) article p.number {
    right: 0;
}

.hs_layout .featureTech .feature:nth-of-type(2n) article p.number {
    text-align: right;
    left: 0;
}

.hs_layout .featureTech .feature article .column h4 {
    margin-bottom: 0.6em;
    font-size: 1.9rem;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0.2em;
}

.hs_layout .featureTech .feature:nth-of-type(2n+1) article .column h4 {
    margin-right: 125px;
}

.hs_layout .featureTech .feature:nth-of-type(2n) article .column h4 {
    margin-left: 125px;
}

.hs_layout .featureTech .feature article .column p {
    padding: 0;
    line-height: 1.9;
    letter-spacing: 0.1em;
    font-family: "Noto Sans JP", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ proNw3", sans-serif;
    font-size: 15px;
}

.hs_layout .featureTech .feature .img {
    width: calc(100% - 460px + 20px);
    height: 500px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    top: 0;
    z-index: 1;
}

.hs_layout .featureTech .feature:nth-of-type(2n+1) .img {
    left: 0;
}

.hs_layout .featureTech .feature:nth-of-type(2n) .img {
    right: 0;
}

.hs_layout .featureTech .feature:nth-of-type(1) .img {
    background-image: url(../images/technology/img_01.jpg);
}

.hs_layout .featureTech .feature:nth-of-type(2) .img {
    background-image: url(../images/technology/img_02.jpg);
}

.hs_layout .featureTech .feature:nth-of-type(3) .img {
    background-image: url(../images/technology/img_03.jpg);
}

.hs_layout .featureTech .feature:nth-of-type(4) .img {
    background-image: url(../images/technology/img_04.jpg);
}

.hs_layout .featureTech .feature:nth-of-type(5) .img {
    background-image: url(../images/technology/img_05.jpg);
}

/* keyword */
.hs_layout .keywordTech {
    /*margin: 0 0 250px;*/
    padding: 80px 0;
    background-color: #ffffff;
}

.hs_layout .keywordTech article {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 45px 0;
    border-top: 1px solid #c7c7c7;
}

.hs_layout .keywordTech article:last-child {
    border-bottom: 1px solid #c7c7c7;
}

.hs_layout .keywordTech article h4 {
    width: 100%;
    margin: 0 0 1.3em;
    font-size: 1.3rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.1em;
}

.hs_layout .keywordTech article .desc {
    width: calc(100% - 405px - 55px);
}

.hs_layout .keywordTech article p {
    margin: 0 0 1.8em;
    line-height: 1.8;
    letter-spacing: 0.1em;
    padding: 0;
    font-family: "Noto Sans JP", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ proNw3", sans-serif;
    font-size: 15px;
}

.hs_layout .keywordTech article p.notice {
    font-size: 80%;
}

.hs_layout .keywordTech article.addition {
    justify-content: center;
    align-items: center;
    padding: 45px 1em;
    background-color: #eef8fd;
}

.hs_layout .keywordTech article.addition .desc {
    width: auto;
}

.hs_layout .keywordTech article.addition p {
    margin: 0 0 0.5em;
}

.hs_layout .keywordTech article.addition p span {
    display: inline-block;
    margin: 0 1em 0 0;
}

/* quality */
.hs_layout .qualityTech {
    padding: 80px 0 70px;
    background-color: #ffffff;
}

.hs_layout .intro .img_box {
    padding: 75px 0 40px;
}

.hs_layout .qualityTech dl.listTable dt p,
.hs_layout .qualityTech dl.listTable dd p {
    padding: 0;
}

.hs_layout .qualityTech dl.listTable dd p {
    font-family: "Noto Sans JP", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ proNw3", sans-serif;
    font-size: 15px;
}

/*==================================================
POPUP
====================================================*/
#popup {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 9000;
    overflow: hidden;
}

#popup_overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: #fff;
    z-index: 9005;
}

#popup_area {
    position: relative;
    z-index: 9010;
    width: 100%;
    height: 100%;
    max-width: 894px;
    margin: 0 auto;
    padding: 0 32px;
}

#popup_inner {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 110px 0 60px;
    border-radius: 3px;
}

#popup_content {
    width: 100%;
    height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    background: #fff;
}

#popup_close {
    display: block;
    width: 43px;
    height: 50px;
    position: absolute;
    right: -18px;
    top: 85px;
    background: url("../images/common/ppp_close.png") center center no-repeat;
    z-index: 9020;
}

#philo_single .img {
    padding: 52% 0 0;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

#popup_content h3 {
    font-size: 25px;
    line-height: 1.6;
    font-weight: 600;
    padding: 0 0 20px;
}

#popup_content .caseslide,
#popup_content .extrainfo {
    padding-bottom: 3em;
}

#popup_content .maincontent {
    padding: 40px 0 70px;
}

#popup_content p {
    letter-spacing: 0.15em;
    line-height: 1.8;
    text-align: justify;
}

#popup_content .ppp_nav {
    top: 50%;
    margin: -37px 0 0;
    position: absolute;
    width: 64px;
    height: 74px;
    display: block;
}

#popup_content .ppp_nav.prev {
    left: -32px;
    background: url("../images/common/sld_nav_prev.png") center center / contain no-repeat;
}

#popup_content .ppp_nav.next {
    right: -32px;
    background: url("../images/common/sld_nav_next.png") center center / contain no-repeat;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					CONTACT

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.flexbox_c {
    display: flex;
    align-items: center;
}

.contact_wrap {
    letter-spacing: 0.2em;
    padding: 0 0 40px;
}

.contact_wrap .main_content {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 20px;
}

.contact_wrap .top_title_area {
    background: #EFF6FA;
    position: relative;
    z-index: 30;
    height: 200px;
}

.contact_wrap .top_title_area h2,
.contact_wrap .top_title_area p {
    position: absolute;
    left: 50%;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
}

.contact_wrap .top_title_area h2,
.contact_wrap .main_content .title,
.branch_office .company_name,
.contact_form_area dt,
.contact_form_area input,
.contact_form_area textarea,
.contact_form_area small {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-weight: 500;
}

.contact_form_area dt,
.contact_form_area dd {
    font-weight: normal;
}

.contact_wrap .top_title_area h2 {
    width: 100%;
    color: #000;
    text-align: center;
    font-size: 30px;
    font-weight: normal;
    line-height: 1.5;
    top: -20px;
}

.contact_wrap .top_title_area p {
    width: 100%;
    max-width: 1040px;
    padding: 0 20px;
    top: 80px;
}

.contact_wrap .txt {
    font-size: 15px;
    color: #525252;
    line-height: 1.8;
}

.contact_wrap .main_content .title {
    font-size: 25px;
    line-height: 1.5;
    color: #000;
}

.contect_tel_area {
    padding: 0 0 60px;
    margin: 0 0 60px;
    border-bottom: 1px solid #D6D6D6;
}

.contect_tel_area .title {
    padding: 0 0 32px;
}

.branch_office .company_name {
    font-size: 20px;
    color: #fff;
    line-height: 1.5;
    text-align: center;
    background: #2061A0;
    padding: 10px;
}

.branch_office .list_item {
    width: calc((100% - 40px) / 3);
    margin: 0 20px 0 0;
}

.branch_office .list_item:last-child {
    margin: 0;
}

.branch_office .company_info {
    background: #EFF6FA;
    padding: 15px 20px;
}

.branch_office .company_info li {
    font-size: 13px;
    line-height: 1.6;
}

.branch_office .company_tel {
    margin: 0 0 8px;
    padding: 0 0 0 30px;
    background: url("../images/contact/icon_tel.png") left center no-repeat;
}

.branch_office li.company_tel {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    letter-spacing: 0.2em;
    font-weight: 500;
    font-size: 17px;
}

.contact_form_area .title {
    margin: 0 0 50px;
}

.contact_form_area .txt {
    margin: 0 0 75px;
}

.contact_form_area dl {
    width: 100%;
    padding: 30px 0;
    border-bottom: 1px solid #D6D6D6;
}

.contact_form_area dl.name {
    border-top: 1px solid #D6D6D6;
}

.contact_form_area dt {
    font-size: 20px;
    width: 260px;
    line-height: 1.5;
    letter-spacing: 0;
    color: #000;
}

.contact_form_area .date dt {
    color: #2061A0;
}

.contact_form_area dd {
    width: calc(100% - 215px);
    letter-spacing: 0.1em;
}

.contact_form_area input[type="text"],
.contact_form_area input[type="email"],
.contact_form_area input[type="tel"],
.contact_form_area textarea {
    font-weight: normal;
    display: inline-block;
    font-size: 18px;
    line-height: 1.5;
    padding: 16px;
    border: none;
    background: #EFF6FA;
}

input::placeholder {
    color: #B2B2B2;
}

input:-ms-input-placeholder {
    color: #B2B2B2;
}

input::-ms-input-placeholder {
    color: #B2B2B2;
}

.contact_form_area .name input[type="text"],
.contact_form_area .name_rub input[type="text"] {
    width: 320px;
}

.contact_form_area .txt_small {
    font-size: 15px;
}

.contact_form_area .contact_type li {
    font-size: 15px;
}

.contact_form_area .contact_type label {
    display: inline-block;
    padding: 0 30px 0 0;
}

.contact_form_area .contact_type li:last-child label {
    padding: 0;
}

.contact_form_area .subject .sub_type {
    padding: 0 20px;
    font-size: 13px;
    position: relative;
}

.contact_form_area .subject .sub_type:before,
.contact_form_area .subject .sub_type:after {
    position: absolute;
    top: 50%;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
}

.contact_form_area .subject .sub_type:before {
    content: '（';
    left: 5px;
}

.contact_form_area .subject .sub_type:after {
    content: '）';
    right: 0;
}

.contact_form_area .subject label {
    line-height: 1.8;
}

.contact_form_area dd {
    padding: 0 0 0 30px
}

.contact_form_area dd p {
    color: #2061A0;
    font-weight: 500;
    line-height: 1.5;
}

/*.contact_form_area .calendar {
  padding: 0 0 190px;}*/
.contact_form_area .calendar dl {
    border: none;
}

.contact_form_area .calendar dt {
    font-size: 15px;
    color: #2061A0;
    padding: 0 0 18px;
}

.contact_form_area .messeage dt {
    padding: 15px 0 0;
}

.contact_form_area .survey {
    margin: 0 0 75px;
}

.contact_form_area .survey span.wpcf7-list-item {
    margin: 0;
}

.contact_form_area .survey label {
    position: relative;
    display: inline-block;
    padding: 0.25em 0.25em 0.25em 1.5em;
    margin: 0 1em 0 0;
    line-height: 1.5;
}

.contact_form_area .survey label::before {
    background: #fff;
    border: 1px solid #000;
    content: '';
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 2px;
    top: 16px;
    left: 5px;
    transform: translate3d(0, -50%, 0);
}

.contact_form_area .survey label.checked::before {
    background: #2061A0;
}

.contact_form_area .survey input[type="checkbox"] {
    display: none;
}

.contact_form_area .survey .your-survey-others {
    display: block;
    margin: 1em 0 0;
}

.contact_form_area small {
    font-size: 0.8em;
}

.contact_form_area textarea {
    width: 100%;
    height: 190px;
}

.contact_form_area input[type="date"] {
    width: 265px;
    padding: 20px;
}

.contact_form_area .subject label:hover,
.contact_form_area .subject input[type="radio"] {
    cursor: pointer;
}

.contact_form_area .policy-check {
    text-align: center;
    line-height: 1.6;
    margin: 0 0 30px;
}

.contact_form_area .policy-check p {
    font-weight: 500;
    line-height: 1.5;
    display: block;
}

.contact_form_area .policy-check a {
    color: #0E67A3;
}

.contact_form_area .policy-check input {
    vertical-align: middle;
    margin: 0 5px 0 0;
}

.transmission_btn {
    text-align: center;
}

.contact_form_area input[type="submit"] {
    padding: 22px 50px;
    background: #EFF6FA;
    border: none;
    font-weight: 500;
}

.contact_form_area input[type="submit"]:hover {
    cursor: pointer;
}

.contact_form_area .zip input[type="text"] {
    width: 80px;
}

.contact_form_area .zip input[type="text"]:last-child {
    width: 100px;
}

.contact_form_area .zip .hyphen {
    padding: 0 10px;
}

.contact_form_area .address input[type="text"],
.contact_form_area .email input[type="email"],
.contact_form_area .email-confirm input[type="email"],
.contact_form_area .tel input[type="tel"] {
    width: 100%;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type="number"] {
    -moz-appearance: textfield;
}

.contact_form_area .req:after,
.contact_form_area .policy-check .wpcf7-list-item:after {
    font-weight: normal;
    font-family: "Noto Sans JP", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ proNw3", sans-serif;
    content: '必須';
    font-size: 12px;
    color: #fff;
    background: #2061A0;
    padding: 2px 10px;
    margin: 0 0 0 22px;
    display: inline-block;
}

.contact_form_area .policy-check .req:after {
    content: none;
}

.contact_form_area .email-confirm .req {
    position: relative;
}

.contact_form_area .subject input {
    opacity: 0;
    position: relative;
}

.contact_form_area .subject label {
    position: relative;
}

.contact_form_area .subject label:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #fff;
    border: 1px solid #000;
}

.contact_form_area .subject label.checked:before {
    background: #2061A0;
}

.contact_form_area .sub_type label:before {
    width: 8px;
    height: 8px;
    border-radius: 2px;
    top: 10px;
    left: 5px;
}

.contact_form_area .subject .wpcf7-list-item {
    margin: 0;
}

.contact_form_area .radio_type_wrapper {
    margin: 0 35px 0 0;
}

.contact_form_area .radio_type_wrapper:last-child {
    margin: 0;
}

.contact_form_area .policy-check input {
    opacity: 0;
    width: 30px;
    height: 25px;
    position: relative;
}

.contact_form_area .policy-check input:hover {
    cursor: pointer;
}

.contact_form_area .policy-check .wpcf7-list-item label {
    padding: 0 0 0 2.5em;
    position: relative;
}

.contact_form_area .policy-check .wpcf7-list-item label:before {
    content: '';
    width: 25px;
    height: 25px;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
    border: 1px solid #707070;
}

.contact_form_area .policy-check .wpcf7-list-item label.checked:before {
    background: url("../images/contact/checked.png") center center no-repeat;
}

.contact_form_area .calendar input {
    width: 264px;
}

.contact_form_area div.wpcf7 .ajax-loader {
    margin: 3px auto 0;
    display: block;
}

/* 20191216 added */
#contact_note {
    text-align: center;
}

#contact_note.house {
    padding: 0 0 1.5em;
}

#contact_note p {
    font-size: 0.9em;
    letter-spacing: 0;
    line-height: 1.8;
}

/* 20200911 added */
.cf_note {
    margin: 0 0 40px;
    position: relative;
}

.cf_note * {
    text-align: left;
    letter-spacing: 0.125em;
}

.cf_note::before,
.cf_note::after {
    content: '';
    background: #111;
    position: absolute;
    top: 42px;
    right: 40px;
    display: inline-block;
    transition: all 0.5s;
    -moz-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    opacity: 1;
    z-index: 1;
}

.cf_note::before {
    width: 20px;
    height: 1px;
    margin-right: -9px;
}

.cf_note::after {
    width: 1px;
    height: 20px;
    margin-top: -9px;
}

.cf_note.open::before {
    opacity: 0;
    -webkit-transform: rotate3d(0, 0, 1, 180deg);
    transform: rotate3d(0, 0, 1, 180deg);
}

.cf_note.open::after {
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
}

.cf_note_hdr {
    background: #EFF6FA;
    line-height: 1.4;
    font-size: 1.133em;
    padding: 30px 40px;
    display: block;
}

.cf_note_txt {
    background: #EFF6FA;
    display: none;
}

.open .cf_note_txt {
    padding: 0 40px 20px;
    display: block;
}

.cf_note_txt ul {
    margin: 0.75em 0 0.75em 1.2em;
    list-style: disc;
    color: #2061a0;
}

.cf_note_txt p,
.cf_note_txt li {
    line-height: 1.8;
}

.cf_note_txt p {
    font-size: 1em;
    text-align: justify;
    margin: 0 0 1em;
}

.cf_note_txt li {
    margin: 0.25em 0;
}

#contact_note .cf_note_txt p {
    letter-spacing: 0.125em;
    font-size: 1em;
}

/* 20200529 added */
#contact_subjects {
    margin: 0 0 5em;
    padding: 0 20px 0;
    position: relative;
    overflow: hidden;
}

#contact_subjects::after {
    content: '';
    background: #eff6fa;
    width: 100%;
    height: calc(50% - 0.5em);
    position: absolute;
    top: 0;
    left: 0;

    z-index: -1;
}

#contact_subjects ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 auto;
    max-width: 1020px;
}

#contact_subjects ul li {
    width: 33.33%;
    padding: 0 10px 20px;
}

#contact_subjects ul li a {
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;
    height: 100%;
    background: #2061a0;
    color: #fff;
    line-height: 1.4;
    text-align: center;
    padding: 1em .5em;
    font-size: 1.125em;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					CAREERS

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.careers_wrap .main_content {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
    z-index: 30;
    top: -97px;
}

.careers_wrap .top_title_area {
    background: #EFF6FA;
    position: relative;
    z-index: 30;
    height: 150px;
}

.careers_wrap .top_title_area h2,
.careers_wrap .top_title_area p {
    position: absolute;
    left: 50%;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
}

.careers_wrap .top_title_area h2 {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    width: 100%;
    color: #000;
    text-align: center;
    font-size: 30px;
    line-height: 1.5;
    top: -20px;
    letter-spacing: 0.2em;
}

.careers_wrap .top_title_area p {
    width: 100%;
    max-width: 1040px;
    padding: 0 20px;
    top: 80px;
}

.careers_wrap .txt {
    font-size: 15px;
    color: #525252;
    line-height: 1.8;
}

.careers_wrap .item {
    display: flex;
    align-items: center;
    padding: 20px 0;
}

.careers_wrap .item .item_name {
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    width: 255px;
    padding: 0 20px 0 0;
    font-size: 20px;
    line-height: 1.5;
    color: #000;
}

.careers_wrap .item .item_description {
    width: calc(100% - 255px);
    font-size: 15px;
    line-height: 1.8;
    color: #525252;
}

.careers_wrap .item .item_description a {
    font-family: inherit;
}

.careers_wrap ul.document_list {
    padding: 35px 0 0;
}

.careers_wrap li {
    line-height: 1.8;
}

.careers_wrap .reference {
    padding: 0 0 35px;
}

.careers_wrap .document_list li {
    padding: 0 0 0 56px;
    position: relative;
}

.careers_wrap .document_list li.new_graduate:before,
.careers_wrap .document_list li.mid_career:before {
    position: absolute;
    top: 0;
    left: 0;
    letter-spacing: 0.2em;
}

.careers_wrap .document_list li.new_graduate:before {
    content: '新卒';
}

.careers_wrap .document_list li.mid_career:before {
    content: '中途';
}

.careers_wrap ul.reference dl {
    display: flex;
}

.careers_wrap ul.reference dt {
    padding: 0 26px 0 0;
    width: 130px;
}

.careers_wrap ul.reference dd {
    width: calc(100% - 130px);
}

.careers_wrap ul.reference dt,
.careers_wrap ul.reference dd {
    line-height: 1.8;
    letter-spacing: 0.2em;
}

/*==================================================
 BTN
====================================================*/
.btn_area a {
    font-size: 15px;
    padding: 22px;
    display: block;
    text-align: center;
    color: #fff;
    background: #2061A0;
}

.cv_single .btn_area {
    padding: 0 0 75px;
    border-bottom: 1px solid #C4C4C4;
}

.recruit_list {
    margin: 0 0 25px;
    position: relative;
}

.main_content .recruit_list:last-child {
    margin: 0 0 0;
}

.recruit_list:before,
.recruit_list:after {
    content: '';
    position: absolute;
    top: 36px;
    right: 40px;
    display: inline-block;
    background: #2061A0;
    transition: all 0.5s;
    -moz-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
    opacity: 1;
    z-index: 1;
}

.recruit_list:before {
    width: 36px;
    height: 1px;
    margin-right: -18px;
}

.recruit_list:after {
    width: 1px;
    height: 36px;
    margin-top: -18px;
}

.rec_hdr {
    padding: 0 40px;
    background: #fff;
    border: 1px solid #2061A0;
    display: block;
}

.careers_wrap .rec_hdr .item .item_description {
    padding-right: 30px;
}

.recruit_item {
    display: none;
    background: #fff;
    border: 1px solid #2061A0;
    border-top: none;
}

.item_description .note {
    font-size: 15px;
    line-height: 1.8;
    display: none;
}

.careers_wrap .item .item_description .btnarea {
    margin: 0 0 10px;
}

.careers_wrap .item .item_description .btnarea:last-child {
    margin: 0 0 0;
}

.recruit_list.open:before {
    opacity: 0;
    -webkit-transform: rotate3d(0, 0, 1, 180deg);
    transform: rotate3d(0, 0, 1, 180deg);
}

.recruit_list.open:after {
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
}

.open .rec_hdr {
    padding-top: 15px;
    border-bottom: none;
}

.open .recruit_item {
    padding: 0 40px 20px;
    display: block;
}

.open .item_description .note {
    display: block;
}

.careers_wrap .open .item {
    align-items: flex-start;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			PAGE TITLE

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.page_title_area {
    background: url("../images/common/page_title_bg/phylosopy.jpg") center center no-repeat;
    background-size: cover;
    position: relative;
    z-index: 50;
}

.page_title_area .page_title {
    padding: 135px 40px 105px;
    text-align: center;
    color: #fff;
    letter-spacing: 0.2em;
}

.page_title_area .page_title .ja {
    font-weight: 500;
    font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-size: 30px;
    line-height: 1.8;
}

.page_title_area .page_title .en {
    font-size-adjust: 0.5;
    font-feature-settings: initial;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.5;
}

.page_title_area .ja,
.page_title_area .en {
    display: block;
}

.works .page_title_area {
    background-image: url("../images/common/page_title_bg/works.jpg");
}

.voices .page_title_area {
    background-image: url("../images/common/page_title_bg/works.jpg");
}

.photo-tags .page_title_area {
    background-image: url("../images/common/page_title_bg/works.jpg");
}

.information .page_title_area {
    background-image: url("../images/common/page_title_bg/news.jpg");
}

.live_report .page_title_area {
    background-image: url("../images/common/page_title_bg/live_report.jpg");
}

.contact .page_title_area {
    background-image: url("../images/common/page_title_bg/contact.jpg");
}

.modelhouse .page_title_area {
    background-image: url("../images/common/page_title_bg/modelhouse.jpg");
}

.about .page_title_area {
    background-image: url("../images/common/page_title_bg/about.jpg");
}

.concept .page_title_area {
    background-image: url("../images/common/page_title_bg/concept.jpg");
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			Privacy Policy

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
#privacy-policy .contact_wrap {
    padding: 0;
}

#pp_content {
    padding: 55px 20px 40px;
}

#pp_content .pp_box {
    margin: 0 0 30px;
}

#pp_content .pp_box .title {
    margin: 0 0 10px;
}

#pp_content .pp_box p {
    line-height: 1.8;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			404

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
#Error_404 {
    text-align: center;
    padding: 80px 20px 60px;
}

#Error_404 p {
    padding: 0 0 40px;
    line-height: 1.8;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			1200px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width: 1200px) {
    #nav_default ul {
        /*display: none;*/
    }

    #nav_default ul li a {
        /* padding: 5px; */
        /* padding: 10px;
		font-size: 12px; */
    }

    /*==================================================
 PAGE COMMON 1200
====================================================*/
    .para_cmn {
        height: auto;
        padding-top: 21.7%;
    }

    /*==================================================
 hs_layout 1200
====================================================*/
    .hs_layout .page_mv {
        height: auto;
        padding-top: 32.5%;
    }

    .hs_layout .featureTech .feature .img {
        width: 760px;
        height: 500px;
    }

    .phylosopy_head_imgarea {
        height: auto;
        padding-top: 32.5%;
    }

    .flow .head_img_illust {
        max-width: 32%;
    }
}

@media screen and (max-width: 1100px) {
    #nav_default ul li a {
        /* padding: 5px; */
        padding: 10px;
        font-size: 12px;
    }
}


/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			1080px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width: 1080px) {
    #w_gallery .slide_item .img {
        padding: 50% 0 0;
    }

    #w_gallery .slide-dots {
        /* right: 40px; */
    }

    #w_gallery.mh .slide_item .img {
        padding: 0 0 0;
    }

    /*==================================================
 FLOW 1080
====================================================*/
    .flow .head_img_illust {
        right: 20px;
    }
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			1040px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width: 1040px) {
    /*==================================================
 HOME 1040
====================================================*/
    #home_mv_main .msg {
        left: 20px;
    }

    .home_modelhouse_box.dandan .infobox {
        left: 20px;
    }

    .home_modelhouse_box.kaigan .infobox {
        right: 20px;
    }

    /*==================================================
Company 1040
====================================================*/
    .company_head .txt {
        left: 20px;
    }

    .company_head .img {
        right: 20px;
    }
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			1020px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width: 1020px) {
    /*==================================================
 hs_layout 1020
====================================================*/
    .hs_layout .inner {
        width: 100%;
        padding: 0 10px;
    }

    .hs_layout .featureTech .feature article {
        margin: 440px 0 0;
    }
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			1000px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width: 1000px) {
    /*==================================================
     hs_layout 1020
    ====================================================*/
    #nav_default ul {
        display: none;
    }
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			980px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width: 980px) {
    /*==================================================
 NEWS ARCHIVE 980
====================================================*/
    .article_area {
        width: calc(100% - 357px);
        margin: 0 77px 0 0;
    }

    .sidebar_area {
        width: 280px;
    }

    /*==================================================
 online consulting 980
====================================================*/
    #online .page_title_area .page_title {
        padding: 80px 0 0;
    }

    #online .page_title_area .page_title .en .former,
    #online .page_title_area .page_title .en .latter {
        width: 100%;
    }

    #online .page_title_area .page_title .en .latter {
        padding: 0;
    }

    #online .page_title_area .page_title .sb {
        height: 110px;
        width: 110px;
        top: 20px;
        left: calc(50% - 300px);
    }
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			880px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width: 880px) {
    /*==================================================
 HEADER / FOOTER 880
====================================================*/
    #gn_main .lst_main li a {
        font-size: 18px;
    }

    #gn_main .lst_sub {
        margin-left: 20px;
    }

    #gn_main .lst_sub li a {
        font-size: 15px;
    }

    #nav_default ul {
        display: none;
    }

    #ftr_access ul {
        padding: 80px 20px 30px;
    }

    #ftr_access ul li {
        padding: 0 0 30px;
        width: 100%;
    }

    #ftr_contact .inner {
        justify-content: center;
        /* flex-wrap: wrap; */
        flex-direction: column;
    }

    #ftr_logo {
        width: 155px;
    }

    #ftr_sns {
        /* width: calc(100% - 155px); */
        width: 100%;
        margin-top: 20px;
        padding: 0 0 0 10px;
    }

    #ftr_sns li a {
        width: 36px;
        padding: 0 8px;
    }

    #ftr_sns li .ig {
        width: auto;
    }

    #ftr_sns li .ig img {
        width: 20px;
    }

    #ftr_contact {
        padding: 40px 0;
    }

    #ftr_contact_inq {
        padding: 20px 0 0;
        width: 100%;
    }

    #ftr_contact_inq a {
        font-size: 12px;
        padding: 15px 5px;
        max-width: 320px;
        margin: 0 auto;
    }

    .hf_sns {
        justify-content: center;
    }

    .hf_sns li a img {
        width: 20px;
    }

    /*==================================================
 HOME 880
====================================================*/
    .home_news_inner {
        padding-right: 20px;
        padding-left: 20px;
        justify-content: center;
    }

    .home_news_inner li {
        margin-bottom: 40px;
        width: 50%;
    }

    .home_news_inner li a {
        margin: 0 auto;
        max-width: 335px;
    }

    /*==================================================
 NEWS ARCHIVE 880
====================================================*/
    .article_area .info
    .article_single_area .info {
        display: block;
    }

    .article_area .date {
        padding: 0 0 12px;
    }

    .article_area .article,
    .article_area .info {
        display: block;
    }

    .article_area .txt,
    .article_area .img {
        width: 100%;
    }

    .article_area .title {
        padding: 0 0 20px;
    }

    #news_single .content_area {
        display: block;
    }

    .article_single_area,
    #news_single .sidebar_area {
        width: 100%;
    }

    #news_single .sidebar_area .facebook .title,
    #news_single .sidebar_area .instagram .title {
        font-size: 17px;
    }

    #news_single .sidebar_area .facebook a, .sidebar_area .instagram a {;
        padding: 15px 20px 85px;
    }

    #news_single .sidebar_area .facebook .title:after,
    #news_single .sidebar_area .instagram .title:after {
        bottom: -60px;
        font-size: 24px;
    }

    /*==================================================
 CUSTOMER VOICE ARCHIVE 880
====================================================*/
    .article_item .info {
        padding: 0 20px 0 50px;
    }

    .article_item .img {
        width: 405px;
    }

    .article_item .img img {
        width: 100%;
    }

    /*==================================================
OpenHouse 880
====================================================*/
    .oh_status {
        font-size: 13px;
    }

    .lst_openhouse {
        margin: 40px auto 0;
    }

    #oh_pagenavi {
        margin: 0 0 40px;
    }

    /*==================================================
 CONTACT 880
====================================================*/
    .contact_form_area .radio_type_wrapper {
        margin: 0;
        display: block;
    }

    .contact_form_area .calendar {
        display: block;
        /*padding: 0 0 60px;*/
    }

    .contact_form_area .calendar dd {
        width: 320px;
    }

    .contact_form_area .calendar input {
        display: block;
        width: 100%;
    }

    /*==================================================
 ONLINE CONSULTING 880
====================================================*/
    #om_lst_flow {
        margin: 3em auto;
    }

    #om_lst_flow li {
        padding: 0;
        width: 100%;
        max-width: 640px;
        margin: 0 auto 1.5em;
    }

    #om_lst_flow li:last-child {
        margin-bottom: 0;
    }

    #om_lst_flow li .item,
    #om_lst_flow li .item.w_btn {
        min-height: 120px;
        height: auto;
        padding: 1.5em 1.5em;
        display: flex;
        flex-wrap: wrap;
    }

    #om_lst_flow li .item::after {
        right: auto;
        top: auto;
        margin: -7px 0 0;
        width: 17px;
        height: 14px;
        transform: translate3d(-50%, 0, 0) rotate3d(0, 0, 1, 90deg);
        bottom: -15px;
        left: 50%;
    }

    #om_lst_flow li .item .txt {
        width: 100%;
        padding: 0 0 0 125px;
    }

    #om_lst_flow li .item .txt dt br {
        display: none;
    }

    #om_lst_flow li .item .btn {
        width: 100%;
        margin: 1em 0 0;
        transform: none;
        position: relative;
        padding: 1.5em 1em;
        left: auto;
        bottom: auto;
    }

    #om_lst_flow li .item .img {
        top: 50%;
        margin: -50px 0 0;
        height: 100px;
        width: 100px;
        left: 15px;
    }

    #om_lst_flow li .item .img::after {
        bottom: auto;
        left: auto;
        margin: -9px 0 0 0;
        right: -14px;
        top: 50%;
        transform: rotate3d(0, 0, 1, -90deg);
    }

    #om_flow_ex .flow_ex .arw {
        display: none;
    }

    #om_flow_ex .flow_ex.open {
        max-width: 640px;
        margin: 0 auto 5em;
    }

    .wp-pagenavi .thum_img {
        max-width: 150px;
        height: 85px;
    }

    .wp-pagenavi .thum_img img {
        height: 85px;
    }

    /*  housingcolumn 880 */
    #housingcolumn .wp-pagenavi {
        padding: 0 50px;
    }
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			768px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width: 768px) {
    /*==================================================
 COMMON 768
====================================================*/
    .page_title_area .page_title {
        padding: 80px 20px 50px;
    }

    .page_title_area .page_title .ja {
        font-size: 24px;
    }

    .page_title_area .page_title .en {
        font-size: 14px;
    }

    body.hdrfix {
        padding-top: 70px;
    }

    /*==================================================
 HEADER / FOOTER 768
====================================================*/
    #header {
        height: 80px;
    }

    #hdr_logo a {
        width: 100px;
    }

    #gn {
        padding-top: 80px;
    }

    #gn_main {
        padding: 30px 0;
    }

    #gn_main .lst_main {
        border-left: none;
        width: 100%;
    }

    #gn_main .lst_main li.gn_navi_recruit {
        display: block;
    }

    #gn_main .lst_main li a {
        padding: 5px 5px;
    }

    #gn_main .lst_sub {
        display: none;
    }

    #lp_banner{
        bottom: 20px;
        right: initial;
        left: 20px;
        width: 200px;
        height: 79px;
    }

    #gototop {
        bottom: 20px;
        right: 20px;
    }

    #gototop_sp {
        background: #2061A0;
        color: #fff;
        height: 30px;
        display: block;
        text-align: center;
        line-height: 30px;
        font-size: 18px;
    }

    #ftr_catch {
        padding: 30px 0;
        flex-wrap: wrap;
    }

    #ftr_catch .idx {
        width: 100%;
        font-size: 30px;
        padding: 0 0 20px;
    }

    #ftr_catch .msg {
        width: 100%;
    }

    #ftr_links {
        padding: 20px 0 30px;
        flex-wrap: wrap;
    }

    #ftr_links_brands,
    #ftr_links_others {
        width: 100%;
    }

    .ftr_links_list {
        justify-content: center;
    }

    #ftr_links_brands {
        /*flex-wrap: wrap;*/
        flex-direction: column;
        padding: 0;
        border-right: none;
    }

    #ftr_links_brands li a {
        text-align: center;
        min-width: 100px;
    }

    #ftr_links_others {
        padding: 10px 0 0;
    }

    #ftr_links_others li a {
        padding: 15px 25px;
    }

    /*==================================================
 HOME 768
====================================================*/
    .home_box {
        margin: 75px 0;
    }

    .home_box .ttlarea {
        font-size: 25px;
    }

    .hdrchange .home_utl_links,
    .home_utl_links {
        /* opacity: 1;
		visibility: visible;
		top: auto;
		bottom: 0;
		right: 20px; */
        position: fixed;
        /*top: 80px;*/
        top: 85px;
        right: 0;
        width: 100%;
        height: 36px;
        display: flex;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }

    .home_utl_links li {
        width: 50%;
        margin: 0;
    }

    .home_utl_links li:last-child {
        margin: 0 0 0;
    }

    .home_utl_links li a {
        font-size: 12px;
        height: 100%;
        padding: 10px 35px 10px 15px;
    }

    .home_utl_links li a:after {
        left: auto;
        bottom: auto;
        top: 12px;
        right: 10px;
    }

    .home_utl_links .sp {
        display: block;
        font-weight: bold;
    }

    .home_utl_links .pc {
        display: none;
    }

    #home_mv_main .msg {
        font-size: 20px;
    }

    #home_mv_scroll {
        display: none;
    }

    .home_top_openhouse {
        padding: 0 30px;
    }

    .home_top_openhouse dl {
        flex-wrap: wrap;
    }

    .home_top_openhouse dt,
    .home_top_openhouse dd {
        width: 100%;
    }

    .home_top_openhouse dt {
        padding: 0 0 5px;
        border-right: none;
    }

    .home_top_openhouse dd {
        padding: 0 0 0;
    }

    #home_cap_above {
        background-position: 70% center;
    }

    #home_openhouse .lst_openhouse .item {
        width: 100%;
        max-width: 400px;
        margin: 0 auto 50px;
    }

    #home_works .pc_w_gallery {
        display: none;
    }

    #home_works .sp_w_gallery {
        display: block;
    }

    #home_works .sp_w_gallery #w_gallery_sp .slide_sp.clf {
        padding-top: 50px;
    }

    #home_works .sp_w_gallery #w_gallery_sp .slide_item_sp {
        position: relative;
        margin-bottom: 50px;
    }

    #home_works .sp_w_gallery #w_gallery_sp .slide_item_sp:first-child {
        /* padding-top: 40px; */
    }

    #home_works .sp_w_gallery #w_gallery_sp .slide_item_sp:last-child {
        margin-bottom: 0;
    }

    #home_works .sp_w_gallery #w_gallery_sp .slide_item_sp .ttl {
        padding: 20px 0 30px 0;
    }

    #home_works .sp_w_gallery #w_gallery_sp .slide_item_sp .cnt ul li {
        padding: 10px 0;
        font-size: 14px;
        margin-bottom: 0.5em;
        border-bottom: 1px solid #D0D0D0;
        font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    }

    #home_works .sp_w_gallery #w_gallery_sp .slide_item_sp .cnt ul li:last-child {
        margin-bottom: 0;
    }

    #home_works .sp_w_gallery #w_gallery_sp .img {
        height: 300px;
        width: 100%;
        background-position: center center;
        background-size: cover;
    }


    #home_works .sp_w_gallery #w_gallery_sp {
        padding: 0 20px;
    }

    #home_works .sp_w_gallery #w_gallery_sp .slide_item_sp a {
        transition: all 0.5s;
    }

    #home_works .sp_w_gallery #w_gallery_sp .slide_item_sp a:hover {
        opacity: 0.75;
    }

    #home_works .sp_w_gallery #w_gallery_sp .cat {
        background-color: #2061A0;
        color: #fff;
        padding: 8px 24px;
        position: absolute;
        top: 0;
        left: 0;
        font-size: 12px;
        font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    }

    #home_works .sp_w_gallery #w_gallery_sp .title {
        font-size: 20px;
        font-family: 'Noto Serif Japanese', "游明朝", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    }

    #home_works .sp_w_gallery #w_gallery_sp .btnarea .btn {
        color: #fff;
        padding: 15px 0;
        max-width: 170px;
        width: 100%;
        border-radius: 50px;
        color: #fff;
        background-color: #1376ba;
        box-shadow: 0px 0px 30px #0000001a;
    }


    #w_gallery {
        padding: 100px 0 0;
    }

    #w_gallery .slide_item .txt {
        padding: 20px 20px 0;
    }

    #w_gallery .slide_item .txt .ttl {
        padding: 0;
        width: 100%;
    }

    #w_gallery .slide_item .txt .ttl .cat {
        padding: 0;
        font-size: 15px;
    }

    #w_gallery .slide_item .txt .ttl .cat:after {
        content: none;
    }

    #w_gallery .slide_item .txt .ttl .title {
        padding: 10px 0 0;
        font-size: 18px;
    }

    #w_gallery .slide_item .txt .ttl .title br {
        display: none;
    }

    #w_gallery .slide_item .txt .cnt {
        display: none;
    }

    #w_gallery .slide-dots {
        /* right: 20px; */
    }

    #home_philo_list .w4 {
        width: 50%;
    }

    #home_philo_list .w3 .title {
        /* font-size: 20px; */
    }

    #home_voice {
        height: auto;
    }

    #home_voice .inner {
        justify-content: center;
    }

    #home_voice .ttlarea {
        text-align: center;
    }

    #home_voice .btnarea {
        /* display: none; */
    }

    #home_voice .home_report_inner {
        padding: 100px 0 0;
    }

    .home_report_inner li {
        margin-bottom: 30px;
        width: 100%;
    }

    .home_report_inner li a {
        margin: 0 auto;
        max-width: 400px;
    }

    .home_report_inner li .img {
        height: 300px;
    }

    #home_voice .home_report_inner li .img img {
        object-fit: cover;
        height: 300px;
        width: 100%;
    }

    #home_voice .home_report_inner li a {
        max-width: unset;
    }

    .home_modelhouse_box {
        height: 350px;
    }

    .home_modelhouse_box .imgarea .img.l {
        width: 100%;
    }

    .home_modelhouse_box .imgarea .img.s {
        display: none;
    }

    #i_gallery .slide {
        display: flex;
        flex-wrap: wrap;
        padding: 0 15px;
        opacity: 1;
    }

    #i_gallery .slide .slide_item {
        padding-top: calc((33.33% - 10px));
        margin: 0 5px 10px;
        width: calc((33.33% - 10px));
    }

    #home_insta {
        margin: 40px 0 60px;
    }

    .home_modelhouse_box.dandan .imgarea .img.l {
        background: url("../images/home/img_dd_01sp.jpg") center center / cover no-repeat;
    }

    .bottom_banner {
        opacity: 0;
        visibility: visible;
        max-width: unset;
		width: 320px;
		height: 86px;
        /*height: 0;*/
    }

    .bottom_banner .left {
		width: calc(100% - 90px);
    }

    .bottom_banner .filter {
    }

    .bottom_banner .text {
        width: calc(100% - 20px);
        height: fit-content;
        left: 15px;
    }

    .bottom_banner .title {
        font-size: 14px;
    }

    .bottom_banner .title p {
        font-size: 25px;
    }

    .bottom_banner span {
        font-size: 10px;
        position: relative;
    }

    .bottom_banner span::before,
    .bottom_banner span::after {

    }

    .bottom_banner span::before {
        width: 50px;
        /* width: 70px;
		left: 100%;
		bottom: 0; */
    }

    .bottom_banner span::after {
        left: calc(100% + 61px);
        /* width: 10px; */
        /* transform: rotate(45deg); */
        /* bottom: 3px; */
    }

    .bottom_banner .right {
		width: 90px;
        /* width: 50px; */
        /* height: 100%;
		background-image: url("../images/hachiken/mv.jpg");
		background-size: cover; */
    }

    /*==================================================
 PAGE COMMON 768
====================================================*/
    .para_space {
        height: 180px;
    }

    #news_archive, #news_single, #live_report, #live_report_single,
    #housingcolumn, #housingcolumn_single {
        padding: 60px 20px 64px;
    }

    .page_nav a {
        margin: 5px 0;
    }

    /*==================================================
 NEWS ARCHIVE 768
====================================================*/
    .article_area {
        width: calc(100% - 313px);
        margin: 0 63px 0 0;
    }

    .sidebar_area {
        width: 250px;
    }

    .sidebar_area .facebook .title,
    .sidebar_area .instagram .title {
        font-size: 15px;
    }

    #news_single .wp-pagenavi {
        padding: 0 30px;
    }

    .livereport_article_area,
    .live_report_single_area,
    .housingcolumn_article_area,
    .housingcolumn_single_area {
        width: 100%;
        margin: 0;
    }

    #live_report .flexbox,
    #housingcolumn .flexbox {
        flex-wrap: wrap;
    }

    .livereport_article_area li,
    .housingcolumn_article_area li {
        padding: 0 0 50px 10px;
        margin: 0;
        width: 50%;
    }

    .livereport_article_area li:nth-child(odd),
    .housingcolumn_article_area li:nth-child(odd) {
        margin: 0;
        padding: 0 10px 50px 0;
    }

    #live_report .sidebar_area,
    #housingcolumn .sidebar_area {
        width: 100%;
    }

    /*==================================================
 CUSTOMER VOICE SINGLE 768
====================================================*/
    .page_nav a,
    .page_sub_nav a {
        font-size: 13px;
    }

    .article_item .vol,
    .article_item h2 {
        font-size: 17px;
    }

    .page_sub_nav a,
    .article_item .cat_name {
        font-size: 13px;
    }

    #costomer_voice_single .title {
        font-size: 20px;
    }

    .a_data_box h3 {
        width: 204px;
    }

    .a_data_box .description_box {
        width: calc(100% - 204px);
    }

    /*==================================================
 hs_layout 768
====================================================*/
    .hs_layout h2 {
        padding: 5px 0.5em 10px;
        font-size: 24px;
    }

    .hs_layout .thumb ul li {
        width: 50%;
    }

    .hs_layout .thumb ul li:nth-child(n) {
        padding: 0;
    }

    .hs_layout .thumb ul li:nth-child(2n+1) {
        padding-right: 20px;
    }

    .hs_layout dl.listTable dt {
        width: 100%;
        margin: 0;
    }

    .hs_layout dl.listTable dd {
        width: 100%;
    }

    .hs_layout .featureTech .feature article {
        margin: calc(100vw * (500 / 760)) 0 0;
    }

    .hs_layout .featureTech .feature article .column {
        width: 100%;
    }

    .hs_layout .featureTech .feature article p.number {
        height: 3rem;
        top: 25px;
    }

    .hs_layout .featureTech .feature {
        padding: 0 0 0;
    }

    .hs_layout .featureTech .feature .img {
        width: 100%;
        height: calc(100vw * (500 / 760));
    }

    .hs_layout .keywordTech article .desc {
        width: 100%;
    }

    .hs_layout .keywordTech article .img {
        display: block;
        margin: 0 auto;
    }

    .hs_layout .keywordTech article img {
        max-width: 100%;
        height: auto;
        width /***/: auto;
    }

    .hs_layout .techWooden {
        padding: 0 0 60px;
    }

    /*==================================================
POPUP 768
====================================================*/
    #popup_inner {
        padding: 30px 0;
    }

    #popup_content .maincontent {
        padding: 20px 0 30px;
    }

    #popup_content .ppp_nav {
        margin: -23px 0 0;
        width: 40px;
        height: 46px;
    }

    #popup_content .ppp_nav.prev {
        left: -20px;
    }

    #popup_content .ppp_nav.next {
        right: -20px;
    }

    #popup_close {
        background-size: contain;
        width: 40px;
        height: 46px;
        right: -20px;
        top: 10px;
    }

    /*==================================================
 CONTACT 768
====================================================*/
    .contact_wrap .top_title_area {
        height: 180px;
    }

    .contact_wrap .top_title_area h2 {
        font-size: 24px;
    }

    .contact_wrap .top_title_area p {
        font-size: 14px;
        top: 40px;
    }

    .contact_form_area .txt {
        margin: 0 0 40px;
    }

    .branch_office {
        flex-wrap: wrap;
    }

    .branch_office .list_item {
        width: calc((100% - 40px) / 2);
        margin: 0 40px 20px 0;
    }

    .branch_office .list_item:nth-child(2) {
        margin: 0;
    }

    .contact_form_area .subject .sub_type {
        display: block;
        padding: 0 0 0 10px;
    }

    .contact_form_area .subject .sub_type:before,
    .contact_form_area .subject .sub_type:after {
        content: none;
    }

    .contact_form_area .req:after,
    .contact_form_area .policy-check .wpcf7-list-item:after {
        margin: 0 0 0 15px;
    }

    /*==================================================
 CAREERS 768
====================================================*/
    .careers_wrap .item {
        padding: 15px 0;
        border-bottom: 1px solid #D6D6D6;
        display: block;
    }

    .careers_wrap .recruit_item .item:last-child {
        border-bottom: none;
    }

    .careers_wrap .item .item_name {
        font-size: 17px;
        padding: 0 0 10px;
    }

    .careers_wrap .item .item_name br {
        display: none;
    }

    .careers_wrap .item .item_name,
    .careers_wrap .item .item_description {
        width: 100%;
    }

    .careers_wrap .main_content {
        top: -144px;
    }

    .careers_wrap .top_title_area {
        height: 200px;
    }

    .open .item_description .note,
    .careers_wrap .item .item_description {
        font-size: 13px;
    }

    .careers_wrap .item .item_description {
        padding: 0 0 0 18px;
    }

    .rec_hdr {
        padding: 0 20px;
    }

    .careers_wrap .rec_hdr .item {
        border-bottom: none;
    }

    .careers_wrap .open .rec_hdr .item {
        border-bottom: 1px solid #D6D6D6;
    }

    .careers_wrap .rec_hdr .item .item_name,
    .careers_wrap .rec_hdr .item .item_description {
        padding-right: 50px;
    }

    .open .recruit_item {
        padding: 0 20px 5px;
    }

    .open .rec_hdr {
        padding-top: 5px;
    }

    /*==================================================
 FLOW 768
====================================================*/
    .flow .head_img_illust {
        bottom: -75px;
    }

    /*==================================================
 RENOVATION 768
====================================================*/
    .renovation_cap {
        padding: 0 20px 60px;
    }

    /*==================================================
 MODELHOUSE 768
====================================================*/
    #w_gallery.mh {
        padding: 0;
    }

    #w_gallery.mh .slide_item .img {
        height: auto;
    }

    .modelhouse_form > dt,
    .model_h_form_table_inner > dt {
        font-size: 16px;
    }

    .model_h_doi {
        padding: 50px 0 0;
    }

    .modelhouse_head {
        padding: 120px 0 0;
        margin: 0 0 50px;
        bottom: -75px;
    }

    /*==================================================
OpenHouse 768
====================================================*/
    #content_main {
        padding: 20px 0 0;
    }

    #content_main::after {
        top: 80px;
    }

    .openhouse_meta_wrapper {
        padding: 20px 20px 20px;
    }

    .content_main_ttl .title {
        font-size: 24px;
    }

    .openhouse_meta .oh_tagline {
        font-size: 20px;
    }

    .lst_openhouse .item {
        width: 50%;
    }

    /*==================================================
Company 768
====================================================*/
    .company_sudo {
        margin: 0 auto 40px;
    }

    .company_sudo dt {
        font-size: 25px;
    }

    .company_sudo dd {
        font-size: 14px;
    }

    .company_head {
        height: 250px;
        background-size: auto 100%;
        margin-bottom: 60px;
    }

    .company_head .txt {
        padding: 0 8% 0 0;
        width: 70%;
        left: 10px;
    }

    .company_head li {
        font-size: 1rem;
    }

    .company_head p {
        font-size: 1.5rem;
    }

    .company_head .img {
        width: 30%;
        bottom: auto;
        top: 50%;
        -webkit-transform: translate3d(0, -50%, 0);
        transform: translate3d(0, -50%, 0);
    }

    .company_cap {
        margin: 0 auto 80px;
    }

    .company_cap p {
        font-size: 14px;
        margin: 40px 0;
    }

    .company_detail {
        width: 100%;
        margin: 80px 0;
    }

    .company_detail .title {
        font-size: 25px;
    }

    .company_detail_inner {
        padding: 80px 0 0;
    }

    .company_detail_inner .item dl {
        padding: 20px 0;
    }

    .company_detail_inner dt {
        min-width: 150px;
        width: 25%;
        font-size: 18px;
    }

    .company_detail_inner dd {
        width: 75%;
    }

    .company_detail_access p {
        font-size: 25px;
    }

    /*==================================================
Philosophy 768
====================================================*/
    .page_nav.upper.philosophy {
        padding: 40px 0 50px;
    }

    .phylosopy_head {
        margin: 0 0 40px;
        padding: 40px 0 0;
    }

    .phylosopy_head h2 {
        font-size: 24px;
    }

    /*==================================================
Office 768
====================================================*/
    #lst_office {
        padding: 0 10px 15px;
        top: 0;
    }

    #lst_office li {
        padding: 0 10px 15px;
    }

    #lst_office li a,
    #office_list .office_data .item > dt {
        font-size: 15px;
    }

    #office_list .office_data .item > dt {
        width: 200px;
    }

    #office_list .office_data .item > dd {
        width: calc(100% - 200px);
    }

    #office_list .office_box {
        margin: 0 0 75px;
    }

    #office_list .office_box .title {
        padding: 20px 0 10px;
    }

    #office_list .office_box .map {
        margin: 30px 0 0;
    }

    /*==================================================
Photo Gallery 768
====================================================*/
    #phototag_check_list li {
        width: 33.33%;
    }

    /*==================================================
online consulting 768
====================================================*/
    #btn_omform {
        height: 60px;
    }

    #online #hdr_logo {
        width: calc(100% - 400px);
        height: 70px;
        padding-left: 0;
        padding-top: 0;
    }

    #online #hdr_logo a {
        width: 170px;
        padding: 5px 20px;
    }

    #online.lnav #header .inner {
        padding-right: 20px;
    }

    #online #btn_nav {
        width: 60px;
        height: 60px;
        padding: 10px;
    }

    #online #btn_nav .bar {
        left: 9px;
    }

    #online.lnav #btn_nav .bar,
    #online.lnav #btn_nav:hover .bar {
        left: 17px;
    }

    #online .page_title_area {
        height: 400px;
    }

    #online .page_title_area .page_title {
        padding: 30px 0 0 0;
    }

    #online .page_title_area .page_title .en {
        padding-left: 50px;
        font-size: 3.6em;
    }

    #online .page_title_area .page_title .ja {
        padding-left: 20px;
        font-size: 1.25em;
    }

    #online .page_title_area .page_title .sb {
        letter-spacing: 0.1em;
        top: 5px;
        left: calc(50% - 195px);
        height: 80px;
        width: 80px;
        font-size: 0.8em;
        letter-spacing: 0.1em;
    }

    #om_main p, #om_main dt, #om_main dd {
        font-size: 0.8rem;
    }

    #om_recommend .idx_normal,
    .om_idx .idx {
        font-size: 1.5em;
    }

    .om_idx {
        margin-bottom: 4em;
    }

    #om_recommend {
        padding: 0 0 2em;
    }

    #om_lst_rec {
        margin: 2em auto 0;
    }

    #om_lst_rec li {
        width: 100%;
        margin: 0 0 1em;
    }

    #om_lst_rec li:last-child {
        margin-bottom: 0;
    }

    #om_lst_rec li .item {
        min-height: 120px;
        padding: 1.5em 1.5em 1.5em 150px;
    }

    #om_lst_rec li .item .img {
        padding: 15px;
        top: 50%;
        left: 15px;
        margin: -50px 0 0 0;
        height: 100px;
        width: 100px;
    }

    #om_lst_rec li .item .img::after {
        bottom: auto;
        left: auto;
        margin: -9px 0 0;
        transform: rotate3d(0, 0, 1, -90deg);
        right: -12px;
        top: 50%;
    }

    #om_lst_rec li .item .txt,
    #om_lst_todo li .item .txt dt,
    #om_lst_flow li .item .txt dt {
        font-size: 1em;
    }

    #om_lst_todo {
        padding: 0 10px;
        align-items: stretch;
        align-content: stretch;
    }

    #om_lst_todo li {
        padding: 0 10px 20px;
    }

    #om_lst_todo li:last-child {
        padding-bottom: 0;
    }

    #om_lst_todo li .item {
        align-content: flex-start;
        height: 100%;
    }

    #om_lst_todo li .item.rv {
        flex-direction: row;
    }

    #om_lst_todo li .item .img {
        height: 100%;
        overflow: hidden;
        position: relative;
        width: 200px;
    }

    #om_lst_todo li .item .img img {
        max-width: none;
        height: 100%;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    #om_lst_todo li .item .txt {
        width: calc(100% - 200px);
        padding: 1.5em;
    }

    #om_lst_todo li .item .txt dl {
        max-width: none;
    }

    #om_reserve .modelhouse_form > dt {
        font-size: 1.125em;
    }

    #om_reserve .model_h_form_table_inner dt,
    #om_reserve .om_sbj_group .wpcf7-list-item {
        font-size: 13px;
    }


}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			640px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width: 640px) {
    /*==================================================
 HEADER / FOOTER 640
====================================================*/
    #gn_ftr {
        flex-wrap: wrap;
    }

    #hdr_copy,
    #hdr_sns {
        width: 100%;
    }

    #hdr_copy {
        padding: 0 0 20px;
        text-align: center;
    }

    #hdr_sns {
        justify-content: center;
    }

    form .small_txt {
        width: 100%;
    }

    /*==================================================
 HOME 640
====================================================*/
    .home_modelhouse_box .infobox {
        display: flex;
        flex-wrap: wrap;
        align-content: center;
        align-items: center;
        bottom: 20px;
        height: calc(100% - 40px);
        width: calc(100% - 40px);
    }

    .home_modelhouse_box .infobox .title,
    .home_modelhouse_box .infobox .place,
    .home_modelhouse_box .infobox .text,
    .home_modelhouse_box .infobox .btnarea {
        width: 100%;
    }

    #home_philo_list .w3,
    #home_philo_list .w4 {
        height: 200px;
        width: 100%;
    }

    /*==================================================
 NEWS ARCHIVE 640
====================================================*/
    #news_archive .content_area,
    #live_report .content_area,
    #live_report_single .content_area,
    #housingcolumn .content_area,
    #housingcolumn_single .content_area {
        display: block;
    }

    .article_area,
    .article_single_area {
        margin: 0 0 105px;
    }

    .article_area,
    .sidebar_area {
        width: 100%;
    }

    .sidebar_area .facebook .title,
    .sidebar_area .instagram .title {
        font-size: 17px;
    }

    .sidebar_area .facebook a, .sidebar_area .instagram a {
        padding: 15px 20px 85px;
    }

    .sidebar_area .facebook .title:after,
    .sidebar_area .instagram .title:after {
        bottom: -60px;
        font-size: 24px;
    }

    .article_single_area .shere {
        display: block;
    }

    .article_single_area .shere .txt {
        padding: 0 0 20px;
    }

    .wp-pagenavi {
        position: relative;
        padding: 0 15px;
        margin: 50px 0;
    }

    #works .wp-pagenavi {
        /*position: relative;*/
        /*padding: 0 15px;*/
        /*margin: 50px 0;*/
    }

    .wp-pagenavi .thum_img {
        max-width: 120px;
        height: 85px;
    }

    .wp-pagenavi .thum_img img {
        height: 85px;
    }

    .wp-pagenavi .item:hover .thum_title {
        font-size: 10px;
    }

    .wp-pagenavi .previouspostslink,
    .wp-pagenavi .nextpostslink {
        position: absolute;
        bottom: -100%;
    }

    .wp-pagenavi .previouspostslink {
        left: 10px;
    }

    .wp-pagenavi .nextpostslink {
        right: 10px;
    }

    .wp-pagenavi ul {
        justify-content: center;
    }

    .wp-pagenavi li span.txt {
        display: none;
    }

    .wp-pagenavi ul {
        position: relative;
    }

    .wp-pagenavi li.prev,
    .wp-pagenavi li.next {
        position: absolute;
        top: 50%;
        -webkit-transform: translate3d(0, -50%, 0);
        transform: translate3d(0, -50%, 0);
    }

    .wp-pagenavi li.prev {
        left: 0;
    }

    .wp-pagenavi li.next {
        right: 0;
    }

    .sidebar_area .instagram .title:after {
        bottom: -6px;
        left: -30px;
    }

    /*==================================================
 CUSTOMER VOICE ARCHIVE 640
====================================================*/
    .article_item a.flexbox {
        display: block;
    }

    .article_item .img {
        width: 100%;
        height: auto;
    }

    .article_item .info {
        padding: 40px 20px 20px;
    }

    /*==================================================
 CUSTOMER VOICE SINGLE 640
====================================================*/
    #costomer_voice_single {
        margin: 0 0 20px;
    }

    .page_sub_nav {
        margin: 0 0 20px
    }

    .architecture_data_wrapper {
        margin: 0 0 0px;
    }

    .cv_post .img_box {
        margin: 0 0 40px;
    }

    .cv_post p {
        padding: 0 0 40px;
    }

    .a_data_box {
        display: block;
    }

    .a_data_box h3,
    .a_data_box .description_box {
        font-size: 13px;
        padding: 15px 20px;
        width: 100%;
        display: block;
    }

    .img_box_double {
        display: block;
    }

    .img_box_double .img_box,
    .img_box_center .img_box {
        width: 80%;
    }

    .img_box_double .img_box,
    .img_box_double .img_box:last-child {
        margin: 0 auto 40px;
    }

    /*==================================================
 CUSTOMER VOICE SINGLE PAGENAVI 640
====================================================*/
    .page_nav ul.flexbox li {
        margin: 0 15px 0;
    }

    .page_nav {
        padding: 40px 0;
    }

    .page_nav.lower {
        margin: 10px auto 40px;
        padding: 40px 20px 40px;
    }

    /*==================================================
Renovation 640
====================================================*/
    .renovation_head img {
        margin: 0 auto 40px;
    }

    .renovation_cap p.idx {
        margin-bottom: 20px;
        font-size: 18px;
    }

    .renovation_cap p.main {
        margin-bottom: 40px;
        font-size: 14px;
    }

    /*==================================================
CASE 640
====================================================*/
    .case_image {
        margin: 40px auto 20px;
    }

    .case_image div {
        width: calc(100% / 2);
        margin-bottom: 30px;
        padding: 0 10px;
    }

    .case_image div dl dd {
        color: #343434;
        line-height: 1.5;
        font-size: 14px;
    }

    .case_pagenavi {
        margin: 0 auto 40px;
    }

    .case_access {
        height: 100%;
        background-size: 100% 100%;
        margin: 60px 0;
    }

    .case_access div {
        margin: 0 auto 60px;
    }

    .case_access dl {
        padding: 0;
        margin: 30px 0;
        width: 100%;
    }

    .case_access dl:first-child {
        margin-top: 100px;
    }

    .case_access dt {
        width: 100%;
        line-height: 1.5;
        font-size: 16px;
        padding: 10px;
    }

    .case_access dd {
        display: block;
        padding: 0 10px;
    }

    .case_access dd:last-child {
        padding-bottom: 20px;
    }

    /*==================================================
	Model House 640
	====================================================*/
    .lst_modelhouse {
        padding: 0 20px;
        margin: 60px auto 50px;
    }

    .lst_modelhouse .item {
        width: 100%;
        margin: 0 0 3em;
        padding: 0;
    }

    /*==================================================
	MODEL HOUSE DETAIL 640
	====================================================*/
    .model_h_detail_slider {
        margin-bottom: 20px;
    }

    .model_h_detail_slider dt {
        text-align: center;
        width: 100%;
        font-size: 16px;
    }

    .model_h_detail_slider dd {
        width: 100%;
    }

    .model_h_detail_slider dd ul li {
        font-size: 16px;
    }

    .model_h_detail_data dl {
        width: 100%;
        flex-wrap: wrap;
        padding-bottom: 30px;
        border-bottom: 1px solid #F3F3F3;
        margin: 0 0 30px;
    }

    .model_h_detail_data dt {
        width: 100%;
        padding: 0 0 15px;
    }

    .model_h_detail_data dd {
        width: 100%;
    }

    .model_h_detail_data dd ul li {
        font-size: 15px;
    }

    .modelhouse_tel {
        margin-bottom: 30px;
    }

    .modelhouse_tel dt,
    .modelhouse_tel dd {
        font-size: 16px;
    }

    .model_h_detail_form {
        padding: 0 20px;
    }

    .modelhouse_form {
        flex-wrap: wrap;
    }

    .modelhouse_form > dt,
    .modelhouse_form > dd {
        width: 100%;
    }

    .modelhouse_form > dt {
        padding-bottom: 10px;
    }

    .model_h_detail_more {
        margin: 50px 0 30px;
    }

    .model_h_detail_more > .title {
        text-align: center;
        font-weight: 500;
        width: 100%;
        padding: 0 10px;
        font-size: 20px;
    }

    .model_h_detail_more span {
        font-size: 15px;
        color: #1376ba;
        display: block;
        margin-top: 10px;
    }

    .model_h_detail_more_inner {
        max-width: 1040px;
        margin: 0 auto;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        padding: 50px 20px 0;
    }

    .model_h_detail_more_inner .item {
        width: 50%;
    }

    .model_h_detail_more_inner .item .title {
        font-size: 18px;
    }

    .model_h_detail_more_inner .item .address {
        font-size: 13px;
    }

    .model_h_detail_more_inner span {
        display: inline-block;
        text-align: center;
        margin: 0 auto;
    }

    /*==================================================
	Flow 640
	====================================================*/
    .flow_head img {
        margin: 0 auto 40px;
        padding: 50px 0 0;
    }

    .flow_cap dt {
        font-size: 18px;
    }

    .flow_cap dd {
        margin-bottom: 40px;
        font-size: 14px;
    }

    .flow_flow {
        margin: 0 auto 40px;
    }

    .flow_flow div p {
        width: 100%
    }

    .flow_flow div img {
        padding: 20px 0;
    }

    .flow_flow div dl {
        width: 100%;
        padding: 0 20px 20px;
    }

    .flow_flow div dt {
        font-size: 16px;
    }

    .flow_flow div dd {
        font-size: 14px;
    }

    .flow_flow div dt:nth-of-type(2) {
        margin-top: 10px;
    }

    /*==================================================
	Area 640
	====================================================*/
    .area_head img {
        margin: 0 auto 40px;
        padding: 60px 0 0;
    }

    .area_cap {
        max-width: 1040px;
        margin: 0 auto;
        padding: 0 20px 20px;
    }

    .area_cap p.idx {
        font-size: 18px;
    }

    .area_cap p.main {
        margin-bottom: 20px;
        padding-bottom: 20px;
        font-size: 14px;
    }

    .area_map {
        margin: 20px auto 60px;
    }

    /*==================================================
	Maintenance 640
	====================================================*/
    .maintenance_cap p.idx {
        font-size: 18px;
    }

    .maintenance_head img {
        margin: 0 auto 40px;
        padding: 60px 0 0;
    }

    .maintenance_head {
        max-width: 1040px;
        margin: 0 auto;
        padding: 0 20px 20px;
    }

    .maintenance_head dt {
        font-size: 18px;
    }

    .maintenance_head dd {
        margin-bottom: 20px;
        padding-bottom: 20px;
        font-size: 14px;
    }

    .maintenance_head {
        margin: 20px auto 60px;
    }

    .maintenance_about .item {
        margin: 20px 0 50px;
        display: block;
    }

    .maintenance_about .item .idx {
        width: 100%;
        display: block;
        text-align: center;
        padding: 20px;
        margin: 0;
    }

    .maintenance_about .item .idx br {
        display: none;
    }

    .maintenance_about .item .txt {
        width: 100%;
        padding: 20px;
    }

    /*==================================================
	WORKS SINGLE
	====================================================*/
    .works_single_photo_area {
        padding: 0 5px
    }

    .works_single_photo_box {
        padding: 5px;
    }

    .works_single_photo_box.vertical {
        width: 80%;
    }

    .works_photo_tag a.works_photo_tag_icon {
        min-width: inherit;
        min-width: auto;
        font-size: 12px;
        line-height: 15px;
        padding: 5px 10px;
        margin: 0 0 0 5px;
    }

    .works_archvie_box {
        width: calc(100% / 2);
    }

    .works_archvie_inner .title {
        font-size: 15px;
    }

    /*==================================================
	CONCEPT
	====================================================*/
    .concept_content .concept_content_box .img {
        width: 100%;
        padding: 40% 0 0;
    }

    .concept_content .concept_content_box .title {
        font-size: 30px;
        width: 64px;
        height: 64px;
        line-height: 58px;
    }

    .concept_content .concept_content_box .txt {
        font-size: 13px;
        width: 100%;
        padding: 20px;
    }

    /*==================================================
Company 640
====================================================*/
    .company_sudo {
        flex-wrap: wrap;
    }

    .company_sudo div {
        margin-bottom: 40px;
        width: 100%;
    }

    .company_sudo img {
        display: block;
        margin: 0 auto;
    }

    .company_sudo dl {
        width: 100%;
        margin-left: 0;
        text-align: center;
    }

    /*==================================================
HS Layout 640
====================================================*/
    .hs_layout .intro h3 {
        font-size: 18px;
    }

    /*==================================================
COMMON 640
====================================================*/
    .wp-pagenavi li.prev .item {
        /* padding: 20px 10px 20px 50px; */
    }

    .wp-pagenavi li.next .item {
        /* padding: 20px 50px 20px 10px */
    }

    /*==================================================
POPUP 640
====================================================*/
    #popup_content h3 {
        font-size: 20px;
    }

    /*==================================================
 CONTACT 640
====================================================*/
    #contact .page_nav {
        padding: 40px 0 60px;
    }

    .branch_office {
        display: block;
    }

    .branch_office .list_item {
        width: 100%;
    }

    .branch_office .list_item:nth-child(2) {
        margin: 0 0 20px;
    }

    .contact_form_area dl {
        flex-wrap: wrap;
        padding: 20px 0;
    }

    .contact_form_area dt {
        font-size: 18px;
        padding: 0 0 10px;
    }

    .contact_form_area .messeage dt {
        padding: 0 0 10px;
    }

    .contact_form_area dd {
        padding: 0 0 0 0;
        width: 100%;
    }

    .contact_form_area input[type="text"], .contact_form_area input[type="email"], .contact_form_area input[type="tel"], .contact_form_area textarea {
        font-size: 16px;
    }

    .contact_form_area .messeage {
        margin: 0 0 40px;
    }

    .contact_form_area .name input[type="text"],
    .contact_form_area .name_rub input[type="text"] {
        width: 100%;
    }

    #contact_subjects ul li a {
        font-size: 1em;
    }

    #contact_subjects {
        padding: 2em 10px 0;
    }

    /*==================================================
 PHOTO GALLERY 640
====================================================*/
    #photo_single_slide_area {
        padding: 0 20px 30px;
    }

    #photo_single_slide_prev_btn,
    #photo_single_slide_next_btn {
        margin: -23px 0 0 0;
        width: 40px;
        height: 45px;
    }

    .photo_single_slide_inner_tag a.works_photo_tag_icon,
    .photo_archvie_box_inner a.works_photo_tag_icon {
        min-width: auto;
        font-size: 12px;
        line-height: 15px;
        padding: 5px 10px;
        margin: 0 0 0 5px;
    }

    #phototag_check_area {
        margin: 0 auto 30px;
    }

    /*==================================================
online consulting 640
====================================================*/
    #btn_omform {
        width: 160px;
        font-size: 0.8em;
    }

    #btn_omform .ico {
        padding: 0 0 .15em;
        width: 100%;
        font-size: 1.6em;
    }

    #btn_omform .ibpart {
        padding: 0;
    }

    #online #hdr_logo {
        width: calc(100% - 230px);
    }
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			600px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width: 600px) {
    .hs_layout .thumb ul li {
        width: 100%;
        height: 170px;
        margin: 0 0 20px;
    }

    .hs_layout .thumb ul li a {
        height: 170px;
    }

    .hs_layout .thumb ul li:nth-child(n) {
        padding: 0;
    }

    .hs_layout .featureTech .feature:nth-of-type(n) article {
        padding: 0;
    }

    .hs_layout .featureTech .feature article p.number {
        width: 5rem;
        padding: 0 0 5px;
        font-size: 3rem;
    }

    .hs_layout .featureTech .feature article .column {
        width: 100%;
    }

    .hs_layout .featureTech .feature:nth-of-type(n) article .column {
        padding: 2.8em 2em 3em;
    }

    .hs_layout .featureTech .feature article .column h4 {
        font-size: 1.6rem;
    }

    .hs_layout .featureTech .feature:nth-of-type(2n+1) article .column h4 {
        margin-right: 4rem;
    }

    .hs_layout .featureTech .feature:nth-of-type(2n) article .column h4 {
        margin-left: 4rem;
    }
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			560px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width: 560px) {
    /*==================================================
	HOME 560
	====================================================*/
    .home_news_inner li {
        width: 100%;
    }

    /*==================================================
	MODELHOUSE 560
	====================================================*/
    .lst_modelhouse .ttl,
    .lst_modelhouse .btn {
        width: 100%;
        margin: 20px 0 0;
    }

    .lst_modelhouse .btn a {
        text-align: center;
    }

    /*==================================================
	OpenHouse 560
	====================================================*/
    .lst_openhouse .item {
        width: 100%;
        max-width: 400px;
        margin: 0 auto 50px;
    }

    .lst_openhouse .ttl .title {
        font-size: 18px;
    }

    .oh_address,
    .oh_flag {
        font-size: 13px;
    }

    /*==================================================
	Photo Gallery 560
	====================================================*/
    #phototag_check_list li {
        width: 50%;
    }

    .photo_archvie_box {
        padding: 5px;
        width: 50%;
    }
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			480px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width: 480px) {
    /*==================================================
 HOME 480
====================================================*/
    #w_gallery .slide_item .txt .ttl .cat {
        font-size: 12px;
    }

    #w_gallery .slide_item .txt .ttl .title {
        font-size: 15px;
    }

    #i_gallery .slide .slide_item {
        padding-top: calc(50% - 10px);
        width: calc(50% - 10px);
    }

    #home_voice {
        height: auto;
    }

    /*==================================================
 PAGE COMMON 480
====================================================*/
    .para_space {
        height: auto;
    }

    /*==================================================
 NEWS ARCHIVE 480
====================================================*/
    .pageing_area .previouspostslink,
    .pageing_area .nextpostslink {
        margin: 0;
    }

    .pageing_area .previouspostslink,
    .pageing_area .nextpostslink a {
        padding: 10px 5px;
    }

    .article_single_area .shere ul {
        flex-wrap: wrap;
    }

    .article_single_area .shere li {
        padding: 0 26px 15px 0;
    }

    .article_single_area .shere {
        padding: 25px 25px 10px;
    }

    #news_single .pageing_area img {
        width: 100%;
    }

    .livereport_article_area li:nth-child(2n+1),
    .livereport_article_area li:nth-child(2n) {
        width: 100%;
        padding: 0 0 50px 0;
        max-width: 400px;
        margin: 0 auto;
    }

    .wp-pagenavi ul li {
        padding: 10px 0;
        width: 100%;
    }

    .wp-pagenavi ul li.back {
        padding: 0;
        text-align: center;
    }

    .wp-pagenavi li.prev,
    .wp-pagenavi li.next {
        -webkit-transform: none;
        transform: none;
        position: static;
    }

    .wp-pagenavi li.next {
        text-align: right;
    }

    .wp-pagenavi li a {
        display: inline-block;
    }

    .works_single_pagenavi {
        padding: 10px 20px 30px;
    }

    /*==================================================
 CUSTOMER VOICE SINGLE 480
====================================================*/
    .img_box_double .img_box,
    .img_box_center .img_box {
        width: 100%;
    }

    #costomer_voice_single .title {
        max-width: 420px;
        width: 100%;
        padding: 0 20px;
        font-size: 17px;
    }

    #costomer_voice_single .wp-pagenavi {
        padding: 10px 20px 0;
    }

    /*==================================================
 WORKS SINGLE 480
====================================================*/
    .works_single_photo_box.vertical {
        width: 100%;
    }

    /*==================================================
Company 480
====================================================*/
    .company_sudo dd {
        text-align: left;
    }

    .company_head {
        padding: 40px 20px;
        text-align: center;
        height: auto;
        margin-bottom: 30px;
    }

    .company_head .txt,
    .company_head .img {
        position: static;
        -webkit-transform: none;
        transform: none;
        width: 100%;
    }

    .company_head .txt {
        padding: 0;
    }

    .company_head ul {
        justify-content: center;
    }

    .company_head p {
        font-size: 1.3rem;
    }

    .company_detail {
        margin: 40px 0;
    }

    .company_detail_inner {
        padding: 60px 0 0;
    }

    .company_detail_inner dl {
        flex-wrap: wrap;
        margin: 10px;
    }

    .company_detail_inner dt,
    .company_detail_inner dd {
        width: 100%;
    }

    .company_detail_inner dt {
        padding: 0 0 10px;
    }

    /*==================================================
 MODELHOUSE 480
====================================================*/
    .modelhouse_head .ttlarea p {
        font-size: 15px;
    }

    .modelhouse_head .title {
        padding: 15px 20px;
    }

    .model_h_form_table {
        flex-wrap: wrap;
    }

    .model_h_form_table_inner > dt {
        width: 60px;
        align-self: center;
    }

    .model_h_form_table_inner {
        padding: 0 10px 10px 0;
    }

    .model_h_form_table .model_h_form_table_inner:last-child {
        padding-bottom: 0;
    }

    /*==================================================
 CONTACT 480
====================================================*/
    .contact_form_area .calendar dd {
        width: 100%;
    }

    #contact_subjects {
        padding: 1em 10px 0;
        margin: 0 0 3em;
    }

    #contact_subjects ul li {
        padding: 0 10px 15px;
        width: 100%;
    }

    #contact_subjects ul li a {
        padding: 1.25em .5em;
    }

    .contact_wrap .top_title_area {
        height: auto;
    }

    .contact_wrap .top_title_area p {
        position: static;
        transform: none;
        padding: 3em 20px 5px;
    }

    /*==================================================
 CAREERS 480
====================================================*/
    .careers_wrap ul.reference dl {
        display: block;
        padding: 0 0 10px;
    }

    .careers_wrap ul.reference dt {
        padding: 0;
    }

    .careers_wrap ul.reference dt,
    .careers_wrap ul.reference dd {
        width: 100%;
    }

    /*==================================================
 OFFICE 480
====================================================*/
    #lst_office {
        flex-wrap: wrap;
    }

    #office_list .office_data .item {
        flex-wrap: wrap;
    }

    #office_list .office_data .item > dt,
    #office_list .office_data .item > dd {
        width: 100%;
    }

    #office_list .office_data .item > dd .contact {
        width: 100%;
        margin: 0;
    }

    /*==================================================
 OPENHOUSE 480
====================================================*/
    #oh_protected .post-password-form p label {
        width: 100%;
    }

    #oh_protected .post-password-form p input[type="submit"] {
        padding: 15px 20px;
        width: 100%;
        margin: 0 auto;
        display: block;
    }

    /*==================================================
 ONLINE CONSULTING 480
====================================================*/
    #om_recommend .idx_normal, .om_idx .idx {
        font-size: 1.3em;
    }

    #om_reserve .model_h_form_table_inner > dt {
        width: auto;
    }

    .om_dl_cmn dt {
        width: 8em;
    }

    .om_dl_cmn dd {
        width: calc(100% - 8em);
    }

    #om_lst_todo li .item .img,
    #om_lst_todo li .item .txt {
        width: 100%;
    }

    #om_lst_todo li .item .img {
        height: auto;
    }

    #om_lst_todo li .item .img img {
        transform: none;
        max-width: 100%;
        height: auto;
        position: static;
    }

    #om_lst_rec li .item {
        min-height: 100px;
        padding: 1em 1em 1em 100px;
    }

    #om_lst_rec li .item .img {
        left: -10px;
        margin: -40px 0 0 0;
        height: 80px;
        width: 80px;
    }

    #om_lst_flow li {
        padding: 0 10px;
    }

    #om_lst_flow li .item,
    #om_lst_flow li .item.w_btn {
        min-height: 100px;
        padding: 1em 1em;
    }

    #om_lst_flow li .item .img {
        padding: 20px;
        margin: -40px 0 0;
        height: 80px;
        width: 80px;
        left: -10px;
    }

    #om_lst_flow li .item .txt {
        padding: 0 0 0 75px;
    }
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			400px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width: 400px) {
    /*==================================================
 HEADER / FOOTER 400
====================================================*/
    #ftr_links {
        padding: 10px 0 20px;
    }

    #ftr_links_brands li {
        width: 100%;
    }

    #popup_content .ppp_nav {
        top: 180px;
    }

    #gn .inner {
        padding: unset;
    }

    /*==================================================
 MODELHOUSE 400
====================================================*/
    .model_h_detail_more_inner .item {
        width: 100%;
    }

    /*==================================================
 CONTACT 400
====================================================*/
    /* 20191216 added */
    #contact_note {
        text-align: left;
    }

    #contact_note p {
        font-size: 0.75em;
    }

    /*==================================================
online consulting 400
====================================================*/
    #btn_omform {
        width: 60px;
    }

    #btn_omform .txt {
        display: none;
    }

    #btn_omform .ico {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-content: center;
        align-items: center;
        padding: 0;
        font-size: 2em;
    }

    #btn_omform .ico::after {
        content: '予約';
        font-size: 0.5em;
        width: 100%;
        display: inline-block;
        padding: 0.5em 0 0;
    }

    #online #hdr_logo {
        width: calc(100% - 130px);
    }

    #online .page_title_area .page_title {
        padding: 60px 0 0 0;
    }

    #online .page_title_area .page_title .sb {
        top: -25px;
        left: calc(50% - 150px);
    }

    #online .page_title_area .page_title .en {
        padding-left: 0;
        font-size: 2.8em;
    }

    #online .page_title_area .page_title .ja {
        padding-left: 0;
        font-size: 1.125em;
    }
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			340px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width: 340px) {
    /*==================================================
 NEWS ARCHIVE 340
====================================================*/
    .sidebar_area .facebook .title,
    .sidebar_area .instagram .title {
        font-size: 15px;
    }

    .sidebar_area .facebook a, .sidebar_area .instagram a {
        padding: 15px 20px 62px;
    }

    .sidebar_area .facebook .title:after,
    .sidebar_area .instagram .title:after {
        bottom: -40px;
        font-size: 18px;
    }

    .sidebar_area .instagram .title:after {
        bottom: -3px;
        left: -20px;
    }

    /*==================================================
 CONTACT 340
====================================================*/
    .contact_wrap .main_content .title {
        font-size: 18px;
    }
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			IE対策

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@-ms-viewport {
    width: device-width;
    initial-scale: 1;
}

@media all and (-ms-high-contrast: none) {
    body {
        overflow-x: hidden;
    }

    select::-ms-expand {
        display: none;
    }

    .branch_office .company_name {
        padding: 15px 10px 5px;
    }

    .company_sudo {
        margin: 20px auto 70px;
    }

    .wp-pagenavi .previouspostslink {
        padding: 23px 35px 17px 63px;
    }

    .wp-pagenavi .nextpostslink {
        padding: 23px 63px 17px 35px;
    }
}

@media all and (-ms-high-contrast: none) and (max-width: 640px) {
    .concept_content .concept_content_box .title {
        padding: 8px 0 0;
    }
}

