@charset "UTF-8";

/* -----------------------------------------------
Table of Contents (common css) [Thought of SMACSS + original]
--------------------------------------------------
0. Foundation
	 0-1. Reset (normalize.css + original)
	 0-2. Base
	 0-3. Config
1. Layout
	 1-1. #l_document
	 1-2. #l_header
	 1-3. #l_container
				1-3-1. #l_main
				1-3-2. #l_sub
	 1-4. #l_footer
	 1-5. #l_nav-global
2. Object
	 2-1. Component a.k.a Module [Thought of BEM + original]
				2-1-1.  Wrap     [wrp_***]
				2-1-2.  Box      [box_***]
				2-1-3.  Table    [tbl_***]
				2-1-4.  Headings [hdg_lv*]
				2-1-5.  Nav      [nav_***]
				2-1-6.  List     [lst_***]
				2-1-7.  Button   [btn_***]
				2-1-8.  Anchor   [acr_***]
				2-1-9.  Text     [txt_***]
				2-1-10. Icon     [icn_***]
				2-1-11. Label    [lbl_***]
				2-1-12. Form     [frm_***]
				2-1-13. Error    [err_***]
				2-1-14. UI
	 2-2. Utility
				2-2-1. clearfix
				2-2-2. margin,padding [mb10,pt20]
				2-2-3. Object-Oriented CSS
				2-2-4. Grid System [grid_***]
				2-2-5. WebFont [FontAwesome] http://fortawesome.github.io/Font-Awesome/icons/
	 2-3. State [is_***]
	 2-4. OverLayerConfig [z-index]
	 2-5. Project


	 -------------------------------------------------- */

/* -----------------------------------------------
 [0. Foundation]
 -------------------------------------------------- */

/* 0-1. Reset
-------------------------------------------------- */

html {
    font-family: "Noto Sans JP", sans-serif;
}

body {
    margin: 0;
    padding: 0;
    -webkit-text-size-adjust: 100%;
}

a {
    background: transparent;
}

a:focus {
    outline: thin dotted;
}

a:active,
a:hover {
    outline: 0;
}

html,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
code,
del,
em,
img,
strong,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
    margin: 0;
    padding: 0;
    vertical-align: baseline;
}

article,
aside,
footer,
header,
small,
nav,
section,
figure,
figcaption,
main {
    margin: 0;
    padding: 0;
    display: block;
    vertical-align: baseline;
    list-style: none;
    background-color: transparent;
    outline: none;
}

audio,
canvas,
video {
    display: inline-block;
}

ul,
ol {
    list-style-type: none;
}

table {
    border: none;
    border-collapse: collapse;
    border_spacing: 0;
}

img {
    line-height: 1;
    vertical-align: bottom;
    outline: none;
    border: none;
}

a img,
map {
    border: none;
    outline: none;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

hr {
    box-sizing: content-box;
    height: 0;
}

dt,
dd,
li,
th,
td,
input,
textarea {
    text-align: left;
    vertical-align: top;
}

button {
    border: none;
}

input,
textarea,
button {
    margin: 0;
    padding: 0;
}

input {
    border: 1px solid #dad7d3;
    padding: 2px 5px;
}

textarea {
    border: 1px solid #dad7d3;
    resize: none;
}

button,
label {
    background-color: transparent;
    cursor: pointer;
}

button,
select {
    text-transform: none;
}

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

button[disabled],
input[disabled] {
    cursor: default;
}

input[type="checkbox"],
input[type="radio"] {
    box-sizing: content-box;
    padding: 0;
    vertical-align: middle;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    padding: 0;
    border: 0;
}

textarea {
    overflow: auto;
    vertical-align: top;
}

small {
    font-size: 0.8em;
    display: inline;
}

:focus {
    outline: none;
}

@media screen and (min-width: 768px) {
    a[href^="tel:"] {
        pointer-events: none;
    }
}

/* 0-2. Base
-------------------------------------------------- */

html {
    overflow-y: scroll;
    font-size: 100%;
}

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

table {
    width: 100%;
}

input,
textarea,
button,
select {
    font-family: "Noto Sans JP", "游ゴシック", "YuGothic",
        "ヒラギノ角ゴ ProN W3", "HiraKakuProN-W3", "ヒラギノ角ゴ Pro W3",
        "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック",
        "helvetica", "arial", sans-serif;
    font-size: 100%;
}

html[lang="en"] input,
html[lang="en"] textarea,
html[lang="en"] button,
html[lang="en"] select {
    font-family: Arial, Helvetica, sans-serif;
}

strong,
em {
    font-weight: bold;
}

h5 em,
h4 em,
h3 em,
h2 em,
h1 em {
    color: #a4002c;
    font-weight: bold;
    font-style: normal;
}

p em {
    color: #a4002c;
    font-weight: bold;
    font-style: normal;
}

sup {
    vertical-align: super;
    font-size: 50%;
}

sub {
    vertical-align: baseline;
    font-size: 50%;
}

/* 0-3. Config
-------------------------------------------------- */

body {
    font-size: 15px;
    color: #333;
    background-color: #fff;
}

html,
body {
    font-family: "Noto Sans JP", "游ゴシック", "YuGothic",
        "ヒラギノ角ゴ ProN W3", "HiraKakuProN-W3", "ヒラギノ角ゴ Pro W3",
        "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック",
        "helvetica", "arial", sans-serif;
}

a {
    color: #333;
    /* ベースのリンク文字の色を指定 */
    text-decoration: none;
    /* ベースのリンク文字の下線の有無を指定 */
}

a:visited {
    color: #333;
}

a:hover,
a:active {
    color: #a4002c;
    text-decoration: none;
    /* ベースのリンク文字の下線の有無を指定 */
}

a:focus {
    outline: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    line-height: 1.4;
    /* ベースの行間を指定 */
    line-height: 1.76;
}

p {
    line-height: 1.571428;
    /* ベースの行間を指定 */
    line-height: 1.76;
    /* ベースの行間を指定 */
}

dt,
dd,
li,
th,
td,
input,
textarea,
button {
    line-height: 1.5;
    /* ベースの行間を指定 */
}

hr {
    border: 0;
    margin: 0;
    border-bottom: 1px solid #ddd;
}

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

/* -----------------------------------------------
 [1. Layout]
 -------------------------------------------------- */

/* 1-1. #l_document
-------------------------------------------------- */

#l_document.is_fixed {
    padding-top: 160px;
}

@media (max-width: 767px) {
    #l_document,
    #l_document.is_fixed {
        padding-top: 50px;
    }

    .page_property #l_document {
        padding-top: 50px;
    }
}

/* 1-2. #l_header
-------------------------------------------------- */

.l_header {
    font-size: 14px;
    background: #fff;
    border-bottom: 1px solid #ddd;
    position: fixed;
    width: 100%;
    padding: 10px 0 0 0;
    z-index: 1000;
    /*
	top: -100%;
	transition: top 0.4s;
	padding-top: 40px;
	*/
}

.l_header__inner {
    position: relative;
    z-index: 100;
}

@media (min-width: 768px) {
    .l_header__content01 {
        float: left;
        width: 192px;
        padding: 0 0 0 18px;
    }
}

.l_header__sns {
    float: left;
    width: 30%;
}

.l_header__topnavi {
    float: left;
    width: 30%;
    margin-top: 4px;
    text-align: right;
}

.l_header__topnavi li {
    display: inline-block;
}

.l_header__topnavi li .fa:before {
    color: #666;
}

.l_header__topnavi li a:hover .fa:before {
    color: #a4002c;
}

.l_header__btn {
    display: none;
}

/*-----------------*/

.l_header__top {
    overflow: hidden;
    padding-bottom: 10px;
}

.l_header__top ul {
    display: inline-block;
    float: right;
}

.l_header__top ul li {
    display: inline-block;
    vertical-align: middle;
    margin-left: 10px;
}

.l_header__top ul li:last-child {
    margin-left: 12px;
}

.l_header__top ul li .fa:before {
    color: #333;
}

.l_header__items {
    display: inline-block;
    background: #525559;
    color: #fff;
    border-radius: 5px;
    padding: 0 8px;
    min-width: 30px;
    display: none;
}

.bookmark_info {
    background: #2d3339;
    position: fixed;
    left: 0;
    right: 0;
    top: -100px;
    width: 100%;
    z-index: 9999;
    color: #fff;
    text-align: left;
    padding: 20px;
    visibility: hidden;
    opacity: 0;
    transition: all 0.6s;
}

.bookmark_info.is_show {
    top: 0;
    opacity: 1;
    visibility: visible;
}

.bookmark_info .fa:before {
    color: #fff;
}

/*
#l_container.l_container_bookmark{
	padding-top: 90px;
}
*/

#js_favorite_content {
    display: none;
}

.box_3dex_outline {
    margin-top: 30px;
}

@media screen and (max-width: 767px) {
    .l_header__top {
        display: none;
    }

    .l_header_bookmark .bookmark {
        text-indent: 0;
        font-size: 12px;
        text-align: center;
    }

    .l_header_bookmark #nav_local {
    }

    .l_header_bookmark .bookmark__counts {
        display: block;
        font-size: 14px;
        font-weight: bold;
    }

    .l_header_bookmark .bookmark img {
        margin-top: 4px;
        display: block;
        text-align: center;
        padding: 0 0 0 4px;
    }

    #l_container.l_container_bookmark {
        padding-top: 0;
    }

    .bookmark_info {
        padding: 15px;
    }
}

/* -------------------------------------------------- */

.l_header__sns li {
    display: inline-block;
    margin-right: 3px;
}

.media_sns .fa {
    background: #a4002c;
    color: #fff;
    text-align: center;
    width: 24px;
    height: 24px;
    display: table-cell;
    vertical-align: middle;
    border-radius: 50%;
    line-height: 0;
}

.media_sns .fa:before {
    background: #a4002c;
    color: #fff;
    margin-right: 0;
    font-size: 14px;
}

/* -------------------------------------------------- */

@media screen and (max-width: 767px) {
    .l_header {
        top: 0;
        width: 100%;
        z-index: 999;
        padding-top: 0;
        border-bottom: 0;
    }

    .l_header .l_header__inner {
        padding: 0;
    }

    .l_header__sitelogo img {
        width: auto;
        height: 14px;
    }

    .l_header__sitelogo {
        width: auto;
        display: block;
        line-height: 0;
        margin: 0 10px 17px;
        padding-top: 17px;
    }

    .l_header__sns,
    .l_header__topnavi {
        display: none;
    }

    .l_header__nav .btn_contact {
        text-align: center;
        padding: 10px;
    }

    .l_header__nav .btn_contact .btn {
        display: inline-block;
        text-align: center;
        padding: 13px 15px;
    }

    .l_header__content01 {
        margin: 0;
        height: 49px;
        border-bottom: 1px solid #ddd;
    }

    .l_header_simple,
    .l_header_simple.is_fixed {
        padding: 0;
        border-bottom: 1px solid #ddd;
    }
}

@media (min-width: 768px), print {
    .l_header.is_fixed {
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 1000;
        padding-top: 0;
    }

    .l_header.is_fixed .l_header__inner {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        padding: 0 20px;
    }

    .l_header.is_fixed .l_header__sns,
    .l_header.is_fixed .l_header__topnavi {
        display: none;
    }

    .l_header.is_fixed .l_header__content01 {
        padding: 0;
        margin: 22px 0;
        float: left;
        width: 28%;
    }

    .l_header.is_fixed .l_header__sitelogo {
        width: auto;
    }

    .l_header.is_fixed .l_header__sitelogo img {
        height: 24px;
        width: auto;
    }

    .l_header.is_fixed #nav_global {
        float: right;
        width: 71%;
        margin-bottom: 0;
    }

    .l_header.is_fixed #nav_global ul {
        table-layout: initial;
        float: right;
        width: auto;
    }

    .isSafari .l_header.is_fixed #nav_global ul {
        width: 100%;
    }

    .l_header.is_fixed #nav_global li a {
        font-size: 14px;
        padding: 0 15px;
    }

    .l_header.is_fixed #nav_global .nav_global__find a {
        padding: 8px 15px;
    }

    .l_header.is_fixed #nav_global ul > li:first-child:after,
    .l_header.is_fixed #nav_global ul > li + li:after {
        border-left: 1px solid #ddd;
        position: absolute;
        height: 20px;
        content: "";
        top: 50%;
        margin-top: -10px;
        left: 0;
    }
}

.l_header_simple,
.l_header_simple.is_fixed {
    border-bottom: 1px solid #ddd;
    padding: 40px 0;
}

.l_header_simple .l_header__sitelogo {
    text-align: left;
    float: none;
    width: 100%;
    margin: 0;
}

.page-landing .l_header_simple .l_header__sitelogo {
    text-align: center;
}

@media screen and (max-width: 767px) {
    .l_header_simple,
    .l_header_simple.is_fixed {
        border-bottom: 1px solid #ddd;
        padding: 20px 0;
        position: absolute;
    }

    .l_header_simple .l_header__sitelogo {
        padding-top: 0;
    }

    .l_header_simple .l_header__inner {
        padding: 0 10px;
    }
}

/* -------------------------------------------------- */

.l_header__btn {
    position: absolute;
    right: 0;
    top: 0;
    display: table;
    table-layout: fixed;
}

.l_header__btn ul {
    display: table;
    table-layout: fixed;
}

.l_header__btn ul li {
    display: table-cell;
    vertical-align: middle;
    position: relative;
    height: 50px;
    width: 50px;
    text-indent: -9999px;
    overflow: hidden;
}

.l_header__btn li.menu {
    background: #a4002c url("/resource/img/cmn_icn_menu01.png") no-repeat center;
    background-size: auto 30px;
}

.l_header__btn li.search {
    background: #7e001a url("/resource/img/cmn_icn_seach01.png") no-repeat
        center;
    background-size: auto 30px;
}

.l_header__btn li a:hover,
.l_header__btn li a:active {
    text-decoration: none;
}

.l_header__btn li.is_active {
    background: #a4002c url("/resource/img/cmn_icn_close01.png") no-repeat
        center;
    background-size: auto 30px;
}

.l_header__btn li.search.is_active {
    background-color: #93c6e8;
}

.l_header__btn ul li a {
    font-size: 10px;
    height: 50px;
    position: relative;
    text-align: center;
    vertical-align: middle;
    width: 50px;
    display: table-cell;
}

.l_header__btn ul li .fa {
    font-size: 16px;
}

.icn_search.is_active .fa-search:before {
    content: "\f00d";
}

.l_header__btn ul li a img,
.l_header__btn ul li a span {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    z-index: 1;
}

.l_header__content02 .box_search {
    padding: 10px;
}

/*-------Header Bookmark----------*/

.l_header_bookmark .l_header__btn li.menu {
    background: #fff url(/resource/img/cmn_icn_menu02.png) no-repeat center;
    background-size: auto 50px;
    height: 49px;
    border-bottom: 1px solid #ddd;
    border-left: 1px solid #ddd;
}

.l_header_bookmark .l_header__btn ul li a {
    height: 49px;
}

.l_header_bookmark .l_header__btn li.menu.is_active {
    background: #a4002c url(/resource/img/cmn_icn_close01.png) no-repeat center;
    background-size: auto 30px;
    border-bottom: 1px solid #a4002c;
}

.l_header_bookmark .l_header__btn li.bookmark {
    border-left: 1px solid #ddd;
}

.l_header_bookmark .l_header__btn li.search {
    background: #7e001a url("/resource/img/cmn_icn_seach02.png") no-repeat
        center;
    background-size: auto 50px;
}

.l_header_bookmark .l_header__btn li.search.is_active {
    background: #a4002c url(/resource/img/cmn_icn_close01.png) no-repeat center;
    background-size: auto 30px;
}

@media (min-width: 768px), print {
    .l_header__btn {
        display: none;
    }

    .l_header__content02 .box_search {
        padding: 0 0 0 20px;
    }

    .l_header_bookmark .l_header__content01 {
        height: 50px;
        margin-top: -10px;
    }
}

.sub_category_navi {
    border: 1px #ccc;
    border-top-style: solid;
    margin: 100px 0 0;
    clear: both;
    padding: 0 15px;
}

.sub_category_navi > .inner {
    margin: auto;
    width: auto;
    max-width: 1170px;
}

.sub_category_navi.category_wood > .inner {
    max-width: 770px;
}

.sub_category_navi .lst_media {
    margin: 40px -15px 10px;
}

.sub_category_navi .lst_media li {
    margin: 0;
}

.sub_category_navi .box_menu__content {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    padding: 12% 5px 0;
    background-color: transparent;
    text-align: center;
    box-sizing: border-box;
}

.category_equipment .box_menu__content {
    padding: 18% 5px 0;
}

.sub_category_navi .box_menu__title {
    font-size: 20px !important;
}

.sub_category_navi.category_equipment .box_menu__title {
    font-size: 16px !important;
    line-height: 1.4em;
}

.category_standard .box_menu__content {
    padding: 12% 5px 0;
}

.category_standard .box_menu__content .icon-vr {
    position: absolute;
    display: block;
    width: 60px;
    height: auto;
    left: 0;
    right: 0;
    top: 20px;
    margin: auto;
}

@media screen and (max-width: 767px) {
    .sub_category_navi {
        border: 1px #ccc;
        border-top-style: solid;
        margin: 50px 0 0;
        clear: both;
    }

    .sub_category_navi > .inner {
        margin: auto;
        width: auto;
        max-width: none;
    }

    .sub_category_navi.category_wood > .inner {
        max-width: none;
    }

    .sub_category_navi .lst_media {
        margin: 20px -10px 10px;
    }

    .sub_category_navi .lst_media li {
        margin: 0 0 10px;
    }

    .sub_category_navi .box_menu__content {
        position: absolute;
        top: 0;
        bottom: 0;
        width: 100%;
        padding: 10% 2px 0;
        background-color: transparent;
        text-align: center;
        box-sizing: border-box;
    }

    .sub_category_navi .box_menu__title {
        font-size: 13px !important;
        line-height: 1.2em;
        margin: 0 0 5px !important;
    }

    .sub_category_navi.category_wood .box_menu__title {
        font-size: 11px !important;
        line-height: 1.2em;
    }

    .sub_category_navi .hdg_lv3 {
        margin: 30px 0 5px;
    }

    .category_quality .box_menu__content,
    .category_wood .box_menu__content {
        padding: 15% 2px 0;
    }

    .category_standard .box_menu__content {
        padding: 15% 2px 0;
    }

    .sub_category_navi.category_standard .box_menu__title {
        font-size: 12px !important;
        line-height: 1.2em;
        margin: 0 0 5px !important;
    }

    .category_standard .box_menu__content .icon-vr {
        position: absolute;
        display: block;
        width: 40px;
        height: auto;
        left: 0;
        right: 0;
        top: 5px;
        margin: auto;
    }
}

/* 1-3. #l_container
-------------------------------------------------- */

#l_container,
#l_container_02 {
    /*max-width: 1600px;*/
    margin: 0 auto;
}

@media (min-width: 768px), print {
    #l_container {
        padding-top: 90px;
    }

    #l_container_02 {
        padding-top: 129px;
        overflow-x: hidden;
    }

    .localnavi + #l_container {
        padding-top: 129px;
    }
}

@media screen and (min-width: 768px) and (max-width: 1120px) {
    #l_container {
        padding-top: 128px;
    }

    #l_container_02 {
        padding-top: 168px;
    }

    .localnavi + #l_container {
        padding-top: 170px;
    }
}

@media (min-width: 1602px) {
    #l_container,
    #l_container_02 {
        /*
        border-left: 1px solid #ddd;
		border-right: 1px solid #ddd;
        */
    }
}

@media screen and (max-width: 767px) {
    #l_container {
        padding-top: 0px;
    }

    #l_container_02 {
        padding-top: 40px;
    }
}

/* 1-3-1. #l_main
-------------------------------------------------- */

#l_container.has_sub #l_main {
    width: 80%;
    float: left;
    padding: 0 30px 0 0;
    box-sizing: border-box;
}

#l_container.has_sub > .wrp_container {
    display: block;
    overflow: hidden;
}

@media (max-width: 767px) {
    #l_container.has_sub #l_main {
        padding: 0;
        float: none;
        width: 100%;
    }
}

/* 1-3-2. #l_sub
-------------------------------------------------- */

#l_sub {
    float: left;
    width: 20%;
    padding: 0;
    box-sizing: border-box;
}

@media (max-width: 767px) {
    #l_container.has_sub #l_main {
        display: block;
        max-width: none;
    }

    #l_container.has_sub > .wrp_container {
        display: block;
    }

    #l_sub {
        display: block;
        width: 100%;
        padding: 0;
        float: none;
    }
}

/* 1-4. #l_footer
-------------------------------------------------- */

#l_footer {
    position: relative;
    margin-top: 40px;
}

.l_footer__content02 {
    background: #f5f5f2;
    padding: 30px 0;
}

.l_footer__content03 {
    background: #2d3339;
    color: #fff;
    text-align: center;
    padding: 25px 0 30px;
}

.l_footer__slider {
    display: none;
}

.l_footer__direction {
    text-transform: uppercase;
    font-size: 18px;
    font-weight: bold;
    border-top: 1px solid #ddd;
    padding: 20px 0;
}

.l_footer__direction a .fa {
    background: #2d3339;
    width: 16px;
    height: 16px;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    line-height: 0;
    position: relative;
    top: -2px;
}

.l_footer__direction a .fa:before {
    color: #fff;
    margin: 0;
    font-size: 14px;
}

.l_footer__direction .arc_back {
    float: left;
}

.l_footer__direction .arc_pagetop {
    float: right;
}

.l_footer_simple .l_footer__content03 {
    padding: 25px 0;
}

@media screen and (max-width: 767px) {
    .l_footer__content02 {
        padding: 20px 0;
    }

    .l_footer__content03 {
        padding: 0 0 15px;
    }

    .l_footer_simple .l_footer__content03 {
        padding: 15px 0;
    }

    .l_footer__banner {
        display: none;
    }

    .l_footer__direction {
        text-transform: none;
        padding: 10px 0;
    }
}

/* 1-5. #l_nav-global
-------------------------------------------------- */

#nav_bottom {
    background: #f5f5f2;
    display: none;
}

@media screen and (max-width: 767px) {
    #nav_bottom {
        display: block;
        padding-top: 10px;
    }

    .nav_bottom__inner li {
        margin-bottom: 10px;
    }

    .nav_bottom__inner li a {
        background: #fff;
        padding: 10px 5px;
        display: block;
        box-sizing: border-box;
        font-size: 12px;
    }
}

/* -----------------------------------------------
 [2. Object]
 -------------------------------------------------- */

/* 2-1. Component a.k.a Module
-------------------------------------------------- */

/*2-1-1.  Wrap     [wrp_***]*/

.wrp_container {
    padding: 0 10px;
    margin: 0 auto;
}

.wrp_container_new {
    padding: 0 10px;
    margin: 0 auto;
}

.wrp_heading {
    padding: 30px 0;
}

.wrp_heading_image .hdg_lv1,
.wrp_heading_image .txt_head,
.wrp_heading_image .txt_lead,
.wrp_heading_image .nav_breadcrumb,
.wrp_heading_image .nav_breadcrumb a {
    color: #fff;
}
.nav_breadcrumb li span {
    letter-spacing: 0.04em;
}

.wrp_heading_high_quality {
    background: url(/resource/img/technology/technology_high_quality_bg_head.jpg)
        no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_production {
    background: url(/resource/img/technology/technology_production_bg_head.jpg)
        no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_thermal_insulation {
    background: url(/resource/img/technology/technology_thermal_insulation_bg_head.jpg)
        no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_quality {
    background: url(/resource/img/value/quality/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_eco {
    background: url(/resource/img/value/quality/eco/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_endurance {
    background: url(/resource/img/technology/technology_endurance_bg_head.jpg)
        no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_earthquake_resistant {
    background: url(/resource/img/value/quality/earthquake-resistant/main.jpg)
        no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_living_environment {
    background: url(/resource/img/value/environment_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_index {
    background: url(/resource/img/value/value_bg_main01.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_wood {
    background: url(/resource/img/value/wood/wood_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_wood_reason {
    background: url(/resource/img/value/wood/reason/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_wood_town_design {
    background: url(/resource/img/value/wood/town-design/main.jpg) no-repeat
        center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_reduction {
    background: url(/resource/img/value/reduction_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_products {
    background: url(/resource/img/products/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_feature {
    background: url(/resource/img/products/feature/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_standard {
    background: url(/resource/img/products/standard/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_standard_merit {
    background: url(/resource/img/construct/pct_main_select.jpg) no-repeat
        center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_standard_plan {
    background: url(/resource/img/products/standard/plan-example/main.jpg)
        no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_standard_works {
    background: url(/resource/img/products/standard/works/main.jpg) no-repeat
        center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_standard_modelhouse {
    background: url(/resource/img/products/standard/modelhouse/main.jpg)
        no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_standard_financial {
    background: url(/resource/img/products/standard/financial-plan/main.jpg)
        no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_equipment {
    background: url(/resource/img/equipment_bg_main01.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_service {
    background: url(/resource/img/service_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_schedule {
    background: url(/resource/img/service_schedule_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_maintenance {
    background: url(/resource/img/service_maintenance_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_guarantee {
    background: url(/resource/img/service_guarantee_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_plan {
    background: url(/resource/img/service_plan_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_care {
    background: url(/resource/img/service_care_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_calendar {
    background: url(/resource/img/service_calendar_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_cwf {
    background: url(/resource/img/service/club-woodfriends/pct_main.jpg)
        no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_design {
    background: url(/resource/img/value/design_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_design_material {
    background: url(/resource/img/value/design_material_main.jpg) no-repeat
        center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_design_forest {
    background: url(/resource/img/value/design_forest_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_design_urban {
    background: url(/resource/img/value/design_urban_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_buy {
    background: url(/resource/img/buy/buy_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_land {
    background: url(/resource/img/land/bg_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_loan {
    background: url(/resource/img/loan-simulator/bg_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_online {
    background: url(/resource/img/online/bg_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_greenpoint {
    background: url(/resource/img/subsidy/greenpoint/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_propose {
    background: url(/resource/img/value/propose/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_value {
    background: url(/resource/img/value/value_bg_main01.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 460px;
}

.wrp_heading_house {
    background: url(/resource/img/value/value_bg_main00.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 460px;
}

.wrp_heading_style-n {
    background: url(/resource/img/lineup/stylen/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 460px;
}

.wrp_heading_style-n_zen {
    background: url(/resource/img/lineup/stylenzeh/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 460px;
}

.wrp_heading_style-u {
    background: url(/resource/img/lineup/styleu/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 460px;
}

.wrp_heading_style-p {
    background: url(/resource/img/lineup/stylep/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 460px;
}

.wrp_heading_style-nihon {
    background: url(/resource/img/lineup/nihon/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 460px;
}

.wrp_heading_style-f {
    background: url(/resource/img/lineup/stylef/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 460px;
}

.wrp_heading_style-pinokio {
    background: url(/resource/img/lineup/pinokio/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 460px;
}

.wrp_heading_lineup {
    background: url(/resource/img/lineup/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_reform {
    background: url(/resource/img/service/reform/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_estimate {
    background: none;
    height: auto;
    padding: 20px 0 0;
}

.icon_style {
    width: 100px;
    height: 20px;
    float: right;
    border-radius: 20px;
    margin: 10px;
    font-size: 7pt;
    color: #fff !important;
    font-weight: normal;
    display: flex;
    align-items: center;
    justify-content: center;
}

.icon_style_property {
    width: 120px;
    height: 24px;
    float: right;
    border-radius: 20px;
    margin: 10px;
    font-size: 8pt;
    color: #fff !important;
    font-weight: normal;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* .icon_style:hover{
  color: #fff;
  cursor: pointer;
  opacity: 0.8;
} */

.icon_style_short {
    width: 100px;
    height: 20px;
    float: right;
    border-radius: 20px;
    margin: 10px;
    font-size: 9pt;
    color: #fff !important;
    font-weight: normal;
    display: flex;
    align-items: center;
    justify-content: center;
}

.icon_style_short_property {
    width: 120px;
    height: 24px;
    float: right;
    border-radius: 20px;
    margin: 10px;
    font-size: 10pt;
    color: #fff !important;
    font-weight: normal;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* .icon_style_short:hover{
  cursor: pointer;
  color: #fff;
  opacity: 0.8;
} */
.icon_style_type {
    font-size: 9pt;
    margin-left: 7px;
}

.icon_style_type_property {
    font-size: 10pt;
    margin-left: 7px;
}

#ic_style .icon_style_short_property:hover {
    opacity: 0.8;
}

#ic_style .icon_style_property:hover {
    opacity: 0.8;
}

.wrp_heading_design .nav_breadcrumb,
.wrp_heading_design .nav_breadcrumb a {
    /*color:#333333;*/
}

.wrp_heading_design_index .nav_breadcrumb {
    /*color:#333333;*/
    margin: 0 0 10px;
}

.wrp_heading_design_index .nav_breadcrumb a {
    /*color:#333333;*/
}

.wrp_heading_design_index .hdg_lv1_2 {
    margin: 20px auto 19px;
}

.wrp_heading_design .txt_head {
    font-size: 40px;
    font-weight: 300;
}

.wrp_heading_design h1 span,
.wrp_heading_design p {
    /*color:#333333 !important;*/
}

.wrp_heading_design h1 span {
    /*border-color:#333333;*/
}

.wrp_heading_design_material h1 span,
.wrp_heading_design_material p {
    color: #333333 !important;
}

.wrp_heading_design_material h1 span {
    border-color: #333333;
}

/*
.wrp_heading_plan .txt_head,
.wrp_heading_guarantee .txt_head,
.wrp_heading_maintenance .txt_head,
.wrp_heading_living_environment .txt_head,
.wrp_heading_reduction .txt_head{
	color: #333333
}
.wrp_heading_plan .hdg_lv1_2 span,
.wrp_heading_guarantee .hdg_lv1_2 span,
.wrp_heading_maintenance .hdg_lv1_2 span,
.wrp_heading_living_environment .hdg_lv1_2 span,
.wrp_heading_reduction .hdg_lv1_2 span{
	border: 1px solid #333333;
	color: #333333
}
*/

.wrp_tabs {
    margin: 0 auto;
    max-width: 1170px;
}

.wrp_block {
    margin-bottom: 15px;
}

.wrp_tab__content {
    display: none;
}

@media (min-width: 768px), print {
    .wrp_container {
        max-width: 1170px;
        padding: 0 15px;
    }

    .wrp_container_new {
        max-width: 1170px;
        padding: 0 15px;
    }

    .wrp_container_sm {
        max-width: 970px;
        margin: 0 auto;
    }

    .wrp_container_full {
        max-width: none;
        width: auto;
        margin: 0 auto;
    }

    .wrp_heading {
        padding: 20px 0 50px;
        position: relative;
    }

    .wrp_heading_care .hdg_lv1_2 {
        margin-top: 80px;
    }

    .wrp_heading_estimate {
        padding: 20px 0 0;
    }
}

@media only screen and (min-width: 767px) and (max-width: 1060px) {
    .wrp_heading_online {
        background: url(/resource/img/online/bg_main_tb.jpg) no-repeat center;
        background-size: cover;
        box-sizing: border-box;
        height: 400px;
    }
}

@media only screen and (max-width: 767px) {
    .wrp_heading_index,
    .wrp_heading_schedule,
    .wrp_heading_care,
    .wrp_heading_calendar,
    .wrp_heading_quality,
    .wrp_heading_eco,
    .wrp_heading_high_quality,
    .wrp_heading_production,
    .wrp_heading_thermal_insulation,
    .wrp_heading_endurance,
    .wrp_heading_earthquake_resistant,
    .wrp_heading_living_environment,
    .wrp_heading_wood,
    .wrp_heading_wood_reason,
    .wrp_heading_wood_town_design,
    .wrp_heading_reduction,
    .wrp_heading_buy,
    .wrp_heading_products,
    .wrp_heading_feature,
    .wrp_heading_standard,
    .wrp_heading_standard_merit,
    .wrp_heading_standard_plan,
    .wrp_heading_standard_works,
    .wrp_heading_standard_modelhouse,
    .wrp_heading_standard_financial,
    .wrp_heading_equipment,
    .wrp_heading_service,
    .wrp_heading_maintenance,
    .wrp_heading_cwf,
    .wrp_heading_guarantee,
    .wrp_heading_plan,
    .wrp_heading_land,
    .wrp_heading_online,
    .wrp_heading_greenpoint,
    .wrp_heading_propose,
    .wrp_heading_value,
    .wrp_heading_style-n,
    .wrp_heading_style-n_zen,
    .wrp_heading_style-u,
    .wrp_heading_style-p,
    .wrp_heading_style-nihon,
    .wrp_heading_style-pinokio,
    .wrp_heading_style-f,
    .wrp_heading_lineup,
    .wrp_heading_reform,
    .wrp_heading_loan,
    .wrp_heading_house {
        height: 225px;
    }

    .wrp_heading_estimate {
        padding: 0;
        margin: 0 0 58px;
    }

    .wrp_heading_design,
    .wrp_heading_design_material,
    .wrp_heading_design_forest,
    .wrp_heading_design_urban {
        height: 180px;
    }

    .wrp_heading_design .hdg_lv1_2 {
        margin: 10px auto 14px;
    }

    .wrp_heading_design .txt_head {
        font-size: 19px;
    }

    .wrp_heading_care .hdg_lv1_2 {
        margin-top: 40px;
    }

    .wrp_heading_loan {
        background: url(/resource/img/loan-simulator/bg_main_sp.jpg) no-repeat
            center;
        background-size: cover;
        box-sizing: border-box;
    }

    .wrp_heading_online {
        background: url(/resource/img/online/bg_main_sp.jpg) no-repeat center;
        background-size: cover;
        box-sizing: border-box;
    }

    .wrp_heading_propose {
        background-position: center right;
    }

    .style_condition:nth-child(odd) {
        order: 1;
    }

    .style_condition:nth-child(even) {
        order: 2;
    }

    /* .icon_style{
    width: 110px;
    height: 20px;
    float: right;
    border-radius: 20px;
    margin: 3px;
    font-size: 7pt;
    color: #fff !important;
    font-weight: normal;
    display: flex;
    align-items: center;
    justify-content: center;
  } */

    /* .icon_style:hover{
    color: #fff;
    cursor: pointer;
    opacity: 0.8;
  } */

    /* .icon_style_short{
    width: 110px;
    height: 20px;
    float: right;
    border-radius: 20px;
    margin: 3px;
    font-size: 9pt;
    color: #fff !important;
    font-weight: normal;
    display: flex;
    align-items: center;
    justify-content: center;
  } */

    /* .icon_style_short:hover{
    cursor: pointer;
    color: #fff;
    opacity: 0.8;
  } */
    /* .icon_style_type{
    font-size:9pt;
    margin-left:7px
  } */

    .icon_style_short_property {
        width: 120px;
        height: 24px;
        float: right;
        border-radius: 20px;
        margin: 0px;
        margin-top: 20px;
        font-size: 10pt;
        color: #fff !important;
        font-weight: normal;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .icon_style_property {
        width: 100px;
        height: 20px;
        float: right;
        border-radius: 20px;
        margin: 0px;
        margin-top: 20px;
        font-size: 8pt;
        color: #fff !important;
        font-weight: normal;
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

.wrp_note_right {
    float: right;
    color: #666;
    font-size: 12px;
    margin: 0 0 10px;
}

.wrp_note_right span {
    font-size: 15px;
}

.wrp_table {
    margin-bottom: 30px;
}

.wrp_table::-webkit-scrollbar {
    -webkit-appearance: none;
}

.wrp_table::-webkit-scrollbar:vertical {
    width: 12px;
}

.wrp_table::-webkit-scrollbar:horizontal {
    height: 12px;
}

.wrp_table::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.5);
    border-radius: 10px;
    border: 2px solid #fff;
}

.wrp_table::-webkit-scrollbar-track {
    border-radius: 10px;
    background-color: #fff;
}

@media only screen and (max-width: 767px) {
    .wrp_table {
        width: 100%;
        overflow: auto;
    }

    .wrp_table table {
        width: 980px;
    }

    /* .icon_style{
    width: 120px;
    height: 25px;
    float: right;
    border-radius: 20px;
    margin: 5px;
    font-size: 10pt;
    color: #fff !important;
    font-weight: normal;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .icon_style:hover{
    color: #fff;
    cursor: pointer;
    opacity: 0.8;
  }

  .icon_style_short{
    width: 120px;
    height: 25px;
    float: right;
    border-radius: 20px;
    margin: 5px;
    font-size: 12pt;
    color: #fff !important;
    font-weight: normal;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .icon_style_short:hover{
    cursor: pointer;
    color: #fff;
    opacity: 0.8;
  }
  .icon_style_type{
    font-size:12pt;
    margin-left:7px
  } */
}

/*2-1-2.  Box      [box_***]*/

.box {
    border: 1px solid #ddd;
    margin-bottom: 20px;
}

.box .hdg_lv3:first-child {
    margin: 0 0 30px;
}

.box__title .fa-info-circle:before {
    color: #fff;
    font-size: 18px;
}

.box__inner {
    padding: 30px 20px;
    box-sizing: border-box;
}

.box__inner2 {
    padding: 10px 20px 30px 20px;
    box-sizing: border-box;
    color: #a4002c;
}

/* ----------------------------------------------- */

.box_slide {
    background: #f5f5f2;
    padding-top: 20px;
    margin-top: 40px;
    position: relative;
    overflow: hidden;
    width: 100%;
}

.box_slide__content {
    overflow: hidden;
}

.box_slide__content li {
    padding: 0 5px;
    float: left;
    box-sizing: border-box;
}

.box_slide .lst_media .lst_media__content .lst_media__title {
    text-align: left;
    font-size: 16px;
}

.box_slide .bx-wrapper {
    overflow: visible !important;
    position: relative;
    max-width: 100% !important;
}

.box_slide .bx-viewport {
    height: 100% !important;
}

.box_slide .bx-controls.bx-has-controls-direction {
    position: absolute;
    top: 15%;
    width: 100%;
}

.box_slide .bx-controls.bx-has-controls-direction .bx-prev {
    left: -25px;
    position: absolute;
    font-size: 30px;
}

.box_slide .bx-controls.bx-has-controls-direction .bx-next {
    right: -30px;
    position: absolute;
    font-size: 30px;
}

@media screen and (max-width: 767px) {
    .box_slide .lst_media .lst_media__content .lst_media__title {
        font-size: 16px;
        font-weight: bold;
        margin: 5px 0;
    }

    .box_slide .lst_media .lst_media__content .lst_media__title .fa:before {
        font-weight: bold;
    }

    .box_slide .bx-controls.bx-has-controls-direction .bx-prev,
    .box_slide .bx-controls.bx-has-controls-direction .bx-next {
        background: rgba(45, 51, 57, 0.7);
        padding: 10px;
    }

    .box_slide .bx-controls.bx-has-controls-direction .bx-prev {
        left: 0;
    }

    .box_slide .bx-controls.bx-has-controls-direction .bx-next {
        right: 0;
    }

    .box_slide .bx-controls.bx-has-controls-direction .bx-prev .fa:before,
    .box_slide .bx-controls.bx-has-controls-direction .bx-next .fa:before {
        color: #fff;
        margin: 0 0 5px;
    }

    .box_slide .bx-viewport {
        overflow: visible !important;
        width: 240px !important;
        margin: 0 auto;
    }

    .box_slide .bx-wrapper {
        text-align: center;
        margin: 0 auto;
        max-width: 100% !important;
    }

    .box_slide__content {
        margin: 0 auto;
    }

    .box_slide__content li {
        margin: 0 auto;
    }
}

/* ----------------------------------------------- */

.box_caution {
    border: 1px solid #a4002c;
}

.box_caution p {
    color: #a4002c;
}

.box_caution .box__inner {
    padding: 15px 19px;
}

.box_caution02 {
    border: 1px solid #a4002c;
}

.box_caution02 .box__title {
    padding: 15px;
    background: #a4002c;
    color: #fff;
    font-size: 18px;
}

@media screen and (max-width: 767px) {
    .box__inner {
        padding: 18px 10px;
    }

    .box__title {
        padding: 12px 10px;
        background: #a4002c;
    }

    .box .hdg_lv3:first-child {
        margin: 0 0 15px;
    }

    .box_caution .box__inner {
        padding: 12px 10px;
    }
}

/* ----------------------------------------------- */

.box_noscript {
    padding: 24px;
    background: #3a3a3a;
    box-sizing: border-box;
}

.box_noscript p {
    text-shadow: 0 0 1px #fff;
    color: #fff;
}

/* ----------------------------------------------- */

@media (min-width: 768px), print {
    .box_media {
        display: table;
    }

    .box_media li {
        margin-bottom: 15px;
    }

    .box_media__txt,
    .box_media__pic {
        display: table-cell;
        vertical-align: top;
    }

    .box_media__pic {
        padding-right: 10px;
        text-align: center;
    }

    .box_media__pic img {
        vertical-align: bottom;
    }
}

/* ----------------------------------------------- */

.box_contents01 {
    padding: 40px 0;
    border-bottom: 1px solid #ddd;
}

@media screen and (max-width: 767px) {
    .box_contents01 {
        padding: 20px 0;
    }
}

/* ----------------------------------------------- */

.box_tab {
    table-layout: fixed;
    display: table;
    width: 100%;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 0 55px;
}

.box_tab li {
    display: table-cell;
    text-align: center;
    background: #f5f5f5;
    border: 1px solid #ddd;
    border-bottom: 0;
    border-left: 0;
}

.box_tab li:first-child {
    border-left: 1px solid #ddd;
}

.box_tab li a {
    display: block;
    box-sizing: border-box;
    vertical-align: middle;
    font-size: 18px;
    font-weight: bold;
    padding: 15px 20px;
}

.wrp_tab__content {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    margin-top: -1px;
    position: relative;
    z-index: 1;
    padding: 40px 70px;
}

.box_tab a {
    color: #333;
}

.box_tab li:last-child a {
    margin-right: 0;
}

.box_tab a:hover {
    opacity: 1;
    text-decoration: none;
}

.box_tab li .is_active {
    background: #fff;
    z-index: 2;
    position: relative;
    color: #a4002c;
}

@media screen and (max-width: 767px) {
    .box_tab {
        padding: 0 10px;
        max-width: 100%;
    }

    .box_tab li a {
        font-size: 12px;
        padding: 15px 10px;
    }

    .box_tab li .is_active {
        padding: 15px 10px;
    }

    .accordion_wrap {
        border-bottom: 1px solid #ddd;
    }

    .accordion_title {
        font-size: 16px;
        font-weight: bold;
        border-top: 1px solid #ddd;
    }

    .accordion_title a {
        display: block;
        padding: 15px 20px;
    }

    .accordion_title .is_active {
        color: #a4002c;
    }

    .accordion_title .fa.icn_right {
        float: right;
    }

    .wrp_tab__content.accordion_content {
        padding: 20px 0;
    }

    .wrp_tab__content {
        padding: 20px 10px;
    }

    .accordion_wrap .wrp_tab__content {
        border-bottom: none;
    }
}

/* ----------------------------------------------- */

.box_info__ttl {
    font-size: 18px;
    font-weight: bold;
}

.box_info__txt {
    margin: 23px 0 20px;
}

.box_info .fa {
    background: #2d3339;
    width: 12px;
    height: 12px;
    display: inline-block;
    line-height: 0;
    vertical-align: middle;
    text-align: center;
    margin-right: 10px;
    padding: 1px;
    box-sizing: border-box;
}

.box_info .fa:before {
    color: #fff;
    margin: 0;
    font-size: 10px;
}

/* ----------------------------------------------- */

.box_secured {
    overflow: hidden;
    display: table;
    width: 100%;
    margin-bottom: 40px;
}

.box_secured__pic,
.box_secured__txt {
    display: table-cell;
    vertical-align: top;
}

.box_secured__txt {
    padding-left: 20px;
}

/* ----------------------------------------------- */

.box_pager {
    text-align: center;
    margin: 0 auto 40px;
    width: 100%;
    display: table;
}

.box_pager__list,
.box_pager__prev,
.box_pager__next {
    display: table-cell;
    vertical-align: middle;
}

.box_pager__list {
    font-size: 0;
}

.box_pager__list li {
    display: inline-block;
    position: relative;
}

.box_pager__list li:after {
    content: "";
    display: block;
    width: 1px;
    height: 15px;
    background: #cfcfcf;
    position: absolute;
    right: 0;
    top: 5px;
}

.box_pager__list li:last-child:after {
    display: none;
}

.box_pager__list li a {
    font-weight: bold;
    padding: 0 20px;
    font-size: 18px;
}

.box_pager__list li:last-child {
    border: none;
}

.box_pager__prev,
.box_pager__next {
    display: table-cell;
    vertical-align: middle;
}

.box_pager__prev {
    text-align: left;
}

.box_pager__next {
    text-align: right;
}

.box_pager__prev .btn,
.box_pager__next .btn {
    width: 200px;
    background-color: #2d3339;
    color: #fff;
    border-radius: 3px;
    font-size: 18px;
    padding: 15px 10px;
}

.box_pager__prev .fa:before,
.box_pager__next .fa:before {
    color: #fff;
    font-size: 18px;
}

.box_pager__next .fa:before {
    margin-right: 0;
    margin-left: 10px;
}

.box_pager__prev .fa:before {
    margin-right: 10px;
}

@media (min-width: 768px), print {
    .box_pager a {
        font-family: "BenchNine", sans-serif;
    }
}

@media screen and (max-width: 767px) {
    .box_pager {
        margin-bottom: 20px;
    }

    .box_pager .box_pager__list.visible_sp {
        display: table-cell !important;
    }

    .box_pager__list {
        margin: 8px auto 5px;
    }

    .box_pager__list li {
        display: none;
    }

    .box_pager__list li:after {
        display: none;
    }

    .box_pager__list li:first-child {
        display: inline-block;
    }

    .box_pager__list li a {
        font-size: 14px;
        font-weight: normal;
    }

    .box_pager__prev .visible_pc,
    .box_pager__next .visible_pc {
        display: none;
    }

    .box_pager__prev .btn,
    .box_pager__next .btn {
        font-size: 14px;
        width: 40px;
        height: 40px;
        min-width: initial;
        box-sizing: border-box;
        padding: 10px;
    }

    .box_pager__prev .fa:before,
    .box_pager__next .fa:before {
        margin: 0;
    }
}

/* ----------------------------------------------- */

.box_list h3 {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
    .box_list p {
        margin-bottom: 10px;
    }

    .box_list img {
        width: 100%;
    }
}

/* ----------------------------------------------- */

.box_news {
    display: table;
    width: 100%;
}

.box_news__detail,
.box_news__link {
    display: table-cell;
    padding: 15px 10px 10px;
    vertical-align: middle;
    vertical-align: top;
}

.box_news__link .fa:before {
    color: #333;
}

.box_news__link a:hover .fa:before {
    color: #a4002c;
}

.box_news__detail {
    width: 222px;
}

.box_news__detail .lbl {
    margin-left: 35px;
}

.box_news__link {
    padding-left: 15px;
}

@media screen and (max-width: 767px) {
    .box_news {
        display: block;
    }

    .box_news__detail,
    .box_news__link {
        display: block;
        padding: 10px;
    }

    .box_news__detail {
        width: auto;
        padding-bottom: 0;
        color: #666;
        font-size: 12px;
        padding-top: 15px;
    }

    .box_news__detail .lbl {
        margin: 0 0 1px 10px;
    }

    .box_news__link {
        padding: 5px 10px 15px 10px;
    }
}

/* ----------------------------------------------- */

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

/* ----------------------------------------------- */

.box_reasonnav {
    background: #2d3339;
    padding: 35px 0 40px;
    overflow: hidden;
}

.box_reasonnav .hdg_lv3 > span > em {
    font-size: 48px;
    position: relative;
    top: 10px;
    font-style: normal;
}

.box_reasonnav__content {
    position: relative;
}

.box_reasonnav__inner {
    position: relative;
}

.box_reasonnav .hdg_lv3 {
    color: #fff;
}

.box_reasonnav__link {
    text-align: center;
    margin: 40px auto 0;
    width: 100%;
    overflow: hidden;
}

.box_reasonnav__link li {
    border-left: 1px solid #606061;
    text-align: center;
    font-size: 18px;
    float: left;
}

.box_reasonnav__link li:first-child {
    border-left: 0;
}

.box_reasonnav__link li a {
    color: #fff;
    margin: 0 20px;
}

.box_reasonnav .button {
    display: none;
}

@media screen and (max-width: 767px) {
    .box_reasonnav {
        padding: 20px 0 12px;
    }

    .box_reasonnav__content {
        border-top: 1px solid #575c61;
    }

    .box_reasonnav .hdg_lv3 {
        padding-bottom: 20px;
        margin-bottom: 0;
        font-size: 12px;
    }

    .box_reasonnav .hdg_lv3 > span {
        display: block;
        font-size: 24px;
    }

    .box_reasonnav .hdg_lv3 > span > em {
        font-size: 24px;
        top: 0;
    }

    .box_reasonnav__inner {
        box-sizing: border-box;
        overflow-x: scroll;
        overflow-y: hidden;
        padding: 0;
        text-align: left;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
    }

    .box_reasonnav__link {
        width: 100%;
        z-index: 1;
        margin: 0 auto;
        padding: 14px 20px;
        overflow: visible;
    }

    .box_reasonnav__link li {
        font-size: 14px;
        float: none;
        display: inline-block;
        line-height: 1;
    }

    .box_reasonnav .button_next {
        right: 0;
        background: #2d3339;
    }

    .box_reasonnav .button_prev {
        left: 0;
        background: #2d3339;
    }

    .box_reasonnav .button {
        width: 20px;
        height: 22px;
        content: "";
        position: absolute;
        z-index: 2;
        top: 11px;
        display: block;
    }

    .box_reasonnav .button .icon {
        content: "";
        display: inline-block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto 0;
        text-align: center;
    }

    .box_reasonnav .button .icon:before {
        color: #fff;
        font-size: 18px;
    }

    .box_reasonnav .button.disabled {
        opacity: 0.1;
    }
}

/* ----------------------------------------------- */

.box_menu {
    margin-bottom: 35px;
}

.box_menu__image {
    position: relative;
}

.box_menu__image img {
    width: 100%;
    height: auto;
}

.box_menu__content {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 25px 10px 35px;
    background: rgba(0, 0, 0, 0.2);
    text-align: center;
    box-sizing: border-box;
}

.box_menu__title {
    font-size: 22px;
    font-weight: normal;
    display: block;
    color: #fff;
    margin-bottom: 10px;
}

.grid_6 .box_menu__title {
    font-size: 22px;
    font-weight: normal;
    display: block;
    color: #fff;
    /*line-height: 1.6em;*/
    margin-bottom: 10px;
}

.box_menu .btn_more {
    box-sizing: border-box;
}

.box_menu .btn_more .fa:before {
    color: #fff;
}

.box_menu__caption {
    padding: 15px 20px;
}

.box_menu__caption02 {
    padding: 25px 10px 15px;
    text-align: center;
    font-size: 17px;
    line-height: 1.77em;
}

@media screen and (max-width: 767px) {
    .box_menu {
        margin-bottom: 0;
    }

    .box_menu__title {
        font-size: 16px;
    }

    .grid_6 .box_menu__title {
        font-size: 16px;
        line-height: 1.6em;
        margin-bottom: 10px;
    }

    .box_menu__content {
        padding: 10px 10px 15px;
    }

    .box_menu__caption {
        padding: 15px 0;
    }

    .box_menu__caption02 {
        padding: 15px 0 20px;
        font-size: 15px;
        line-height: 1.5em;
    }
}

.box_menu_02 {
    display: table;
    width: 100%;
    margin-bottom: 40px;
    border: 1px solid #ddd;
}

.box_menu_02 .box_menu__content,
.box_menu_02 .box_menu__image {
    display: table-cell;
    vertical-align: top;
}

.box_menu_02 .box_menu__image {
    width: 200px;
    font-size: 0;
}

.box_menu_02 .box_menu__content {
    position: static;
    border-left: 0;
    background: transparent;
    width: auto;
    text-align: left;
    padding: 15px 20px;
}

.box_menu_02 .box_menu__title {
    color: #333;
    font-size: 18px;
}

.box_menu_02 .box_menu__caption {
    padding: 0;
    margin-bottom: 20px;
}

.box_menu_02 .box_menu__title .fa {
    display: none;
}

@media screen and (max-width: 767px) {
    .box_menu_02 {
        margin-bottom: 0;
        padding: 19px 0;
        border: 0;
        border-bottom: 1px solid #ddd;
        border-left: 0;
        border-right: 0;
    }

    .lst_menu_02 li:first-child .box_menu_02 {
        border-top: 1px solid #ddd;
    }

    .box_menu_02 .box_menu__image {
        width: 94px;
    }

    .box_menu_02 .box_menu__content {
        border: 0;
        padding: 0 10px;
    }

    .box_menu_02 .box_menu__caption {
        margin-bottom: 0;
    }

    .box_menu_02 .box_menu__title .fa {
        display: inline-block;
        vertical-align: middle;
        background: #a4002c;
        width: 15px;
        height: 15px;
        line-height: 0;
        text-align: center;
        box-sizing: border-box;
        padding: 1px;
        margin-right: 5px;
    }

    .box_menu_02 .box_menu__title .fa:before {
        color: #fff;
        font-size: 12px;
        margin: 0;
    }

    .box_menu_02 .box_menu__button {
        display: none;
    }
}

.box_aticle {
    border: 1px solid #ddd;
    margin: 10px 0 20px;
}

.box_aticle_bottom {
    margin: 20px 0 80px;
}

.box_aticle .box_aticle__content {
    padding: 20px 15px 20px 40px;
}

.box_aticle .box_aticle__content .strong {
    color: #a4002c;
}

.box_aticle .box_aticle__content02 {
    padding: 15px 15px 15px 40px;
}

.box_aticle__caption {
    font-size: 15px;
    padding: 0 0 10px;
    line-height: 1.571428;
}

.box_aticle__caption.caption_small {
    font-size: 14px;
    line-height: 1.571428;
}

@media screen and (max-width: 767px) {
    .box_aticle_bottom {
        margin: 20px 0 40px;
    }

    .box_aticle .box_aticle__content {
        padding: 20px;
    }

    .box_aticle__caption {
        font-size: 15px;
        line-height: 1.571428;
    }
}

/* ----------------------------------------------- */

.box_contact {
    background: url("/resource/img/cmn_bg_inquiry01.png") bottom 0px right -30px
        no-repeat;
    border: 1px solid #ddd;
    padding: 25px 20px;
    margin: 80px 0 0;
}

.box_contact h3 {
    font-size: 18px;
    margin: 0 0 15px;
}

.box_contact__phone {
    margin-top: 12px;
}

.box_contact__phone h4,
.box_contact__phone .txt_phone {
    display: inline;
}

.box_contact__phone h4 {
    font-size: 18px;
}

@media (min-width: 768px), print {
    .box_contact__phone .txt_phone .btn {
        background: none;
        padding: 0;
        box-shadow: none;
        min-width: 0;
        font-size: inherit;
    }

    .box_contact__phone .txt_phone .btn:hover {
        opacity: 1;
    }
}

@media screen and (max-width: 767px) {
    .box_contact {
        background-image: none;
        padding: 14px;
        margin-top: 40px;
    }

    .box_contact__phone {
        margin-top: 20px;
    }

    .box_contact__phone h4 {
        font-size: 16px;
        display: block;
        margin-bottom: 10px;
    }

    .box_contact .btn {
        display: inline-block;
        width: 270px;
    }

    .box_contact__phone .txt_phone .btn {
        color: #fff;
        font-family: "Noto Sans JP", "メイリオ", Meiryo, "ＭＳ Ｐゴシック",
            "helvetica", "arial", sans-serif;
        margin-bottom: 10px;
    }

    .btnDownloadPdf {
        position: absolute;
        bottom: 15px;
    }

    .pstRelative {
        position: relative;
    }

    .imgCatalog {
        padding-bottom: 50px !important;
        margin-top: -30px;
    }
}

/* ----------------------------------------------- */

.box_line_t {
    border: 1px solid #dddddd;
}

/* ----------------------------------------------- */

.box_accordion {
    margin: 0 0 20px;
}

.box_accordion .js_accordion_icon {
    position: absolute;
    right: 10px;
    top: 10px;
}

.box_accordion .fa:before {
    color: #5c4934;
}

.box_accordion__title.is_active .js_accordion_icon:before {
    color: #fff;
}

.box_accordion .js_accordion_trigger02 {
    background: #f5f5f2;
}

.box_accordion .js_accordion_trigger02.is_active {
    background: #fff;
}

.box_accordion .box_accordion__title {
    padding: 10px 30px 10px 10px;
    border: 1px solid #ddd;
    position: relative;
    background: #fff;
}

.box_accordion .box_accordion__title.is_active {
    background: #a4002c;
    border: 1px solid #a4002c;
    color: #fff;
}

.box_accordion ul ul {
    border-top: 1px solid #ddd;
}

.box_accordion ul li {
    border: 1px solid #ddd;
    border-top: 0;
    position: relative;
}

.box_accordion ul li li {
    border-left: 0;
    border-right: 0;
}

.box_accordion ul li li:last-child {
    border-bottom: 0;
}

.box_accordion ul li a {
    padding: 10px;
    display: block;
}

.box_accordion > .js_accordion_content > li > a {
    color: #5c4934;
    font-weight: bold;
}

.box_accordion ul li li a {
    padding: 10px 30px 10px 30px;
}

/* ----------------------------------------------- */

.box_input {
    text-align: center;
    position: relative;
    max-width: 440px;
    width: 100%;
    margin: 30px auto;
}

.box_input input {
    padding: 8px 40px 9px 25px;
    width: 100%;
    box-sizing: border-box;
    border-radius: 20px;
}

.box_input .fa:before {
    color: #5c4934;
    margin-right: 0;
}

.box_input__submit {
    position: absolute;
    right: 5px;
    top: 3px;
}

.box_input__submit button {
    padding: 5px 10px;
}

/* ----------------------------------------------- */

.box_design_image {
    width: auto;
}

.box_design_image > div {
    width: 50%;
    float: left;
    margin: 20px 0 0;
}

@media only screen and (max-width: 767px) {
    .box_design_image > div {
        width: auto;
        float: none;
        margin: 0;
    }
}

/* ----------------------------------------------- */

.box_has_border {
    border: 1px #ddd solid;
    margin: 0 0 20px;
}

.box_has_border h4 {
    background-color: #f5f5f2;
    margin: 0;
    padding: 15px 10px;
}

/* ----------------------------------------------- */

.box_border_top {
    border-top: 1px solid #ddd;
    clear: both;
}

/*2-1-3.  Table    [tbl_***]*/

.tbl_base {
    width: 100%;
    border: 0;
    border-collapse: collapse;
    margin-bottom: 30px;
}

.tbl_base {
    text-align: left;
}

.tbl_base th {
    background-color: #f5f5f2;
    font-weight: bold;
    width: 14.53%;
    padding: 12px 10px;
}

.tbl_base tbody tr {
    border-top: 1px dotted #ccc;
}

.tbl_base tbody tr:first-child {
    border-top: 1px solid #ccc;
}

.tbl_base tbody tr:last-child {
    border-bottom: 1px solid #ccc;
}

.tbl_base th,
.tbl_base td {
    vertical-align: top;
    line-height: 1.8em;
}

.tbl_base td {
    padding: 12px 20px;
}

@media screen and (max-width: 767px) {
    .tbl_base {
        margin-bottom: 15px;
    }

    .tbl_base thead {
        display: none;
    }

    .tbl_base tr {
        display: block;
        padding: 10px 0;
    }

    .tbl_base th,
    .tbl_base td {
        display: block;
        background: transparent;
    }

    .tbl_base th {
        width: auto;
        font-size: 16px;
        vertical-align: middle;
        padding: 0 10px;
    }

    .tbl_base thead th {
        background-color: #263238;
        text-align: center;
        color: #fff;
        padding: 12px 10px;
        font-size: 12px;
    }

    .tbl_base tbody td {
        padding: 0 10px;
    }
}

.tbl_base.table_date th {
    width: 215px;
    background: none;
}

/* ----------------------------------------------- */

.tbl_data {
    width: 100%;
    border-collapse: collapse;
    border-top: 1px solid #ddd;
    margin-bottom: 40px;
}

.tbl_data tr {
    border-bottom: 1px solid #ddd;
}

.tbl_data th {
    font-size: 18px;
    padding: 19px;
    width: 270px;
    font-weight: normal;
}

.tbl_data th .lbl {
    font-size: 14px;
}

.tbl_data td {
    padding: 20px 0 20px 20px;
}

@media screen and (max-width: 767px) {
    .tbl_data {
        margin-bottom: 20px;
    }

    .tbl_data,
    .tbl_data tbody,
    .tbl_data th,
    .tbl_data tr,
    .tbl_data td {
        display: block;
    }

    .tbl_data td {
        padding: 0 10px 20px;
        box-sizing: border-box;
    }

    .tbl_data th {
        padding: 19px 10px;
        font-size: 16px;
        width: auto;
    }

    .tbl_data th .lbl {
        font-size: 12px;
        padding: 4px 12px;
        margin-right: 10px;
    }
}

/* ----------------------------------------------- */

.tbl_data_02 th {
    font-weight: normal;
    width: 170px;
}

.tbl_data_02 td {
    font-size: 18px;
}

@media screen and (max-width: 767px) {
    .tbl_data_02 th {
        width: 100%;
        box-sizing: border-box;
    }
}

/* ----------------------------------------------- */

.tbl_service,
.tbl_service th,
.tbl_service td {
    border: 1px solid #ddd;
}

.tbl_service th {
    background: #2e3339;
    text-align: center;
    vertical-align: middle;
    color: #fff;
    font-weight: bold;
}

.tbl_service th,
.tbl_service td {
    padding: 15px 10px;
}

@media screen and (max-width: 767px) {
    .tbl_service th,
    .tbl_service td {
        padding: 5px 10px;
    }
}

/*2-1-4.  Headings [hdg_lv*]*/

.hdg_lv1 {
    font-size: 40px;
    font-weight: bold;
    margin: 25px 0;
    text-align: center;
}

.hdg_lv1_2 {
    margin: 20px auto 29px;
    text-align: center;
}

.hdg_lv1_2 span {
    display: inline-block;
    font-weight: normal;
    font-size: 17px;
    margin: 0;
    padding: 5px 30px 4px;
    text-align: center;
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 1);
}

.hdg_lv1_2.bg_trans {
    margin: 35px auto 35px;
    text-align: center;
}

.hdg_lv1_2.bg_trans span {
    color: #333;
    border: 1px solid rgba(0, 0, 0, 1);
}

.wrp_heading .hdg_lv1 {
    font-size: 24px;
    margin: 0 0 20px;
}

.hdg_lv1_3 {
    font-size: 40px;
    font-weight: normal;
    text-align: center;
    padding: 13px 0 30px;
}

.hdg_lv2 {
    font-size: 35px;
    margin: 80px 0 30px;
    color: #a4002c;
    position: relative;
    font-weight: 300;
    text-align: center;
}

.hdg_lv2.txt_black {
    color: #333333;
}

.hdg_lv2_1 {
    font-size: 28px;
    margin: 85px 0 20px;
    color: #a4002c;
    position: relative;
    font-weight: 300;
    text-align: center;
}

.hdg_lv2_design {
    font-size: 32px;
    margin: 80px 0 25px;
    position: relative;
    font-weight: 300;
    text-align: center;
}

.hdg_lv2_mt40 {
    margin: 40px 0 30px;
}

.hdg_lv3 {
    font-size: 24px;
    margin: 40px 0 20px;
    position: relative;
    font-weight: bold;
    text-align: center;
}

.hdg_lv3_2 {
    font-size: 16px;
    margin: 60px 0 10px;
    position: relative;
    font-weight: bold;
    text-align: center;
}

.hdg_lv3_2 span {
    display: inline-block;
    font-weight: normal;
    margin: 0;
    padding: 5px 30px 4px;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, 1);
}

.hdg_lv3_4 {
    font-size: 25px;
    margin: 60px 0 0;
    padding: 0 0 10px;
    position: relative;
    font-weight: bold;
    text-align: left;
    border-bottom: 1px #ddd solid;
}

.hdg_lv4 {
    font-size: 17px;
    margin: 20px 0 10px;
    font-weight: bold;
    text-align: center;
}

.hdg_lv5 {
    font-weight: normal;
    margin-bottom: 5px;
}

.hdg_lv5:before {
    content: "◆";
}

.hdg_lv1_6 {
    font-size: 19px;
    font-weight: normal;
    text-align: center;
    padding: 13px 0 14px;
}
@media (max-width: 767px) {
    .hdg_lv1 {
        margin: 30px 0 20px;
        font-size: 28px;
    }

    .hdg_lv1_2 {
        margin: 10px auto 14px;
        text-align: center;
    }

    .hdg_lv1_2 span {
        font-size: 12px;
        margin: 0;
        padding: 3px 17px 2px;
    }

    .hdg_lv1_2.bg_trans {
        margin: 10px auto 20px;
        text-align: center;
    }

    .hdg_lv2_design {
        font-size: 20px;
        margin: 35px 0 25px;
        line-height: 1em;
    }

    .wrp_container_sm .hdg_lv1 {
        text-align: left;
        font-size: 24px;
        margin: 15px 0 25px;
        line-height: 1.2;
    }

    .wrp_heading .hdg_lv1 {
        font-size: 16px;
    }

    .hdg_lv2 {
        font-size: 20px;
        margin: 40px 0 15px;
    }

    .hdg_lv2_1 {
        font-size: 1.5em;
        margin: 0px 0 15px;
    }

    .box_3dex_outline {
        margin-top: 0;
    }

    .hdg_lv3 {
        font-size: 19px;
        margin: 45px 0 5px;
    }

    .hdg_lv4 {
        font-size: 14px;
        margin: 10px 0 10px;
    }

    .hdg_lv5 {
        margin: 30px 0 0;
    }

    .layout_box .layout_box__inner .hdg_lv4 {
        margin: 20px 0 12px;
    }
}

.num_title {
    text-align: center;
    font-weight: normal;
    font-size: 26px;
}

.num_title span {
    display: block;
    font-weight: bold;
    margin: 0 auto;
}

@media screen and (max-width: 767px) {
    .num_title {
        font-size: 17px;
    }
}

/*2-1-5.  Nav      [nav_***]*/

.nav {
    background: #f5f5f5;
    z-index: 99;
}

.nav li {
    padding: 0 10px;
    border-bottom: 1px solid #e8e8e8;
}

.nav li a {
    display: block;
    padding: 10px 0;
    text-align: left;
}

@media (min-width: 768px), print {
    .nav li a {
        padding: 0;
        text-align: center;
    }
}

/* ----------------------------------------------- */

.nav_header,
.nav_header_sub {
    display: none;
}

.nav_header.is_active,
.nav_header_sub.is_active {
    display: block;
}

@media (min-width: 768px), print {
    .nav_header li:last-child {
        padding-right: 0;
    }
}

/* ----------------------------------------------- */

#nav_global ul > li a {
    font-size: 14px;
    display: block;
    padding: 0 10px;
}
#nav_global ul > li a span {
    letter-spacing: 0.04em;
}

.btn_global__find {
    display: none;
}

@media (min-width: 768px), print {
    #nav_global {
        display: inline-block !important;
        float: right;
        margin-left: -15px;
    }

    #nav_global ul {
        margin-left: 0;
        letter-spacing: -0.4em;
        display: block;
        width: 768px;
    }

    #nav_global ul > li {
        position: relative;
        display: inline-block;
        letter-spacing: normal;
        padding: 0 10px 0 12px;
    }

    #nav_global ul > li:first-child {
        padding: 0 10px 0 0;
    }

    #nav_global ul > li a span {
        position: relative;
        padding: 0 0 27px;
        display: inline-block;
    }

    #nav_global ul > li a.is_active span:after {
        border-bottom: 3px solid #a4002c;
        width: 100%;
        content: "";
        bottom: -1px;
        left: 0;
        position: absolute;
    }

    #nav_global ul > li a {
        font-size: 14px;
        display: block;
        padding: 0 1px;
    }
}

@media screen and (min-width: 768px) and (max-width: 949px) {
    #nav_global ul > li.nav_global__find {
        display: none;
    }

    .btn_global__find {
        display: block;
        width: 130px;
        float: right;
        text-align: center;
    }

    .btn_global__find a {
        background: #a4002c;
        display: block;
        color: #fff;
        padding: 3px 5px;
        border: 0;
        text-align: center;
    }

    .btn_global__find .fa:before {
        color: #ffffff;
    }
}

@media screen and (min-width: 768px) and (max-width: 1120px) {
    #nav_global {
        display: inline-block !important;
        float: right;
        margin-left: 0;
        clear: both;
    }
}

@media (min-width: 950px) {
    #nav_global ul {
        margin-left: 0;
        width: 100%;
    }
}

#nav_global ul {
    width: 100%;
    overflow: hidden;
}

#nav_global ul > li {
    text-align: center;
    vertical-align: middle;
    position: relative;
    float: left;
}

#nav_global ul > li + li:after {
    border-left: 1px solid #ddd;
    position: absolute;
    height: 20px;
    content: "";
    top: 0;
    margin-top: 0;
    left: 0;
}

#nav_global ul > li:first-child:after {
    display: none;
}

#nav_global ul .nav_global__find {
    width: 130px;
    vertical-align: top;
    border-left: 0;
    padding: 0 4px 0 4px;
}

#nav_global ul .nav_global__find a {
    background: #a4002c;
    display: block;
    color: #fff;
    padding: 3px 5px;
    border: 0;
}

#nav_global ul .nav_global__find.nav_global__modelhouse a {
    background-color: #2d3339;
}

.isIE11 #nav_global ul .nav_global__find a {
    /*padding: 6px 5px 3px;*/
}

.isIE11 #nav_global ul > li {
    vertical-align: bottom;
}

#nav_global ul .nav_global__find:after {
    display: none;
}

#nav_global ul .nav_global__contact {
}

#nav_global ul .nav_global__find a .fa:before {
    color: #fff;
}

@media screen and (min-width: 767px) {
    #banner_oricon {
        display: inline-block;
        position: relative;
        width: 21%;
        height: 58px;
    }

    #banner_oricon img {
        position: absolute;
        right: 10px;
        bottom: 20px;
    }
}

@media screen and (max-width: 767px) {
    #banner_oricon {
        display: none !important;
    }

    #nav_global {
        position: absolute;
        width: 100%;
        display: none;
        background: #a4002c;
        margin: 0;
        z-index: 1500;
    }

    #nav_global > ul {
        padding: 0 10px 10px;
        display: block;
        width: auto;
    }

    #nav_global > ul > li {
        display: block;
        float: none;
    }

    #nav_global > ul > li:after {
        display: none;
    }

    #nav_global > ul > li a {
        display: block;
        color: #fff;
        padding: 18px 0 17px;
        border-top: 1px solid #b2264b;
    }

    #nav_global > ul > li:first-child a {
        border-top: 0;
    }

    #nav_global ul .nav_global__find {
        display: none;
    }

    #nav_global ul .nav_global__contact {
        display: block;
    }

    #nav_global ul .nav_global__contact a {
        display: block;
        border-top: 0;
        background: #fff;
        border-radius: 5px;
        color: #a4002c;
    }

    #nav_global ul .nav_global__sns {
        display: flex;
        display: -webkit-flex;
        flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        padding-top: 10px;
    }

    #nav_global ul .nav_global__sns span {
        display: inline-block;
        width: 33%;
    }

    #nav_global ul .nav_global__sns a {
        display: block;
        width: 50px;
        margin: 0 auto;
        border: 0;
        text-indent: -9999px;
    }

    #nav_global ul .nav_global__sns .nav_icn_instagram {
        background: url(/resource/img/cmn_icn_instagram.png) no-repeat center;
        background-size: 50px auto;
    }

    #nav_global ul .nav_global__sns .nav_icn_line {
        background: url(/resource/img/cmn_icn_line.png) no-repeat center;
        background-size: 50px auto;
    }

    #nav_global ul .nav_global__sns .nav_icn_mail {
        background: url(/resource/img/cmn_icn_mail.png) no-repeat center;
        background-size: 50px auto;
    }
}

/* ----------------------------------------------- */

#nav_local {
    background: #f5f5f2;
    padding: 9px 0;
    border-top: 1px solid #ddd;
    text-align: center;
}

#nav_local ul li {
    display: inline-block;
    padding: 0 17px;
    position: relative;
}

#nav_local ul li:first-child {
    padding-left: 0;
}

#nav_local li:after {
    content: "";
    display: block;
    width: 1px;
    height: 13px;
    background: #e4e4e3;
    position: absolute;
    top: 50%;
    margin-top: -7px;
    right: -1px;
}

#nav_local li:last-child:after {
    display: none;
}

#nav_local li a.is_active {
    color: #a4002c;
}

@media (min-width: 768px), print {
    #nav_local ul {
        width: auto !important;
    }

    #nav_local .button_prev,
    #nav_local .button_next {
        display: none;
    }
}

@media screen and (max-width: 767px) {
    #nav_local {
        width: 100%;
        padding: 9px 0 0;
        position: relative;
        overflow: hidden;
        min-height: 40px;
        box-sizing: border-box;
        border-bottom: 1px solid #dddddd;
        z-index: 1;
    }

    #nav_local .l_header__inner {
        overflow-x: scroll;
        overflow-y: hidden;
        white-space: nowrap;
    }

    #nav_local .button_prev {
        width: 20px;
        height: 22px;
        content: "";
        position: absolute;
        z-index: 200;
        top: 11px;
        left: 0;
        display: block;
        background: #f5f5f2;
    }

    #nav_local .button_next {
        width: 20px;
        height: 22px;
        content: "";
        position: absolute;
        z-index: 200;
        top: 11px;
        right: 0;
        display: block;
        background: #f5f5f2;
    }

    #nav_local .l_header__inner ul {
        display: table;
        margin: 0 20px;
    }

    #nav_local .l_header__inner li {
        display: table-cell;
        white-space: nowrap;
    }

    #nav_local .button.disabled {
        opacity: 0.1;
    }
}

/* --------------------------------------------------*/

#nav_search {
    display: none;
    background: #27739d;
    text-align: center;
}

.nav_search__content {
    background: #93c6e8 url("/resource/img/cmn_bg_about01.png") no-repeat center
        bottom;
    background-size: cover;
    padding: 57px 10px 0;
    box-sizing: border-box;
    min-height: 320px;
    position: relative;
}

.nav_search__btn {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 10px;
    width: 100%;
    box-sizing: border-box;
}

.nav_search__btn .btn {
    display: block;
    max-width: 290px;
    margin: 0 auto;
}

#nav_search h3 {
    margin-bottom: 17px;
}

/*
@media (max-width: 480px){
	.nav_search__content{
		min-height: 290px;
	}
}
*/

@media (min-width: 768px), print {
    #nav_search {
        display: none !important;
    }
}

/* --------------------------------------------------*/

@media screen and (max-width: 767px) {
    .nav_breadcrumb {
        display: none;
    }
}
.nav_breadcrumb li a span {
    letter-spacing: 0.04em;
}

@media (min-width: 768px), print {
    .nav_breadcrumb {
        color: #666;
        font-size: 12px;
        text-align: left;
        float: right;
        margin: 20px 0 16px;
    }

    .wrp_heading .nav_breadcrumb {
        margin-top: 0;
    }

    .nav_breadcrumb li a:hover {
        color: #a4002c;
    }

    .nav_breadcrumb li {
        display: inline-block;
    }

    .nav_breadcrumb li:after {
        content: ">";
        height: 1em;
        padding: 0 0.1em;
        vertical-align: top;
        width: 1em;
    }

    .nav_breadcrumb li.current::after {
        display: none;
    }
}

@media (min-width: 768px), print {
    .nav {
        background: none;
    }

    .nav li {
        border-bottom: 0;
        padding: 0;
        position: relative;
    }

    #nav-global a.is_active span:after,
    #nav-global a:hover span:after {
        content: "";
        display: block;
        width: 100%;
        height: 3px;
        background: #006d52;
        position: absolute;
        bottom: 0;
        left: 0;
    }

    #nav-global a.is_active span:before,
    #nav-global a:hover span:before {
        bottom: 3px;
        left: 50%;
        border: solid transparent;
        content: " ";
        height: 0;
        width: 0;
        position: absolute;
        border-color: #fff;
        border-bottom-color: #006d52;
        border-width: 6px;
        margin-left: -3px;
    }
}

/* ----------------------------------------------- */

.nav_sitemap {
    margin-bottom: 25px;
}

.nav_sitemap li {
    display: inline-block;
    padding: 0 17px;
    position: relative;
}

.nav_sitemap li:after {
    content: "";
    display: block;
    width: 2px;
    height: 13px;
    background: #4e4f4f;
    position: absolute;
    top: 3px;
    right: -1px;
}

.nav_sitemap li:last-child:after {
    display: none;
}

.nav_sitemap li a {
    color: #fff;
    display: block;
}

.nav_sitemap li a .fa {
    display: none;
}

@media screen and (max-width: 767px) {
    .nav_sitemap {
        margin-bottom: 20px;
    }

    .nav_sitemap li {
        width: 50%;
        float: left;
        border-bottom: 1px solid #42484d;
        box-sizing: border-box;
        padding: 0;
    }

    .nav_sitemap li:nth-of-type(2n + 1):last-child {
        width: 100%;
    }

    .nav_sitemap li:after {
        display: none;
    }

    .nav_sitemap li a {
        padding: 10px 0;
        font-size: 12px;
    }

    .nav_sitemap li a .fa {
        display: inline-block;
    }

    .nav_sitemap li a .fa:before {
        color: #fff;
    }
}

/* ----------------------------------------------- */

.nav_kanren {
    border-top: 1px solid #41474c;
}

.nav_kanren .ttl_kanren {
    padding: 26px 0 0;
    font-weight: bold;
    font-size: 16px;
    color: #ffffff;
}

.nav_kanren nav {
    text-align: center;
}

.nav_kanren nav ul {
    display: inline-block;
    margin: 0 0 18px;
    position: relative;
    padding: 0 0 65px;
}

.nav_kanren nav ul li {
    float: left;
    margin: 15px 0 0;
    padding: 0 13px 0 15px;
    line-height: 1;
    border-left: 1px solid #4e4f4f;
}

.nav_kanren nav ul li:first-child {
    border-left: none;
}

.nav_kanren nav ul li a {
    color: #ffffff;
}

.nav_kanren nav ul li .fa:before {
    color: #ffffff;
}

.nav_kanren nav ul li .fa:nth-of-type(2) {
    margin-left: 5px;
}

.nav_kanren #nav_kanren_corporate {
    position: absolute;
    box-sizing: border-box;
    width: 310px;
    padding: 0;
    border: 1px solid #4e4f4f;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0;
    text-align: center;
}

.nav_kanren #nav_kanren_corporate a {
    display: block;
    padding: 10px 5px;
}

@media screen and (max-width: 767px) {
    .nav_kanren {
        border-top: none;
    }

    .nav_kanren .ttl_kanren {
        padding: 18px 0 14px;
    }

    .nav_kanren nav {
        width: 100%;
    }

    .nav_kanren nav ul {
        border-top: 1px solid #42484d;
        width: 100%;
        padding: 0 0 55px;
    }

    .nav_kanren nav ul li {
        width: 100%;
        float: none;
        border: none;
        border-bottom: 1px solid #42484d;
        box-sizing: border-box;
        margin: 0;
        padding: 0;
    }

    .nav_kanren nav ul li a {
        display: block;
        padding: 10px 0;
        font-size: 12px;
    }

    .nav_kanren #nav_kanren_corporate {
        position: absolute;
        box-sizing: border-box;
        width: 210px;
        padding: 0;
        border: 1px solid #4e4f4f;
        margin: auto;
        left: 0;
        right: 0;
        bottom: 0;
        text-align: center;
    }

    .nav_kanren #nav_kanren_corporate a {
        display: block;
        padding: 10px 5px;
    }
}

/* ----------------------------------------------- */

.nav_footer {
    margin-bottom: 20px;
}

.nav_footer li {
    margin-bottom: 10px;
}

.nav_footer li a {
    display: block;
    background: #fff;
    border: 1px solid #ddd;
    padding: 15px;
}

.nav_footer li a .fa:before {
    margin-right: 20px;
}

@media screen and (max-width: 767px) {
    .nav_footer {
        margin-bottom: 0;
    }

    .nav_footer li {
        margin-bottom: 0;
    }

    .nav_footer li a {
        border-bottom: 0;
        padding: 10px 15px;
    }

    .nav_footer li:last-child a {
        border-bottom: 1px solid #ddd;
    }

    .nav_footer li a .fa:before {
        margin-right: 10px;
        color: #333;
    }
}

/*2-1-6.  List     [lst_***]*/

.lst_menu li {
    padding: 0;
}

.lst_menu.lst_menu_standard li {
    padding: 0 0 30px;
}

.lst_menu_02 {
    margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
    .lst_menu {
        margin-bottom: 20px;
    }
}

/* ----------------------------------------------- */

.lst_symbol {
    margin-top: 10px;
}

.lst_symbol li {
    color: #666;
}

.lst_symbol li:before {
    content: "◎";
}

/* ----------------------------------------------- */

.lst_fav {
    overflow: hidden;
    margin: 0 -5px;
}

.lst_fav > li {
    width: 50%;
    box-sizing: border-box;
    float: left;
    padding: 0 5px;
    margin-bottom: 10px;
}

.lst_fav .lst_fav__inner {
    border: 1px solid #ddd;
    display: table;
    width: 100%;
    table-layout: fixed;
}

.lst_fav__check {
    display: table-cell;
    width: 40px;
    vertical-align: middle;
    background: #f5f5f2;
    text-align: center;
    border-right: 1px solid #ddd;
}

.lst_fav .lst_fav__inner .box_media {
    display: table-cell;
    vertical-align: middle;
    padding: 15px;
    width: 100%;
}

.lst_fav .lst_fav__inner .box_media__inner {
    display: table;
    width: 100%;
    table-layout: fixed;
}

.lst_fav .box_media .box_media__pic {
    width: 37%;
    min-width: 100px;
}

.lst_fav .box_media .list_content_title {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: 0;
}

.lst_fav .box_media .lst_icon .fa {
    display: none;
}

.lst_fav__btn {
    display: block;
}

.lst_fav__btn > span {
    line-height: 1;
    display: inline-block;
    vertical-align: middle;
    float: left;
    padding: 0 5px;
    margin-top: 5px;
}

.lst_fav__btn .lst_fav__btn__del {
    border: 1px solid #ddd;
    text-align: center;
    padding: 6px 10px;
    cursor: pointer;
    box-sizing: border-box;
}

.lst_fav__btn__del .fa:before {
    margin-right: 0;
    color: #333;
}

.lst_fav__btn .btn {
    background: #a4002c;
    color: #fff;
    padding: 7px 20px;
    min-width: 0;
    border-radius: 0;
}

@media (min-width: 768px), print {
    .lst_fav .box_media .lst_icon li {
        text-indent: 0;
    }
}

@media screen and (max-width: 767px) {
    .lst_fav {
        width: 100%;
        margin: 0;
        border-bottom: 1px solid #ddd;
    }

    .lst_fav > li {
        float: none;
        display: block;
        width: 100%;
        margin-bottom: 0;
        padding: 0;
    }

    .lst_fav .box_media .lst_icon .fa {
        display: initial;
    }

    .lst_fav__check {
        width: 28px;
    }

    .lst_fav .lst_fav__inner .box_media {
        display: table;
        position: relative;
        padding: 50px 10px;
        box-sizing: border-box;
    }

    .lst_fav .box_media .box_media__pic,
    .lst_fav .box_media .box_media__text {
        display: table-cell;
        vertical-align: top;
    }

    .lst_fav .box_media .box_media__pic {
        position: relative;
        padding-right: 10px;
    }

    .lst_fav .lst_fav__btn {
        position: absolute;
        bottom: 10px;
        left: 10px;
        width: 100%;
    }

    .lst_fav .lst_fav__inner {
        box-sizing: border-box;
        border-bottom: 0;
    }

    .lst_fav .list_content_title {
        position: absolute;
        top: 10px;
        left: 10px;
        width: 97%;
    }

    .lst_fav__btn .btn {
        padding: 9px 10px;
        font-size: 12px;
        border-radius: 3px;
    }

    .lst_fav__btn {
        display: block;
    }

    .lst_fav__btn__del {
        padding: 6px 7px;
        border-radius: 3px;
    }
}

/* ----------------------------------------------- */

.lst_icon {
    overflow: hidden;
}

.lst_icon li,
.lst_media .lst_icon li {
    display: block;
    margin-bottom: 5px;
    text-indent: -8px;
    padding-left: 16px;
}

.lst_icon li .fa:before {
    color: #999;
}

.box_slide .lst_icon li,
.box_slide .lst_media .lst_icon li {
    text-indent: 0;
    padding-left: 0;
    margin-left: 0;
}

.box_slide .lst_icon li .fa,
.box_slide .lst_media .lst_icon li .fa {
    display: none;
}

@media screen and (max-width: 767px) {
    .lst_icon li,
    .lst_media .lst_icon li {
        font-size: 12px;
        margin-bottom: 2px;
    }
}

/* ----------------------------------------------- */

.lst_category {
    margin: 20px 0;
}

.lst_category li {
    color: #333;
    border: 1px solid #ddd;
    font-weight: bold;
    font-size: 14px;
}

/* ----------------------------------------------- */

.lst_article {
    margin-bottom: 30px;
}

.lst_article__item {
    display: table;
    table-layout: fixed;
    width: 100%;
    border-bottom: 1px solid #ddd;
    padding: 10px 0;
}

.lst_article li:last-child .lst_article__item {
    margin-bottom: 0;
}

.lst_article__img,
.lst_article__content {
    display: table-cell;
    vertical-align: top;
}

.lst_article__img {
    width: 100%;
    text-align: center;
    position: relative;
}

.lst_article .grid_6 .lst_article__link {
    padding: 20px 0 20px;
}

.lst_article__date {
    font-size: 10px;
    margin-bottom: 5px;
}

.lst_article__content {
    padding: 18px 20px;
    text-align: left;
}

.lst_article-02 .lst_article_title {
    color: #333;
    font-size: 18px;
}

.lst_article-02 .lst_article__caption {
    margin-bottom: 20px;
}

.lst_article__img-left,
.lst_article__content-right {
    display: table-cell;
    vertical-align: top;
}

.lst_article__img-left {
    width: 35.088%;
}

.lst_article__content-right {
    padding: 18px 20px;
    background: #fff;
}

.lst_article__img,
.lst_article__content {
    display: block;
}

@media screen and (max-width: 767px) {
    .lst_article_title {
        font-size: 19px;
        margin-bottom: 5px;
    }

    .lst_article-02 .lst_article_title {
        font-size: 16px;
    }

    .lst_article__content-right {
        padding: 0 10px;
    }

    .lst_article__img-left {
        width: 31.12%;
    }

    .lst_article .grid_6 .lst_article__link,
    .lst_article__link {
        display: block;
        padding: 15px 0;
    }

    .lst_article__img img {
        width: 100%;
    }
}

/* ----------------------------------------------- */

.lst_media,
.lst_media_02 {
    margin: 20px -15px 10px 0px;
}

.lst_media li {
    overflow: hidden;
    margin-bottom: 30px;
}

.lst_media li .txt_explain {
    /*
	font-size: 15px;
    line-height: 1.67em;
	*/
}

.lst_media__title {
    margin: 0 0 10px;
    font-size: 16px;
}

.lst_media__title .fa:before {
    font-weight: bold;
}

.lst_media__title span {
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: -4px 8px 0 0;
    padding: 0;
    line-height: 20px;
    background: #a4002c;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    color: #ffffff;
    font-size: 12px;
}

.lst_manufact {
    padding-top: 30px;
}

.lst_manufact .lst_media__title {
    border: 1px #ddd;
    border-bottom-style: solid;
    padding: 0 0 10px;
}

.lst_manufact li {
    margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
    .lst_media__img img {
        width: 100%;
        height: auto;
    }

    .lst_media .lst_media__title {
        text-align: center;
        font-weight: normal;
        font-size: 12px;
        margin: 0 0 7px;
        font-weight: bold;
    }
}

.lst_media .lst_media__content {
    padding: 14px 0 0;
}

.lst_media__caption {
    text-align: center;
}

@media screen and (max-width: 767px) {
    .lst_media,
    .lst_media_02 {
        margin: 10px 0 10px;
    }

    .lst_media li,
    .lst_media_02 li {
        overflow: hidden;
        margin-bottom: 20px;
    }

    .lst_media_02 {
        padding: 0;
    }

    .lst_media_02 li {
        width: 50%;
        padding: 0 10px;
    }

    .lst_media_02 .lst_media__content {
        padding: 8px 0;
        margin-bottom: 10px;
    }

    .lst_media__caption {
        font-size: 12px;
    }

    .lst_media .lst_media__content {
        padding: 5px 0 0;
    }

    .lst_article > div,
    .lst_article > li {
        margin-bottom: 20px;
    }

    .lst_article__img {
        margin-bottom: 20px;
    }
}

.lst_issue {
    margin: 20px 0;
}

.lst_issue__title {
    margin: 20px 0 10px;
    text-align: center;
    font-size: 18px;
}

.lst_issue .fa:before {
    color: #5c4934;
}

.lst_issue .js_anchor_expanded {
    cursor: pointer;
}

.lst_issue.lst_search_theme {
    margin-top: -20px;
}

.lst_search_theme li {
    margin-top: 20px;
}

@media screen and (max-width: 767px) {
    .lst_issue__title {
        font-weight: normal;
        font-size: 11px;
        text-align: center;
        margin: 10px 0;
    }

    .lst_issue__title .fa {
        display: none;
    }

    .lst_issue.lst_search_theme {
        margin-top: 20px;
    }

    .lst_search_theme li {
        margin-top: 0;
    }
}

/* ----------------------------------------------- */

.lst_shortcut {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    margin: 25px 0;
}

.lst_shortcut li {
    border-bottom: 1px solid #ddd;
}

.lst_shortcut li:last-child {
    border-bottom: none;
}

@media screen and (max-width: 767px) {
    .lst_shortcut li a {
        display: block;
        padding: 10px 0;
        position: relative;
    }
}

@media (min-width: 768px), print {
    .lst_shortcut {
        text-align: center;
    }

    .lst_shortcut li {
        display: inline-block;
        border-bottom: none;
        padding-left: 0;
    }

    .lst_shortcut li a {
        display: block;
        padding: 10px;
        position: relative;
    }

    .lst_shortcut li a:after {
        content: "";
        position: absolute;
        width: 1px;
        height: 15px;
        background-color: #ddd;
        top: 50%;
        margin-top: -7px;
        right: 0;
    }

    .lst_shortcut li:last-child a:after {
        display: none;
    }
}

/* ----------------------------------------------- */

.lst_news {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    margin-bottom: 40px;
    min-height: 491px;
}

.lst_news li {
    border-bottom: 1px dotted #ddd;
}

.lst_news li:last-child {
    border-bottom: 0;
}

@media screen and (max-width: 767px) {
    .lst_news {
        margin-bottom: 20px;
    }
}

/* ----------------------------------------------- */

.lst_dot li:before {
    content: "・";
    position: relative;
}

.lst_dot li {
    padding-left: 1em;
    text-indent: -1em;
}

/* ----------------------------------------------- */

.lst_link {
    margin-bottom: 30px;
}

.lst_link li {
    margin-bottom: 5px;
}

.lst_link a .fa:before {
    color: #333;
}

.link_full_order {
    clear: both;
    padding: 20px 0 10px;
}

.link_full_order li {
    text-align: center;
}

.link_full_order li a {
    font-size: 17px;
    font-weight: 500;
    line-height: 1.4em;
}

.link_full_order .fa:before {
    color: #a4002c !important;
    font-size: 22px;
}

.link_full_order .fa-external-link:before {
    color: #333 !important;
    font-size: 18px;
    line-height: 1em;
    vertical-align: middle;
}

.link_full_order a:hover .fa-external-link:before {
    color: #a4002c !important;
}

@media screen and (max-width: 767px) {
    .lst_link {
        border-top: 1px solid #ddd;
        border-left: 1px solid #ddd;
        border-right: 1px solid #ddd;
        margin-bottom: 20px;
    }

    .lst_link li a {
        display: block;
        padding: 8px 10px;
        border-bottom: 1px solid #ddd;
    }

    .link_full_order {
        clear: both;
        padding: 20px 0 0;
    }

    .link_full_order li {
        text-align: center;
    }

    .link_full_order li a {
        font-size: 14px;
        font-weight: 500;
        line-height: 1.4em;
    }

    .link_full_order .fa:before {
        color: #a4002c !important;
        font-size: 18px;
    }
}

/* ----------------------------------------------- */

.lst_number {
    list-style: decimal;
    padding-left: 1.8em;
}

.lst_number > li {
    margin-bottom: 10px;
}

.lst_number ol {
    margin-top: 5px;
}

.lst_number_2 {
    list-style: none;
}

.lst_number_2 > li {
    margin-bottom: 25px;
}

.lst_title {
    padding-left: 28px !important;
    position: relative;
}

.lst_num {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 20px;
    height: 20px;
    margin: 0;
    padding: 0;
    line-height: 20px;
    background: #a4002c;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    color: #ffffff;
    font-size: 12px;
    box-sizing: border-box;
}

/* ----------------------------------------------- */

.lst_step {
    display: table;
    table-layout: fixed;
    width: 100%;
    margin: 0 auto 40px;
    box-sizing: border-box;
    overflow: hidden;
}

.lst_step li {
    display: table-cell;
    width: 33.333333333333%;
    position: relative;
    vertical-align: middle;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    background: #f5f5f2;
}

.lst_step li p {
    padding: 15px 0 15px 30px;
    height: 60px;
    box-sizing: border-box;
}

.lst_step li:before,
.lst_step li:after {
    position: absolute;
    content: "";
    top: 50%;
    width: 0;
    height: 0;
}

.lst_step li:before {
    margin-top: -31px;
    right: -32px;
    z-index: 4;
    border-style: solid;
    border-width: 31px 0 31px 32px;
    border-color: transparent transparent transparent #ddd;
}

.lst_step li:after {
    margin-top: -29px;
    right: -30px;
    z-index: 5;
    border-style: solid;
    border-width: 29px 0 29px 30px;
    border-color: transparent transparent transparent #f5f5f2;
}

.lst_step li:first-child {
    border-left: 1px solid #ccc;
}

.lst_step li:last-child {
    border-right: 1px solid #ccc;
}

.lst_step li:last-child:after,
.lst_step li:last-child:before {
    display: none;
}

.lst_step .current {
    background: #a4002c;
    color: #fff;
    border-top: 1px solid #a4002c;
    border-bottom: 1px solid #a4002c;
}

.lst_step li:first-child.current {
    border-left: 1px solid #a4002c;
}

.lst_step li:last-child.current {
    border-right: 1px solid #a4002c;
}

.lst_step li.current:after {
    border-color: transparent transparent transparent #a4002c;
}

.lst_step li.current:before {
    border-color: transparent transparent transparent #a4002c;
    right: -31px;
}

@media (min-width: 768px), print {
    .lst_step li .visible_pc {
        display: inline !important;
    }
}

@media screen and (max-width: 767px) {
    .lst_step {
        padding: 0;
    }

    .lst_step li {
        font-weight: normal;
        font-size: 16px;
    }

    .lst_step li p {
        padding: 10px 0 10px 20px;
        height: 50px;
    }

    .lst_step li:after {
        margin-top: -25px;
        right: -20px;
        border-width: 25px 0 25px 20px;
    }

    .lst_step li:before {
        margin-top: -26px;
        right: -21px;
        border-width: 26px 0 26px 21px;
    }

    .lst_step li.current:before {
        right: -21px;
    }

    .btn_property_back {
        white-space: normal !important;
    }
}

/* ----------------------------------------------- */

.box_design_series {
    border: 1px #ccc;
    border-top-style: solid;
    margin: 100px 0 0;
}

.box_design_series > .inner {
    margin: auto;
    width: auto;
    max-width: 770px;
}

.lst_design_series {
    width: auto;
    text-align: center;
    padding: 60px 0 0;
}

.lst_design_other {
    padding: 30px 0 0;
}

.lst_design_series li {
    margin-bottom: 4px;
}

.lst_design_series li .box_design_inner {
    height: 400px;
    text-align: center;
}

.lst_design_other li {
    width: 50%;
    float: left;
}

.lst_design_other li .box_design_inner {
    height: 160px;
    text-align: center;
}

.lst_design_other li:nth-child(1) .box_design_inner {
    margin: 0 20px 0 0;
}

.lst_design_other li:nth-child(2) .box_design_inner {
    margin: 0 0 0 20px;
}

/*
.lst_design_series li.box_design_material .box_design_inner {
	color:#663300;
	background: url(/resource/img/value/design_material_main.jpg) no-repeat center;
	background-size: cover;
	box-sizing: border-box;
}
*/

.lst_design_series li.box_design_forest .box_design_inner {
    background: url(/resource/img/value/design_forest_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
}

.lst_design_series li.box_design_urban .box_design_inner {
    background: url(/resource/img/value/design_urban_main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
}

.lst_design_series li h3 {
    font-size: 20px;
    font-weight: 200;
    line-height: 1.1em;
    padding: 50px 0 20px;
    color: #fff;
}

.lst_design_other li h3 {
    font-size: 20px;
    font-weight: 300;
    line-height: 1.1em;
    padding: 50px 0 20px;
}

.lst_design_series li h3 span {
    display: block;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.2em;
}

/*
.lst_design_series li a {
	color:#FFFFFF;
	display:inline-block;
	background-color:#999999;
	border-radius: 4px;
	padding:10px 20px;
	opacity:0.7;
}

.lst_design_series li a {
	padding:5px 20px;
}

.lst_design_series li a:hover {
	opacity:0.5;
}

.lst_design_series li.box_design_material a {
	background-color:#996600;
}

.lst_design_series li.box_design_forest a {
	background-color:#003300;
}

.lst_design_series li.box_design_urban a {
	background-color:#333333;
}
*/

@media only screen and (max-width: 767px) {
    .lst_design_series {
        width: auto;
        text-align: center;
        padding: 30px 0 0;
    }

    .lst_design_other {
        padding: 10px 0 0;
    }

    .lst_design_series li .box_design_inner {
        height: 250px;
    }

    .lst_design_other li .box_design_inner {
        height: 150px;
        text-align: center;
    }

    .lst_design_other li:nth-child(1) .box_design_inner {
        margin: 0 5px 0 0;
    }

    .lst_design_other li:nth-child(2) .box_design_inner {
        margin: 0 0 0 5px;
    }

    .lst_design_series li h3 {
        font-size: 24px;
        line-height: 1.1em;
        padding: 70px 0 20px;
    }

    .lst_design_other li h3 {
        font-size: 16px;
        font-weight: 300;
        line-height: 1.1em;
        padding: 50px 0 10px;
    }

    .lst_design_series li h3 span {
        font-size: 12px;
    }

    .lst_design_series li a {
        font-size: 9px;
        padding: 7px 15px;
    }

    .lst_design_other li a {
        font-size: 9px;
        padding: 4px 10px;
    }
}

/*2-1-7.  Button   [btn_***]*/

.btn {
    background-color: #2d3339;
    border: 0;
    box-sizing: border-box;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    white-space: nowrap;
    font-size: 14px;
    padding: 12px 15px;
    min-width: 170px;
    box-shadow: inset 0 -1px rgba(0, 0, 0, 0.4);
}

.btn:hover,
.btn:active {
    text-decoration: none;
}

.btn:hover {
    color: #ffffff;
    opacity: 0.7;
}

.btn:visited {
    color: #fff;
}

.btn .fa:before {
    color: #fff;
}

.btn_back .fa:before {
    color: #666666;
}

.btn_more {
    background-color: #a4002c;
    box-shadow: 0px 1px 0 #530117;
    box-sizing: border-box;
    color: #fff;
    display: inline-block;
    font-family: "BenchNine", sans-serif;
    font-size: 14px;
    height: 21px;
    padding: 0 15px;
    text-align: center;
    width: 80px;
}

a.btn_more,
.btn_more .fa:before {
    color: #fff;
}

.btn_more:hover {
    color: #fff;
}

.btn_small {
    width: auto;
    min-width: 290px;
    padding: 22px 14px;
    font-size: 16px;
    font-weight: normal;
}

.btn_medium {
    font-size: 16px;
    font-weight: normal;
    min-width: 270px;
    padding: 22px 15px;
    width: auto;
}

.btn_large {
    padding: 20px;
    font-size: 16px;
    font-weight: bold;
    border-radius: 5px;
}

.btn_large_02 {
    padding: 20px 60px;
    font-size: 16px;
    font-weight: normal;
}

.btn_primary {
    background-color: #a4002c;
}

.btn_primary .fa:before {
    color: #fff;
}

.btn_back {
    background: #ffffff;
    border: 1px solid #dddddd;
    color: #666666;
    box-shadow: none;
    padding: 20px 20px;
    min-width: auto;
}

.btn_back:visited {
    color: #666666;
}

.is_disable,
.is_disable:hover,
.is_disable:active,
.btn:disabled {
    color: #999 !important;
    background: #ddd !important;
    cursor: default !important;
    opacity: 1 !important;
    box-shadow: none;
}

.wrp_button {
    margin-top: 15px;
}

.wrp_button .btn {
    margin-right: 20px;
}

.btn:hover,
.btn_more:hover,
.btn_primary:hover {
    color: #ffffff;
    opacity: 0.7;
}

.btn_back:hover {
    color: #666666;
}

@media screen and (max-width: 767px) {
    .btn {
        min-width: 198px;
    }

    .btn_medium {
        min-width: 248px;
    }

    .btn_small {
        min-width: 290px;
    }

    .wrp_button {
        text-align: center;
        margin-top: 10px;
    }

    .wrp_button .btn {
        margin: 0 5px;
    }
}

@media (min-width: 768px), print {
    .btn-tel {
        cursor: default;
    }

    .btn-tel:hover {
        opacity: 1;
    }
}

/*2-1-8.  Anchor   [acr_***]*/

.arc_strong {
    font-size: 16px;
    font-weight: bold;
}

.brightover:hover {
    opacity: 0.7;
}

.zoomover {
    overflow: hidden;
}

.zoomover .zoomover__img {
    transition: all 0.6s;
}

.zoomover:hover .zoomover__img {
    transform: scale(1.1);
}

.arc_back .fa {
    margin-right: 10px;
}

.arc_pagetop .fa {
    margin-left: 10px;
}

@media screen and (max-width: 767px) {
    .arc_back .fa {
        margin-right: 5px;
    }

    .arc_pagetop .fa {
        margin-left: 5px;
    }
}

/*2-1-9.  Text     [txt_***]*/

.txt_head {
    font-size: 35px;
    font-weight: 400;
    line-height: 1.714em;
    text-align: center;
}

.txt_head_2 {
    margin: 0 0 10px;
    font-size: 25px;
    font-weight: bold;
    text-align: center;
    color: #ffffff;
}

.txt_head_3 {
    margin: 0;
    font-size: 35px;
    line-height: 1.7em;
    font-weight: 400;
    text-align: center;
    color: #ffffff;
}

.txt_heading_time {
    padding-top: 20px;
    float: left;
}

.txt_lead {
    text-align: center;
    margin: 20px 0 45px;
    font-size: 17px;
    line-height: 2em;
}

.txt_lead_large {
    text-align: center;
    margin: 20px 0 45px;
    font-size: 21px;
    line-height: 2em;
}

.txt_lead_large strong {
    color: #a4002c;
}

.txt_title_lead {
    font-size: 18px;
    margin: 0 0 40px;
    text-align: center;
}

.wrp_heading .txt_lead {
    margin: 43px 0 25px;
}

.txt_copyright small {
    font-size: 14px;
    color: #cacccd;
}

.txt_green {
    color: #6eba38;
}

.txt_grey {
    color: #b5b6b6;
}

.txt_black {
    color: #595757;
}

.txt_note {
    color: #666;
    font-size: 13px;
    text-indent: -1em;
    padding-left: 1em;
    line-height: 1.76;
    margin-top: 10px;
}

.txt_note02 {
    text-align: right;
    text-indent: 0;
    padding: 0 60px;
}

.txt_note:before {
    content: "※";
}

.txt_note02 {
    font-size: 75%;
}

.txt_ann {
    color: red;
    font-size: 12px;
}

.txt_phone {
    font-size: 36px;
    line-height: 1.2;
}

.txt_phone a {
    color: #a4002c;
}

.txt_phone a.disable:hover {
    cursor: default;
    color: #a4002c;
}

.txt_english {
    /*font-family: 'BenchNine',sans-serif;*/
}

.txt_english02 {
    font-family: "Roboto", sans-serif;
}

.txt_lead_design {
    text-align: center;
    margin: 20px 0;
    font-size: 17px;
    font-weight: normal;
    line-height: 2em;
}

.txt_lead_design strong {
    font-weight: bold;
    color: #a4002c;
}

.txt_lead_design_series {
    text-align: center;
    margin: 60px 0 20px;
    font-size: 17px;
    font-weight: normal;
    line-height: 2em;
}

.txt_design_material {
    color: #663300;
}

.txt_design_forest {
    color: #003300;
}

.txt_design_urban {
    color: #333333;
}

@media (max-width: 767px) {
    .txt_lead_large {
        text-align: center;
        margin: 15px 0 25px;
        font-size: 16px;
        line-height: 1.67em;
    }

    .txt_title_lead {
        font-size: 14px;
        margin: 0 0 20px;
        text-align: left;
    }

    .txt_head {
        font-size: 18px;
    }

    .wrp_heading_standard .txt_head {
        font-size: 14px;
    }

    .txt_head_2 {
        margin: 0 0 3px;
        font-size: 14px;
        font-weight: bold;
        text-align: center;
        color: #ffffff;
    }

    .txt_head_3 {
        margin: 0;
        font-size: 24px;
        line-height: 30px;
        font-weight: bold;
        text-align: center;
        color: #ffffff;
    }

    .txt_lead {
        margin: 15px 0;
        font-size: 16px;
        line-height: 1.67em;
    }

    .txt_lead--sp-left {
        text-align: left;
        font-size: 14px;
    }

    .wrp_heading .txt_lead {
        margin: 20px 0;
        font-size: 14px;
    }

    .txt_note {
        margin-top: 15px;
    }

    .txt_note02 {
        text-align: left;
        padding: 0;
        text-indent: -1em;
        padding-left: 1em;
    }

    .txt_copyright small {
        font-size: 12px;
    }

    .txt_lead_design {
        font-size: 14px;
        margin: 15px 0;
        line-height: 1.67em;
        text-align: left;
    }

    .txt_lead_design_series {
        margin: 15px 0;
        font-size: 14px;
        line-height: 1.67em;
        text-align: left;
    }
}

/*2-1-10. Icon     [icn_***]*/

.icn-right:before {
    margin: 0 0 0 5px;
}

/*2-1-11. Label    [lbl_***]*/

label {
    cursor: default;
}

.lbl {
    padding: 4px 6px;
    display: inline-block;
    vertical-align: middle;
    line-height: 1;
    text-align: center;
    color: #fff;
    white-space: nowrap;
    font-size: 12px;
}

.lbl_small {
    padding: 2px 10px;
    font-size: 12px;
    border-radius: 10px;
    margin-right: 15px;
}

.isIE11 .lbl_small {
    padding: 8px 10px 2px;
}

.ie9 .lbl_small {
    padding: 5px 10px 2px;
}

@media screen and (max-width: 767px) {
    .lbl {
        padding: 2px 3px;
        font-size: 10px;
    }
}

.lbl_red {
    background-color: #a4002c;
    color: #fff;
}

.lbl_grey {
    background-color: #606061;
    color: #fff;
}

.lbl_blue {
    background-color: #006699;
}

.lbl_white {
    border: 1px solid #ddd;
    background: #fff;
}

.lbl_darkgreen {
    background: #00873c;
    border: 1px solid #00873c;
    color: #fff;
}

.lbl_lightgreen {
    background: #f0f8eb;
    border: 1px solid #d9ede2;
    color: #00873c;
}

.lbl_news {
    background-color: #574939;
    width: 60px;
}

/* Anchor Module
-------------------------------------------------- */

.ie8 .rollover:hover,
.ie8 .rollover:hover img {
    -ms-filter: "alpha(opacity=60)";
}

.rollover:hover,
.rollover:hover img {
    opacity: 0.7;
}

.ui-datepicker-trigger {
    margin-bottom: 3px;
}

.ui-datepicker-trigger:hover {
    opacity: 0.7;
    cursor: pointer;
}

.js_anchor_expanded img:hover {
    opacity: 0.7;
    cursor: pointer;
}

/*2-1-12. Form     [frm_***]*/

.frm_contact {
    width: 100%;
    margin: 0 auto 50px;
    box-sizing: border-box;
}

@media screen and (max-width: 767px) {
    .frm_contact {
        padding: 0;
    }
}

.input_box {
    width: auto;
    min-width: 300px;
    font-size: 18px;
    box-sizing: border-box;
    padding: 8px;
    /* background: #fff; */
    background: #ffc;
    border: 1px solid #ccc;
    -ms-box-shadow: inset 0 1px 0 0 rgba(0, 0, 0, 0.3);
    -o-box-shadow: inset 0 1px 0 0 rgba(0, 0, 0, 0.3);
    box-shadow: inset 0 1px 0 0 rgba(0, 0, 0, 0.3);
    border-radius: 4px;
}

.input_box2 {
    width: auto;
    font-size: 18px;
    box-sizing: border-box;
    padding: 8px;
    /* background: #fff; */
    background: #ffc;
    border: 1px solid #ccc;
    -ms-box-shadow: inset 0 1px 0 0 rgba(0, 0, 0, 0.3);
    -o-box-shadow: inset 0 1px 0 0 rgba(0, 0, 0, 0.3);
    box-shadow: inset 0 1px 0 0 rgba(0, 0, 0, 0.3);
    border-radius: 4px;
    vertical-align: middle;
}

.input_box:focus,
.input_box2:focus,
.textarea_box:focus {
    background-color: #ffc !important;
}

.select_box2,
.select_box {
    position: relative;
    display: inline-block;
    border: 1px solid #ccc;
    border-radius: 4px;
    -ms-box-shadow: inset 0 1px 0 0 rgba(0, 0, 0, 0.3);
    -o-box-shadow: inset 0 1px 0 0 rgba(0, 0, 0, 0.3);
    box-shadow: inset 0 1px 0 0 rgba(0, 0, 0, 0.3);
}

.select_box:after {
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -7px;
    z-index: 10;
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    color: #333;
    content: "\f0d7";
    pointer-events: none;
}

.select_box2 {
    vertical-align: middle;
}

.ie9 .select_box {
    width: 300px;
    overflow: hidden;
}

.select_box > select {
    width: auto;
    min-width: 300px;
    box-sizing: border-box;
    padding: 8px 30px 8px 9px;
    font-size: 18px;
    position: relative;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    /* background: none; */
    background: #ffc;
    border: 0;
}

.select_box2 > select {
    width: auto;
    min-width: auto;
    box-sizing: border-box;
    padding: 8px 30px 8px 9px;
    font-size: 18px;
    position: relative;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    /* background: none; */
    background: #ffc;
    border: 0;
}

.select_box > select::-ms-expand {
    display: none;
}

.ie9 .select_box > select {
    width: 350px;
}

/*
.select_box2:after,
.select_box:after{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	z-index: 10;
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	color: #333;
	content: "\f0d7";
	pointer-events: none;
	background: #fff;
	box-sizing: border-box;
	padding: 7px 0;
}
*/

.textarea_box {
    width: 100%;
    height: 160px;
    box-sizing: border-box;
    padding: 8px 10px;
    border: 1px solid #ccc;
    -ms-box-shadow: inset 0 1px 0 0 rgba(0, 0, 0, 0.3);
    -o-box-shadow: inset 0 1px 0 0 rgba(0, 0, 0, 0.3);
    box-shadow: inset 0 1px 0 0 rgba(0, 0, 0, 0.3);
    border-radius: 4px;
    background: #ffc;
}

.cal_btn {
    display: none;
}

@media screen and (max-width: 767px) {
    .select_box2 .select_box {
        display: block;
    }

    /*
	.select_box2:after,
	.select_box:after{
		background: #2d3339;
		color: #fff;
		width: 40px;
		height: 40px;
		box-sizing: border-box;
		padding: 13px 16px;
		top: 7px;
		right: 0;
		text-align: center;
		vertical-align: middle;
		-webkit-border-top-right-radius: 4px;
		-webkit-border-bottom-right-radius: 4px;
		-moz-border-radius-topright: 4px;
		-moz-border-radius-bottomright: 4px;
		border-top-right-radius: 4px;
		border-bottom-right-radius: 4px;
	}
	*/
    .select_box > select,
    .input_box {
        width: 100%;
        min-width: 280px;
        font-size: 16px;
        border-radius: 2px;
        height: 40px;
    }

    .input_box2 {
        width: 100%;
        font-size: 16px;
        border-radius: 2px;
        height: 40px;
    }

    .select_box2 > select {
        width: 100%;
        font-size: 14px;
        border-radius: 2px;
        height: 40px;
    }

    .textarea_box {
        font-size: 16px;
        height: 100px;
        border-radius: 2px;
    }
}

.submit_box {
    position: relative;
    text-align: center;
    margin-top: 40px;
}

.submit_box .btn {
    font-size: 18px;
    padding: 20px 15px;
}

.submit_box .btn_back {
    position: absolute;
    top: 0;
    left: 0;
}

.submit_box .btn .fa:before {
    color: #fff;
}

.submit_box .btn_back .fa:before {
    color: #666666;
}

@media screen and (max-width: 767px) {
    .submit_box {
        margin-top: 20px;
    }

    .submit_box .btn {
        font-size: 16px;
        padding: 20px 30px;
        margin: 5px 0;
    }

    .submit_box .btn_back {
        position: relative;
        top: 0;
        left: 0;
        margin: 5px 0;
    }
}

@media (max-width: 767px) {
    #search {
        font-size: 16px;
    }
}

/*2-1-13. Error    [err_***]*/

/*2-1-14. UI*/

.movie {
    width: 100%;
    height: 360px;
}

@media screen and (max-width: 767px) {
    .movie {
        width: 100%;
        height: auto;
    }
}

/* 2-2. Utility
-------------------------------------------------- */

/*2-2-1. clearfix [ModernType]*/

#l_header:after,
.wrp_header:after,
#l_container:after,
#l_main:after,
#l_sub:after,
#l_footer:after,
.nav ul:after,
.wrp_container:after,
.lst_menu:after,
.clearfix:after {
    display: block;
    clear: both;
    content: "";
}

/*2-2-2. margin,padding [mb10,pt20]*/

/* margin  */

.m0 {
    margin: 0 !important;
}

.m5 {
    margin: 5px !important;
}

.m10 {
    margin: 10px !important;
}

.m15 {
    margin: 15px !important;
}

.m20 {
    margin: 20px !important;
}

.m25 {
    margin: 25px !important;
}

.m30 {
    margin: 30px !important;
}

.m35 {
    margin: 35px !important;
}

.m40 {
    margin: 40px !important;
}

.m45 {
    margin: 45px !important;
}

.m50 {
    margin: 50px !important;
}

.m55 {
    margin: 55px !important;
}

.m60 {
    margin: 60px !important;
}

.m65 {
    margin: 65px !important;
}

.m70 {
    margin: 70px !important;
}

.m75 {
    margin: 75px !important;
}

.m80 {
    margin: 80px !important;
}

.m85 {
    margin: 85px !important;
}

.m90 {
    margin: 90px !important;
}

.m95 {
    margin: 95px !important;
}

.m100 {
    margin: 100px !important;
}

/* margin-top */

.mt0 {
    margin-top: 0 !important;
}

.mt5 {
    margin-top: 5px !important;
}

.mt10 {
    margin-top: 10px !important;
}

.mt15 {
    margin-top: 15px !important;
}

.mt20 {
    margin-top: 20px !important;
}

.mt25 {
    margin-top: 25px !important;
}

.mt30 {
    margin-top: 30px !important;
}

.mt35 {
    margin-top: 35px !important;
}

.mt40 {
    margin-top: 40px !important;
}

.mt45 {
    margin-top: 45px !important;
}

.mt50 {
    margin-top: 50px !important;
}

.mt55 {
    margin-top: 55px !important;
}

.mt60 {
    margin-top: 60px !important;
}

.mt65 {
    margin-top: 65px !important;
}

.mt70 {
    margin-top: 70px !important;
}

.mt75 {
    margin-top: 75px !important;
}

.mt80 {
    margin-top: 80px !important;
}

.mt85 {
    margin-top: 85px !important;
}

.mt90 {
    margin-top: 90px !important;
}

.mt95 {
    margin-top: 95px !important;
}

.mt100 {
    margin-top: 100px !important;
}

.mt110 {
    margin-top: 110px !important;
}

.mt120 {
    margin-top: 120px !important;
}

.mt130 {
    margin-top: 130px !important;
}

.mt140 {
    margin-top: 140px !important;
}

.mt150 {
    margin-top: 150px !important;
}

/* margin-right */

.mr0 {
    margin-right: 0 !important;
}

.mr5 {
    margin-right: 5px !important;
}

.mr10 {
    margin-right: 10px !important;
}

.mr15 {
    margin-right: 15px !important;
}

.mr20 {
    margin-right: 20px !important;
}

.mr25 {
    margin-right: 25px !important;
}

.mr30 {
    margin-right: 30px !important;
}

.mr35 {
    margin-right: 35px !important;
}

.mr40 {
    margin-right: 40px !important;
}

.mr45 {
    margin-right: 45px !important;
}

.mr50 {
    margin-right: 50px !important;
}

.mr55 {
    margin-right: 55px !important;
}

.mr60 {
    margin-right: 60px !important;
}

.mr65 {
    margin-right: 65px !important;
}

.mr70 {
    margin-right: 70px !important;
}

.mr75 {
    margin-right: 75px !important;
}

.mr80 {
    margin-right: 80px !important;
}

.mr85 {
    margin-right: 85px !important;
}

.mr90 {
    margin-right: 90px !important;
}

.mr95 {
    margin-right: 95px !important;
}

.mr100 {
    margin-right: 100px !important;
}

/* margin-bottom */

.mb0 {
    margin-bottom: 0 !important;
}

.mb5 {
    margin-bottom: 5px !important;
}

.mb10 {
    margin-bottom: 10px !important;
}

.mb15 {
    margin-bottom: 15px !important;
}

.mb20 {
    margin-bottom: 20px !important;
}

.mb25 {
    margin-bottom: 25px !important;
}

.mb30 {
    margin-bottom: 30px !important;
}

.mb35 {
    margin-bottom: 35px !important;
}

.mb40 {
    margin-bottom: 40px !important;
}

.mb45 {
    margin-bottom: 45px !important;
}

.mb50 {
    margin-bottom: 50px !important;
}

.mb55 {
    margin-bottom: 55px !important;
}

.mb60 {
    margin-bottom: 60px !important;
}

.mb65 {
    margin-bottom: 65px !important;
}

.mb70 {
    margin-bottom: 70px !important;
}

.mb75 {
    margin-bottom: 75px !important;
}

.mb80 {
    margin-bottom: 80px !important;
}

.mb85 {
    margin-bottom: 85px !important;
}

.mb90 {
    margin-bottom: 90px !important;
}

.mb95 {
    margin-bottom: 95px !important;
}

.mb100 {
    margin-bottom: 100px !important;
}

.mb110 {
    margin-bottom: 110px !important;
}

.mb120 {
    margin-bottom: 120px !important;
}

/* margin-left */

.ml0 {
    margin-left: 0 !important;
}

.ml5 {
    margin-left: 5px !important;
}

.ml10 {
    margin-left: 10px !important;
}

.ml15 {
    margin-left: 15px !important;
}

.ml20 {
    margin-left: 20px !important;
}

.ml25 {
    margin-left: 25px !important;
}

.ml30 {
    margin-left: 30px !important;
}

.ml35 {
    margin-left: 35px !important;
}

.ml40 {
    margin-left: 40px !important;
}

.ml45 {
    margin-left: 45px !important;
}

.ml50 {
    margin-left: 50px !important;
}

.ml55 {
    margin-left: 55px !important;
}

.ml60 {
    margin-left: 60px !important;
}

.ml65 {
    margin-left: 65px !important;
}

.ml70 {
    margin-left: 70px !important;
}

.ml75 {
    margin-left: 75px !important;
}

.ml80 {
    margin-left: 80px !important;
}

.ml85 {
    margin-left: 85px !important;
}

.ml90 {
    margin-left: 90px !important;
}

.ml95 {
    margin-left: 95px !important;
}

.ml100 {
    margin-left: 100px !important;
}

/* padding */

.p0 {
    padding: 0 !important;
}

.p5 {
    padding: 5px !important;
}

.p10 {
    padding: 10px !important;
}

.p15 {
    padding: 15px !important;
}

.p20 {
    padding: 20px !important;
}

.p25 {
    padding: 25px !important;
}

.p30 {
    padding: 30px !important;
}

.p35 {
    padding: 35px !important;
}

.p40 {
    padding: 40px !important;
}

.p45 {
    padding: 45px !important;
}

.p50 {
    padding: 50px !important;
}

.p55 {
    padding: 55px !important;
}

.p60 {
    padding: 60px !important;
}

.p65 {
    padding: 65px !important;
}

.p70 {
    padding: 70px !important;
}

.p75 {
    padding: 75px !important;
}

.p80 {
    padding: 80px !important;
}

.p85 {
    padding: 85px !important;
}

.p90 {
    padding: 90px !important;
}

.p95 {
    padding: 95px !important;
}

.p100 {
    padding: 100px !important;
}

/* padding-top */

.pt0 {
    padding-top: 0 !important;
}

.pt5 {
    padding-top: 5px !important;
}

.pt10 {
    padding-top: 10px !important;
}

.pt15 {
    padding-top: 15px !important;
}

.pt20 {
    padding-top: 20px !important;
}

.pt25 {
    padding-top: 25px !important;
}

.pt30 {
    padding-top: 30px !important;
}

.pt35 {
    padding-top: 35px !important;
}

.pt40 {
    padding-top: 40px !important;
}

.pt45 {
    padding-top: 45px !important;
}

.pt50 {
    padding-top: 50px !important;
}

.pt55 {
    padding-top: 55px !important;
}

.pt60 {
    padding-top: 60px !important;
}

.pt65 {
    padding-top: 65px !important;
}

.pt70 {
    padding-top: 70px !important;
}

.pt75 {
    padding-top: 75px !important;
}

.pt80 {
    padding-top: 80px !important;
}

.pt85 {
    padding-top: 85px !important;
}

.pt90 {
    padding-top: 90px !important;
}

.pt95 {
    padding-top: 95px !important;
}

.pt100 {
    padding-top: 100px !important;
}

/* padding-right */

.pr0 {
    padding-right: 0 !important;
}

.pr5 {
    padding-right: 5px !important;
}

.pr10 {
    padding-right: 10px !important;
}

.pr15 {
    padding-right: 15px !important;
}

.pr20 {
    padding-right: 20px !important;
}

.pr25 {
    padding-right: 25px !important;
}

.pr30 {
    padding-right: 30px !important;
}

.pr35 {
    padding-right: 35px !important;
}

.pr40 {
    padding-right: 40px !important;
}

.pr45 {
    padding-right: 45px !important;
}

.pr50 {
    padding-right: 50px !important;
}

.pr55 {
    padding-right: 55px !important;
}

.pr60 {
    padding-right: 60px !important;
}

.pr65 {
    padding-right: 65px !important;
}

.pr70 {
    padding-right: 70px !important;
}

.pr75 {
    padding-right: 75px !important;
}

.pr80 {
    padding-right: 80px !important;
}

.pr85 {
    padding-right: 85px !important;
}

.pr90 {
    padding-right: 90px !important;
}

.pr95 {
    padding-right: 95px !important;
}

.pr100 {
    padding-right: 100px !important;
}

/* padding-bottom */

.pb0 {
    padding-bottom: 0 !important;
}

.pb5 {
    padding-bottom: 5px !important;
}

.pb10 {
    padding-bottom: 10px !important;
}

.pb15 {
    padding-bottom: 15px !important;
}

.pb20 {
    padding-bottom: 20px !important;
}

.pb25 {
    padding-bottom: 25px !important;
}

.pb30 {
    padding-bottom: 30px !important;
}

.pb35 {
    padding-bottom: 35px !important;
}

.pb40 {
    padding-bottom: 40px !important;
}

.pb45 {
    padding-bottom: 45px !important;
}

.pb50 {
    padding-bottom: 50px !important;
}

.pb55 {
    padding-bottom: 55px !important;
}

.pb60 {
    padding-bottom: 60px !important;
}

.pb65 {
    padding-bottom: 65px !important;
}

.pb70 {
    padding-bottom: 70px !important;
}

.pb75 {
    padding-bottom: 75px !important;
}

.pb80 {
    padding-bottom: 80px !important;
}

.pb85 {
    padding-bottom: 85px !important;
}

.pb90 {
    padding-bottom: 90px !important;
}

.pb95 {
    padding-bottom: 95px !important;
}

.pb100 {
    padding-bottom: 100px !important;
}

/* padding-left */

.pl0 {
    padding-left: 0 !important;
}

.pl5 {
    padding-left: 5px !important;
}

.pl10 {
    padding-left: 10px !important;
}

.pl15 {
    padding-left: 15px !important;
}

.pl20 {
    padding-left: 20px !important;
}

.pl25 {
    padding-left: 25px !important;
}

.pl30 {
    padding-left: 30px !important;
}

.pl35 {
    padding-left: 35px !important;
}

.pl40 {
    padding-left: 40px !important;
}

.pl45 {
    padding-left: 45px !important;
}

.pl50 {
    padding-left: 50px !important;
}

.pl55 {
    padding-left: 55px !important;
}

.pl60 {
    padding-left: 60px !important;
}

.pl65 {
    padding-left: 65px !important;
}

.pl70 {
    padding-left: 70px !important;
}

.pl75 {
    padding-left: 75px !important;
}

.pl80 {
    padding-left: 80px !important;
}

.pl85 {
    padding-left: 85px !important;
}

.pl90 {
    padding-left: 90px !important;
}

.pl95 {
    padding-left: 95px !important;
}

.pl100 {
    padding-left: 100px !important;
}

.mlrauto {
    margin-left: auto;
    margin-right: auto;
}

@media screen and (max-width: 767px) {
    /* margin  */
    .m0_sp {
        margin: 0 !important;
    }

    .m5_sp {
        margin: 5px !important;
    }

    .m10_sp {
        margin: 10px !important;
    }

    .m15_sp {
        margin: 15px !important;
    }

    .m20_sp {
        margin: 20px !important;
    }

    .m25_sp {
        margin: 25px !important;
    }

    .m30_sp {
        margin: 30px !important;
    }

    .m35_sp {
        margin: 35px !important;
    }

    .m40_sp {
        margin: 40px !important;
    }

    .m45_sp {
        margin: 45px !important;
    }

    .m50_sp {
        margin: 50px !important;
    }

    .m55_sp {
        margin: 55px !important;
    }

    .m60_sp {
        margin: 60px !important;
    }

    .m65_sp {
        margin: 65px !important;
    }

    .m70_sp {
        margin: 70px !important;
    }

    .m75_sp {
        margin: 75px !important;
    }

    .m80_sp {
        margin: 80px !important;
    }

    .m85_sp {
        margin: 85px !important;
    }

    .m90_sp {
        margin: 90px !important;
    }

    .m95_sp {
        margin: 95px !important;
    }

    .m100_sp {
        margin: 100px !important;
    }

    /* margin-top */
    .mt0_sp {
        margin-top: 0 !important;
    }

    .mt-5_sp {
        margin-top: -5px !important;
    }

    .mt-10_sp {
        margin-top: -10px !important;
    }

    .mt-15_sp {
        margin-top: -15px !important;
    }

    .mt-20_sp {
        margin-top: -20px !important;
    }

    .mt-25_sp {
        margin-top: -25px !important;
    }

    .mt-30_sp {
        margin-top: -30px !important;
    }

    .mt-35_sp {
        margin-top: -35px !important;
    }

    .mt-40_sp {
        margin-top: -40px !important;
    }

    .mt-45_sp {
        margin-top: -45px !important;
    }

    .mt-50_sp {
        margin-top: -50px !important;
    }

    .mt-55_sp {
        margin-top: -55px !important;
    }

    .mt-60_sp {
        margin-top: -60px !important;
    }

    .mt-65_sp {
        margin-top: -65px !important;
    }

    .mt-70_sp {
        margin-top: -70px !important;
    }

    .mt-75_sp {
        margin-top: -75px !important;
    }

    .mt-80_sp {
        margin-top: -80px !important;
    }

    .mt-85_sp {
        margin-top: -85px !important;
    }

    .mt-90_sp {
        margin-top: -90px !important;
    }

    .mt-95_sp {
        margin-top: -95px !important;
    }

    .mt-100_sp {
        margin-top: -100px !important;
    }

    .mt5_sp {
        margin-top: 5px !important;
    }

    .mt10_sp {
        margin-top: 10px !important;
    }

    .mt15_sp {
        margin-top: 15px !important;
    }

    .mt20_sp {
        margin-top: 20px !important;
    }

    .mt25_sp {
        margin-top: 25px !important;
    }

    .mt30_sp {
        margin-top: 30px !important;
    }

    .mt35_sp {
        margin-top: 35px !important;
    }

    .mt40_sp {
        margin-top: 40px !important;
    }

    .mt45_sp {
        margin-top: 45px !important;
    }

    .mt50_sp {
        margin-top: 50px !important;
    }

    .mt55_sp {
        margin-top: 55px !important;
    }

    .mt60_sp {
        margin-top: 60px !important;
    }

    .mt65_sp {
        margin-top: 65px !important;
    }

    .mt70_sp {
        margin-top: 70px !important;
    }

    .mt75_sp {
        margin-top: 75px !important;
    }

    .mt80_sp {
        margin-top: 80px !important;
    }

    .mt85_sp {
        margin-top: 85px !important;
    }

    .mt90_sp {
        margin-top: 90px !important;
    }

    .mt95_sp {
        margin-top: 95px !important;
    }

    .mt100_sp {
        margin-top: 100px !important;
    }

    /* margin-right */
    .mr0_sp {
        margin-right: 0 !important;
    }

    .mr5_sp {
        margin-right: 5px !important;
    }

    .mr10_sp {
        margin-right: 10px !important;
    }

    .mr15_sp {
        margin-right: 15px !important;
    }

    .mr20_sp {
        margin-right: 20px !important;
    }

    .mr25_sp {
        margin-right: 25px !important;
    }

    .mr30_sp {
        margin-right: 30px !important;
    }

    .mr35_sp {
        margin-right: 35px !important;
    }

    .mr40_sp {
        margin-right: 40px !important;
    }

    .mr45_sp {
        margin-right: 45px !important;
    }

    .mr50_sp {
        margin-right: 50px !important;
    }

    .mr55_sp {
        margin-right: 55px !important;
    }

    .mr60_sp {
        margin-right: 60px !important;
    }

    .mr65_sp {
        margin-right: 65px !important;
    }

    .mr70_sp {
        margin-right: 70px !important;
    }

    .mr75_sp {
        margin-right: 75px !important;
    }

    .mr80_sp {
        margin-right: 80px !important;
    }

    .mr85_sp {
        margin-right: 85px !important;
    }

    .mr90_sp {
        margin-right: 90px !important;
    }

    .mr95_sp {
        margin-right: 95px !important;
    }

    .mr100_sp {
        margin-right: 100px !important;
    }

    /* margin-bottom */
    .mb0_sp {
        margin-bottom: 0 !important;
    }

    .mb5_sp {
        margin-bottom: 5px !important;
    }

    .mb10_sp {
        margin-bottom: 10px !important;
    }

    .mb15_sp {
        margin-bottom: 15px !important;
    }

    .mb20_sp {
        margin-bottom: 20px !important;
    }

    .mb25_sp {
        margin-bottom: 25px !important;
    }

    .mb30_sp {
        margin-bottom: 30px !important;
    }

    .mb35_sp {
        margin-bottom: 35px !important;
    }

    .mb40_sp {
        margin-bottom: 40px !important;
    }

    .mb45_sp {
        margin-bottom: 45px !important;
    }

    .mb50_sp {
        margin-bottom: 50px !important;
    }

    .mb55_sp {
        margin-bottom: 55px !important;
    }

    .mb60_sp {
        margin-bottom: 60px !important;
    }

    .mb65_sp {
        margin-bottom: 65px !important;
    }

    .mb70_sp {
        margin-bottom: 70px !important;
    }

    .mb75_sp {
        margin-bottom: 75px !important;
    }

    .mb80_sp {
        margin-bottom: 80px !important;
    }

    .mb85_sp {
        margin-bottom: 85px !important;
    }

    .mb90_sp {
        margin-bottom: 90px !important;
    }

    .mb95_sp {
        margin-bottom: 95px !important;
    }

    .mb100_sp {
        margin-bottom: 100px !important;
    }

    /* margin-left */
    .ml0_sp {
        margin-left: 0 !important;
    }

    .ml5_sp {
        margin-left: 5px !important;
    }

    .ml10_sp {
        margin-left: 10px !important;
    }

    .ml15_sp {
        margin-left: 15px !important;
    }

    .ml20_sp {
        margin-left: 20px !important;
    }

    .ml25_sp {
        margin-left: 25px !important;
    }

    .ml30_sp {
        margin-left: 30px !important;
    }

    .ml35_sp {
        margin-left: 35px !important;
    }

    .ml40_sp {
        margin-left: 40px !important;
    }

    .ml45_sp {
        margin-left: 45px !important;
    }

    .ml50_sp {
        margin-left: 50px !important;
    }

    .ml55_sp {
        margin-left: 55px !important;
    }

    .ml60_sp {
        margin-left: 60px !important;
    }

    .ml65_sp {
        margin-left: 65px !important;
    }

    .ml70_sp {
        margin-left: 70px !important;
    }

    .ml75_sp {
        margin-left: 75px !important;
    }

    .ml80_sp {
        margin-left: 80px !important;
    }

    .ml85_sp {
        margin-left: 85px !important;
    }

    .ml90_sp {
        margin-left: 90px !important;
    }

    .ml95_sp {
        margin-left: 95px !important;
    }

    .ml100_sp {
        margin-left: 100px !important;
    }

    /* padding */
    .p0_sp {
        padding: 0 !important;
    }

    .p5_sp {
        padding: 5px !important;
    }

    .p10_sp {
        padding: 10px !important;
    }

    .p15_sp {
        padding: 15px !important;
    }

    .p20_sp {
        padding: 20px !important;
    }

    .p25_sp {
        padding: 25px !important;
    }

    .p30_sp {
        padding: 30px !important;
    }

    .p35_sp {
        padding: 35px !important;
    }

    .p40_sp {
        padding: 40px !important;
    }

    .p45_sp {
        padding: 45px !important;
    }

    .p50_sp {
        padding: 50px !important;
    }

    .p55_sp {
        padding: 55px !important;
    }

    .p60_sp {
        padding: 60px !important;
    }

    .p65_sp {
        padding: 65px !important;
    }

    .p70_sp {
        padding: 70px !important;
    }

    .p75_sp {
        padding: 75px !important;
    }

    .p80_sp {
        padding: 80px !important;
    }

    .p85_sp {
        padding: 85px !important;
    }

    .p90_sp {
        padding: 90px !important;
    }

    .p95_sp {
        padding: 95px !important;
    }

    .p100_sp {
        padding: 100px !important;
    }

    /* padding-top */
    .pt0_sp {
        padding-top: 0 !important;
    }

    .pt5_sp {
        padding-top: 5px !important;
    }

    .pt10_sp {
        padding-top: 10px !important;
    }

    .pt15_sp {
        padding-top: 15px !important;
    }

    .pt20_sp {
        padding-top: 20px !important;
    }

    .pt25_sp {
        padding-top: 25px !important;
    }

    .pt30_sp {
        padding-top: 30px !important;
    }

    .pt35_sp {
        padding-top: 35px !important;
    }

    .pt40_sp {
        padding-top: 40px !important;
    }

    .pt45_sp {
        padding-top: 45px !important;
    }

    .pt50_sp {
        padding-top: 50px !important;
    }

    .pt55_sp {
        padding-top: 55px !important;
    }

    .pt60_sp {
        padding-top: 60px !important;
    }

    .pt65_sp {
        padding-top: 65px !important;
    }

    .pt70_sp {
        padding-top: 70px !important;
    }

    .pt75_sp {
        padding-top: 75px !important;
    }

    .pt80_sp {
        padding-top: 80px !important;
    }

    .pt85_sp {
        padding-top: 85px !important;
    }

    .pt90_sp {
        padding-top: 90px !important;
    }

    .pt95_sp {
        padding-top: 95px !important;
    }

    .pt100_sp {
        padding-top: 100px !important;
    }

    /* padding-right */
    .pr0_sp {
        padding-right: 0 !important;
    }

    .pr5_sp {
        padding-right: 5px !important;
    }

    .pr10_sp {
        padding-right: 10px !important;
    }

    .pr15_sp {
        padding-right: 15px !important;
    }

    .pr20_sp {
        padding-right: 20px !important;
    }

    .pr25_sp {
        padding-right: 25px !important;
    }

    .pr30_sp {
        padding-right: 30px !important;
    }

    .pr35_sp {
        padding-right: 35px !important;
    }

    .pr40_sp {
        padding-right: 40px !important;
    }

    .pr45_sp {
        padding-right: 45px !important;
    }

    .pr50_sp {
        padding-right: 50px !important;
    }

    .pr55_sp {
        padding-right: 55px !important;
    }

    .pr60_sp {
        padding-right: 60px !important;
    }

    .pr65_sp {
        padding-right: 65px !important;
    }

    .pr70_sp {
        padding-right: 70px !important;
    }

    .pr75_sp {
        padding-right: 75px !important;
    }

    .pr80_sp {
        padding-right: 80px !important;
    }

    .pr85_sp {
        padding-right: 85px !important;
    }

    .pr90_sp {
        padding-right: 90px !important;
    }

    .pr95_sp {
        padding-right: 95px !important;
    }

    .pr100_sp {
        padding-right: 100px !important;
    }

    /* padding-bottom */
    .pb0_sp {
        padding-bottom: 0 !important;
    }

    .pb5_sp {
        padding-bottom: 5px !important;
    }

    .pb10_sp {
        padding-bottom: 10px !important;
    }

    .pb15_sp {
        padding-bottom: 15px !important;
    }

    .pb20_sp {
        padding-bottom: 20px !important;
    }

    .pb25_sp {
        padding-bottom: 25px !important;
    }

    .pb30_sp {
        padding-bottom: 30px !important;
    }

    .pb35_sp {
        padding-bottom: 35px !important;
    }

    .pb40_sp {
        padding-bottom: 40px !important;
    }

    .pb45_sp {
        padding-bottom: 45px !important;
    }

    .pb50_sp {
        padding-bottom: 50px !important;
    }

    .pb55_sp {
        padding-bottom: 55px !important;
    }

    .pb60_sp {
        padding-bottom: 60px !important;
    }

    .pb65_sp {
        padding-bottom: 65px !important;
    }

    .pb70_sp {
        padding-bottom: 70px !important;
    }

    .pb75_sp {
        padding-bottom: 75px !important;
    }

    .pb80_sp {
        padding-bottom: 80px !important;
    }

    .pb85_sp {
        padding-bottom: 85px !important;
    }

    .pb90_sp {
        padding-bottom: 90px !important;
    }

    .pb95_sp {
        padding-bottom: 95px !important;
    }

    .pb100_sp {
        padding-bottom: 100px !important;
    }

    /* padding-left */
    .pl0_sp {
        padding-left: 0 !important;
    }

    .pl5_sp {
        padding-left: 5px !important;
    }

    .pl10_sp {
        padding-left: 10px !important;
    }

    .pl15_sp {
        padding-left: 15px !important;
    }

    .pl20_sp {
        padding-left: 20px !important;
    }

    .pl25_sp {
        padding-left: 25px !important;
    }

    .pl30_sp {
        padding-left: 30px !important;
    }

    .pl35_sp {
        padding-left: 35px !important;
    }

    .pl40_sp {
        padding-left: 40px !important;
    }

    .pl45_sp {
        padding-left: 45px !important;
    }

    .pl50_sp {
        padding-left: 50px !important;
    }

    .pl55_sp {
        padding-left: 55px !important;
    }

    .pl60_sp {
        padding-left: 60px !important;
    }

    .pl65_sp {
        padding-left: 65px !important;
    }

    .pl70_sp {
        padding-left: 70px !important;
    }

    .pl75_sp {
        padding-left: 75px !important;
    }

    .pl80_sp {
        padding-left: 80px !important;
    }

    .pl85_sp {
        padding-left: 85px !important;
    }

    .pl90_sp {
        padding-left: 90px !important;
    }

    .pl95_sp {
        padding-left: 95px !important;
    }

    .pl100_sp {
        padding-left: 100px !important;
    }

    .mlrauto_sp {
        margin-left: auto;
        margin-right: auto;
    }
}

/* width */

.w1per {
    width: 1% !important;
}

.w2per {
    width: 2% !important;
}

.w3per {
    width: 3% !important;
}

.w4per {
    width: 4% !important;
}

.w5per {
    width: 5% !important;
}

.w6per {
    width: 6% !important;
}

.w7per {
    width: 7% !important;
}

.w8per {
    width: 8% !important;
}

.w9per {
    width: 9% !important;
}

.w10per {
    width: 10% !important;
}

.w11per {
    width: 11% !important;
}

.w12per {
    width: 12% !important;
}

.w13per {
    width: 13% !important;
}

.w14per {
    width: 14% !important;
}

.w15per {
    width: 15% !important;
}

.w16per {
    width: 16% !important;
}

.w17per {
    width: 17% !important;
}

.w18per {
    width: 18% !important;
}

.w19per {
    width: 19% !important;
}

.w20per {
    width: 20% !important;
}

.w21per {
    width: 21% !important;
}

.w22per {
    width: 22% !important;
}

.w23per {
    width: 23% !important;
}

.w24per {
    width: 24% !important;
}

.w25per {
    width: 25% !important;
}

.w26per {
    width: 26% !important;
}

.w27per {
    width: 27% !important;
}

.w28per {
    width: 28% !important;
}

.w29per {
    width: 29% !important;
}

.w30per {
    width: 30% !important;
}

.w31per {
    width: 31% !important;
}

.w32per {
    width: 32% !important;
}

.w33per {
    width: 33% !important;
}

.w34per {
    width: 34% !important;
}

.w35per {
    width: 35% !important;
}

.w36per {
    width: 36% !important;
}

.w37per {
    width: 37% !important;
}

.w38per {
    width: 38% !important;
}

.w39per {
    width: 39% !important;
}

.w40per {
    width: 40% !important;
}

.w41per {
    width: 41% !important;
}

.w42per {
    width: 42% !important;
}

.w43per {
    width: 43% !important;
}

.w44per {
    width: 44% !important;
}

.w45per {
    width: 45% !important;
}

.w46per {
    width: 46% !important;
}

.w47per {
    width: 47% !important;
}

.w48per {
    width: 48% !important;
}

.w49per {
    width: 49% !important;
}

.w50per {
    width: 50% !important;
}

.w51per {
    width: 51% !important;
}

.w52per {
    width: 52% !important;
}

.w53per {
    width: 53% !important;
}

.w54per {
    width: 54% !important;
}

.w55per {
    width: 55% !important;
}

.w56per {
    width: 56% !important;
}

.w57per {
    width: 57% !important;
}

.w58per {
    width: 58% !important;
}

.w59per {
    width: 59% !important;
}

.w60per {
    width: 60% !important;
}

.w61per {
    width: 61% !important;
}

.w62per {
    width: 62% !important;
}

.w63per {
    width: 63% !important;
}

.w64per {
    width: 64% !important;
}

.w65per {
    width: 65% !important;
}

.w66per {
    width: 66% !important;
}

.w67per {
    width: 67% !important;
}

.w68per {
    width: 68% !important;
}

.w69per {
    width: 69% !important;
}

.w70per {
    width: 70% !important;
}

.w71per {
    width: 71% !important;
}

.w72per {
    width: 72% !important;
}

.w73per {
    width: 73% !important;
}

.w74per {
    width: 74% !important;
}

.w75per {
    width: 75% !important;
}

.w76per {
    width: 76% !important;
}

.w77per {
    width: 77% !important;
}

.w78per {
    width: 78% !important;
}

.w79per {
    width: 79% !important;
}

.w80per {
    width: 80% !important;
}

.w81per {
    width: 81% !important;
}

.w82per {
    width: 82% !important;
}

.w83per {
    width: 83% !important;
}

.w84per {
    width: 84% !important;
}

.w85per {
    width: 85% !important;
}

.w86per {
    width: 86% !important;
}

.w87per {
    width: 87% !important;
}

.w88per {
    width: 88% !important;
}

.w89per {
    width: 89% !important;
}

.w90per {
    width: 90% !important;
}

.w91per {
    width: 91% !important;
}

.w92per {
    width: 92% !important;
}

.w93per {
    width: 93% !important;
}

.w94per {
    width: 94% !important;
}

.w95per {
    width: 95% !important;
}

.w96per {
    width: 96% !important;
}

.w97per {
    width: 97% !important;
}

.w98per {
    width: 98% !important;
}

.w99per {
    width: 99% !important;
}

.w100per {
    width: 100% !important;
}

.wauto {
    width: auto !important;
}

@media screen and (max-width: 767px) {
    .w1per_sp {
        width: 1% !important;
    }

    .w2per_sp {
        width: 2% !important;
    }

    .w3per_sp {
        width: 3% !important;
    }

    .w4per_sp {
        width: 4% !important;
    }

    .w5per_sp {
        width: 5% !important;
    }

    .w6per_sp {
        width: 6% !important;
    }

    .w7per_sp {
        width: 7% !important;
    }

    .w8per_sp {
        width: 8% !important;
    }

    .w9per_sp {
        width: 9% !important;
    }

    .w10per_sp {
        width: 10% !important;
    }

    .w11per_sp {
        width: 11% !important;
    }

    .w12per_sp {
        width: 12% !important;
    }

    .w13per_sp {
        width: 13% !important;
    }

    .w14per_sp {
        width: 14% !important;
    }

    .w15per_sp {
        width: 15% !important;
    }

    .w16per_sp {
        width: 16% !important;
    }

    .w17per_sp {
        width: 17% !important;
    }

    .w18per_sp {
        width: 18% !important;
    }

    .w19per_sp {
        width: 19% !important;
    }

    .w20per_sp {
        width: 20% !important;
    }

    .w21per_sp {
        width: 21% !important;
    }

    .w22per_sp {
        width: 22% !important;
    }

    .w23per_sp {
        width: 23% !important;
    }

    .w24per_sp {
        width: 24% !important;
    }

    .w25per_sp {
        width: 25% !important;
    }

    .w26per_sp {
        width: 26% !important;
    }

    .w27per_sp {
        width: 27% !important;
    }

    .w28per_sp {
        width: 28% !important;
    }

    .w29per_sp {
        width: 29% !important;
    }

    .w30per_sp {
        width: 30% !important;
    }

    .w31per_sp {
        width: 31% !important;
    }

    .w32per_sp {
        width: 32% !important;
    }

    .w33per_sp {
        width: 33% !important;
    }

    .w34per_sp {
        width: 34% !important;
    }

    .w35per_sp {
        width: 35% !important;
    }

    .w36per_sp {
        width: 36% !important;
    }

    .w37per_sp {
        width: 37% !important;
    }

    .w38per_sp {
        width: 38% !important;
    }

    .w39per_sp {
        width: 39% !important;
    }

    .w40per_sp {
        width: 40% !important;
    }

    .w41per_sp {
        width: 41% !important;
    }

    .w42per_sp {
        width: 42% !important;
    }

    .w43per_sp {
        width: 43% !important;
    }

    .w44per_sp {
        width: 44% !important;
    }

    .w45per_sp {
        width: 45% !important;
    }

    .w46per_sp {
        width: 46% !important;
    }

    .w47per_sp {
        width: 47% !important;
    }

    .w48per_sp {
        width: 48% !important;
    }

    .w49per_sp {
        width: 49% !important;
    }

    .w50per_sp {
        width: 50% !important;
    }

    .w51per_sp {
        width: 51% !important;
    }

    .w52per_sp {
        width: 52% !important;
    }

    .w53per_sp {
        width: 53% !important;
    }

    .w54per_sp {
        width: 54% !important;
    }

    .w55per_sp {
        width: 55% !important;
    }

    .w56per_sp {
        width: 56% !important;
    }

    .w57per_sp {
        width: 57% !important;
    }

    .w58per_sp {
        width: 58% !important;
    }

    .w59per_sp {
        width: 59% !important;
    }

    .w60per_sp {
        width: 60% !important;
    }

    .w61per_sp {
        width: 61% !important;
    }

    .w62per_sp {
        width: 62% !important;
    }

    .w63per_sp {
        width: 63% !important;
    }

    .w64per_sp {
        width: 64% !important;
    }

    .w65per_sp {
        width: 65% !important;
    }

    .w66per_sp {
        width: 66% !important;
    }

    .w67per_sp {
        width: 67% !important;
    }

    .w68per_sp {
        width: 68% !important;
    }

    .w69per_sp {
        width: 69% !important;
    }

    .w70per_sp {
        width: 70% !important;
    }

    .w71per_sp {
        width: 71% !important;
    }

    .w72per_sp {
        width: 72% !important;
    }

    .w73per_sp {
        width: 73% !important;
    }

    .w74per_sp {
        width: 74% !important;
    }

    .w75per_sp {
        width: 75% !important;
    }

    .w76per_sp {
        width: 76% !important;
    }

    .w77per_sp {
        width: 77% !important;
    }

    .w78per_sp {
        width: 78% !important;
    }

    .w79per_sp {
        width: 79% !important;
    }

    .w80per_sp {
        width: 80% !important;
    }

    .w81per_sp {
        width: 81% !important;
    }

    .w82per_sp {
        width: 82% !important;
    }

    .w83per_sp {
        width: 83% !important;
    }

    .w84per_sp {
        width: 84% !important;
    }

    .w85per_sp {
        width: 85% !important;
    }

    .w86per_sp {
        width: 86% !important;
    }

    .w87per_sp {
        width: 87% !important;
    }

    .w88per_sp {
        width: 88% !important;
    }

    .w89per_sp {
        width: 89% !important;
    }

    .w90per_sp {
        width: 90% !important;
    }

    .w91per_sp {
        width: 91% !important;
    }

    .w92per_sp {
        width: 92% !important;
    }

    .w93per_sp {
        width: 93% !important;
    }

    .w94per_sp {
        width: 94% !important;
    }

    .w95per_sp {
        width: 95% !important;
    }

    .w96per_sp {
        width: 96% !important;
    }

    .w97per_sp {
        width: 97% !important;
    }

    .w98per_sp {
        width: 98% !important;
    }

    .w99per_sp {
        width: 99% !important;
    }

    .w100per_sp {
        width: 100% !important;
    }

    .wauto_sp {
        width: auto !important;
    }
}

/*2-2-3. Object-Oriented CSS [OOCSS]*/

.no_display {
    display: none;
}

.no_br {
    white-space: nowrap;
}

.no_line-height {
    line-height: 1 !important;
}

.pull_left {
    float: left !important;
}

.pull_right {
    float: right !important;
}

.pull_off {
    float: none !important;
}

.right {
    text-align: right !important;
}

.center {
    text-align: center !important;
}

.left {
    text-align: left !important;
}

.top {
    vertical-align: top !important;
}

.middle {
    vertical-align: middle !important;
}

.bottom {
    vertical-align: bottom !important;
}

.block-center {
    margin-left: auto !important;
    margin-right: auto !important;
}

.dspB {
    display: block;
}

.dspI {
    display: inline;
}

.dspIB {
    display: inline-block;
}

.dspT {
    display: table;
    table-layout: fixed;
    width: 100%;
}

.dspTC {
    display: table-cell;
}

.ulist01 li {
    margin: 0 0 0 1em;
    padding: 0 0 3px 0;
    text-indent: -1em;
}

.ulist01 li:before {
    content: "・";
}

@media screen and (max-width: 767px) {
    .no_display_sp {
        display: none;
    }

    .no_br_sp {
        white-space: nowrap;
    }

    .no_line-height_sp {
        line-height: 1 !important;
    }

    .pull_left_sp {
        float: left !important;
    }

    .pull_right_sp {
        float: right !important;
    }

    .right_sp {
        text-align: right !important;
    }

    .center_sp {
        text-align: center !important;
    }

    .left_sp {
        text-align: left !important;
    }

    .top_sp {
        vertical-align: top !important;
    }

    .middle_sp {
        vertical-align: middle !important;
    }

    .bottom_sp {
        vertical-align: bottom !important;
    }

    .block-center_sp {
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .dspB_sp {
        display: block;
    }

    .dspI_sp {
        display: inline;
    }

    .dspIB_sp {
        display: inline-block;
    }

    .dspT_sp {
        display: table;
        table-layout: fixed;
        width: 100%;
    }

    .dspTC_sp {
        display: table-cell;
    }
}

.front-image {
    margin: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* for RWD */

.photo {
    border: 1px solid #eeeeee;
    max-height: 80px;
    max-width: 80px;
}

.fluid_image {
    max-width: 100%;
    /*width:100%;*/
    max-height: 100%;
}

@-moz-document url-prefix() {
    .fluid_image {
        /*width: 100%;*/
        /*max-width: -moz-max-content;*/
    }
}

.full_image {
    width: 100%;
    height: auto;
}

/* 2-2-4. Grid System [grid_***] */

.wrp_grid,
.row {
    box-sizing: border-box;
}

.wrp_grid:after,
.row:after {
    clear: both;
    content: " ";
    display: table;
}

.grid_1,
.grid_2,
.grid_3,
.grid_4,
.grid_5,
.grid_6,
.grid_7,
.grid_8,
.grid_9,
.grid_10,
.grid_11,
.grid_12,
.grid_1_sp,
.grid_2_sp,
.grid_3_sp,
.grid_4_sp,
.grid_5_sp,
.grid_6_sp,
.grid_7_sp,
.grid_8_sp,
.grid_9_sp,
.grid_10_sp,
.grid_11_sp,
.grid_12_sp {
    box-sizing: border-box;
    float: left;
}

.map_search:before {
    content: "　";
}

/* Column Grid 0 - 767px
-----------------------------------------------------------------------------

col 1:    8.33333333333%
col 2:    16.6666666667%
col 3:    25.0%
col 4:    33.3333333333%
col 5:    41.6666666667%
col 6:    50.0%
col 7:    58.3333333333%
col 8:    66.6666666667%
col 9:    75.0%
col 10:    83.3333333333%
col 11:    91.6666666667%
col 12:    100%

----------------------------------------------------------------------------- */

@media screen and (max-width: 767px) {
    .wrp_grid {
        margin-left: -5px;
        margin-right: -5px;
    }

    .grid_1,
    .grid_2,
    .grid_3,
    .grid_4,
    .grid_5,
    .grid_6,
    .grid_7,
    .grid_8,
    .grid_9,
    .grid_10,
    .grid_11,
    .grid_12,
    .grid_1_sp,
    .grid_2_sp,
    .grid_3_sp,
    .grid_4_sp,
    .grid_5_sp,
    .grid_6_sp,
    .grid_7_sp,
    .grid_8_sp,
    .grid_9_sp,
    .grid_10_sp,
    .grid_11_sp,
    .grid_12_sp {
        width: 100%;
        padding: 0 5px;
    }

    .grid_1_sp {
        width: 8.33333%;
    }

    .grid_2_sp {
        width: 16.66667%;
    }

    .grid_3_sp {
        width: 25%;
    }

    .grid_4_sp {
        width: 33.3333333%;
    }

    .grid_5_sp {
        width: 41.66667%;
    }

    .grid_6_sp {
        width: 50%;
    }

    .grid_7_sp {
        width: 58.33333%;
    }

    .grid_8_sp {
        width: 66.66667%;
    }

    .grid_9_sp {
        width: 75%;
    }

    .grid_10_sp {
        width: 83.33333%;
    }

    .grid_11_sp {
        width: 91.66667%;
    }

    .grid_12_sp {
        width: 100%;
    }
}

/*  Column Grid 768px - Infinity
-----------------------------------------------------------------------------

col 1:    8.33333333333%
col 2:    16.6666666667%
col 3:    25.0%
col 4:    33.3333333333%
col 5:    41.6666666667%
col 6:    50.0%
col 7:    58.3333333333%
col 8:    66.6666666667%
col 9:    75.0%
col 10:    83.3333333333%
col 11:    91.6666666667%
col 12:    100%

----------------------------------------------------------------------------- */

@media (min-width: 768px), print {
    .wrp_grid {
        margin-left: -15px;
        margin-right: -15px;
    }

    .grid_1,
    .grid_2,
    .grid_2_2,
    .grid_3,
    .grid_4,
    .grid_5,
    .grid_6,
    .grid_7,
    .grid_8,
    .grid_9,
    .grid_10,
    .grid_11,
    .grid_12 {
        padding: 0 15px;
    }

    .grid_1 {
        width: 8.33333333333%;
    }

    .grid_2 {
        width: 16.6666666667%;
    }

    .grid_2_2 {
        width: 20%;
    }

    .grid_3 {
        width: 25%;
    }

    .grid_4 {
        width: 33.3333333333%;
    }

    .grid_5 {
        width: 41.6666666667%;
    }

    .grid_6 {
        width: 50%;
    }

    .grid_7 {
        width: 58.3333333333%;
    }

    .grid_8 {
        width: 66.6666666667%;
    }

    .grid_9 {
        width: 75%;
    }

    .grid_10 {
        width: 83.3333333333%;
    }

    .grid_11 {
        width: 91.6666666667%;
    }

    .grid_12 {
        width: 100%;
    }

    .pd-area-01 {
        padding: 5px 15px;
        margin-bottom: 0 !important;
    }

    .ml-area-02 {
        margin-left: 15px;
    }

    #extra_info {
        margin-left: 0;
        margin-bottom: 20px;
    }

    .extra_info_content {
        display: flex;
        flex-wrap: wrap;
        grid-gap: 50px;
    }

    .extra_info_content div {
        /* width: 300px; */
    }

    .item-extra {
        display: block !important;
    }

    #sp_extra_info_list {
        display: none;
    }
}

/* 2-2-5. WebFont [FontAwesome] */

@font-face {
    font-family: "FontAwesome";
    src: url("/resource/fonts/fontawesome-webfont.eot?v=4.5.0");
    src: url("/resource/fonts/fontawesome-webfont.eot?#iefix&v=4.5.0")
            format("embedded-opentype"),
        url("/resource/fonts/fontawesome-webfont.woff2?v=4.5.0") format("woff2"),
        url("/resource/fonts/fontawesome-webfont.woff?v=4.5.0") format("woff"),
        url("/resource/fonts/fontawesome-webfont.ttf?v=4.5.0")
            format("truetype"),
        url("/resource/fonts/fontawesome-webfont.svg?v=4.5.0#fontawesomeregular")
            format("svg");
    font-weight: normal;
    font-style: normal;
}

.fa {
    font-style: normal;
}

.fa:before {
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    margin-right: 5px;
    color: #a4002c;
}

.fa-bold {
    font-style: normal;
}

.fa-bold:before {
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    font-weight: bold;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    margin-right: 5px;
    color: #a4002c;
}

.sub_category_navi .fa:before {
    color: #fff;
    padding-left: 3px;
}

.a-default {
    color: blue !important;
    text-decoration: underline;
}

/* 使用するもののみ追加
https://fortawesome.github.io/Font-Awesome/assets/font-awesome/css/font-awesome.css
*/

.fa-file-pdf-o:before {
    content: "\f1c1";
}

.fa-chevron-circle-right:before {
    content: "\f138";
}

.fa-phone:before {
    content: "\f095";
}

.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
    content: "\f0c9";
}

.fa-chevron-right:before {
    content: "\f054";
}

.fa-chevron-left:before {
    content: "\f053";
}

.fa-chevron-up:before {
    content: "\f077";
}

.fa-chevron-down:before {
    content: "\f078";
}

.fa-caret-right:before {
    content: "\f0da";
}

.fa-caret-down:before {
    content: "\f0d7";
}

.fa-map-marker:before {
    content: "\f041";
}

.fa-search:before {
    content: "\f002";
}

.fa-search-plus:before {
    content: "\f00e";
}

.fa-desktop:before {
    content: "\f108";
}

.fa-chevron-circle-left:before {
    content: "\f137";
}

.fa-home:before {
    content: "\f015";
}

.fa-warning:before,
.fa-exclamation-triangle:before {
    content: "\f071";
}

.fa-clone:before {
    content: "\f24d";
}

.fa-arrow-circle-right:before {
    content: "\f0a9";
}

.fa-arrow-down:before {
    content: "\f063";
}

.fa-arrow-left:before {
    content: "\f060";
}

.fa-arrow-right:before {
    content: "\f061";
}

.fa-arrow-up:before {
    content: "\f062";
}

.fa-share-square-o:before {
    content: "\f045";
}

.fa-video:before {
    content: "\f16a";
}

.fa-external-link:before {
    content: "\f08e";
}

.fa-desktop:before {
    content: "\f108";
}

.fa-lock:before {
    content: "\f023";
}

.fa-letter:before {
    content: "\f0f6";
}

.fa-angle-up:before {
    content: "\f106";
}

.fa-angle-down:before {
    content: "\f107";
}

.fa-angle-left:before {
    content: "\f104";
}

.fa-angle-right:before {
    content: "\f105";
}

.fa-play:before {
    content: "\f04b";
}

.fa-comments:before {
    content: "\f086";
}

.fa-question-circle:before {
    content: "\f059";
}

.fa-check:before {
    content: "\f00c";
}

.fa-rotate-left:before,
.fa-undo:before {
    content: "\f0e2";
}

.fa-envelope:before {
    content: "\f0e0";
}

.fa-envelope-o:before {
    content: "\f003";
}

.fa-facebook:before {
    content: "\f09a";
}

.fa-twitter:before {
    content: "\f099";
}

.fa-info-circle:before {
    content: "\f05a";
}

.fa-train:before {
    content: "\f238";
}

.fa-clock-o:before {
    content: "\f017";
}

.fa-bus:before {
    content: "\f207";
}

.fa-jpy:before {
    content: "\f157";
}

.fa-question-circle:before {
    content: "\f059";
}

.fa-trash:before {
    content: "\f1f8";
}

.fa-rotate-right:before {
    content: "\f01e";
}

.fa-angle-double-left:before {
    content: "\f100";
}

.fa-angle-double-right:before {
    content: "\f101";
}

.fa_glyph:before {
    content: "\f005";
}

.fa_zoom:before {
    content: "\f00e";
}

.fa-home:before {
    content: "\f015";
}

.fa-floor_plan:before {
    content: "\f015";
}

.fa-flag:before {
    content: "\f024";
}

.fa-close:before {
    content: "\f00d";
}

/*2-2-6. Backgrounds [bg_***]*/

.bg_light {
    background-color: #f5f5f5;
}

.bg_white {
    background-color: #fff;
}

/*2-2-7. Font size [fs_***]*/

.fs_18 {
    font-size: 18px;
}

.fs_16 {
    font-size: 16px;
}

.fs_14 {
    font-size: 14px;
}

.fs_12 {
    font-size: 12px;
}

.popup-area-pc {
    width: 350px !important;
}

@media (max-width: 767px) {
    .fs_18_sp {
        font-size: 18px;
    }

    .fs_16_sp {
        font-size: 16px;
    }

    .fs_14_sp {
        font-size: 14px;
    }

    .fs_12_sp {
        font-size: 12px;
    }
}

/* 2-2-8. Visibility [visible_***] */
@media (max-width: 930px) {
    .fav_visible_tb {
        display: block;
    }

    #visible_tb_shop_tel_a_1 {
        pointer-events: visible !important;
        min-width: 0;
        padding: 8px 10px 12px;
        background: #313336;
        box-sizing: border-box;
        border-radius: 3px;
        box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.75);
    }

    #visible_tb_shop_tel_a_1 .fa::before {
        font-size: 15px !important;
    }

    #visible_tb_shop_tel_a_1 .fa span {
        font-size: 15px !important;
    }

    .box_contact_project
        > .box_contact_project__phone:hover
        #visible_tb_shop_tel_a_1 {
        cursor: pointer !important;
        pointer-events: visible;
    }

    .fav_visible_pc {
        display: none;
    }
}

@media (min-width: 930px) {
    .fav_visible_tb {
        display: none;
    }

    .fav_visible_pc {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
}

@media (max-width: 767px) {
    #visible_tb_shop_tel_a_1 {
        min-width: 0;
        padding: 12px 8px 12px;
        background: #313336;
        box-sizing: border-box;
        border-radius: 3px;
        box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.75);
    }

    #visible_tb_shop_tel_a_1 .fa span {
        font-size: 12px !important;
    }

    #visible_tb_shop_tel_a_1 .fa::before {
        font-size: 12px !important;
    }

    .visible_inline_sp {
        display: inline-block !important;
    }

    .visible_sp {
        display: block !important;
    }

    .visible_pc,
    .visible_inline_pc {
        display: none !important;
    }

    .ml-area-02 {
        margin-left: 10px;
        padding: 10px;
        margin-bottom: 10px;
        background: #f2f2f2;
        position: relative;
        width: 80%;
    }

    .sp_event_area .fa-caret-right:before {
        color: #a4002c !important;
    }

    #extra_info_list {
        display: none;
    }

    #sp_extra_info_list {
        display: block;
        margin-top: 10px;
    }

    #sp_extra_info_list .extra_info_content {
        display: flex;
        flex-flow: wrap;
    }

    .ml-area-02 a {
        padding: 0 !important;
        display: inline !important;
    }
}

@media (max-width: 400px) {
    .ml-area-02 {
        font-size: 12px;
    }
}

@media (max-width: 320px) {
    .ml-area-02 {
        margin-left: 10px;
        padding: 10px;
        margin-bottom: 10px;
        background: #f2f2f2;
        position: relative;
        width: 100%;
        font-size: 12px;
    }
}

.ml-area-02:before {
    content: "";
    display: block;
    position: absolute;
    left: 20px;
    bottom: 100%;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-bottom-color: #f2f2f2;
}

.ml-area-02:after {
    content: "";
    display: block;
    position: absolute;
    left: 20px;
    bottom: 100%;
    width: 0;
    height: 0;
    border: 9px solid transparent;
    border-bottom-color: #f2f2f2;
}

@media (min-width: 768px), print {
    .visible_sp,
    .visible_inline_sp {
        display: none !important;
    }

    .visible_inline_pc {
        display: inline-block !important;
    }

    .visible_pc {
        display: block !important;
    }

    .ml-area-02 {
        margin-left: 10px;
        padding: 10px;
        background: #f2f2f2;
        position: relative;
        width: 80%;
        margin-top: 10px;
    }

    .ml-area-02 p {
        font-size: 14px;
    }
}

/* 2-2-6. quality  */

.tbl_quality {
    margin: 0 0 0;
}

.tbl_quality table {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
    border-spacing: 0;
    border: 1px solid #dddddd;
}

.tbl_quality th {
    padding: 10px 11px 9px;
    border: 1px solid #dddddd;
    line-height: 1.3em;
    font-weight: normal;
    vertical-align: middle;
}

.tbl_quality tbody th,
.tbl_quality thead th {
    text-align: center;
}

.tbl_quality th.tbl_quality_head1 {
    background: #8dbeb8;
    color: #ffffff;
}

.tbl_quality th.tbl_quality_head2 {
    background: #91ab4c;
    color: #ffffff;
}

.tbl_quality th.tbl_quality_head3 {
    background: #da8931;
    color: #ffffff;
}

.tbl_quality th.tbl_quality_head4 {
    background: #f7d9cf;
}

.tbl_quality td {
    padding: 10px 11px 9px;
    border: 1px solid #dddddd;
    vertical-align: middle;
}

.tbl_quality td.tbl_quality_data1 {
    background: #d7efe5;
}

.tbl_quality td.tbl_quality_data2 {
    background: #f7d9cf;
}

.tbl_quality td.tbl_quality_data3 {
    background: #eeeeee;
}

.tbl_quality th.border-dotted,
.tbl_quality td.border-dotted {
    position: relative;
}

.tbl_quality th.border-dotted:before,
.tbl_quality td.border-dotted:before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 1px;
    background: #fff;
    bottom: -1px;
    left: 0;
    z-index: 1;
}

.tbl_quality th.border-dotted:after,
.tbl_quality td.border-dotted:after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 1px;
    border-bottom: 1px dotted rgb(211 211 211);
    bottom: -1px;
    left: 0;
    z-index: 1;
}

.tbl_quality td.tbl_quality_data2.border-dotted:before {
    background: #f7d9cf;
}

span.tbl_quality_data1 {
    color: #d7efe5;
}

span.tbl_quality_data2 {
    color: #f7d9cf;
}

@media (max-width: 767px) {
    .tbl_quality {
        margin: 0 0 0;
        overflow-x: scroll;
        width: 95%;
        box-sizing: border-box;
    }

    .tbl_quality table {
        min-width: 768px;
    }
}

.hdg_quality {
    display: table;
    width: 100%;
    margin: 15px 0 0;
    padding: 0;
    border-spacing: 0;
    border: 1px solid #dddddd;
    box-sizing: border-box;
}

.hdg_quality p {
    display: table-cell;
    padding: 8px 8px 8px 8px;
    font-weight: bold;
    font-size: 18px;
    color: #ffffff;
    text-align: center;
    vertical-align: middle;
    width: 10%;
    box-sizing: border-box;
}

.hdg_quality > div {
    display: table-cell;
    width: 90%;
    vertical-align: middle;
    box-sizing: border-box;
}

.hdg_quality > div > div {
    display: table;
    width: 100%;
    margin: 0;
    padding: 0;
    border-spacing: 0;
    box-sizing: border-box;
}

.hdg_quality h4 {
    display: table-cell;
    padding: 8px 8px 8px 8px;
    font-weight: bold;
    font-size: 18px;
    vertical-align: middle;
    width: 60%;
    box-sizing: border-box;
}

.hdg_quality > div > div > div {
    display: table-cell;
    padding: 0 8px 0 0;
    text-align: right;
    vertical-align: middle;
    width: 40%;
    box-sizing: border-box;
}

.hdg_quality div ul {
    display: inline-block;
    letter-spacing: -0.4em;
}

.hdg_quality div ul li {
    display: inline-block;
    letter-spacing: normal;
    margin: 0 2px;
}

.hdg_quality div ul li span {
    display: inline-block;
    width: 20px;
    height: 20px;
    background: #cccccc;
    border-radius: 10px;
    text-align: center;
    color: #ffffff;
}

.hdg_quality div ul li.num_quality span {
    background: #a1887c;
}

.bg_qulity_01 {
    background: #8dbeb8;
}

.bg_qulity_02 {
    background: #91ab4c;
}

.bg_qulity_03 {
    background: #da8931;
}

@media (max-width: 767px) {
    .hdg_quality p {
        width: 20%;
    }

    .hdg_quality > div {
        width: 80%;
    }

    .hdg_quality > div > div {
        display: block;
    }

    .hdg_quality h4 {
        display: block;
        padding: 7px 8px 4px 15px;
        width: 100%;
    }

    .hdg_quality > div > div > div {
        display: block;
        padding: 0 8px 4px 15px;
        text-align: left;
        width: 100%;
    }
}

.lst_quality > div:nth-of-type(2n + 1) {
    clear: both;
}

/* 2-3. State [is_***]
-------------------------------------------------- */

.is_open {
    display: block;
}

.is_error {
    background-color: #f9eceb;
}

.is_disabled {
    opacity: 0.45;
}

.is_show {
    visibility: visible;
    opacity: 1;
}

/* 2-4. OverLayerConfig [z-index]
-------------------------------------------------- */

/* 2-5. Project
-------------------------------------------------- */

.js_fullbg_wrapper {
    position: relative;
}

.js_fullbg {
    overflow: hidden;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: -1;
}

.js_fullbg__bg {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}

.js_fullbg__bg img,
.js_show {
    visibility: hidden;
}

.js_video {
    width: 100%;
    height: 100%;
    position: absolute;
}

.layout_box__main {
    /* background: url("/resource/img/tmp_bg_main01.jpg") no-repeat center top; */
    padding-bottom: 200px;
    background-size: cover;
}

#technology_earthquake .layout_box__main {
    background: url("/resource/img/technology/technology_bg_quake01.png")
        no-repeat center top;
}

#technology_endurance .layout_box__main {
    background: url("/resource/img/technology/technology_bg_endurance01.png")
        no-repeat center top;
}

#technology_thermal_insulation .layout_box__main {
    background: url("/resource/img/technology/technology_bg_thermal_insulation01.png")
        no-repeat center top;
}

#technology_production .layout_box__main {
    background: url("/resource/img/technology/technology_bg_production01.png")
        no-repeat center top;
}

#technology_quality .layout_box__main {
    background: url("/resource/img/technology/technology_bg_quality01.png")
        no-repeat center top;
}

.layout_box__inner {
    position: relative;
    background: #fff;
    max-width: 1170px;
    padding: 30px 30px 90px;
    margin: -200px auto 0;
    box-sizing: border-box;
}

.layout_box .layout_box__inner .txt_lead {
    padding: 0 0 40px;
    margin: 0;
}

.layout_box .layout_box__inner .lst_media,
.layout_box .layout_box__inner .lst_media_02 {
    margin: 0 0 10px;
}

.layout_box .layout_box__inner .hdg_lv4,
.layout_box .layout_box__inner .hdg_lv3 {
    text-align: left;
}

.layout_box .layout_box__inner .hdg_lv4 {
    font-size: 18px;
}

.layout_box__head {
    text-align: center;
    padding: 60px 0 80px;
}

.layout_box__title,
.layout_box__head .txt_head {
    color: #fff;
    margin-top: 0;
}

.layout_box__head .txt_head {
    font-size: 36px;
}

.layout_box__head .txt_technology_head {
    font-weight: normal;
}

@media screen and (max-width: 767px) {
    .layout_box__main {
        min-height: 180px;
        width: 100%;
        padding: 30px 0;
        box-sizing: border-box;
    }

    .layout_box .layout_box__inner .hdg_lv4,
    .layout_box .layout_box__inner .hdg_lv3 {
        text-align: center;
    }

    .layout_box__head {
        padding: 0 10px;
    }

    .layout_box__inner {
        margin: 0 0 40px;
        padding: 27px 10px 0;
    }

    .layout_box__title {
        font-size: 16px;
        margin-bottom: 10px;
    }

    .layout_box .layout_box__inner .hdg_lv4 {
        font-size: 16px;
    }

    .layout_box__head .txt_head {
        font-size: 19px;
        font-weight: normal;
        line-height: 1.2;
    }
}

.fa_red {
    background: #a4002c;
    display: none;
}

.fa_red:before {
    color: #fff;
    margin-right: 0;
    width: 16px;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .fa_red {
        display: inline-block;
        margin-right: 9px;
        width: 16px;
        height: 16px;
        line-height: 0;
        vertical-align: middle;
    }
}

.box_error {
    background: #ffeeee;
}

.box_error .error {
    color: #a4002c;
    display: block;
    margin-top: 18px;
}

@media screen and (max-width: 767px) {
    .box_error .error {
        margin-top: 15px;
    }
}

#inquiry_finish .submit_box .btn,
#inquiry .submit_box .btn {
    padding: 20px 25px;
    min-width: 200px;
}

#inquiry .submit_box .btn_back {
    padding: 20px 20px;
    min-width: auto;
    margin-right: 5px;
}

#inquiry_finish .hdg_lv1,
#inquiry .hdg_lv1 {
    margin: 0;
    padding: 55px 0 35px;
}

#inquiry_finish .hdg_lv3,
#inquiry .hdg_lv3 {
    margin: 60px 0 25px;
    text-align: left;
}

#inquiry .txt_lead {
    margin: 40px 0;
}

#inquiry .txt_lead_events_reserve {
    font-size: 16px;
}

#inquiry_finish .txt_lead {
    margin: 20px 0;
}

#inquiry_finish .frm_contact {
    margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
    #inquiry_finish .hdg_lv3,
    #inquiry .hdg_lv3 {
        margin: 45px 0 5px;
    }
}

#faq .hdg_lv3 {
    text-align: left;
    margin: 60px 0 30px;
}

.lst_faq {
    border-top: 1px solid #ddd;
}

.lst_faq li {
    padding: 25px 0 30px;
    border-bottom: 1px solid #ddd;
}

.lst_faq__question {
    padding-bottom: 15px;
    font-size: 18px;
    font-weight: bold;
}

.lst_faq__question,
.lst_faq__answer {
    display: table;
}

.lst_faq__question span,
.lst_faq__answer span {
    display: table-cell;
    vertical-align: top;
}

.lst_faq__icon {
    position: relative;
    top: 3px;
    padding-right: 12px;
    font-size: 18px;
}

.lst_faq__icon img {
    vertical-align: top;
}

.lst_link_faq {
    border-bottom: 1px solid #ddd;
    border-top: 1px solid #ddd;
    padding: 20px 0 25px;
    margin: 40px 0 0;
}

.lst_link_faq li {
    line-height: 2.4;
    font-size: 16px;
}

.lst_link_faq .fa:before {
    color: #333;
}

@media screen and (max-width: 767px) {
    #faq .hdg_lv3 {
        margin: 35px 0 15px;
    }
}

#privacy .box,
#privacy .tbl_base {
    margin-top: 20px;
}

.lst_sitemap {
    margin-top: 30px;
    min-height: 190px;
}

.lst_sitemap li {
    padding-bottom: 10px;
    font-size: 18px;
}

#sitemap .hdg_lv3 {
    padding: 0 0 25px;
    border-bottom: 1px solid #ddd;
    margin: 40px 0 0;
}

#sitemap .hdg_lv3 .fa:before {
    color: #333;
}

@media screen and (max-width: 767px) {
    .lst_sitemap {
        margin-top: 0;
        min-height: 0;
    }

    .lst_sitemap li {
        border-bottom: 1px solid #ddd;
        padding: 10px;
    }

    #sitemap .hdg_lv3 {
        padding: 0 0 15px;
        margin: 35px 0 0;
    }
}

iframe {
    border: 0;
}

/* Popup
-------------------------------------------------- */

.img.mfp-img {
    padding: 60px 0 40px;
}

.mfp-content figure {
    background: #fff;
    padding: 20px;
    min-width: 200px;
}

.mfp-image-holder button.mfp-close {
    color: #666;
    background: url(/resource/img/icn_close.png) no-repeat center;
    width: 38px;
    height: 38px;
    cursor: pointer;
    line-height: 0;
    padding: 0;
    top: 20px;
    right: 20px;
    z-index: 99999;
    overflow: hidden;
    text-indent: -9999px;
    opacity: 1;
    font-size: 0;
}

.mfp-bottom-bar {
    margin-top: 0;
    position: absolute;
    top: 30px;
    left: 20px;
    width: 100%;
    cursor: auto;
}

.mfp-title {
    color: #333;
    font-size: 18px;
    padding-right: 75px;
}

/* Popup
-------------------------------------------------- */

.err_contents .hdg_lv1 {
    margin: 0;
    padding: 50px 0 0;
}

.map_container {
    position: relative;
}

.modal {
    position: absolute;
    display: none;
    z-index: 100;
    left: 0;
    width: 300px;
    top: 0;
    background: #fff;
    padding-right: 132px;
    background: url("/resource/img/bg_map_modal01.png") no-repeat right 20px;
}

.popup-area {
    display: none;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.3);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999;
}

.popup-area .modal_sp {
    height: 100vh;
    background: rgba(0, 0, 0, 0.3);
    position: relative;
}

.sp_event_area {
    padding: 10px !important;
}

.sp_event_area:active {
    color: #333 !important;
}

.popup-area .modal_sp .modal__wrapper {
    position: absolute;
    left: 10px;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    background: #fff;
    border-radius: 5px 5px 5px 5px;
    max-height: 100vh;
}

.popup-area .modal_sp .modal__wrapper {
    position: absolute;
    left: 10px;
    right: 10px;
    top: 45%;
    transform: translateY(-50%);
    background: #fff;
    border-radius: 5px 5px 5px 5px;
    max-height: 90vh;
}

.popup-area .modal_sp .modal__wrapper .modal__content {
    overflow: scroll;
    max-height: 76vh;
}

.modal_right {
    padding-right: 0;
    padding-left: 132px;
    background: url("/resource/img/bg_map_modal02.png") no-repeat left 20px;
}

.modal__title {
    background: #a4002c;
    padding: 7px 15px;
    color: #fff;
    border-radius: 5px 5px 0 0;
    position: relative;
    font-size: 18px;
}

.modal__title a {
    color: #fff;
}

.modal__title .fa-angle-right:before {
    color: #fff;
}

.modal__content {
    background: #fff;
    border: 1px solid #ddd;
    border-top: 0;
    padding: 15px;
    border-radius: 0 0 5px 5px;
}

.modal__content li {
    margin-bottom: 5px;
}

.modal__content .fa:before {
    color: #5c4934;
}

.modal__close {
    position: absolute;
    cursor: pointer;
    right: 10px;
    top: 10px;
    width: 20px;
    height: 20px;
    background: url("/resource/img/icn_close02.png") no-repeat center;
}

#modal01 {
    left: -306px;
    top: 56px;
}

#modal02 {
    left: -232px;
    top: -40px;
}

#modal03 {
    left: -242px;
    top: 0;
}

#modal04 {
    left: -212px;
    top: -10px;
}

#modal05 {
    left: -140px;
    top: 16px;
}

#modal06 {
    left: -110px;
    top: 76px;
}

#modal07 {
    left: -14px;
    top: 100px;
}

#modal08 {
    left: -200px;
    top: 100px;
}

#modal09 {
    left: 140px;
    top: 124px;
}

#modal10 {
    left: 269px;
    top: 43px;
}

#modal11 {
    left: 225px;
    top: 54px;
}

#modal12 {
    left: 225px;
    top: 127px;
}

#modal13 {
    left: 270px;
    top: 127px;
}

/*property list*/

#property-list .txt_title_lead {
    text-align: left;
    margin: 0 0 11px;
}

#property-list .box_search {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    padding-top: 10px;
}

#property-list .box_search__title {
    display: block;
    overflow: hidden;
    padding-bottom: 10px;
}

#property-list .box_search__title .fa {
    margin-right: 15px;
}

#property-list .box_search__title .fa em {
    color: #000;
}

#property-list .box_search__content {
    border-top: 1px solid #ddd;
    background: #f5f5f2;
    display: none;
}

#property-list .box_search__title p {
    display: inline-block;
}

#property-list .btn_search {
    border: 1px solid #ddd;
    padding: 3px 20px 3px 10px;
    position: relative;
    float: right;
    cursor: pointer;
    min-width: 75px;
}

#property-list .btn_search:after {
    position: absolute;
    content: "\f107";
    font-family: "FontAwesome";
    right: 4px;
}

#property-list .btn_search.active:after {
    content: "\f106";
}

#property-list .select_box {
    position: relative;
    background: #fff;
    border-radius: 0;
    margin-left: 4px;
    box-shadow: none;
    vertical-align: middle;
}

#property-list .select_box--area {
    width: 41%;
    border: 1px solid #ddd !important;
}

#property-list .select_box--area > select,
#property-list .select_box_price > select {
    min-width: 25%;
}

#property-list .select_box--price {
    width: 28%;
    border: 1px solid #ddd !important;
}

#property-list .select_box--price > select {
    min-width: 100px;
}

#property-list .select_box {
    position: relative;
    border: 0;
}

#property-list .select_box:after {
    content: none;
}

#property-list .select_option .select_box:after,
#property-list .box-sort .select_box:after {
    content: "\f107";
    position: absolute;
    width: 15px;
    height: 15px;
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    margin-right: 5px;
    color: #333;
    z-index: 1;
    top: 13px;
    right: -3px;
    pointer-events: none;
}

#property-list .select_box .js_accordion_icon {
    top: 7px;
    right: 5px;
}

#property-list .select_box .js_accordion_icon:before {
    color: #a4002c;
}

#property-list .select_box > .js_accordion_trigger02 {
    position: relative;
    background: #fff;
    padding: 9px;
    border: 1px solid #ccc;
}

#property-list .js_accordion_content {
    position: absolute;
    background: #fff;
    left: 0;
    right: 0;
    z-index: 9;
    border-bottom: 1px solid #ddd;
}

#property-list .list_form .js_accordion_content li {
    padding: 0;
    box-sizing: border-box;
}

#property-list .select_box > select {
    width: 100%;
    box-sizing: border-box;
    padding: 10px 25px 10px 10px;
    position: relative;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: none;
    border: 0;
    font-size: 14px;
}

.ie9 #property-list .select_box > select {
    padding: 6px 10px;
}

#property-list .input > input {
    border: 1px solid #ddd;
    border-radius: 20px;
    padding: 6px 10px 6px 20px;
    display: inline-block;
    width: 75%;
    box-sizing: border-box;
    float: right;
    box-shadow: none;
}

#property-list .list_form li {
    display: table;
    width: 100%;
    padding: 25px 0;
    border-bottom: 1px solid #ddd;
}

#property-list .list_form li:last-child {
    border-bottom: none;
}

#property-list .select,
#property-list .input {
    display: table-cell;
    vertical-align: middle;
}

#property-list .input span {
    font-weight: bold;
    font-size: 18px;
}

#property-list .input span {
    display: inline-block;
    margin-top: 3px;
    width: 90px;
}

#property-list .button > button,
#property-list .button > .btn_white {
    border: 1px solid #ddd;
    padding: 6px;
    background: #2d3339;
    color: #fff;
    margin-left: 10px;
}

#property-list .button > button .fa:before {
    color: #fff;
}

#property-list .button {
    text-align: right;
}

#property-list .button .btn_white {
    background: #fff;
    color: #333;
}

#property-list .button .btn_white .fa:before {
    color: #333;
}

@media screen and (min-width: 768px) {
    #property-list .hp_pcNone,
    #property-list .hp_spNone {
        display: none;
    }
}

#property-list #l_main .bl_pageTop_btn {
    border: 1px solid #a4022e;
    background: #fff url(/resource/img/top_fixed_icon.png) no-repeat center top
        10px;
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 99;
}

#property-list #l_main .bl_pageTop_btn:hover {
    opacity: 0.7;
    transition: 0.5s;
}

#property-list #l_main .bl_pageTop_btn a {
    display: block;
    color: #a4012c;
    padding: 40px 8px 10px;
}

.box-sort {
    display: table;
    border: 1px solid #ddd;
    margin: 20px 0;
    width: 245px;
}

.box-sort p {
    border-right: 1px solid #ddd;
    display: table-cell;
    background: #f5f5f2;
    padding: 0 10px;
    vertical-align: middle;
}

.box-sort .select_box {
    display: table-cell;
}

#property-list .box-sort .select_box {
    border: 0;
    width: 150px;
    box-shadow: none;
}

#property-list .box-sort .select_box > select {
    min-width: 150px;
}

.tbl_content {
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    border-top: 1px solid #ddd;
}

.tbl_content tr {
    border-bottom: 1px solid #ddd;
}

.tbl_content td {
    vertical-align: middle;
    text-align: center;
    padding: 20px;
}

.tbl_content .tbl_content__check {
    background: #f5f5f2;
    width: 35px;
    padding: 0;
    border-right: 1px solid #ddd;
}

.list_content_title {
    border-bottom: 1px solid #ddd;
    margin-bottom: 10px;
    display: table;
    width: 100%;
}

.list_content_title__text {
    font-size: 22px;
    font-weight: bold;
    text-align: left;
    display: table-cell;
    vertical-align: middle;
    padding: 0 0 15px 15px;
    text-indent: -6px;
}

.list_content_title__text a {
    padding-right: 10px;
}

.list_content_title__text:before {
    font-weight: bold;
}

.list_content_title__text em {
    font-style: normal;
    font-size: 16px;
    color: #a4002c;
    font-weight: normal;
}

.list_content_title__rank {
    font-size: 22px;
    cursor: pointer;
    display: table-cell;
    text-align: right;
    vertical-align: middle;
    padding-bottom: 15px;
}

.list_content_title__rank:before {
    color: #ddd;
}

.list_content_title__rank.active:before,
.js_booking.active .fa:before {
    color: #ff9900;
}

#property-list .box_media__pic {
    width: 29%;
}

#property-list .box_media__txt {
    width: 70%;
    padding-left: 15px;
}

.list_content_description {
    display: table;
    margin-bottom: 10px;
    width: 100%;
}

.description_link,
.description_label {
    display: table-cell;
    text-align: left;
}

.description_link {
    width: 40%;
}

.description_link em {
    font-weight: bold;
    font-size: 18px;
    color: #000;
}

.description_label {
    width: 60%;
}

.description_link p {
    margin-bottom: 13px;
    padding-left: 15px;
    text-indent: -8px;
}

.description_link p .fa:before {
    color: #999;
}

#property-list .label {
    border: 1px solid #ddd;
    border-radius: 20px;
    padding: 2px 10px;
    font-size: 12px;
    display: inline-block;
    margin-bottom: 6px;
}

#property-list .label_off {
    background: #f5f5f2;
    color: #ccc;
    border: 0;
}

#property-list .link_content {
    text-align: right;
}

#property-list .link_content a {
    color: #fff;
    background: #2d3339;
    padding: 10px 25px;
    display: inline-block;
}

#property-list .link_content a .fa:before {
    color: #fff;
}

.box_pagination {
    text-align: center;
    margin: 30px 0;
}

ul.lst_pagination {
    display: inline-block;
    padding: 0;
    margin: 0;
}

ul.lst_pagination li {
    display: inline;
}

ul.lst_pagination li.disable {
    pointer-events: none;
    opacity: 0.4;
}

ul.lst_pagination li.disable a {
    opacity: 0.4;
}

ul.lst_pagination li a {
    color: black;
    float: left;
    padding: 8px 15px;
    text-decoration: none;
    transition: background-color 0.3s;
    border: 1px solid #ddd;
    margin: 0 10px;
}

ul.lst_pagination li a .fa:before {
    margin-right: 0;
    color: #000;
}

ul.lst_pagination li a.active {
    background-color: #fff;
    color: #a4002c;
    border: 1px solid #a4002c;
}

ul.lst_pagination li a:hover:not(.active) {
    background-color: #ddd;
}

.link_bottom_wrap {
    position: relative;
}

.link_bottom {
    background-color: rgba(0, 0, 0, 0.4);
    text-align: center;
    position: fixed;
    z-index: 1;
    bottom: 0;
    width: 100%;
    max-width: 1600px;
    overflow: hidden;
    padding: 10px 0;
    display: none;
}

.btn_link_bottom {
    background: #a5032e;
    color: #fff;
    padding: 12px 40px;
    display: inline-block;
}

.btn_link_bottom:visited {
    color: #fff;
}

.btn_link_bottom--01 {
    background: #000;
    margin-right: 10px;
    padding-bottom: 12px;
    color: #fff;
}

.btn_link_bottom:link {
    color: #fff;
}

.custom-check {
    width: 18px;
    height: 18px;
    display: inline-block;
    position: relative;
    z-index: 1;
    top: 3px;
    background: url("/resource/img/property_list_ico_check.png") no-repeat;
    background-size: 18px 18px;
}

.custom-check.selected {
    background: url("/resource/img/property_list_ico_check-selected.png")
        no-repeat;
    background-size: 18px 18px;
}

.custom-check input[type="checkbox"] {
    margin: 1px;
    position: absolute;
    z-index: 2;
    cursor: pointer;
    outline: none;
    display: none;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
    -khtml-opacity: 0;
    -moz-opacity: 0;
    /* CSS hacks for older browsers */
    /* _noFocusLine: expression(this.hideFocus=true); */
}

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

#property_project sup {
    vertical-align: super;
}

@media screen and (max-width: 767px) {
    #property-list .box_search__title .fa {
        display: block;
        padding-left: 20px;
        text-indent: -10px;
    }

    .box_search__title .wrp_container {
        display: table;
        width: 100%;
    }

    #property-list .box_search__title p {
        display: table-cell;
        vertical-align: middle;
    }

    #property-list .btn_search:after {
        top: 50%;
        margin-top: -10px;
        display: none;
    }

    #property-list .btn_search {
        margin-right: 20px;
        width: 70px;
        padding: 3px 5px;
        text-align: center;
    }

    #property-list .select,
    #property-list .input {
        width: 100%;
        display: block;
        text-align: center;
    }

    #property-list .hasClone {
        margin-bottom: 20px;
        overflow: hidden;
    }

    #property-list .input span {
        display: block;
        text-align: center;
        margin-bottom: 12px;
    }

    #property-list .button > button,
    #property-list .button > .btn_white {
        padding: 11px;
        margin-left: 0;
        border-radius: 3px;
    }

    #property-list .button > button {
        display: inline-block;
        margin: 20px 0 0 0;
    }

    #property-list .button > button:hover {
        /*
		background: #f00;
		*/
        opacity: 0.7;
    }

    #property-list .input span {
        width: 100%;
    }

    #property-list .select_box--area {
        width: 100%;
    }

    #property-list .input > input {
        width: 100%;
    }

    #property-list .select_box:after {
        background: #fff;
        color: #ddd;
        width: 38px;
        height: 38px;
    }

    #property-list .select_box {
        margin: 0 0 10px;
    }

    #property-list .list_form li {
        padding: 12px 0 0;
        border-bottom: 1px solid #ddd;
    }

    #property-list .select_box > select {
        font-size: 12px;
    }

    #property-list .input > input {
        padding: 10px 0 10px 10px;
        font-size: 12px;
    }

    #property-list .select_box_price {
        width: 38%;
        display: inline-block;
    }

    #property-list .button {
        text-align: center;
    }

    .box-sort {
        width: 100%;
    }

    .box-sort p {
        white-space: nowrap;
        word-break: keep-all;
    }

    #property-list .box-sort .select_box > select {
        min-width: 215px;
    }

    .description_label,
    .link_content {
        display: none;
    }

    .list_content_title {
        border-bottom: 0;
        padding-bottom: 0;
        margin-bottom: 5px;
    }

    .list_content_title__text {
        font-size: 16px;
        width: 85%;
        text-align: left;
        padding-bottom: 0;
    }

    .tbl_content .tbl_content__check {
        width: 29px;
    }

    .list_content_title__rank {
        padding-bottom: 0;
        font-size: 16px;
    }

    #property-list .box_media {
        display: table;
    }

    #property-list .box_media__txt,
    #property-list .box_media__pic {
        display: table-cell;
        vertical-align: top;
    }

    #property-list .box_media__pic {
        width: 40%;
        position: relative;
    }

    #property-list .box_media__pic img {
        vertical-align: top;
    }

    .box_media__pic .tag_kikaku {
        position: absolute;
        display: block;
        color: #ffffff;
        background-color: #e8a736;
        top: 0;
        left: 0;
        font-size: 9px;
        line-height: 1.4em;
        padding: 2px 4px;
        text-align: center;
    }

    .lst_info__pic > span > span > .tag_kikaku {
        position: absolute;
        display: block;
        color: #ffffff;
        background-color: #e8a736;
        top: 0;
        left: 0;
        font-size: 9px;
        line-height: 1.4em;
        padding: 2px 4px;
        text-align: center;
    }

    #property-list .box_media__txt {
        width: 60%;
    }

    #property-list .box_search {
        margin-bottom: 30px;
    }

    #property-list .box_search__title .fa em {
        font-weight: normal;
    }

    #property-list .box_search__content {
        padding-bottom: 12px;
    }

    #property-list #l_main .bl_pageTop_btn {
        padding: 1.56vw 0;
        border: 1px solid #ddd;
        background: rgba(255, 255, 255, 0.7);
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 99;
    }

    #property-list #l_main .bl_pageTop_btn a {
        display: block;
        width: 62.5vw;
        color: #fff;
        text-align: center;
        padding: 3.12vw 0 3.12vw 3.9vw;
        margin: 0 auto;
        background: #a4032f url(./resource/img/search_fixed_icon.png) no-repeat
            center left 17.18vw / 4.37vw auto;
    }

    #property-list #l_main .bl_pageTop_btn:hover {
        opacity: 1;
    }

    .tbl_content td {
        padding: 10px;
    }

    .list_content_title__text em {
        font-size: 14px;
    }

    .description_link p {
        margin-bottom: 0;
        font-size: 12px;
    }

    .description_link em {
        font-weight: normal;
        font-size: 12px;
    }

    .btn_link_bottom {
        padding: 5px 20px;
        font-size: 12px;
        border-radius: 3px;
    }

    .btn_link_bottom--01 {
        padding-bottom: 7px;
    }

    ul.lst_pagination li a {
        margin: 5px;
        padding: 3px 10px;
    }

    .custom-check {
        width: 15px;
        height: 15px;
        background-size: 15px 15px;
    }

    .custom-check.selected {
        background-size: 15px 15px;
    }
}

/*--------------------*/

.new_items__btn {
    text-align: center;
}

@media screen and (max-width: 767px) {
    .new_items .hdg_lv2 {
        margin: 28px 0 20px;
        color: #313336;
    }

    .new_items .lst_media {
        display: table;
        border: 1px solid #ddd;
        border-bottom: none;
        margin-bottom: 0;
    }

    .new_items .lst_media > li {
        border-bottom: 1px solid #ddd;
        margin: 0;
        padding: 10pxs 10px 10px;
        position: relative;
    }

    .new_items .lst_media > li:nth-of-type(n + 5) {
        /* display: none; */
    }

    .new_items .lst_media > li:last-child {
        border-bottom: 0;
    }

    .new_items.new_items_interior .lst_media > li:last-child {
        border-bottom: 1px solid #ddd;
    }

    .new_items .lst_media .lst_media__img,
    .new_items .lst_media .lst_media__content {
        display: table-cell;
        vertical-align: top;
        padding-top: 0;
        position: relative;
    }

    .new_items .lst_media .lst_media__img {
        width: 40%;
        padding-right: 10px;
    }

    .history_contents .lst_media .lst_media__img span .tag_kikaku {
        position: absolute;
        display: block;
        color: #ffffff;
        background-color: #e8a736;
        top: 0;
        left: 0;
        width: 60px;
        height: 28px;
        font-size: 9px;
        line-height: 1.4em;
        padding: 2px 4px;
    }

    .lst_search_new .lst_media__img > span > span > .tag_kikaku {
        position: absolute;
        display: block;
        color: #ffffff;
        background-color: #e8a736;
        top: 0;
        left: 0;
        font-size: 9px;
        line-height: 1.4em;
        padding: 2px 4px;
        text-align: center;
    }

    .new_items .lst_media .lst_media__title {
        position: relative;
        text-align: left;
        font-size: 16px;
        font-weight: bold;
    }

    .new_items .lst_media .lst_media__title .fa,
    .new_items .lst_media .lst_media__title .fa:before {
        font-weight: bold;
    }

    .new_items__btn {
        background: #f5f5f2;
        margin: 0 -5px;
    }

    .new_items__btn .btn {
        display: block;
        color: #333;
        font-size: 14px;
        border-radius: 0;
        border-left: 1px solid #ddd;
        border-right: 1px solid #ddd;
        border-bottom: 1px solid #ddd;
        background: none;
        box-shadow: none;
    }

    .new_items__btn:hover,
    .new_items__btn .fa:before {
        color: #333;
    }

    .new_items__register {
        background: url(/resource/img/property_bg_box-register.png) no-repeat
            center;
        background-size: cover;
        padding: 30px 10px 15px;
    }

    .new_items__register .hdg_lv3 {
        margin: 0 0 17px;
        color: #a4002c;
    }

    .new_items__register .btn_more {
        width: auto;
        padding: 12px 35px;
        margin-top: 25px;
        height: auto;
        font-size: 14px;
        font-weight: bold;
    }

    /* .new_items .lst_media li:n+4{
		display: none;
	} */
}

/* ---------------Property Project CSS--------------*/

.hdg_lv1_project {
    font-size: 40px;
    font-weight: 100;
    display: inline-block;
}

.hdg_lv1_project small {
    font-size: 28px;
    font-weight: 100;
}

.lbl_detail {
    font-size: 14px;
    color: #a4002c;
    vertical-align: middle;
    border: 1px solid #a4002c;
    border-radius: 12px;
    padding: 0 18px 2px;
    margin-left: 5px;
    font-weight: normal;
}

.lbl_new {
    font-size: 24px;
    font-weight: normal;
    color: #a4002c;
    margin-left: 10px;
}

.box_project_btn {
    float: right;
}

.box_fav {
    display: inline-block;
    border: 1px solid #ddd;
    margin-left: 10px;
    box-sizing: border-box;
    padding: 8px 20px 10px;
    margin-top: 6px;
    float: right;
    position: relative;
}

.fav_popup {
    position: absolute;
    display: block;
    color: #ffffff;
    background-color: #83a860;
    right: 0;
    top: 50px;
    box-sizing: border-box;
    width: 315px;
    padding: 8px 15px;
}

.fav_popup:before {
    content: "";
    position: absolute;
    top: -35px;
    left: 70%;
    margin-left: -15px;
    border: 10px solid transparent;
    border-bottom: 35px solid #83a860;
    transform: rotate(20deg);
}

.fav_popup i {
    display: inline-block;
    color: #000000;
    width: 16px;
    height: 16px;
    border-radius: 8px;
    position: absolute;
    margin: auto;
    right: 15px;
    top: 0;
    bottom: 0;
    background: url(../img/icon_close.gif) no-repeat center center;
    background-color: #ffffff;
}

.fav_popup i:hover {
    cursor: pointer;
}

.box_panorama {
    display: block;
    border: 1px solid #a4002c;
    box-sizing: border-box;
    padding: 8px 20px 10px;
    margin-top: 6px;
}

.box_panorama a {
    color: #a4002c;
}

.box_fav .visible_pc,
.box_panorama.visible_pc {
    display: inline-block !important;
}

.box_fav .fa:before {
    color: #333;
}

.box_panorama .fa:before {
    color: #a4002c;
}

.box_slider {
    position: relative;
}

.box_slider .tag_kikaku {
    position: absolute;
    display: block;
    color: #ffffff;
    background-color: #e8a736;
    top: 0;
    left: 0;
    font-size: 14px;
    line-height: 1.4em;
    padding: 8px 12px;
    z-index: 100;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .hdg_lv1_project {
        max-width: 90%;
        font-size: 18px;
        font-weight: bold;
        margin: 10px 0 0;
        padding-bottom: 3px;
    }

    .hdg_lv1_project small {
        font-size: 12px;
        display: block;
        font-weight: 400;
    }

    .hdg_lv1_project .lbl_new {
        font-size: 14px;
        position: relative;
        bottom: -2px;
    }

    .lbl_detail {
        font-size: 12px;
        position: relative;
        vertical-align: top;
        bottom: -5px;
    }

    .box_fav {
        border: 0;
        padding: 0;
        margin-top: 13px;
    }

    .fav_popup {
        position: absolute;
        display: block;
        color: #ffffff;
        background-color: #83a860;
        right: 0;
        top: 32px;
        box-sizing: border-box;
        width: 70px;
        padding: 2px 8px 4px;
        z-index: 200;
        font-size: 12px;
    }

    .fav_popup:before {
        content: "";
        position: absolute;
        top: -22px;
        left: 93%;
        margin-left: -15px;
        border: 5px solid transparent;
        border-bottom: 20px solid #83a860;
        transform: rotate(10deg);
        z-index: 100;
    }

    .fav_popup .sp_hide {
        display: none;
    }

    .fav_popup i {
        display: inline-block;
        color: #000000;
        background-color: #ffffff;
        width: 12px;
        height: 12px;
        border-radius: 8px;
        position: absolute;
        margin: auto;
        right: 5px;
        top: 0;
        bottom: 0;
        background: url(../img/icon_close.gif) no-repeat center center;
        background-size: 10px 10px;
        background-color: #ffffff;
    }

    .box_fav .visible_pc,
    .box_panorama.visible_pc {
        display: none !important;
    }

    .box_fav .fa:before {
        color: #ccc;
        font-size: 18px;
    }

    .box_panorama {
        margin-bottom: 5px;
        border-radius: 3px;
        text-align: center;
        padding: 0;
        box-shadow: 0px 1px 0px 0px #a4002c;
        font-weight: bold;
    }

    .box_panorama a {
        display: block;
        padding: 8px 20px 10px;
    }
}

/*-----------------------*/

#property_project .section_heading {
    border-bottom: 1px solid #ddd;
    margin-bottom: 60px;
    padding-bottom: 10px;
}

#property_project.property_project_detail .section_heading {
    border-bottom: 0;
}

.img_count {
    position: absolute;
    left: 30px;
    top: 20px;
    color: #fff;
    font-size: 20px;
}

.bx_control {
    display: table;
    width: 100%;
    background-color: #f5f5f2;
    padding: 73px 0 22px;
}

@media screen and (max-width: 767px) {
    .img_count {
        font-size: 12px;
        left: 10px;
        top: 15px;
    }

    .bx_control {
        padding: 0;
    }
}

#slider_prev {
    display: table-cell;
    vertical-align: middle;
    background: url(/resource/img/cmn_arw_prev.png) no-repeat center;
    width: 11.4%;
}

#slider_next {
    display: table-cell;
    vertical-align: middle;
    background: url(/resource/img/cmn_arw_next.png) no-repeat center;
    width: 11.4%;
}

#slider_prev a,
#slider_next a {
    display: block;
    min-height: 100px;
}

#property_project .box_slider .bx_pager {
    display: table-cell;
    vertical-align: middle;
    overflow: hidden;
}

#property_project .box_slider .bx-viewport {
    height: 502px !important;
}

@media screen and (max-width: 767px) {
    #property_project .box_slider .bx-viewport {
        height: 240px !important;
    }
}

#property_project .box_slider .bxslider {
    height: 100%;
    background-color: #fafaf8;
}

#property_project .box_slider .bxslider li {
    list-style: none;
    width: 100%;
    position: absolute;
    display: none;
    height: 100%;
}

#property_project .box_slider .bxslider li span {
    display: table-cell;
    width: 100%;
    height: 428px;
    vertical-align: middle;
}

#property_project .box_slider .bxslider li a {
    height: 428px;
    width: 100%;
    text-align: center;
    box-sizing: border-box;
    vertical-align: middle;
    display: table;
}

@media screen and (max-width: 767px) {
    #property_project .box_slider .bxslider li a {
        height: 240px;
    }

    #property_project .box_slider .bxslider li span {
        height: 240px;
    }
}

#property_project .box_slider .bxslider li a img {
    max-height: 100%;
    max-width: 100%;
    width: auto;
    height: auto;
}

#property_project .bx_pager__inner {
    display: block;
    overflow: hidden;
    width: 2000%;
    position: relative;
}

#property_project .box_slider .bx_pager li {
    float: left;
    box-sizing: border-box;
    width: 88px;
    height: 78px;
    padding: 0 5px;
    position: relative;
    margin-bottom: 5px;
}

#property_project .box_slider .bx_pager li a {
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    min-height: 50px;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    border: 1px solid #f5f5f2;
}

#property_project .box_slider .js_fullbg {
    z-index: 1;
}

#property_project .box_slider .bx_pager li img {
    border: 1px solid #ddd;
    display: none;
}

#property_project .box_slider .bx_pager li.slider_thumb {
    padding: 0 5px;
}

#property_project .box_slider .bx_pager li.slider_thumb img {
    border: 1px solid #ddd;
    display: block;
}

#property_project .box_slider .bx_pager li a.active {
    border: 1px solid #a4002c;
}

#property_project .box_slider .bx_caption {
    position: absolute;
    color: #333333;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 12px 20px 12px 20px;
    height: 51px;
    z-index: 10;
    background-color: #f5f5f2;
}

#property_project .bx_control {
    padding-top: 0;
}

#property_project .bx-controls {
    padding-bottom: 0;
}

#property_project .bxslider li .bx_caption span {
    display: block;
    height: auto;
}

@media screen and (max-width: 767px) {
    #property_project .section_heading {
        margin-bottom: 0;
    }

    #property_project .section_content {
        overflow: hidden;
    }

    #property_project .section_content .wrp_grid {
        margin: 0;
    }

    #property_project .section_content .grid_6 {
        padding: 0;
    }

    #property_project .box_slider {
        padding-top: 10px;
        background-color: #525559;
        margin: 0 -10px 0px;
    }

    #property_project .box_slider .bx_caption {
        text-align: center;
        bottom: -50px;
        min-height: 0;
        padding: 0;
        background: #525559;
        color: #fff;
    }

    #property_project .box_slider .bx_caption span {
        padding: 5px 5px 0;
        display: block;
        font-size: 12px;
    }

    /*
	#slide_counter{
		position: absolute;
		bottom: -30px;
		text-align: center;
		display: block;
		width: 100%;
		left: 0;
		margin:0;
		margin-left:0 !important;
		padding: 5px 0;
		right: 0;
		background: #525559;
		background-color:transparent;
		color:#333333;
	}
	*/
    #slide_counter {
        position: absolute;
        bottom: -30px;
        text-align: center !important;
        display: block;
        width: 100%;
        left: 0;
        margin: 0;
        margin-left: 0 !important;
        padding: 5px 0;
        right: 0;
        background: #525559;
        color: #fff;
        float: none;
    }

    #slide_counter > strong {
        font-weight: normal;
    }

    .box_slider {
        position: relative;
    }

    .box_slider li {
        text-align: center;
    }

    .box_slider li img {
        margin: 0 auto;
    }

    .box_slider .bx_control {
        position: absolute;
        top: 35%;
    }

    .box_slider #slider_prev,
    .box_slider #slider_next {
        z-index: 99;
        position: absolute;
        background: rgba(45, 51, 57, 0.7);
        width: auto;
    }

    .box_slider #slider_prev a,
    .box_slider #slider_next a {
        position: relative;
        min-height: 0;
        padding: 20px 10px;
        text-align: center;
    }

    .box_slider #slider_prev a:before,
    .box_slider #slider_next a:before {
        position: relative;
        display: inline-block;
        font: normal normal normal 14px/1 FontAwesome;
        font-size: inherit;
        text-rendering: auto;
        -webkit-font-smoothing: antialiased;
        color: #fff;
        font-size: 24px;
    }

    .box_slider #slider_prev a:before {
        content: "\f104";
    }

    .box_slider #slider_next a:before {
        content: "\f105";
    }

    .box_slider .bx_pager {
        display: none !important;
    }

    .box_slider #slider_prev {
        left: -5px;
    }

    .box_slider #slider_next {
        right: 0;
    }
}

.txt_info {
    font-size: 15px;
    display: block;
    text-indent: -95px;
    padding: 10px 0 10px 95px;
    border-bottom: 1px dashed #ddd;
}

.txt_info_price {
    vertical-align: middle;
    display: table;
    text-indent: 0;
    box-sizing: border-box;
    width: 100%;
    text-indent: -95px;
    padding: 0 0 10px 95px;
    margin: -10px 0 0;
    table-layout: fixed;
}

.txt_info_price span {
    display: table-cell;
    text-align: left;
    font-size: 14px;
}

.txt_info_price span.txt_price {
    display: inline-block;
    padding: 0 0 0 95px;
}

.txt_info_price span.link_loan_simulator {
    display: inline-block;
    font-weight: bold;
    text-indent: 0;
    padding: 0 0 0 20px;
}

.txt_info_price span.link_loan_simulator .fa:before {
    font-size: 18px;
}

.txt_info_price span em {
    color: #333;
    font-size: 40px;
    padding: 0 2px;
}

.txt_info_price span em i {
    font-weight: normal;
    font-style: normal;
    font-size: 14px;
    font-family: "Noto Sans JP", "游ゴシック", "YuGothic",
        "ヒラギノ角ゴ ProN W3", "HiraKakuProN-W3", "ヒラギノ角ゴ Pro W3",
        "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック",
        "helvetica", "arial", sans-serif;
}

.txt_info_layout {
    font-size: 22px;
    font-weight: bold;
    line-height: 1.4em;
}

.txt_info_aria {
    text-indent: 0;
    padding-left: 0;
    text-align: center;
    border-bottom: 1px solid #ddd;
}

.txt_info_price span.lbl_info,
.lbl_info {
    background-color: #f5f5f2;
    border: 1px solid #ddd;
    box-sizing: border-box;
    display: inline-block;
    padding: 2px 5px;
    width: 80px;
    height: 20px;
    text-align: center;
    margin-right: 15px;
    text-indent: 0;
    line-height: 1;
    font-size: 14px;
    font-weight: normal;
}

.box_contact_project {
    display: table;
    width: 100%;
    padding: 20px 0 30px 0;
}

.box_contact_project p {
    display: table-cell;
    vertical-align: middle;
}

.box_contact_project__phone {
    font-size: 12px;
    text-align: center;
}

.box_contact_project__phone .fa {
    font-size: 24px;
    text-align: center;
    color: #a4002c;
}

.box_contact_project__phone .btn {
    background: none;
    box-shadow: none;
    padding: 0;
}

.box_contact_project__phone .btn .fa:before {
    color: #a4002c;
}

.box_contact_project__phone .visible_pc {
    display: inline-block !important;
}

.box_contact_project .btn_contact {
    background-color: #a4002c;
    padding: 10px 20px;
    color: #fff;
    display: block;
    text-align: center;
}

.box_contact_project .btn_contact .fa:before {
    color: #fff;
}

#property_text_wrap {
    padding: 30px 0 20px;
}

.box_apply_project {
    box-sizing: border-box;
    border: 3px #b9b9b9 solid;
    padding: 25px;
    height: auto;
    max-height: 220px;
    text-align: center;
}

.box_apply_project_bottom {
    margin-top: 60px;
    margin-bottom: 60px;
}

.box_apply_project_bottom .box_apply_project__button {
    margin-top: 12px;
}

.txt_apply_lead {
    margin: 0 0 5px;
    text-align: left;
}

.box_apply_project .btn_contact {
    width: 240px;
    margin: auto;
    background-color: #a4002c;
    padding: 20px 20px;
    color: #fff;
    display: block;
    text-align: center;
    font-size: 16px;
}

.box_apply_project .btn_contact .fa:before {
    color: #fff;
    font-size: 20px;
}

.box_apply_project .btn_application {
    width: 240px;
    margin: auto;
    background-color: #e8a736;
    padding: 20px 20px;
    color: #fff;
    display: block;
    text-align: center;
    font-size: 16px;
}

.box_apply_project .btn_application .fa:before {
    color: #fff;
    font-size: 20px;
}

.box_apply_project .box_apply_guide__link {
    font-weight: bold;
    padding: 13px 0 0;
}

.box_apply_project_wide {
    max-width: 1170px;
    padding: 0 15px;
    margin: 50px auto;
}

.box_apply_project_wide .box_apply_project {
    position: relative;
    padding: 25px 365px 25px 25px;
}

.box_apply_project_wide .btn_contact {
    position: absolute;
    right: 45px;
    top: 0;
    bottom: 0;
    height: 25px;
}

.box_apply_project_wide .txt_apply_lead {
    line-height: 2em;
    margin: 0 0 0;
}

.box_apply_project_wide .box_apply_guide__link {
    text-align: left;
}

@media screen and (max-width: 767px) {
    .lbl_info {
        font-size: 12px;
        width: 65px;
    }

    .txt_info_price span.lbl_info {
        width: 65px;
        font-size: 12px;
    }

    .txt_info {
        padding: 10px 0 10px 80px;
        text-indent: -80px;
        font-size: 12px;
    }

    .txt_info_price,
    .txt_info_aria {
        padding-left: 0;
        text-indent: 0;
    }

    .txt_info_price span.link_loan_simulator {
        display: inline-block;
        font-weight: bold;
        text-indent: 0;
        padding: 0 0 0 80px;
    }

    .txt_info_price span.link_loan_simulator .fa:before {
        font-size: 16px;
    }

    .txt_info_price span em {
        display: block;
        font-size: 20px;
    }

    .txt_info_price span em i {
        font-size: 12px;
    }

    .txt_info_price span {
        font-size: 12px;
    }

    .txt_info_price span.txt_price {
        display: inline-block;
        padding: 0;
    }

    .box_contact_project {
        padding: 15px 0 25px 0;
        table-layout: fixed;
    }

    .box_contact_project p {
        line-height: 0;
    }

    .box_contact_project .btn_contact {
        padding: 18px 10px;
        font-size: 12px;
        box-sizing: border-box;
        border-radius: 3px;
        box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.75);
        white-space: nowrap;
    }

    .box_contact_project .btn_value_page {
        font-size: 12px;
        box-sizing: border-box;
        border-radius: 3px;
        box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.75);
        white-space: nowrap;
    }

    .box_contact_project .btn_contact .fa:before {
        display: none;
    }

    .box_contact_project__phone .btn {
        min-width: 0;
        font-size: 12px;
        padding: 10px 8px 12px;
        background: #313336;
        box-sizing: border-box;
        border-radius: 3px;
        box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.75);
    }

    .box_contact_project__phone {
        width: 50px;
    }

    .box_contact_project__phone .btn .fa:before {
        color: #fff;
        vertical-align: bottom;
    }

    .box_contact_project__phone .fa {
        font-size: 12px;
    }

    .box_contact_project__phone .fa:before {
        font-size: 14px;
    }

    .box_contact_project__button .fa:before {
        margin-right: 0;
    }

    .box_apply_project {
        box-sizing: border-box;
        border: 3px #b9b9b9 solid;
        padding: 15px;
        height: auto;
        max-height: none;
        text-align: center;
    }

    .box_apply_project_bottom {
        margin-top: 40px;
        margin-bottom: 40px;
    }

    .box_apply_project_bottom .box_apply_project__button {
        margin-top: 8px;
    }

    .txt_apply_lead {
        margin: 0 0 15px;
        text-align: left;
        font-size: 13px;
        line-height: 1.4em;
    }

    .box_apply_project .btn_contact {
        width: 240px;
        margin: auto;
        background-color: #a4002c;
        padding: 10px 10px;
        color: #fff;
        display: block;
        text-align: center;
        font-size: 14px;
    }

    .box_apply_project .btn_contact .fa:before {
        color: #fff;
        font-size: 20px;
    }

    .box_apply_project .btn_application {
        width: 240px;
        margin: auto;
        background-color: #e8a736;
        padding: 10px 10px;
        color: #fff;
        display: block;
        text-align: center;
        font-size: 14px;
    }

    .box_apply_project .btn_application .fa:before {
        color: #fff;
        font-size: 20px;
    }

    .box_apply_project .box_apply_guide__link {
        font-weight: bold;
        padding: 10px 0 0;
        font-size: 13px;
    }

    .box_apply_project_wide {
        max-width: none;
        padding: 0 15px;
        margin: 20px auto;
    }

    .box_apply_project_wide .box_apply_project {
        position: relative;
        padding: 15px;
    }

    .box_apply_project_wide .btn_contact {
        position: inherit;
        right: inherit;
        top: inherit;
        bottom: inherit;
        height: auto;
    }

    .box_apply_project_wide .txt_apply_lead {
        line-height: 1.4em;
        margin: 0 0 15px;
    }

    .box_apply_project_wide .box_apply_guide__link {
        text-align: center;
    }
}

.box_contact_project__button {
    padding-left: 10px;
    width: 33.33%;
    text-align: right;
}

#property_project .hdg_lv2 {
    color: #333;
}

.lst_info {
    margin: 0 -5px;
    display: block;
    position: relative;
}

.lst_info > li {
    width: 50%;
    display: block;
    float: left;
    padding: 0 5px 10px;
    box-sizing: border-box;
}

.lst_info__content {
    box-sizing: border-box;
    border: 1px solid #ddd;
    display: table;
    width: 100%;
    min-height: 160px;
    position: relative;
}

.lst_info__text {
    display: table-cell;
    vertical-align: middle;
}

.lst_info__ttl {
    font-size: 24px;
    color: #333;
    /* margin-bottom: 10px; */
}

.lst_info__pic {
    position: relative;
    display: table-cell;
    vertical-align: middle;
    padding: 15px;
    width: 34.5%;
    text-align: center;
}

.lst_info__ttl .list_content_title__rank {
    display: inline-block;
    float: right;
    margin-right: 15px;
}

.section_info {
    margin-bottom: 30px;
}

.section_tabs .box_tab {
    max-width: 1200px;
    padding: 0 15px;
}

.hdg_lv3_3 {
    font-size: 24px;
    padding: 25px 0 10px;
    border-bottom: 1px solid #ddd;
}

.section_contact .wrp_grid {
    margin-top: 35px;
}

.section_contact .hdg_lv3_3 {
    margin: 0 0 20px;
    padding: 0 0 10px;
}

.section_contact .box_media {
    margin-bottom: 60px;
    width: 100%;
}

.section_contact .box_media .box_media__pic {
    width: 30%;
    box-sizing: border-box;
    padding: 0;
}

/*
.section_contact .box_media .box_media__pic img{
	border: 1px solid #ddd;
}
*/

.section_contact .box_media .box_media__txt {
    padding-left: 20px;
}

.lst_features {
    display: block;
    position: relative;
    padding: 10px 0 0;
}

.lst_features > li {
    display: block;
    box-sizing: border-box;
    width: 25%;
    position: relative;
    float: left;
    padding-left: 15px;
    margin-bottom: 5px;
}

.lst_features > li:before {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background-color: #a4002c;
    border-radius: 50%;
    left: 0;
    top: 10px;
}

#property_project .wrp_tab__content {
    padding: 0;
}

#property_project .wrp_tab__content li p {
    position: relative;
}

.lbl_info_large {
    width: 100px;
}

.section_tabs .box_enviroment {
    border-bottom: 1px solid #ddd;
}

.lst_enviroment {
    padding-top: 20px;
}

.lst_enviroment > li {
    margin-bottom: 20px;
}

#slide_counter {
    display: inline-block;
    float: right;
    margin-left: 5px;
}

#property_project .box_contact__pic {
    position: relative;
    box-sizing: border-box;
    border: 1px solid #ddd;
    text-align: center;
}

#property_project .box_contact__pic__zoom {
    position: absolute;
    font-size: 24px;
    right: 10px;
    bottom: 10px;
}

.com_map #map_honsha {
    margin-top: 10px;
    width: 450px;
    height: 300px;
}

.box_slider .tag_kikaku {
    position: absolute;
    display: block;
    color: #ffffff;
    background-color: #e8a736;
    top: 0;
    left: 0;
    font-size: 15px;
    line-height: 1.4em;
    padding: 10px 15px;
    z-index: 100;
    text-align: center;
}

.btn_kikaku_info {
    text-align: center;
    padding: 30px 0;
}

.btn_kikaku_info a {
    display: block;
    box-sizing: border-box;
    width: 292px;
    margin: 0 auto;
    padding: 8px 10px;
    color: #ffffff;
    background-color: #2d3339;
}

.btn_kikaku_info a .fa:before {
    color: #ffffff;
}

.property_map_pc {
    display: block;
}

.property_map_sp {
    display: none;
}

@media (min-width: 768px), print {
    .det_madori {
        position: relative;
        box-sizing: border-box;
        text-align: center;
    }

    .det_madori img {
        max-width: 568px !important;
        max-height: 426px !important;
    }

    .proj_mapimg {
        position: relative;
        box-sizing: border-box;
        text-align: center;
    }

    .proj_mapimg img {
        max-width: 568px !important;
        max-height: 426px !important;
    }

    .lst_info__pic > li:nth-of-type(2n + 1) {
        clear: both;
    }

    .lst_info__pic img {
        max-width: 169px;
        max-height: 128px;
    }
}

@media screen and (max-width: 767px) {
    .com_map #map_honsha {
        margin-top: 10px;
        width: 100%;
        height: 250px;
    }

    .lst_info {
        margin: 0;
    }

    .lst_info > li {
        width: 100%;
        display: block;
        padding: 0;
    }

    .lst_info__content {
        min-height: auto;
    }

    .lst_features {
        font-size: 12px;
    }

    .lst_features > li {
        width: 50%;
    }

    .box_contact_project__phone .visible_pc {
        display: none !important;
    }

    .box_contact_project__phone .visible_sp {
        display: inline-block !important;
        vertical-align: middle;
    }

    .box_contact_project__phone .fa,
    .box_contact_project__phone .fa:before {
        color: #fff;
    }

    #property_project .box_contact__pic__zoom {
        font-size: 16px;
    }

    .section_contact .box_media {
        display: table;
        width: 100%;
        margin-bottom: 0;
    }

    .section_contact .box_media__pic {
        display: table-cell;
        vertical-align: middle;
        width: 31%;
    }

    .section_contact .box_media .box_media__pic img {
        border: none;
    }

    .section_contact .box_media__txt {
        display: table-cell;
        vertical-align: middle;
        padding-left: 10px;
    }

    .lst_info__ttl {
        font-size: 18px;
        margin-bottom: 5px;
    }

    #property_project .box_tab li a {
        font-size: 14px;
    }

    .lst_enviroment {
        padding: 0 0 10px;
    }

    .lst_enviroment > li {
        margin-bottom: 10px;
    }

    .lst_info__ttl .list_content_title__rank {
        margin-right: 0;
    }

    .lst_info__pic {
        padding: 10px;
        width: 36.67%;
    }

    .lst_info__text {
        font-size: 12px;
        padding: 10px 10px 10px 0;
    }

    .section_tabs .box_enviroment {
        border-bottom: none;
        padding: 0;
    }

    .box_slider_enviroment {
        background: #f5f5f2;
    }

    .box_slider .tag_kikaku {
        position: absolute;
        display: block;
        color: #ffffff;
        background-color: #e8a736;
        top: 0;
        left: 0;
        font-size: 12px;
        line-height: 1.4em;
        padding: 8px 10px;
        z-index: 100;
        text-align: center;
    }

    .box_tab.tab_property {
        display: none;
    }

    .property_map_pc {
        display: none;
    }

    .property_map_sp {
        display: block;
    }
}

/*---------------------------*/

.box_property_detail {
    position: relative;
    width: 100%;
    margin-bottom: 40px;
}

.lst_detail li {
    display: table;
    border-bottom: 1px dashed #ddd;
}

.lst_detail li p {
    display: table-cell;
    vertical-align: middle;
    width: 50%;
    padding: 8px 0;
}

.lst_detail li p span {
    width: 70%;
    display: inline-block;
    vertical-align: middle;
}

.lst_detail li p .lst_detail__title {
    width: 30%;
    font-weight: bold;
}

.detai_relative {
    border-top: 1px solid #ddd;
    margin-bottom: 40px;
}

.detai_relative .lst_info {
    margin: 20px 0 30px;
}

.contact_info .hdg_lv3_3 {
    margin-bottom: 20px;
}

.content_detail .section_content {
    margin-bottom: 40px;
}

.content_detail .section_tabs .lst_features > li {
    width: 50%;
}

.content_detail .contact_info {
    margin-top: 40px;
}

@media screen and (max-width: 767px) {
    .detai_relative .btn {
        border-radius: 3px;
    }

    .hdg_lv3_3 {
        font-size: 19px;
        margin-bottom: 5px;
    }

    .section_contact .hdg_lv3_3 {
        padding: 15px 0 10px;
        margin-bottom: 10px;
    }

    .box_property_detail {
        margin-bottom: 20px;
    }

    .lst_detail li {
        border-bottom: 0;
    }

    .lst_detail li p span {
        padding-left: 5px;
        box-sizing: border-box;
    }

    .lst_detail li p {
        display: block;
        width: 100%;
        border-bottom: 1px solid #ddd;
        padding: 10px 0;
    }

    .lst_detail li p:after {
        content: "";
        clear: both;
        display: block;
    }

    .lst_detail li p .lst_detail__title {
        font-weight: normal;
        padding-left: 0;
    }

    .contact_info .hdg_lv3_3 {
        margin-bottom: 10px;
    }

    .content_detail .section_content {
        margin-bottom: 20px;
    }

    .content_detail .contact_info {
        margin-top: 20px;
    }

    .lbl_info_large {
        width: 85px;
    }

    .btn_kikaku_info {
        text-align: center;
        padding: 10px 0 10px;
    }

    .btn_kikaku_info a {
        display: inline-block;
        box-sizing: border-box;
        min-width: 240px;
        margin: 0 auto;
        font-size: 14px;
        line-height: 1em;
        padding: 12px 15px;
        color: #ffffff;
        background-color: #2d3339;
        border-radius: 3px;
    }

    .btn_kikaku_info a .fa:before {
        color: #ffffff;
    }
}

#property_project_map,
#property_project_map_sp {
    position: relative;
    width: 100%;
    height: 400px;
}

.box_slider_enviroment {
    padding: 20px 0;
    overflow: hidden;
}

.box_slider_enviroment .bx-wrapper {
    display: block;
    margin: 0 auto;
    padding: 0;
    position: relative;
}

.box_slider_enviroment .bx-prev {
    position: absolute;
    display: inline-block;
    left: -30px;
    top: 30px;
    font-size: 30px;
}

.box_slider_enviroment .bx-next {
    position: absolute;
    display: inline-block;
    right: -30px;
    top: 30px;
    font-size: 30px;
}

.bx-prev.disabled,
.bx-next.disabled {
    cursor: default;
}

.bx-prev.disabled .fa:before,
.bx-next.disabled .fa:before {
    color: #ddd;
}

.box_slider_enviroment .bx_caption {
    display: block;
    font-size: 14px;
}

@media screen and (max-width: 767px) {
    .box_slider_enviroment .bx_caption {
        font-size: 12px;
    }

    .box_slider_enviroment .bx-wrapper {
        padding: 0;
        overflow: visible !important;
        max-width: 100% !important;
    }

    .box_slider_enviroment .bx-viewport {
        width: 200px !important;
        margin: 0 auto;
        overflow: visible !important;
    }

    .box_slider_enviroment .bx-prev {
        background: rgba(45, 51, 57, 0.7);
        padding: 5px 8px 10px 6px;
        left: 0;
    }

    .box_slider_enviroment .bx-next {
        background: rgba(45, 51, 57, 0.7);
        padding: 5px 5px 10px 10px;
        right: 0;
    }

    .box_slider_enviroment .bx-prev .fa:before,
    .box_slider_enviroment .bx-prev.disabled .fa:before,
    .box_slider_enviroment .bx-next .fa:before,
    .box_slider_enviroment .bx-next.disabled .fa:before {
        color: #fff;
    }

    #property_project_map,
    #property_project_map_sp {
        height: 200px;
    }
}

/*------Popup------*/

/* Outer */

.popup {
    width: 100%;
    height: 100%;
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.75);
    z-index: 1001;
    overflow-y: auto;
}

.popup__button {
    position: relative;
    display: block;
    top: 0;
    right: 0;
    width: 100%;
    box-sizing: border-box;
    height: 70px;
    text-align: right;
    padding: 10px 20px 0;
}

/* Inner */

.popup__inner {
    position: relative;
    top: 0;
    line-height: 0;
    margin: 0 auto;
    border-radius: 3px;
    background: transparent;
}

/* Close Button */

.popup__close {
    width: 40px;
    height: 60px;
    display: inline-block;
    background: transparent url(/resource/img/icn_modal_close.png) no-repeat
        center;
}

/* List Button */

.popup__list {
    width: 40px;
    height: 60px;
    display: inline-block;
    background: transparent url(/resource/img/icn_modal_list.png) no-repeat
        center;
}

.popup__list.popup-icon {
    background: transparent url(/resource/img/icn_modal_list2.png) no-repeat
        center;
}

.popup__close:hover {
    text-decoration: none;
}

.popup_list_inner {
    margin-top: 60px;
    display: none;
    padding: 0 10px;
    box-sizing: border-box;
}

.lst_popup_img {
    margin: 0 -5px;
    overflow: hidden;
}

.lst_popup_img > li {
    box-sizing: border-box;
    float: left;
    width: 20%;
    height: auto;
    overflow: hidden;
    text-align: center;
    position: relative;
}

.lst_popup_img > li:before {
    content: "";
    display: block;
    padding-top: 100%;
}

.lst_popup_img > li a {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 98%;
    height: 98%;
    margin: auto;
    background-size: cover;
    background-position: center;
}

.lst_popup_img > li img {
    width: auto;
    height: 100%;
    max-width: none;
    display: none;
}

.lst_popup_img > li img.vertical-img {
    width: 100%;
    height: auto;
}

.popup_slide_inner {
    position: relative;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

.lst_slide_img {
    position: relative;
    list-style: none;
}

.lst_slide_img > li {
    display: block;
    float: left;
    text-align: center;
    box-sizing: border-box;
}

a.control_box__prev .fa:before,
a.control_box__next .fa:before {
    color: #fff;
    font-size: 34px;
    margin-right: 0;
}

a.control_box__prev,
a.control_box__next {
    position: absolute;
    top: 40%;
    z-index: 999;
    display: block;
    width: auto;
    height: auto;
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    font-size: 18px;
    opacity: 0.8;
    cursor: pointer;
}

a.control_box__prev,
a.control_box__next {
    padding: 20px 10px;
    background: rgba(45, 51, 57, 0.8);
}

a.control_box__prev:hover,
a.control_box__next:hover {
    opacity: 1;
    -webkit-transition: all 0.2s ease;
}

a.control_box__prev {
    border-radius: 0 2px 2px 0;
    left: 10px;
}

a.control_box__next {
    right: 10px;
    border-radius: 2px 0 0 2px;
}

@media screen and (max-width: 999px) {
    a.control_box__prev {
        left: 0;
    }

    a.control_box__next {
        right: 0;
    }
}

.lst_slide_img__caption {
    position: absolute;
    width: 100%;
    min-height: 70px;
    bottom: 0;
    left: 0;
    text-align: center;
    font-size: 14px;
    color: #fff;
    box-sizing: border-box;
    padding: 25px 20px 20px;
}

.slide_lifecycle a .zoomarea {
    display: inline-block;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    background-color: #fff;
    padding: 10px 100px 10px;
}

.slide_lifecycle a .zoomarea img {
    position: relative;
    top: 0 !important;
    transform: none !important;
}

.lst_slide_img__caption2 {
    position: absolute;
    width: 100%;
    min-height: 70px;
    top: 0;
    left: 0;
    text-align: center;
    font-size: 25px;
    font-weight: 500;
    line-height: 1.4em;
    color: #333;
    background-color: #fff;
    box-sizing: border-box;
    margin-top: -78px;
    padding: 25px 20px 20px;
}

@media screen and (max-width: 767px) {
    .popup__button {
        padding: 0;
        height: 50px;
    }

    .popup__button span {
        display: inline-block;
    }

    .popup__list {
        width: 50px;
        height: 50px;
    }

    .popup__close {
        width: 50px;
        height: 50px;
    }

    .lst_popup_img > li {
        width: 33.33333%;
    }

    a.control_box__prev .fa:before,
    a.control_box__next .fa:before {
        font-size: 20px;
    }

    a.control_box__prev,
    a.control_box__next {
        padding: 20px 10px;
        background: rgba(45, 51, 57, 0.8);
    }

    a.control_box__prev {
        left: 0;
    }

    a.control_box__next {
        right: 0;
    }

    .lst_slide_img__caption {
        font-size: 16px;
        min-height: 50px;
        padding: 15px 15px 10px;
    }

    .popup_list_inner {
        margin-top: 0;
    }

    .slide_lifecycle a .zoomarea {
        display: inline-block;
        position: relative;
        top: 50%;
        transform: translateY(-50%);
        background-color: #fff;
        padding: 10px 40px 20px;
    }

    .slide_lifecycle a .zoomarea img {
        position: relative;
        top: 0 !important;
        transform: none !important;
    }

    .lst_slide_img__caption2 {
        position: absolute;
        width: 100%;
        min-height: 70px;
        top: 0;
        left: 0;
        text-align: center;
        font-size: 18px;
        font-weight: 500;
        line-height: 1.4em;
        color: #333;
        background-color: #fff;
        box-sizing: border-box;
        margin-top: -62px;
        padding: 20px 20px 20px;
    }
}

/*-------Page favorite--------*/

#page_favorite {
}

#page_favorite .hdg_lv1 {
    font-weight: normal;
}

.favorite_help {
    margin-bottom: 20px;
    overflow: hidden;
}

.fav_help_head {
    text-align: center;
    display: none;
}

.fav_help_note {
    padding: 10px 0;
    text-align: center;
    color: #a4002c;
    display: none;
}

.favorite_help__left {
    float: left;
}

.favorite_help__right {
    float: right;
    cursor: pointer;
}

.favorite_help__right .fa:before {
    color: #333;
}

.no_items {
    width: 100% !important;
    float: none 100% !important;
    text-align: center;
}

.section_favorite_help {
    margin-top: 45px;
    display: none;
}

.section_favorite_help ul {
    overflow: hidden;
}

.section_favorite_help h5 {
    font-size: 24px;
    text-align: center;
    padding-bottom: 25px;
}

.section_favorite_help li {
    border-left: 1px solid #ddd;
}

.section_favorite_help li:first-child {
    border-left: 0;
}

.section_favorite_help__content {
    padding: 10px 0 25px;
}

.favorite_help__left .visible_pc {
    display: inline-block !important;
}

.section_favorite .lst_fav li:nth-of-type(2n + 1) {
    clear: both;
}

@media screen and (max-width: 767px) {
    .favorite_help__left .count_items {
        font-weight: bold;
    }

    .favorite_help__left .visible_pc {
        display: none !important;
    }

    .fav_help_head {
        display: none !important;
    }

    .fav_help_note {
        padding: 10px 0 0;
        text-align: left;
    }

    .section_favorite_help li {
        border-left: 0;
    }

    .section_favorite_help h5 {
        text-align: left;
        border-bottom: 1px solid #ddd;
        padding-bottom: 10px;
        margin-bottom: 20px;
        font-size: 19px;
    }

    .section_favorite_help p {
        margin-bottom: 15px;
    }
}

.info_favorite {
    height: 60px;
    position: relative;
    margin-top: 15px;
}

.info_favorite__content {
    background-color: rgba(0, 0, 0, 0.4);
    max-width: 100% !important;
}

.info_favorite .box_fav {
    display: inline-block;
    vertical-align: middle;
    background-color: #2d3339;
    color: #fff;
    border: none;
}

.info_favorite .box_fav_contact {
    display: inline-block;
    float: right;
}

.info_favorite .box_fav_button {
    float: left;
    margin-top: 12px;
}

.box_fav_button a,
.box_fav_button a:hover,
.box_fav_button .fa:before {
    color: #fff;
}

.box_fav_button a {
    display: block;
}

.box_fav_button .active .fa:before {
    color: #ff9900;
}

.info_favorite .box_contact_project {
    color: #fff;
    vertical-align: middle;
    padding: 8px 0 8px;
}

.info_favorite .box_contact_project__phone .fa,
.info_favorite .box_contact_project__phone .fa:before {
    color: #fff;
    font-size: 24px;
}

@media screen and (max-width: 767px) {
    .projects .box_fav_contact,
    .property_project_detail .box_fav_contact {
        width: 100%;
    }

    .info_favorite {
        height: 100%;
    }

    .box_fav_button {
        border: 1px solid #ddd;
        text-align: center;
        border-radius: 4px;
        padding: 8px 10px 10px;
        box-sizing: border-box;
        margin-top: 20px;
    }

    .box_fav_button a,
    .box_fav_button a:hover,
    .box_fav_button .fa:before {
        color: #313336;
    }

    .info_favorite .box_contact_project__phone .fa,
    .info_favorite .box_contact_project__phone .fa:before {
        font-size: 12px;
    }

    .btn_address {
        min-width: auto;
    }
}

#property_project .box_slide {
    margin-top: 0;
}

#property_project .hdg_lv2 {
    margin-top: 30px;
}

.history_contents .lst_media .lst_media__content p {
    font-size: 12px;
}

.bukken_sold_out a {
    cursor: default;
}

.bukken_sold_out a:hover {
    color: #333;
}

.bukken_sold_out a .fa:before {
    display: none;
}

.bukken_sold_out .lst_info__pic:after {
    content: " ";
    position: absolute;
    z-index: 10;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(/resource/img/ico_sold_out.png) center center no-repeat;
}

.bukken_sold_out .lst_info__pic img {
    opacity: 0.5;
}

.bukken_sold_out .list_content_title__rank {
    display: none;
}

.bukken_sold_out .lst_info__text * {
    color: #999999 !important;
}

@media (min-width: 768px), print {
    .history_contents .lst_media .lst_media__img {
        display: table;
        width: 176px;
        height: 126px;
    }

    .history_contents .lst_media .lst_media__img span {
        position: relative;
        display: table-cell;
        width: 176px;
        height: 126px;
        text-align: center;
        vertical-align: middle;
    }

    .history_contents .lst_media .lst_media__img span:before {
        content: ".";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 176px;
        height: 126px;
        box-sizing: border-box;
        border: 1px solid #eee;
        background: #fafaf8;
        font-size: 0.1px;
        color: #fafaf8;
        z-index: -1;
    }

    .history_contents .lst_media .lst_media__img span img {
        max-width: 176px;
        max-height: 127px;
    }

    .history_contents .lst_media .lst_media__img span .tag_kikaku {
        position: absolute;
        display: block;
        color: #ffffff;
        background-color: #e8a736;
        top: 0;
        left: 0;
        width: 60px;
        height: 28px;
        font-size: 10px;
        line-height: 1.4em;
        padding: 4px 6px;
    }

    .lst_search_new .lst_media__img > span {
        display: table;
        width: 270px;
        height: 202px;
    }

    .lst_search_new .lst_media__img > span > span {
        position: relative;
        display: table-cell;
        width: 270px;
        height: 202px;
        text-align: center;
        vertical-align: middle;
    }

    .lst_search_new .lst_media__img > span > span:before {
        content: ".";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 270px;
        height: 202px;
        box-sizing: border-box;
        border: 1px solid #eee;
        background: #fafaf8;
        font-size: 0.1px;
        color: #fafaf8;
        z-index: -1;
    }

    .lst_search_new .lst_media__img > span > span img {
        max-width: 270px;
        max-height: 202px;
        max-width: 268px;
        max-height: 200px;
    }

    .lst_media__img {
        position: relative;
    }

    .lst_media__img .tag_kikaku {
        position: absolute;
        display: block;
        color: #ffffff;
        background-color: #e8a736;
        top: 0;
        left: 0;
        font-size: 11px;
        line-height: 1.4em;
        padding: 8px 12px;
    }

    .js_env_photo .env_photo {
        display: table;
        width: 170px;
        height: 127px;
    }

    .js_env_photo .env_photo > span {
        position: relative;
        display: table-cell;
        width: 170px;
        height: 127px;
        text-align: center;
        vertical-align: middle;
    }

    .js_env_photo .env_photo > span:before {
        content: ".";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 170px;
        height: 127px;
        box-sizing: border-box;
        border: 1px solid #eee;
        background: #fafaf8;
        font-size: 0.1px;
        color: #fafaf8;
        z-index: -1;
    }

    .js_env_photo .env_photo > span img {
        max-width: 170px;
        max-height: 127px;
    }

    .list_bukken .box_media__pic > span {
        display: table;
        width: 320px;
        height: 240px;
    }

    .list_bukken .box_media__pic > span > span {
        position: relative;
        display: table-cell;
        width: 320px;
        height: 240px;
        text-align: center;
        vertical-align: middle;
    }

    .list_bukken .box_media__pic > span > span:before {
        content: ".";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 320px;
        height: 240px;
        box-sizing: border-box;
        border: 1px solid #eee;
        background: #fafaf8;
        font-size: 0.1px;
        color: #fafaf8;
        z-index: -1;
    }

    .box_media__pic {
        position: relative;
    }

    .box_media__pic .tag_kikaku {
        position: absolute;
        display: block;
        color: #ffffff;
        background-color: #e8a736;
        top: 0;
        left: 0;
        font-size: 11px;
        line-height: 1.4em;
        padding: 8px 12px;
    }

    .lst_info__pic .tag_kikaku {
        position: absolute;
        display: block;
        color: #ffffff;
        background-color: #e8a736;
        top: 0;
        left: 0;
        font-size: 11px;
        line-height: 1.4em;
        padding: 8px 12px;
    }

    .list_bukken .box_media__pic > span > span img {
        margin: 0 auto;
        text-align: center;
        vertical-align: middle;
    }

    .lst_fav__inner .box_media__pic > span {
        display: table;
        width: 178px;
        height: 128px;
    }

    .lst_fav__inner .box_media__pic > span > span {
        position: relative;
        display: table-cell;
        width: 178px;
        height: 128px;
        text-align: center;
        vertical-align: middle;
    }

    .lst_fav__inner .box_media__pic > span > span:before {
        content: ".";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 178px;
        height: 128px;
        box-sizing: border-box;
        border: 1px solid #eee;
        background: #fafaf8;
        font-size: 0.1px;
        color: #fafaf8;
        z-index: -1;
    }

    .lst_fav__inner .box_media__pic > span > span img {
        max-width: 178px;
        max-height: 128px;
        margin: 0 auto;
        text-align: center;
        vertical-align: middle;
    }

    .lst_info__pic {
        position: relative;
        display: table-cell;
        vertical-align: middle;
        padding: 15px;
        width: 34.5%;
        text-align: center;
    }

    .lst_info__pic > span {
        display: table;
        width: 167px;
        height: 128px;
    }

    .lst_info__pic > span > span {
        position: relative;
        display: table-cell;
        width: 167px;
        height: 128px;
        text-align: center;
        vertical-align: middle;
    }

    .lst_info__pic > span > span:before {
        content: ".";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 167px;
        height: 128px;
        box-sizing: border-box;
        border: 1px solid #eee;
        background: #fafaf8;
        font-size: 0.1px;
        color: #fafaf8;
        z-index: -1;
    }

    .lst_info__pic > span > span img {
        margin: 0 auto;
        text-align: center;
        vertical-align: middle;
    }
}

.map_honsha {
    width: 450px;
    height: 300px;
}

@media screen and (max-width: 767px) {
    .lst_search_new {
        height: auto !important;
        padding: 10px !important;
    }

    .map_honsha {
        width: 100%;
        height: 250px;
    }

    .js_env_photo .env_photo {
        display: table;
        width: 200px;
        height: 127px;
    }

    .js_env_photo .env_photo > span {
        position: relative;
        display: table-cell;
        width: 200px;
        height: 127px;
        text-align: center;
        vertical-align: middle;
    }

    .js_env_photo .env_photo > span:before {
        content: ".";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 200px;
        height: 127px;
        box-sizing: border-box;
        border: 1px solid #eee;
        background: #fafaf8;
        font-size: 0.1px;
        color: #fafaf8;
        z-index: -1;
    }

    .js_env_photo .env_photo > span img {
        max-width: 200px;
        max-height: 127px;
    }

    .history_contents .lst_media .lst_media__img {
        display: table;
        width: 230px;
        height: 126px;
    }

    .history_contents .lst_media .lst_media__img span {
        position: relative;
        display: table-cell;
        width: 230px;
        height: 126px;
        text-align: center;
        vertical-align: middle;
    }

    .history_contents .lst_media .lst_media__img span:before {
        content: ".";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 230px;
        height: 126px;
        box-sizing: border-box;
        border: 1px solid #eee;
        background: #fafaf8;
        font-size: 0.1px;
        color: #fafaf8;
        z-index: -1;
    }

    .history_contents .lst_media .lst_media__img span img {
        max-width: 230px;
        max-height: 127px;
    }
}

@media (max-width: 319px) {
    .mb10_sp1 {
        margin-bottom: 10px !important;
    }
}

/* Special 3d-ex
-------------------------------------------------- */

.wrp_heading_3dex {
    background: url(/resource/img/special/3dex-bg-main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

.wrp_heading_3dex .nav_breadcrumb,
.wrp_heading_3dex .nav_breadcrumb a

/*
.wrp_heading_design .nav_breadcrumb,
.wrp_heading_design .nav_breadcrumb a */ {
    color: #333333;
}

.wrp_heading_3dex h1 span {
    border-color: #333333;
}

.wrp_heading_3dex h1 span,
.wrp_heading_3dex p {
    color: #333333 !important;
}

.wrp_heading_3dex h1 span {
    border-color: #333333;
}

.wrp_heading_3dex .txt_head br {
    display: none;
}

.hdg_lv2_3dex {
    font-size: 32px;
    margin: 80px 0 25px;
    position: relative;
    font-weight: 300;
    text-align: center;
}

.txt_lead_3dex {
    font-size: 16px;
    line-height: 30px;
    text-align: center;
}

.txt_3dex_note {
    color: #a4002c;
    font-size: 16px;
    line-height: 30px;
    text-align: center;
    padding: 25px 0 0;
}

.txt_shop_appeal {
    color: #a4002c;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.11em;
    padding: 10px 0 0;
}

.box_3dex_outline .btn,
.box_3dex_shops .btn {
    background-color: #a4002c;
}

.btn_gmap {
    display: none;
}

.box_3dex_video {
    width: 100%;
    max-width: 854px;
    margin: 0 auto;
    text-align: center;
    padding: 40px 0 0;
}

.box_3dex_video .inner {
    position: relative;
    height: 34px;
    padding: 30px 0 52.25%;
    overflow: hidden;
}

.box_3dex_video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.lst_3dex_shops {
    margin: 0;
    padding: 40px 0 78px;
}

.lst_3dex_shops li {
    width: 33.33333333%;
    float: left;
    margin: 0 0 10px 0;
}

.lst_3dex_shops li p {
    margin: 0 5px;
    position: relative;
}

.lst_3dex_shops li img {
    width: 100%;
    height: auto;
}

.lst_3dex_shops li span {
    position: absolute;
    left: 0;
    top: 0;
    display: none;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    border: 1px #a4002c solid;
}

.lst_3dex_shops li:hover span {
    display: block;
}

.box_shop_information {
    border: 1px #dddddd;
    border-bottom-style: solid;
    padding: 0 0 40px;
    margin-bottom: 40px;
}

.box_shop_information h3 {
    font-size: 24px;
    line-height: 1.25em;
    margin-bottom: 20px;
}

.box_shop_information > p {
    text-align: center;
}

.box_shop_information div p {
    margin-bottom: 20px;
}

.box_shop_map {
    clear: both;
    position: relative;
    padding-top: 500px;
    height: 0;
    overflow: hidden;
    margin: 30px 5px 30px;
}

.box_shop_map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 500px;
}

#box_shop_sakae {
    clear: both;
}

.icn_freedial {
    background: url(/resource/img/cmn_icon_freedial.png) no-repeat left center;
    padding: 0 0 0 2em;
}

@media only screen and (max-width: 767px) {
    .wrp_heading_3dex {
        background: url(/resource/img/special/3dex-bg-main.jpg) no-repeat center;
        background-size: cover;
        box-sizing: border-box;
        height: 180px;
        padding: 10px 0 30px;
    }

    .wrp_heading_3dex .txt_head br {
        display: block;
    }

    .hdg_lv2_3dex {
        margin: 35px 0 25px;
        font-size: 20px;
        line-height: 1em;
    }

    .txt_lead_3dex {
        font-size: 14px;
        line-height: 1.25em;
        text-align: left;
    }

    .txt_3dex_note {
        font-size: 14px;
        line-height: 1.25em;
        text-align: left;
    }

    .txt_shop_appeal {
        color: #a4002c;
        font-size: 16px;
        font-weight: bold;
        line-height: 1.11em;
        padding: 10px 0 0;
    }

    .lst_3dex_shops {
        padding: 40px 0 30px;
    }

    .lst_3dex_shops li {
        width: 50%;
    }

    .box_shop_information {
        border: none;
        padding: 0 0 0;
        margin-bottom: 0;
        font-size: 13px;
    }

    .box_shop_information h3 {
        font-size: 16px;
        line-height: 1.25em;
        margin-bottom: 10px;
    }

    .box_shop_information > p {
        text-align: center;
    }

    .box_shop_information div p {
        margin-bottom: 10px;
    }

    .box_shop_map {
        display: none;
    }

    .btn_gmap {
        display: block;
    }

    .btn_gmap .btn {
        background-color: #525559;
    }
}

.care_iframe p {
    font-size: 12px;
}

@media only screen and (max-width: 767px) {
    .care_iframe iframe {
        margin-top: 10px;
        width: 100%;
        height: auto;
    }

    .care_iframe p {
        font-size: 11px;
    }
}

.box-contentslink ul li a {
    display: block;
    height: 100%;
    border: 1px solid #dddddd;
    box-sizing: border-box;
    padding: 27px 19px;
}

.box-contentslink--owner ul li div {
    width: 100%;
    height: 195px;
    border: 1px solid #dddddd;
    box-sizing: border-box;
    padding: 0;
    text-align: center;
    line-height: 190px;
}

.box-contentslink ul li a:hover {
    border: 1px solid #a4002c;
}

.box-contentslink ul li a:hover h3 {
    color: #a4002c;
}

.box-contentslink ul li a:hover h3 .fa {
    background: #a4002c;
}

.box-contentslink ul li a:hover li {
    color: #333333;
}

.box-contentslink ul li a h3 span {
    font-size: 20px;
}

.box-contentslink ul li a .fa {
    background: #2d3339;
    width: 16px;
    height: 16px;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    line-height: 0;
    position: relative;
    top: -2px;
    margin-right: 10px;
}

.box-contentslink ul li a .fa:before {
    color: #fff;
    margin: 0;
    font-size: 14px;
}

.box-contentslink ul li ul {
    margin: 20px 0 0;
}

.box-contentslink ul li ul li {
    margin: 5px 0 0 1em;
    text-indent: -1em;
}

.box-contentslink ul li ul li:before {
    content: "・";
}

.box-contentslink--owner dl dt {
    margin-top: 20px;
    font-size: 18px;
    font-weight: bold;
}

.box-contentslink--owner dl dd {
    position: relative;
    padding-left: 14px;
}

.box-contentslink--owner dl dd:before {
    content: "・";
    position: absolute;
    left: 0;
}

.box-contentslink--owner dl dd.disable-disc:before {
    display: none;
}

.box-contentslink .modal_product {
    cursor: pointer;
}

.box-contentslink .modal_product img {
    max-width: 100%;
    max-height: 190px;
    vertical-align: middle !important;
}

.next_event_info tr:first-child {
    border-top: 1px solid #ccc;
}

.next_event_info tr:last-child {
    border-bottom: 1px solid #ccc;
}

.next_event_info .middle_cell {
    border-top: 1px dashed #ccc;
    border-bottom: 1px dashed #ccc;
}

.next_event_info th {
    min-width: 28px;
    background-color: #f5f5f2;
}

.next_event_info th,
td {
    padding: 15px;
}

.next_event_info .date {
    display: block;
    position: relative;
    left: 55px;
    max-width: calc(100% - 55px);
}

.next_event_info .date span {
    position: absolute;
    top: 0;
    left: -55px;
}

.lst_media--fluid .lst_media__img {
    width: 100%;
}

.lst_media--fluid .lst_media__img img {
    width: 100%;
    height: auto;
}

.box_interior-fes__title {
    margin: 60px 0 30px;
}

.interior-fes_main-visual {
    position: relative;
    height: 400px;
    box-sizing: border-box;
    background: url("/resource/img/special_interior-fes_main.jpg") no-repeat
        center;
    background-size: cover;
}

.interior-fes_main-visual .nav_breadcrumb {
    padding: 0 15px 0 0;
    color: #fff;
}

.interior-fes_main-visual .nav_breadcrumb a {
    color: #fff;
}

.interior-fes_main-visual .wrp_heading-message {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 560px;
    height: 220px;
    margin: auto;
    padding: 20px;
    box-sizing: border-box;
    background: rgba(255, 255, 255, 0.75);
}

.interior-fes_main-visual .heading_interior-fes_txt {
    padding: 0 0 10px 0;
    border-bottom: 1px solid #a4002c;
    box-sizing: border-box;
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    color: #a4002c;
}

.interior-fes_main-visual .txt_head {
    padding: 30px 0 0 0;
    line-height: 46px;
    font-size: 36px;
    letter-spacing: -0.06em;
}

.hdg_lv2--about-interior-fes {
    margin: 0 0 40px;
}

.hdg_lv2--about-interior-appli {
    font-size: 25px;
    color: #333333;
    margin: 60px 0 15px;
}

.hdg_lv2--about-interior-appli span {
    display: inline-block;
    font-size: 35px;
    color: #a4002c;
    position: relative;
}

/*
.hdg_lv2--about-interior-appli span:before,
.hdg_lv2--about-interior-appli span:after {
  position: absolute;
  content: "";
  width: 2px;
  height: 40px;
  bottom: 8px;
  background-color: #a4002c;
}

.hdg_lv2--about-interior-appli span:before {
  left: -20px;
  transform: rotate(-45deg);
}

.hdg_lv2--about-interior-appli span:after {
  right: -20px;
  transform: rotate(45deg);
}
*/

.vacation-label {
    max-width: 800px;
    margin: 60px auto 0 auto;
    padding: 30px 20px;
    border-top: 4px solid #ddd;
    border-bottom: 4px solid #ddd;
    box-sizing: border-box;
}

.vacation-label .hdg_lv3 {
    margin: 0 auto;
    font-size: 18px;
}

.vacation-label .txt_lead {
    margin: 20px 0 0 0;
    font-size: 16px;
}

.vacation-label .txt_lead span.block {
    display: block;
    padding: 14px 0;
}

.wrp-floor-map {
    padding: 50px 0;
    box-sizing: border-box;
    background-image: url(/resource/img/interior_fes_floor_map_bg.png);
}

.box-floor-map-merit,
.box-floor-map-info {
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 15px;
}

.box-floor-map-info {
    margin: 90px auto 0 auto;
}

.box-merit-card {
    width: 100%;
    padding: 8px 0;
    box-sizing: border-box;
    background-color: #fff;
}

.box-merit-card__inner {
    padding: 30px 45px;
    border-top: 2px dashed #d95050;
    border-bottom: 2px dashed #d95050;
    box-sizing: border-box;
}

.lst-interior-fes-merit {
    width: auto;
    max-width: 900px;
    margin: auto;
}

.lst-interior-fes-merit__item {
    margin-bottom: 20px;
    padding-left: 30px;
    font-size: 18px;
}

.lst-interior-fes-merit__item:last-child {
    margin-bottom: 0px;
}

.lst-interior-fes-merit__item:before {
    content: "";
    margin-left: -28px;
    padding-right: 10px;
    font-weight: bold;
    color: #d95050;
}

.lst-interior-fes-merit__item:nth-child(1):before {
    content: "1.";
}

.lst-interior-fes-merit__item:nth-child(2):before {
    content: "2.";
}

.lst-interior-fes-merit__item:nth-child(3):before {
    content: "3.";
}

.lst-interior-fes-merit__item:nth-child(4):before {
    content: "4.";
}

.lst-interior-fes-merit__item:nth-child(5):before {
    content: "5.";
}

.lst-interior-fes-merit__item > span {
    font-size: 14px;
}

.box-floor-map-info .fluid_image.floor-image-map {
    width: 100%;
}

.box-floor-map-description {
    padding: 0 15px 0 0;
}

.box-floor-map-description__hdg-txt {
    position: relative;
    margin-bottom: 20px;
    padding: 5px 0 5px 35px;
    border-bottom: 2px dashed #d95050;
    box-sizing: border-box;
    font-size: 20px;
    font-weight: bold;
}

.box-floor-map-description__hdg-txt:before {
    content: counter(num);
    position: absolute;
    left: 0px;
    display: inline-block;
    width: 30px;
    height: 30px;
    margin-right: 5px;
    border-radius: 50%;
    text-align: center;
    font-weight: normal;
    background-color: #d95050;
    color: #fff;
    line-height: 1.5em;
}

.box-floor-map-description__hdg-txt .floor-map-tag {
    display: inline-block;
    padding: 0 5px;
    border: 2px solid #d95050;
    box-sizing: border-box;
    border-radius: 5px;
    font-size: 12px;
    background-color: #fff;
    color: #d95050;
}

.box-interior-fes-calender {
    box-sizing: border-box;
    padding: 0 95px;
}

.interior-fes-calender-info {
    width: auto;
    margin: 0 0 0 150px;
}

.interior-fes-calender-info > dt {
    width: 12em;
    clear: both;
    float: left;
    text-align: center;
    color: #ffffff;
    margin: 10px 0 0;
}

.interior-fes-calender-info > dt.fes {
    background-color: #d47f1e;
}

.interior-fes-calender-info > dt.biz {
    background-color: #65ad89;
}

.interior-fes-calender-info > dd {
    margin: 0 0 0 13em;
    padding: 10px 0 0;
}

.googleCalendar {
    margin-top: 40px;
}

.googleCalendar iframe {
    width: 100%;
    height: 400px;
}

@media all and (min-width: 768px) {
    .googleCalendar iframe {
        height: 600px;
    }
}

.box-interior-fes-access {
    background-color: #f5f5f2;
    padding: 70px 0 90px;
    margin-top: 90px;
}

.box-interior-fes-access .inner {
    width: auto;
    max-width: 1170px;
    margin: auto;
}

.interior-fes-access-info {
    margin-top: 50px;
    font-size: 17px;
}

.interior-fes-access-info dt {
    width: auto;
    max-width: 7em;
    background-color: #b98b59;
    text-align: center;
    color: #ffffff;
    font-size: 15px;
}

.interior-fes-access-info dd {
    margin-top: 10px;
    line-height: 1.85em;
}

.counter_target {
    counter-increment: num;
}

.product-modal {
    display: none;
    position: fixed;
    z-index: 201;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 20px;
    box-sizing: border-box;
    background-color: rgba(0, 0, 0, 0.75);
}

.product-modal__inner {
    position: absolute;
    z-index: 202;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    max-width: 800px;
    height: auto;
    max-height: 800px;
    margin: auto;
    padding: 10px;
    box-sizing: border-box;
}

.product-modal__inner img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    margin: auto;
}

@media only screen and (max-width: 767px) {
    .box-floor-map-merit .btn_small {
        vertical-align: top;
        font-size: 12px;
    }

    .box_interior-fes__title {
        margin: 40px 0 10px;
    }

    .hdg_lv2--about-interior-appli {
        font-size: 16px;
        margin: 30px 0 15px;
    }

    .hdg_lv2--about-interior-appli span {
        display: inline-block;
        font-size: 18px;
    }

    /*
  .hdg_lv2--about-interior-appli span:before,
  .hdg_lv2--about-interior-appli span:after {
    position: absolute;
    content: "";
    width: 1px;
    height: 26px;
    bottom: 4px;
    background-color: #a4002c;
  }
  .hdg_lv2--about-interior-appli span:before {
    left: -12px;
    transform: rotate(-30deg);
  }
  .hdg_lv2--about-interior-appli span:after {
    right: -12px;
    transform: rotate(30deg);
  }
    */
    .lst-interior-fes-merit__item {
        font-size: 16px;
    }

    .lst-interior-fes-merit__item > span {
        font-size: 12px;
    }

    .box-floor-map-description {
        padding: 0 10px;
    }

    .box-floor-map-description__hdg-txt {
        margin-bottom: 10px;
        padding: 5px 0 5px 25px;
        font-size: 14px;
    }

    .box-floor-map-description__hdg-txt .floor-map-tag {
        line-height: 16px;
    }

    .box-floor-map-description__hdg-txt:before {
        width: 20px;
        height: 20px;
        top: 4px;
    }

    .box-floor-map-description__main-txt {
        font-size: 12px;
    }

    .box-merit-card__inner {
        padding: 30px 20px;
    }

    .product-modal__inner img {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        max-width: 100%;
        height: auto;
        max-height: 70%;
        margin: auto;
    }

    .box-interior-fes-calender {
        box-sizing: border-box;
        padding: 0 15px;
    }

    .interior-fes-calender-info {
        width: auto;
        margin: 0;
        padding: 5px 0 0;
        font-size: 12px;
    }

    .interior-fes-calender-info > dt {
        width: 11em;
        clear: both;
        float: none;
        text-align: center;
        color: #ffffff;
        margin: 10px 0 0;
    }

    .interior-fes-calender-info > dt.fes {
        background-color: #f4511e;
    }

    .interior-fes-calender-info > dt.biz {
        background-color: #33b679;
    }

    .interior-fes-calender-info > dd {
        margin: 0 0 0 0;
        padding: 5px 0 0;
    }

    .googleCalendar {
        margin-top: 20px;
    }

    .box-interior-fes-access {
        background-color: #f5f5f2;
        padding: 20px 15px 40px;
        margin-top: 40px;
    }

    .box-interior-fes-access .inner {
        width: auto;
        max-width: 1170px;
        margin: auto;
    }

    .interior-fes-access-info {
        margin-top: 10px;
        font-size: 14px;
        line-height: 1.67em;
    }

    .interior-fes-access-info dt {
        width: auto;
        max-width: 7em;
        background-color: #b98b59;
        text-align: center;
        color: #ffffff;
        font-size: 14px;
        margin-top: 10px;
    }

    .interior-fes-access-info dd {
        margin-top: 10px;
        line-height: 1.67em;
    }
}

.product-modal__close {
    position: absolute;
    z-index: 202;
    top: 10px;
    right: 20px;
    width: 40px;
    height: 60px;
    background: transparent url("/resource/img/icn_modal_close.png") no-repeat
        center;
    cursor: pointer;
}

.box_interior-fes {
    padding: 40px 0 0 0;
    box-sizing: border-box;
}

.box_order-house {
    padding: 0 0 40px 0;
    margin-top: 20px;
    box-sizing: border-box;
}

@media only screen and (max-width: 767px) {
    .bnr_order_house {
        padding: 0 0 20px 0;
    }

    .box_interior-fes {
        padding: 20px 0 0;
        box-sizing: border-box;
    }
}

@media (min-width: 768px), print {
    .box-contentslink {
        margin-top: 40px;
    }

    .box-contentslink--owner {
        margin-top: 20px;
    }

    .box-contentslink--owner dl dt {
        margin-top: 10px;
    }

    .box-contentslink > ul > li {
        margin-bottom: 20px;
    }

    .pagelink01 {
        margin-top: 40px;
        padding: 0 20px;
    }

    .pagelink01 li {
        padding: 10px;
        border-right: 1px solid #dddddd;
        text-align: center;
        font-size: 16px;
    }

    .pagelink01 li:nth-of-type(4n + 1) {
        border-left: 1px solid #dddddd;
    }
}

@media only screen and (max-width: 767px) {
    .box-contentslink > ul > li {
        margin-bottom: 10px;
    }

    .box-contentslink ul li a {
        padding: 13px 15px;
    }

    .box-contentslink > ul > li ul {
        margin-top: 10px;
    }

    .box-contentslink--owner {
        margin-bottom: 20px;
    }

    .box-contentslink--owner > ul > li {
        margin-top: 20px;
        margin-bottom: 0px;
    }

    .box-contentslink--owner dl dt {
        margin-top: 5px;
    }

    .pagelink01 {
        margin-top: 20px;
    }

    .pagelink01 li {
        padding: 10px 0;
        border-bottom: 1px solid #dddddd;
    }

    .pagelink01 li:nth-of-type(1) {
        border-top: 1px solid #dddddd;
    }

    .hdg_lv2--about-interior-fes {
        margin: 60px 0 15px;
    }

    .interior-fes_main-visual {
        height: 225px;
    }

    .interior-fes_main-visual .wrp_heading-message {
        width: 260px;
        height: 110px;
        padding: 10px;
    }

    .interior-fes_main-visual .heading_interior-fes_txt {
        padding: 0 0 5px 0;
        font-size: 16px;
    }

    .interior-fes_main-visual .txt_head {
        padding: 10px 0 0 0;
        font-size: 18px;
        line-height: 1.3;
    }

    .vacation-label {
        margin: 30px auto 0 auto;
        padding: 15px 20px;
    }

    .vacation-label .hdg_lv3 {
        font-size: 14px;
    }

    .vacation-label .txt_lead {
        margin: 11px 0 0 0;
        font-size: 14px;
    }

    .vacation-label .txt_lead span.block {
        padding: 8px 0;
    }

    .vacation-label .txt_lead span {
        display: inline-block;
    }

    .vacation-label .txt_lead br {
        font-size: 7px;
    }
}

.display_checkbox {
    display: inline-block !important;
}

/**/

.condition_price {
    float: left;
    width: 30% !important;
}

.condition_type {
    float: left;
    width: 42% !important;
}

/* .condition_type div {
    float: left;
} */

.condition_type_property {
    margin-right: 10px;
    float: left;
    width: 45px;
    /* line-height: 3;
    width: 45px; */
}

.mrt20 {
    margin-top: 20px;
}

.mr_20 {
    margin-right: 20px;
}

.info_pdf a {
    width: 370px;
}

.w40 {
    width: 40%;
}

.w60 {
    width: 60%;
}

@media (max-width: 767px) {
    .mr_20_ctn {
        flex-direction: column;
    }

    .condition_price {
        float: left;
        width: 100% !important;
    }

    .condition_type {
        float: left;
        width: 100% !important;
        margin-bottom: 20px;
    }

    /* .condition_type div {
        float: left;
        width: 70% !important;
    } */
    .mr_20 {
        margin-right: 0;
    }

    .condition_type_property {
        margin-right: 10px;
        margin-left: 30px;
        float: left;
        width: 45px;
        /* line-height: 6 !important;
        width: 45px; */
    }

    .mrt20:last-child {
        margin-top: 0;
    }

    .info_pdf a {
        width: 100%;
    }

    .w40 {
        width: 100%;
    }

    .w60 {
        width: 100%;
    }
}

@media (max-width: 767px) {
    .pdf_rulebook {
        display: block;
    }
}

.google_map .fa:before {
    color: #333333;
}

.google_map .fa:hover:before {
    color: #a4002c;
}

.google_map .google_map_link a {
    color: #fff;
    background: #2d3339;
    padding: 10px 25px;
    display: inline-block;
    margin: 20px;
}

.google_map .google_map_link a:hover {
    opacity: 0.7;
}

.google_map .google_map_link a .fa-angle-right:before {
    content: "\f105";
}

.google_map .google_map_link a .fa:before {
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    margin-right: 5px;
    color: #fff;
}

#property_project_map,
#property_project_map_sp {
    margin-bottom: 70px;
}

@media (max-width: 767px) {
    .google_map .google_map_link a {
        color: #fff;
        background: #2d3339;
        padding: 10px 12px;
        display: inline-block;
        margin: 10px;
    }
}

/* Land Information
-------------------------------------------------- */

.img_ro_action,
.img_ro_action a {
    opacity: 0.8;
}

.bnr_special_member {
    margin: 80px 0 20px;
}

.bnr_special_member img {
    transition: all 0.2s;
}

.bnr_special_member img.visible_sp {
    width: 100%;
    height: auto;
}

.section_provide_highvalue {
    margin: 0 auto 40px;
}

.section_provide_highvalue p {
    text-align: center;
    font-size: 15px;
    line-height: 2em;
}

.pct_provide_chart {
    text-align: center;
    margin: 60px 0 0;
}

@media (max-width: 767px) {
    .wrap_land_info .wrp_container {
        padding: 0 5px;
    }

    .bnr_special_member {
        margin: 40px 0 20px;
    }

    .bnr_special_member img {
        transition: all 0.25s;
    }

    .bnr_special_member img.visible_sp {
        width: 100%;
        height: auto;
    }

    .section_provide_highvalue {
        margin: 0 0 40px;
    }

    .section_provide_highvalue p {
        text-align: left;
        font-size: 14px;
        line-height: 2em;
    }

    .pct_provide_chart {
        text-align: center;
        margin: 30px 0 0;
    }

    .pct_provide_chart img {
        width: 100%;
        height: auto;
    }
}

/* Value > Wood > Reason
-------------------------------------------------- */

.box_reason_chart {
    clear: both;
    border: 1px #ddd solid;
    padding: 0 0 40px;
}

.box_reason_chart h3 {
    text-align: center;
    font-size: 25px;
    font-weight: 500;
    line-height: 1.4em;
    background-color: #f5f5f2;
    padding: 20px 10px;
    margin: 0 0 40px;
}

.box_reason_chart .chart {
    text-align: center;
    padding: 0 19px 20px;
}

.box_reason_chart dl {
    padding: 0 10% 0 40%;
}

.box_reason_chart dt {
    font-weight: 500;
}

.box_reason_chart dd {
    padding: 0 0 0 1em;
}

.box_reason_chart p {
    padding: 0 19px;
    text-align: center;
}

.box_reason_concept {
    clear: both;
    padding: 0px 0 0;
    background: url(../img/value/wood/reason/bg_forest_02.jpg) no-repeat center
        bottom;
    background-size: 100% auto;
}

.concept_heading {
    background: url(../img/value/wood/reason/bg_forest_01.jpg) no-repeat center
        bottom;
    background-size: 100% auto;
    padding: 0 0 60px;
}

.concept_heading .inner {
    padding: 0 10px;
    margin: 0 auto;
}

.concept_heading h2 {
    text-align: center;
    font-size: 55px;
    font-weight: 100;
    line-height: 1.42em;
    padding: 0 0 20px;
}

.concept_heading h2 > span {
    display: block;
}

.concept_heading h2 > span > span {
    color: #574939;
    font-size: 22px;
    line-height: 1em;
    display: inline-block;
    padding-left: 10px;
    vertical-align: middle;
}

.concept_heading h2 > span:nth-child(2) {
    padding: 0 0 0 0.7em;
}

.concept_heading h2 strong {
    font-weight: 100;
    color: #80a519;
}

.concept_heading h2 em {
    font-weight: 100;
    color: #e16556;
}

.concept_heading p strong {
    font-weight: 500;
    color: #e16556;
}

.box_concept_flow {
    width: auto;
    max-width: 1170px;
    padding: 0 15px 70px;
    margin: auto;
}

.box_concept_flow .line img {
    width: 100%;
    height: auto;
}

.concept_flow_item {
    background: url(../img/value/wood/reason/line_repeat_left.png) repeat-y;
    background-size: 100% auto;
}

.concept_flow_item.item_right {
    background: url(../img/value/wood/reason/line_repeat_right.png) repeat-y;
    background-size: 100% auto;
}

.concept_flow_item.item_center {
    background: none;
}

.concept_flow_item .item_ttl {
    width: 25.1%;
    margin: auto;
    background: url(../img/value/wood/reason/bg_plate.png) no-repeat center;
    background-size: 100% 100%;
    border-radius: 50%;
    text-align: center;
    position: relative;
    color: #574939;
}

.concept_flow_item.item_left .item_ttl {
    float: left;
    margin-right: 6%;
}

.concept_flow_item.item_right .item_ttl {
    float: right;
    margin-left: 6%;
}

.concept_flow_item.item_left .item_pct {
    float: left;
    /*width:100%;*/
}

.concept_flow_item.item_right .item_pct {
    float: right;
    /*width:100%;*/
}

.concept_flow_item .item_ttl span {
    position: absolute;
    width: 30.6%;
    top: 11%;
    left: 0;
    right: 0;
    margin: auto;
}

.concept_flow_item .item_ttl .text {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    margin: -30px auto 0;
}

.concept_flow_item.item_left .item_ttl .text,
.concept_flow_item.item_right .item_ttl .text {
    top: 50%;
    margin: -20px auto 0;
}

.concept_flow_item .item_ttl h3 {
    font-size: 32px;
    font-weight: 200;
    line-height: 1.4em;
    margin-bottom: 10px;
}

@media screen and (min-width: 768px) and (max-width: 1069px) {
    .concept_flow_item .item_ttl h3 {
        font-size: 20px;
        line-height: 1.4em;
    }

    .concept_flow_item.item_left .item_ttl .text,
    .concept_flow_item.item_right .item_ttl .text {
        font-size: 13px;
        line-height: 1.4em;
    }
}

@media (max-width: 767px) {
    .box_reason_chart {
        clear: both;
        border: 1px #ddd solid;
        padding: 0 0 15px;
    }

    .box_reason_chart h3 {
        text-align: center;
        font-size: 16px;
        font-weight: 500;
        line-height: 1.4em;
        background-color: #f5f5f2;
        padding: 10px 10px;
        margin: 0 0 15px;
    }

    .box_reason_chart .chart {
        text-align: center;
        padding: 0 9px 10px;
    }

    .box_reason_chart dl {
        padding: 0 14px;
        font-size: 12px;
    }

    .box_reason_chart dt {
        font-weight: 500;
    }

    .box_reason_chart dd {
        padding: 0;
    }

    .box_reason_chart p {
        padding: 0 14px;
        text-align: left;
        font-size: 12px;
    }

    .box_reason_concept {
        clear: both;
        padding: 60px 0 0;
        background: url(../img/value/wood/reason/bg_forest_02.jpg) no-repeat
            center bottom;
        background-size: 100% auto;
    }

    .concept_heading {
        background: url(../img/value/wood/reason/bg_forest_01.jpg) no-repeat
            center bottom;
        background-size: 100% auto;
        padding: 0 0 30px;
    }

    .concept_heading .inner {
        padding: 0 10px;
        margin: 0 auto;
    }

    .concept_heading h2 {
        text-align: center;
        font-size: 30px;
        font-weight: 100;
        line-height: 1.42em;
        padding: 0 0 20px;
    }

    .concept_heading h2 > span {
        display: block;
        margin: 0 0 10px;
    }

    .concept_heading h2 > span > span {
        color: #574939;
        font-size: 18px;
        line-height: 1em;
        display: block;
        padding-left: 0;
        vertical-align: middle;
    }

    .concept_heading h2 strong {
        font-weight: 100;
        color: #80a519;
    }

    .concept_heading h2 em {
        font-weight: 100;
        color: #e16556;
    }

    .concept_heading p strong {
        font-weight: 500;
        color: #e16556;
    }

    .box_concept_flow {
        width: auto;
        max-width: 1170px;
        padding: 0 15px 70px;
        margin: auto;
    }

    .box_concept_flow .line {
        display: none;
    }

    .concept_flow_item {
        background: none;
        padding: 30px 0 30px;
        background: url(../img/value/wood/reason/line_d.png) repeat-y;
        background-size: 100% auto;
    }

    .concept_flow_item.item_right {
        background: url(../img/value/wood/reason/line_d.png) repeat-y;
        background-size: 100% auto;
    }

    .concept_flow_item.item_center {
        background: url(../img/value/wood/reason/line_d.png) repeat-y;
        background-size: 100% auto;
    }

    .concept_flow_item .item_ttl {
        width: 220px;
        margin: 0 auto 10px;
        background: url(../img/value/wood/reason/bg_plate.png) no-repeat center;
        background-size: 100% 100%;
        border-radius: 50%;
        text-align: center;
        position: relative;
        color: #574939;
    }

    .concept_flow_item.item_left .item_ttl {
        float: none;
        margin: auto;
    }

    .concept_flow_item.item_right .item_ttl {
        float: none;
        margin: auto;
    }

    .concept_flow_item.item_left .item_pct,
    .concept_flow_item.item_right .item_pct {
        float: none;
        text-align: center;
        margin: 0 auto;
    }

    .concept_flow_item .item_ttl span {
        position: inherit;
        display: block;
        width: 30.6%;
        top: inherit;
        left: inherit;
        right: inherit;
        margin: auto;
        padding: 30px 0 0;
    }

    .concept_flow_item .item_ttl .text {
        position: inherit;
        top: inherit;
        left: inherit;
        right: inherit;
        margin: auto;
        width: 100%;
        margin: 0 auto 0;
    }

    .concept_flow_item.item_left .item_ttl .text,
    .concept_flow_item.item_right .item_ttl .text {
        top: inherit;
        margin: 10px auto 0;
    }

    .concept_flow_item .item_ttl h3 {
        font-size: 20px;
        font-weight: 200;
        line-height: 1.4em;
        margin-bottom: 5px;
    }

    .concept_flow_item .item_pct {
        padding: 20px 0 0;
    }
}

/* Value > Propose
-------------------------------------------------- */

.pct_propose_outline {
    text-align: center;
    padding-top: 10px;
}

.lst_propose .box_menu {
    text-align: center;
}

.lst_propose .box_menu__caption02 {
    font-size: 17px;
    font-weight: 700;
    line-height: 1.33em;
    display: inline-block;
    border-bottom: 3px #000 solid;
    padding-bottom: 8px;
    padding: 25px 0 8px;
    margin: auto;
}

.lst_propose .box_menu__caption02.propose_style_n {
    color: #487b1b;
    border-bottom-color: #487b1b;
}

.lst_propose .box_menu__caption02.propose_style_u {
    color: #314683;
    border-bottom-color: #314683;
}

.lst_propose .box_menu__caption02.propose_style_p {
    color: #888018;
    border-bottom-color: #888018;
}

.lst_propose .box_menu__caption02.propose_newfamily {
    color: #a44113;
    border-bottom-color: #a44113;
}

.lst_propose .box_menu__caption02.propose_select {
    color: #d17b16;
    border-bottom-color: #d17b16;
}

@media (max-width: 767px) {
    .lst_propose > li + li {
        margin-top: 25px;
    }

    .lst_propose .box_menu__caption02 {
        padding: 15px 0 8px;
        font-size: 15px;
        line-height: 1.33em;
    }
}

/* Products > Index Page
-------------------------------------------------- */

.box_products_banner {
    margin: -25px 0 0;
    padding: 0 0 25px;
}

.box_products_banner li {
    padding: 25px 0;
}

@media (max-width: 767px) {
    .box_products_banner {
        margin: -15px 0 0;
        padding: 0 0 10px;
    }

    .box_products_banner li {
        padding: 5px 0;
    }
}

/* Products > Feature
-------------------------------------------------- */

.box_feature_heading {
    background-color: #fbf8e0;
    padding: 20px 20px 20px;
    margin: 70px 0 0;
    text-align: center;
}

.box_feature_heading h2 span:nth-child(1) {
    display: block;
    font-size: 35px;
    font-weight: 500;
    line-height: 1.67em;
    color: #a4002c;
}

.box_feature_heading h2 span:nth-child(2) {
    display: block;
    font-size: 25px;
    font-weight: 300;
    line-height: 1.67em;
}

.box_feature h4 {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.2em;
    border: 1px #ddd;
    border-bottom-style: solid;
}

.box_feature p {
    padding: 20px 0 0;
    line-height: 2em;
}

.box_feature h4 span {
    box-sizing: border-box;
    display: inline-block;
    color: #fff;
    width: 120px;
    padding: 5px 10px;
    text-align: center;
}

.feature_image .txt_note {
    display: block;
    text-align: right;
}

.box_feature_merit h4 span {
    background-color: #727272;
}

.box_feature_demerit h4 span {
    background-color: #717272;
}

.box_feature_merit p strong {
    color: #a4002c;
}

.tbl_products_feature strong {
    color: #a4002c;
}

.tbl_products_feature th,
.tbl_products_feature td {
    border: 1px #ddd solid;
    padding: 15px 20px;
}

.tbl_products_feature th {
    font-size: 19px;
    font-weight: 500;
    line-height: 1.33em;
    color: #fff;
    background-color: #f5f5f2;
    text-align: center;
}

.tbl_products_feature th.type {
    background-color: #a4002c;
}

.tbl_products_feature td {
    text-align: left;
    padding: 15px 15px;
}

.tbl_products_feature .hasbg {
    background-color: #fdfcf2;
}

#pg_feature .sub_category_navi {
    margin: 40px 0 0;
}

@media (max-width: 767px) {
    .box_feature_heading {
        background-color: #fbf8e0;
        padding: 10px 10px 8px;
        margin: 35px 0 0;
        text-align: center;
    }

    .box_feature_heading h2 span:nth-child(1) {
        display: block;
        font-size: 20px;
        font-weight: 500;
        line-height: 1.5em;
        color: #a4002c;
    }

    .box_feature_heading h2 span:nth-child(2) {
        display: block;
        font-size: 13px;
        font-weight: 300;
        line-height: 1.5em;
    }

    .box_feature h4 {
        font-size: 14px;
        font-weight: 500;
        line-height: 1.2em;
        border: 1px #ddd;
        border-bottom-style: solid;
    }

    .box_feature p {
        padding: 10px 0 0;
        min-height: inherit;
    }

    .box_feature h4 span {
        box-sizing: border-box;
        display: inline-block;
        color: #fff;
        width: 100px;
        padding: 3px 10px;
        text-align: center;
        margin: 20px 0 0;
    }

    .feature_image .txt_note {
        font-size: 9px;
        margin-top: 5px;
    }

    .box_feature_merit h4 span {
        background-color: #727272;
    }

    .box_feature_demerit h4 span {
        background-color: #717272;
    }

    .box_feature_merit p strong {
        color: #a4002c;
    }

    .tbl_products_feature {
        font-size: 12px;
        line-height: 1.33em;
    }

    .tbl_products_feature strong {
        color: #a4002c;
    }

    .tbl_products_feature th,
    .tbl_products_feature td {
        padding: 7px 10px;
    }

    .tbl_products_feature th {
        font-size: 9px;
        font-weight: 500;
        line-height: 1.33em;
        color: #fff;
        background-color: #f5f5f2;
        text-align: center;
    }

    .tbl_products_feature td {
        text-align: left;
        padding: 8px 5px;
        font-size: 9px;
        line-height: 1.33em;
    }

    #pg_feature .sub_category_navi {
        margin: 0 0 0;
    }
}

/* Products > Standard > Design
-------------------------------------------------- */

.txt_lead_design strong {
    color: #a4002c;
}

.standard_flow {
    max-width: 950px;
    margin: auto;
}

.standard_flow h3 {
    box-sizing: border-box;
    font-size: 21px;
    font-weight: 400;
    line-height: 1.33em;
    color: #ffffff;
    background-color: #a4002c;
    position: relative;
    padding: 10px 20px;
}

.standard_flow h3 span {
    box-sizing: border-box;
    position: absolute;
    width: 60px;
    height: 60px;
    left: 0;
    top: 0;
    border-radius: 30px;
    padding: 10px 0 0;
    font-size: 12px;
    color: #fff;
    background-color: #a4002c;
    text-align: center;
    vertical-align: middle;
    line-height: 1.2em;
}

.standard_flow h3 span strong {
    display: block;
    font-size: 25px;
    line-height: 1.2em;
}

.standard_flow > li {
    margin: 0 0 30px;
}

.standard_flow > li:last-child h3 span {
    font-size: 16px;
    line-height: 1.2em;
    padding: 20px 0 0;
}

.standard_flow > li .txt_note {
    text-align: right;
    margin: -5px 0 0;
    padding: 0;
}

.standard_flow ul {
    margin: 0;
}

.standard_flow ul li {
    border: 1px #e9e7d8 solid;
    background-color: #fdfcf2;
    clear: both;
    padding: 9px 9px 9px 20px;
    margin: 0 0 20px;
}

.standard_flow ul li::after {
    content: "";
    clear: both;
    display: block;
}

.standard_flow ul li h4 {
    font-size: 17px;
    font-weight: 400;
    display: inline-block;
    padding: 17px 0;
}

.standard_flow ul li p {
    display: table;
    float: right;
}

.standard_flow ul li p span {
    display: table-cell;
    border: 1px #e9e7d8 solid;
    background-color: #fff;
    width: 118px;
    height: 58px;
    text-align: center;
    vertical-align: middle;
    position: relative;
}

.standard_flow ul li p span.type_house {
    background: url(/resource/img/products/standard/design/bg_house_01.gif)
        no-repeat center center;
    background-color: #fff;
    color: #fff;
}

.standard_flow ul li p span.type_box {
    background: url(/resource/img/products/standard/design/bg_house_02.gif)
        no-repeat center center;
    background-color: #fff;
    color: #fff;
}

.standard_flow ul li p span strong {
    position: absolute;
    left: 8px;
    top: -16px;
    display: inline-block;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.2em;
    color: #fff;
    background-color: #f28b40;
    padding: 4px 6px;
    border-radius: 2px;
}

.standard_flow ul li p span strong.new {
    left: -10px;
    top: -20px;
}

.standard_flow ul li p span strong::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -10px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 8px 10px 0;
    border-color: transparent #f28b40 transparent transparent;
}

.schedule_flow {
    max-width: 960px;
    margin: auto;
    /*background: url(/resource/img/products/standard/design/bg_design_flow.gif) repeat-y 28px 0;*/
}

.schedule_flow > li {
    border: 1px #e9e7d8 solid;
    background-color: #fdfcf2;
    clear: both;
    padding: 20px 9px 20px 20px;
    margin: 0 0 20px 80px;
    position: relative;
}

.schedule_flow > li::after {
    position: absolute;
    content: "";
    left: -51px;
    top: 0;
    bottom: -22px;
    width: 3px;
    height: auto;
    background-color: #db99ab;
    z-index: 1;
}

.schedule_flow > li:first-child::after {
    top: 16px;
}

.schedule_flow > li:last-child::after {
    bottom: inherit;
    height: 30px;
}

.schedule_flow dl {
    display: flex;
}

.schedule_flow dl strong {
    color: #a4002c;
}

.schedule_flow dl > * {
    align-items: center;
    box-sizing: border-box;
    vertical-align: middle;
}

.schedule_flow dl > dt {
    width: 25%;
    font-size: 18px;
    font-weight: 600;
    padding: 10px 10px 10px 0;
}

.schedule_flow dl > dt span {
    box-sizing: border-box;
    position: absolute;
    width: 60px;
    height: 60px;
    left: -80px;
    top: 15px;
    border-radius: 30px;
    padding: 15px 0 0;
    font-size: 24px;
    color: #fff;
    background-color: #a4002c;
    text-align: center;
    vertical-align: middle;
    line-height: 1.2em;
    z-index: 2;
}

.schedule_flow dl > dd {
    width: 75%;
    margin: 0 0 0;
    border-left: 1px #ccc solid;
    padding: 10px 0 10px 20px;
}

.schedule_flow dl > dd > ul {
    width: auto;
}

.schedule_flow dl > dd > ul > li {
    list-style-type: disc;
    list-style-position: inside;
    line-height: 1.75em;
}

.box_standard_plan {
    margin: 80px 0 0;
    overflow: hidden;
}

.box_standard_plan p.txt_plan_outline {
    line-height: 2em;
}

.box_standard_plan .sec_heading {
    background-color: #fbf8e0;
    text-align: center;
    padding: 30px 20px;
    font-size: 17px;
}

.box_standard_plan .sec_heading h3 {
    font-size: 30px;
    font-weight: normal;
    margin: 0 0 10px;
}

.box_standard_plan .plan_heading {
    text-align: center;
    font-size: 17px;
    border-bottom: 1px #ddd solid;
    padding: 40px 0 35px;
}

.box_standard_plan .plan_heading h4 {
    color: #d17b16;
    font-size: 25px;
    font-weight: 500;
    margin: 0 0 10px;
}

.box_standard_plan .plan_heading p {
    font-size: 15px;
}

.box_standard_plan .wrp_grid {
    margin: 50px -35px 0;
}

.box_standard_plan .grid_6 {
    padding: 0 35px;
}

.box_standard_plan .tbl_base caption {
    text-align: left;
    font-size: 21px;
    font-weight: 500;
    line-height: 1.5em;
    margin: 0 0 15px;
}

.box_standard_plan .tbl_base caption span {
    font-size: 14px;
    font-weight: 400;
    line-height: 1.2em;
    display: inline-block;
    border: 1px #ccc solid;
    margin: 0 15px 0 0;
    padding: 3px 10px 3px;
}

.box_standard_plan .tbl_base th {
    width: 20%;
    font-weight: 400;
}

.box_standard_plan p strong {
    color: #a4002c;
}

.box_standard_plan td strong {
    font-size: 21px;
}

.plan_floor_map {
    text-align: center;
    max-width: 1170px;
    margin: 60px auto 0;
}

@media (max-width: 767px) {
    .txt_lead_design strong {
        color: #a4002c;
    }

    .standard_flow {
        max-width: 960px;
        margin: auto;
    }

    .standard_flow h3 {
        box-sizing: border-box;
        font-size: 18px;
        font-weight: 500;
        line-height: 1.33em;
        color: #fff;
        position: relative;
        padding: 10px 10px 8px 15px;
        height: auto;
    }

    .standard_flow h3 span {
        box-sizing: border-box;
        position: absolute;
        width: 34px;
        height: 34px;
        left: 0;
        top: 0;
        border-radius: 17px;
        padding: 5px 0 0;
        font-size: 10px;
        color: #fff;
        background-color: #a4002c;
        text-align: center;
        vertical-align: middle;
        line-height: 1.2em;
    }

    .standard_flow h3 span strong {
        display: block;
        font-size: 14px;
        line-height: 1.2em;
    }

    .standard_flow > li {
        margin: 0 0 30px;
    }

    .standard_flow > li:last-child h3 span {
        font-size: 14px;
        line-height: 1.2em;
        padding: 10px 0 0;
    }

    .standard_flow > li .txt_note {
        text-align: right;
        margin: -5px 0 0;
        padding: 0 0 0 44px;
        font-size: 9px;
        line-height: 1.33em;
    }

    .standard_flow ul {
        margin: 0;
    }

    .standard_flow ul li {
        border: 1px #e9e7d8 solid;
        background-color: #fdfcf2;
        clear: both;
        padding: 9px 9px 9px 10px;
        margin: 0 0 20px;
    }

    .standard_flow ul li::after {
        content: "";
        clear: both;
        display: block;
    }

    .standard_flow ul li h4 {
        display: inline-block;
        padding: 0 0 15px;
    }

    .standard_flow ul li p {
        display: table;
        float: right;
    }

    .standard_flow ul li p span {
        display: table-cell;
        border: 1px #e9e7d8 solid;
        background-color: #fff;
        width: 118px;
        height: 42px;
        text-align: center;
        vertical-align: middle;
        position: relative;
        font-size: 10px;
        line-height: 1.2em;
    }

    .standard_flow ul li p span.type_house {
        background: url(/resource/img/products/standard/design/bg_house_01.gif)
            no-repeat center center;
        background-color: #fff;
        background-size: auto 90%;
        color: #fff;
    }

    .standard_flow ul li p span.type_box {
        background: url(/resource/img/products/standard/design/bg_house_02.gif)
            no-repeat center center;
        background-color: #fff;
        background-size: auto 90%;
        color: #fff;
    }

    .standard_flow ul li p span strong {
        position: absolute;
        left: -7px;
        top: -10px;
        display: inline-block;
        font-size: 10px;
        font-weight: 300;
        line-height: 1.2em;
        color: #fff;
        background-color: #f28b40;
        padding: 2px 1px;
        border-radius: 2px;
        /*transform:scale(0.8);*/
    }

    .standard_flow ul li p span strong.new {
        left: -10px;
        top: -10px;
        padding: 2px 5px;
    }

    .standard_flow ul li p span strong::after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: -6px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 0 4px 6px 0;
        border-color: transparent #f28b40 transparent transparent;
    }

    .schedule_flow > li {
        padding: 10px 9px 10px 20px;
        margin: 0 0 10px 80px;
    }

    .schedule_flow > li ul::after {
        content: "";
        clear: both;
    }

    .schedule_flow dl {
        display: inherit;
    }

    .schedule_flow dl > * {
        display: block;
        box-sizing: border-box;
        vertical-align: middle;
    }

    .schedule_flow dl > dt {
        width: auto;
        font-size: 16px;
        font-weight: 600;
        padding: 10px 10px 10px 0;
    }

    .schedule_flow dl > dt span {
        box-sizing: border-box;
        position: absolute;
        width: 60px;
        height: 60px;
        left: -80px;
        top: 15px;
        border-radius: 30px;
        padding: 18px 0 0;
        font-size: 18px;
        color: #fff;
        background-color: #a4002c;
        text-align: center;
        vertical-align: middle;
        line-height: 1.2em;
        z-index: 2;
    }

    .schedule_flow dl > dd {
        width: auto;
        margin: 0 0 0;
        border-top: 1px #ccc solid;
        border-left: none;
        padding: 10px 0 10px 20px;
        font-size: 14px;
    }

    .box_standard_plan {
        margin: 80px 0 0;
        overflow: hidden;
    }

    .box_standard_plan p.txt_plan_outline {
        line-height: 1.67em;
    }

    .box_standard_plan .sec_heading {
        background-color: #fbf8e0;
        text-align: center;
        padding: 15px 15px;
        font-size: 17px;
    }

    .box_standard_plan .sec_heading h3 {
        font-size: 16px;
        font-weight: 500;
        margin: 0 0 5px;
    }

    .box_standard_plan .sec_heading p {
        font-size: 14px;
        font-weight: normal;
        text-align: left;
    }

    .box_standard_plan .plan_heading {
        text-align: center;
        font-size: 14px;
        border-bottom: 1px #ddd solid;
        padding: 40px 0 15px;
    }

    .box_standard_plan .plan_heading h4 {
        color: #a4002c;
        font-size: 16px;
        font-weight: 500;
        margin: 0 0 10px;
    }

    .box_standard_plan .plan_heading p {
        font-size: 14px;
        text-align: left;
    }

    .box_standard_plan .wrp_grid {
        margin: 20px -35px 0;
    }

    .box_standard_plan .grid_6 {
        padding: 0 35px;
    }

    .box_standard_plan .tbl_base caption {
        text-align: left;
        font-size: 16px;
        font-weight: 500;
        line-height: 1.5em;
        margin: 0 0 15px;
    }

    .box_standard_plan .tbl_base caption span {
        font-size: 14px;
        font-weight: 400;
        line-height: 1.2em;
        display: inline-block;
        border: 1px #ccc solid;
        margin: 0 15px 0 0;
        padding: 3px 10px 3px;
    }

    .box_standard_plan .tbl_base tr {
        display: table-row;
    }

    .box_standard_plan .tbl_base th {
        width: 40%;
        font-size: 14px;
        font-weight: 400;
        display: table-cell;
        padding: 5px;
    }

    .box_standard_plan .tbl_base td {
        display: table-cell;
        padding: 5px;
    }

    .box_standard_plan p strong {
        color: #a4002c;
    }

    .box_standard_plan td strong {
        font-size: 16px;
    }

    .plan_floor_map {
        text-align: center;
        max-width: 1170px;
        margin: 10px auto 0;
    }
}

/* Products > Standard > Merit
-------------------------------------------------- */

.box_standard_merit {
    clear: both;
}

.box_standard_merit h4.hdg_lv4 {
    font-size: 20px;
}

.box_standard_merit ul li .txt_explain {
    text-align: center;
    font-size: 17px;
    padding: 20px 0 0;
}

.box_standard_vrtour {
    clear: both;
}

.box_standard_vrtour .wrp_grid {
    margin-left: 0;
    margin-right: 0;
}

.box_standard_vrtour h3 {
    margin: 0 0 50px;
}

.box_standard_vrtour h4.hdg_lv4 {
    font-size: 20px;
}

.box_standard_vrtour h4.hdg_lv4 .fa-angle-right:before {
    font-size: 20px;
    color: #333;
}

.box_standard_vrtour h4.hdg_lv4 .fa-external-link:before {
    font-size: 18px;
    color: #333;
    margin-left: 3px;
}

.box_standard_vrtour a:hover h4.hdg_lv4 .fa:before {
    color: #a4002c !important;
}

.box_standard_vrtour .symbol {
    width: 56.6%;
    margin: auto;
    position: relative;
}

.box_standard_vrtour .symbol span {
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    top: 50%;
    bottom: 0;
    color: #fff;
}

.box_standard_vrtour .symbol span.icon {
    margin-top: -30px;
}

.box_standard_vrtour .symbol span.text {
    padding: 20px 0 0;
    font-size: 19px;
}

.box_standard_vrtour li {
    text-align: center;
    border-left: 1px #ddd solid;
}

.box_standard_vrtour li > a {
    display: block;
}

.box_standard_vrtour li:nth-child(3) {
    text-align: center;
    border-right: 1px #ddd solid;
}

.box_standard_vrtour .txt_explain {
    padding: 0 0 20px;
}

.box_standard_cycle {
    text-align: center;
    padding: 40px 0 0;
}

.box_standard_cycle li {
    text-align: center;
}

.box_standard_cycle h4 {
    font-size: 20px;
}

.box_standard_cycle p {
    margin-bottom: 15px;
}

.box_standard_cycle li > div {
    background-color: #f5f5f2;
    padding: 25px 0 30px;
}

.box_standard_cycle li span {
    display: block;
    margin: auto;
    width: 155px;
    height: 42px;
    color: #fff;
    background-color: #a4002c;
}

.box_standard_cycle li span a {
    display: block;
    padding: 10px 0 0;
    color: #fff;
}

.box_standard_cycle li span .fa:before {
    color: #fff;
}

@media (max-width: 767px) {
    .box_standard_merit {
        clear: both;
    }

    .box_standard_merit h4.hdg_lv4 {
        font-size: 17px;
    }

    .box_standard_merit ul li .txt_explain {
        text-align: center;
        font-size: 17px;
        padding: 10px 0 0;
    }

    .box_standard_vrtour {
        clear: both;
        padding: 20px 0 0;
    }

    .box_standard_vrtour .wrp_grid {
        margin-left: 0;
        margin-right: 0;
    }

    .box_standard_vrtour h3 {
        margin: 0 0 30px;
    }

    .box_standard_vrtour h4.hdg_lv4 {
        font-size: 17px;
    }

    .box_standard_vrtour h4.hdg_lv4 .fa:before {
        font-size: 17px;
        color: #333;
    }

    .box_standard_vrtour .symbol {
        width: 56.6%;
        margin: auto;
        position: relative;
    }

    .box_standard_vrtour .symbol span {
        position: absolute;
        margin: auto;
        left: 0;
        right: 0;
        top: 50%;
        bottom: 0;
        color: #fff;
    }

    .box_standard_vrtour .symbol span.icon {
        margin-top: -30px;
    }

    .box_standard_vrtour .symbol span.text {
        padding: 20px 0 0;
        font-size: 19px;
    }

    .box_standard_vrtour li {
        text-align: center;
        border: none;
        border-bottom: 1px #ddd solid;
        padding: 0 0 20px;
        margin: 0 0 20px;
    }

    .box_standard_vrtour li > a {
        display: block;
    }

    .box_standard_vrtour li:nth-child(3) {
        text-align: center;
        border: none;
        border-bottom: 1px #ddd solid;
    }

    .box_standard_vrtour .txt_explain {
        padding: 0 0 20px;
    }

    .box_standard_cycle {
        text-align: center;
        padding: 0;
    }

    .box_standard_cycle li {
        text-align: center;
    }

    .box_standard_cycle h4 {
        font-size: 17px;
    }

    .box_standard_cycle p {
        margin-bottom: 15px;
    }

    .box_standard_cycle li > div {
        background-color: #f5f5f2;
        padding: 25px 0 30px;
    }

    .box_standard_cycle li span {
        display: block;
        box-sizing: border-box;
        width: 155px;
        height: 42px;
        margin: auto;
        color: #fff;
        background-color: #a4002c;
    }

    .box_standard_cycle li span a {
        display: block;
        padding: 10px 0 0;
        color: #fff;
    }

    .box_standard_cycle li span .fa:before {
        color: #fff;
    }
}

/* Products > Standard > Plan example
-------------------------------------------------- */

.box_floorplan_search {
}

.box_floorplan_search .select_area {
    background-color: #fdfcf2;
    border: 1px #ddd solid;
    position: relative;
}

.box_floorplan_search .select_area > div {
    padding: 37px;
    position: relative;
    text-align: center;
}

.box_floorplan_search .select_area > div h4 {
    box-sizing: border-box;
    width: 16.91%;
    float: left;
    font-size: 21px;
    font-weight: 500;
    line-height: 1.2em;
    margin: 20px 0 0;
    padding: 0 10px 0 0;
}

.box_floorplan_search .select_area > div ul {
    font-size: 0;
    margin: 0 0 0 16.91%;
    text-align: left;
}

.box_floorplan_search .select_area > div ul li {
    box-sizing: border-box;
    width: 33.33%;
    padding: 10px;
    display: inline-block;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.2em;
}

.box_floorplan_search .select_area > div ul li > span {
    display: block;
    background-color: #fff;
    border: 1px #ddd solid;
    text-align: center;
    padding: 20px 10px;
    position: relative;
    transition: all 0.2s ease;
}

.box_floorplan_search .select_area > div ul li > span.active,
.box_floorplan_search .select_area > div ul li > span:hover {
    color: #fff;
    background-color: #a4002c;
    border-color: #a4002c;
}

.box_floorplan_search .select_area > div ul li > span:hover {
    cursor: pointer;
}

.box_floorplan_search .select_area > div ul li > span i {
    position: absolute;
    display: block;
    width: 18px;
    height: 18px;
}

.box_floorplan_search .select_area > div ul li > span i span {
    position: absolute;
    left: 10px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 18px;
    height: 2px;
    background-color: #333;
    transition: all 0.2s ease;
}

.box_floorplan_search .select_area > div ul li > span.active i span,
.box_floorplan_search .select_area > div ul li > span:hover i span {
    background-color: #fff;
}

.box_floorplan_search .select_area > div ul li > span i span:nth-child(1) {
}

.box_floorplan_search .select_area > div ul li > span i span:nth-child(2) {
    transform: rotate(90deg);
    top: 0;
}

.box_floorplan_search
    .select_area
    > div
    ul
    li
    > span.active
    i
    span:nth-child(2) {
    transform: rotate(180deg);
}

.select_front {
    border-top: 1px #ddd dashed;
}

.box_floorplan_search .select_area .rect1 {
    position: absolute;
    left: 50%;
    margin-left: -77px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 56px 77px 0 77px;
    border-color: #ddd transparent transparent transparent;
}

.box_floorplan_search .select_area .rect2 {
    position: absolute;
    left: 50%;
    margin-left: -75px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 54px 75px 0 75px;
    border-color: #fdfcf2 transparent transparent transparent;
}

.box_lst_floorplan {
    margin: 100px 0 0;
}

.box_lst_floorplan .lst_media {
    margin: 20px -15px 10px;
}

.box_lst_floorplan .lst_media li {
    display: none;
}

.box_lst_floorplan .lst_media li.showA.showB {
    display: block;
}

.box_lst_floorplan .lst_media li .floormap {
    border: 1px #ddd solid;
    position: relative;
}

.box_lst_floorplan .lst_media li .floormap:hover {
    cursor: pointer;
}

.box_lst_floorplan .floormap .btn_show_modal {
    position: absolute;
    width: 30px;
    height: 30px;
    right: 0;
    bottom: 0;
    background-color: #a4002c;
}

.box_lst_floorplan .floormap:hover .btn_show_modal {
    background-color: #333;
}

.box_lst_floorplan .floormap .btn_show_modal span {
    display: block;
    width: 21px;
    height: 1px;
    background-color: #fff;
    position: absolute;
    left: 4px;
    top: 50%;
}

.box_lst_floorplan .floormap .btn_show_modal span:nth-child(1) {
}

.box_lst_floorplan .floormap .btn_show_modal span:nth-child(2) {
    transform: rotate(90deg);
}

.box_lst_floorplan .lst_media li p {
    margin: 15px 0 0;
    padding: 0 0 10px;
}

.box_lst_floorplan .lst_media li p span {
    display: block;
}

#box_plan_modal {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 2000;
    display: none;
}

#box_plan_modal #bg_area {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.8);
    z-index: 1999;
}

#box_plan_modal ul {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: auto;
    height: auto;
    margin: auto;
    max-width: 970px;
    max-height: 510px;
    z-index: 2000;
}

#box_plan_modal ul li {
    margin: 10px;
    background-color: #fff;
    position: relative;
    display: none;
}

#box_plan_modal .plan_name {
    text-align: center;
    font-size: 30px;
    line-height: 1.67em;
    border-bottom: 1px #ccc solid;
    padding: 15px;
}

#box_plan_modal .inner {
    padding: 50px 25px;
    position: relative;
}

#box_plan_modal .plan_info {
    position: absolute;
    box-sizing: border-box;
    left: 0;
    top: 50px;
    width: 33%;
    padding: 0 0 0 50px;
}

#box_plan_modal .plan_info .price strong {
    font-size: 25px;
    font-weight: 500;
}

#box_plan_modal .plan_info dl {
    margin: 20px 0 0;
}

#box_plan_modal .plan_info dl dt {
    clear: both;
    float: left;
    width: 5em;
}

#box_plan_modal .plan_info dl dd {
    margin: 0 0 5px 5.5em;
}

#box_plan_modal .plan_floormap {
    box-sizing: border-box;
    margin: 0 0 0 33%;
    text-align: center;
}

#box_plan_modal .plan_floormap img {
    width: 100%;
    max-width: 415px;
    height: auto;
    margin: 0;
}

.btn_modal_close {
    width: 20px;
    height: 20px;
    position: absolute;
    right: 15px;
    top: 15px;
}

.btn_modal_close:hover {
    cursor: pointer;
}

.btn_modal_close span {
    position: absolute;
    display: block;
    width: 22px;
    height: 2px;
    top: 50%;
    background-color: #000;
}

.btn_modal_close span:nth-child(1) {
    transform: rotate(45deg);
}

.btn_modal_close span:nth-child(2) {
    transform: rotate(-45deg);
}

@media screen and (max-width: 767px) {
    .box_floorplan_search {
    }

    .box_floorplan_search .select_area {
        background-color: #fdfcf2;
        border: 1px #ddd solid;
        position: relative;
    }

    .box_floorplan_search .select_area > div {
        padding: 9px 4px 14px;
        position: relative;
        text-align: center;
    }

    .box_floorplan_search .select_area > div h4 {
        box-sizing: border-box;
        width: auto;
        float: none;
        font-size: 14px;
        font-weight: 500;
        line-height: 1.2em;
        margin: 0;
        padding: 5px 0 10px;
        text-align: center;
    }

    .box_floorplan_search .select_area > div ul {
        font-size: 0;
        margin: 0;
        text-align: center;
    }

    .box_floorplan_search .select_area > div ul li {
        box-sizing: border-box;
        width: 33.33%;
        padding: 5px;
        display: inline-block;
        font-size: 12px;
        font-weight: 500;
        line-height: 1.2em;
    }

    .box_floorplan_search .select_area > div ul li > span {
        display: block;
        background-color: #fff;
        border: 1px #ddd solid;
        text-align: center;
        padding: 10px 5px 10px 12px;
        position: relative;
        transition: all 0.2s ease;
    }

    .box_floorplan_search .select_area > div ul li > span.active,
    .box_floorplan_search .select_area > div ul li > span:hover {
        color: #fff;
        background-color: #a4002c;
        border-color: #a4002c;
    }

    .box_floorplan_search .select_area > div ul li > span:hover {
        cursor: pointer;
    }

    .box_floorplan_search .select_area > div ul li > span i {
        position: absolute;
        display: block;
        width: 12px;
        height: 12px;
        margin-top: 1px;
    }

    .box_floorplan_search .select_area > div ul li > span i span {
        position: absolute;
        left: -7px;
        top: 0;
        bottom: 0;
        margin: auto;
        width: 12px;
        height: 2px;
        background-color: #333;
        transition: all 0.2s ease;
    }

    .box_floorplan_search .select_area > div ul li > span.active i span,
    .box_floorplan_search .select_area > div ul li > span:hover i span {
        background-color: #fff;
    }

    .box_floorplan_search .select_area > div ul li > span i span:nth-child(1) {
    }

    .box_floorplan_search .select_area > div ul li > span i span:nth-child(2) {
        transform: rotate(90deg);
        top: 0;
    }

    .box_floorplan_search
        .select_area
        > div
        ul
        li
        > span.active
        i
        span:nth-child(2) {
        transform: rotate(180deg);
    }

    .select_front {
        border-top: 1px #ddd dashed;
    }

    .box_floorplan_search .select_area .rect1 {
        position: absolute;
        left: 50%;
        margin-left: -32px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 24px 32px 0 32px;
        border-color: #ddd transparent transparent transparent;
    }

    .box_floorplan_search .select_area .rect2 {
        position: absolute;
        left: 50%;
        margin-left: -30px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 22px 30px 0 30px;
        border-color: #fdfcf2 transparent transparent transparent;
    }

    .box_lst_floorplan {
        margin: 40px 0 0;
    }

    .box_lst_floorplan .lst_media {
        margin: 0 -5px;
    }

    .box_lst_floorplan .lst_media li {
        margin: 20px 0 0;
    }

    .box_lst_floorplan .lst_media li .floormap {
        border: 1px #ddd solid;
    }

    .box_lst_floorplan .lst_media li .floormap:hover {
        cursor: none;
    }

    .box_lst_floorplan .lst_media li p {
        margin: 10px 0 0;
        padding: 0 0 10px;
        font-size: 13px;
        line-height: 1.67em;
    }

    .box_lst_floorplan .lst_media li p span {
        display: block;
    }

    .box_lst_floorplan .floormap .btn_show_modal {
        position: absolute;
        width: 25px;
        height: 25px;
        right: 0;
        bottom: 0;
        background-color: #a4002c;
    }

    .box_lst_floorplan .floormap:hover .btn_show_modal {
        background-color: #333;
    }

    .box_lst_floorplan .floormap .btn_show_modal span {
        display: block;
        width: 13px;
        height: 1px;
        background-color: #fff;
        position: absolute;
        left: 6px;
        top: 50%;
    }

    .box_lst_floorplan .floormap .btn_show_modal span:nth-child(1) {
    }

    .box_lst_floorplan .floormap .btn_show_modal span:nth-child(2) {
        transform: rotate(90deg);
    }

    .box_lst_floorplan .lst_media li p {
        margin: 15px 0 0;
        padding: 0 0 10px;
    }

    .box_lst_floorplan .lst_media li p span {
        display: block;
    }

    #box_plan_modal {
        position: fixed;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        z-index: 2000;
        display: none;
    }

    #box_plan_modal #bg_area {
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        background-color: rgba(0, 0, 0, 0.8);
        z-index: 1999;
    }

    #box_plan_modal ul {
        position: absolute;
        top: 10px;
        bottom: 10px;
        left: 10px;
        right: 10px;
        width: auto;
        height: auto;
        margin: auto;
        max-width: none;
        max-height: none;
        z-index: 2000;
    }

    #box_plan_modal ul li {
        box-sizing: border-box;
        margin: 0;
        background-color: #fff;
        position: relative;
        display: none;
        height: 100%;
    }

    #box_plan_modal .plan_name {
        text-align: center;
        font-size: 16px;
        line-height: 1.67em;
        border-bottom: 1px #ccc solid;
        padding: 7px;
    }

    #box_plan_modal .inner {
        padding: 20px 15px;
        position: relative;
    }

    #box_plan_modal .plan_info {
        position: inherit;
        box-sizing: border-box;
        left: inherit;
        top: inherit;
        width: 100%;
        padding: 0 0 0 0;
    }

    #box_plan_modal .plan_info .price strong {
        font-size: 14px;
        font-weight: 500;
    }

    #box_plan_modal .plan_info dl {
        margin: 10px 0 0;
        font-size: 13px;
    }

    #box_plan_modal .plan_info dl dt {
        clear: both;
        float: left;
        width: 5em;
    }

    #box_plan_modal .plan_info dl dd {
        margin: 0 0 0 5.5em;
    }

    #box_plan_modal .plan_floormap {
        box-sizing: border-box;
        margin: 0;
        text-align: center;
    }

    #box_plan_modal .plan_floormap img {
        width: 100%;
        max-width: 415px;
        height: auto;
        margin: 0;
    }

    .btn_modal_close {
        width: 16px;
        height: 16px;
        position: absolute;
        right: 10px;
        top: 10px;
    }

    .btn_modal_close:hover {
        cursor: pointer;
    }

    .btn_modal_close span {
        position: absolute;
        display: block;
        width: 18px;
        height: 2px;
        top: 50%;
        background-color: #000;
    }

    .btn_modal_close span:nth-child(1) {
        transform: rotate(45deg);
    }

    .btn_modal_close span:nth-child(2) {
        transform: rotate(-45deg);
    }
}

/* Products > Standard > Plan example
-------------------------------------------------- */

.btn_vrtour {
    color: #fff;
    width: 124px;
    height: 124px;
    margin: auto;
    border: 2px #fff solid;
    border-radius: 62px;
    overflow: hidden;
    margin-top: 25px;
}

.btn_vrtour a {
    display: block;
    width: 124px;
    height: 124px;
    position: relative;
}

.btn_vrtour a:before {
    content: "";
    position: absolute;
    width: 124px;
    height: 124px;
    background-color: #000;
    opacity: 0.5;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}

.btn_vrtour:hover a:before {
    opacity: 0.6;
}

.btn_vrtour span {
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    top: 50%;
    bottom: 0;
    color: #fff;
    text-align: center;
}

.btn_vrtour a .icon {
    margin-top: -30px;
}

.btn_vrtour a .text {
    padding: 15px 0 0;
}

.wrp_heading_standard .btn_vrtour {
    width: 100px;
    height: 100px;
    border-radius: 50px;
    margin-top: 15px;
}

.wrp_heading_standard .btn_vrtour a {
    width: 100px;
    height: 100px;
}

.wrp_heading_standard .btn_vrtour a .icon {
    margin-top: -30px;
    padding: 0 20px;
}

.wrp_heading_standard .btn_vrtour a .text {
    padding: 5px 0 0;
}

.box_plan_example {
    padding: 0 100px;
}

.box_floormap {
    border: 1px #ddd solid;
    text-align: center;
    position: relative;
}

.box_floormap > .inner {
    width: auto;
    max-width: 544px;
    margin: auto;
}

.bx-viewport {
    overflow: hidden;
}

.bx-controls {
    padding-bottom: 30px;
}

.bx-pager .bx-pager-item {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 5px;
    overflow: hidden;
    margin: 0 10px;
}

.bx-pager .bx-pager-item a {
    display: block;
    width: 10px;
    height: 10px;
    text-indent: -9999px;
    background-color: #ccc;
}

.bx-pager .bx-pager-item a.active {
    background-color: #398e95;
}

.box_floormap .bx-prev:hover .box_floormap .bx-next:hover {
    opacity: 0.8;
}

.box_floormap .bx-prev {
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    left: -70px;
    width: 26px;
    height: 49px;
    background: url(../img/products/standard/plan-example/btn_prev.png)
        no-repeat;
    text-indent: -9999px;
}

.box_floormap .bx-next {
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    right: -70px;
    width: 26px;
    height: 49px;
    background: url(../img/products/standard/plan-example/btn_next.png)
        no-repeat;
    text-indent: -9999px;
}

/*
#slide_floormap_next {
	position:absolute;
	width:26px;
	height:49px;
	background:url(../img/products/standard/plan-example/btn_next.png) no-repeat;
}
#slide_floormap_prev {
	position:absolute;
	width:26px;
	height:49px;
	background:url(../img/products/standard/plan-example/btn_prev.png) no-repeat;
}
*/

.tbl_plan_example,
.tbl_plan_example th,
.tbl_plan_example td {
    border: 1px solid #ddd;
}

.tbl_plan_example th {
    background: #f5f5f2;
    text-align: left;
    vertical-align: middle;
    color: #333;
    font-weight: bold;
}

.tbl_plan_example th,
.tbl_plan_example td {
    padding: 15px 25px;
}

.tbl_product_info * {
    text-align: center !important;
}

@media screen and (max-width: 767px) {
    .btn_vrtour {
        color: #fff;
        width: 62px;
        height: 62px;
        margin: auto;
        border: 2px #fff solid;
        border-radius: 62px;
        overflow: hidden;
        margin-top: 7px;
    }

    .btn_vrtour a {
        display: block;
        width: 62px;
        height: 62px;
        position: relative;
    }

    .btn_vrtour a:before {
        content: "";
        position: absolute;
        width: 62px;
        height: 62px;
        background-color: #000;
        opacity: 0.5;
        margin: auto;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
    }

    .btn_vrtour:hover a:before {
        opacity: 0.6;
    }

    .btn_vrtour span {
        position: absolute;
        margin: auto;
        left: 0;
        right: 0;
        top: 50%;
        bottom: 0;
        color: #fff;
        text-align: center;
    }

    .btn_vrtour a .icon {
        margin-top: -20px;
        width: 70%;
    }

    .btn_vrtour a .text {
        font-size: 10px;
        padding: 5px 0 0;
    }

    .wrp_heading_standard .btn_vrtour {
        width: 62px;
        height: 62px;
        border-radius: 50px;
        margin-top: 15px;
    }

    .wrp_heading_standard .btn_vrtour a {
        width: 62px;
        height: 62px;
    }

    .wrp_heading_standard .btn_vrtour a .icon {
        margin-top: -20px;
        width: 70%;
        padding: 0;
    }

    .wrp_heading_standard .btn_vrtour a .text {
        padding: 5px 0 0;
    }

    .box_plan_example {
        padding: 0;
    }

    .tbl_plan_example th,
    .tbl_plan_example td {
        padding: 5px 10px;
    }

    .box_floormap {
        border: 1px #ddd solid;
        text-align: center;
        margin: 0 30px;
        position: relative;
    }

    .box_floormap > .inner {
        width: auto;
        max-width: 344px;
        margin: auto;
    }

    .bx-controls {
        padding-bottom: 20px;
    }

    .bx-pager .bx-pager-item {
        margin: 0 7px;
    }

    .box_floormap .bx-prev {
        left: -30px;
        width: 13px;
        height: 25px;
        background: url(../img/products/standard/plan-example/btn_prev.png)
            no-repeat;
        background-size: 100% auto;
    }

    .box_floormap .bx-next {
        right: -30px;
        width: 13px;
        height: 25px;
        background: url(../img/products/standard/plan-example/btn_next.png)
            no-repeat;
        background-size: 100% auto;
    }
}

/* Products > Standard > Plan example
-------------------------------------------------- */

.box_movie {
    width: auto;
    max-width: 800px;
    margin: auto;
    padding: 0 0 40px;
}

.box_movie > div {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}

.box_movie > div > iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}

@media screen and (max-width: 767px) {
    .box_movie {
        padding: 0 0 10px;
    }
}

/* Products > Standard > Works (index and detail)
-------------------------------------------------- */

.box_tag_area {
    border: 1px #ddd solid;
    margin: 60px 0 0;
    background-color: #f5f5f2;
    padding: 25px 30px;
}

.box_tag_area h2 {
    margin: 0 0 20px;
}

.box_tag_area a {
    display: inline-block;
    line-height: 1em;
    padding: 8px 10px;
    background-color: #fff;
    margin: 0 2px 10px;
    border: 1px #ddd solid;
    border-radius: 16.5px;
}

.box_standard_works {
    margin: 80px 0 0;
}

.box_standard_works h2 {
    font-size: 30px;
    font-weight: 300;
    text-align: center;
    background-color: #fbf8e0;
    padding: 25px;
}

.box_standard_works p.txt_explain {
    margin: 0 0 0 30px;
}

.box_standard_works li a:hover {
    color: #000;
}

.box_standard_works li h3 {
    padding: 0 0 0 30px;
    position: relative;
    margin: 20px 0 0;
}

.box_standard_works li h3 i.fa {
    position: absolute;
    left: 0;
    top: 8px;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: -4px 8px 0 0;
    padding: 0;
    line-height: 20px;
    background: #a4002c;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    font-size: 20px;
    line-height: 0.5em;
}

.box_standard_works li h3 i.fa::before {
    color: #ffffff;
    margin: 0;
}

.box_modelhouse_calender {
    border: 1px #ccc solid;
}

.txt_lead_works {
    font-size: 21px;
    line-height: 1.67em;
    text-align: center;
}

.box_works_outline {
    max-width: 960px;
    margin: auto;
}

.box_works_pager {
    text-align: center;
    max-width: 760px;
    margin: 0 auto;
}

.box_works_pager ul {
    margin: 0 -10px;
    position: relative;
    height: 160px;
}

.box_works_pager ul li {
    position: absolute;
    top: 0;
    padding: 0 10px;
}

.box_works_pager ul li a {
    position: relative;
    display: block;
    z-index: 2;
    color: #fff;
}

.box_works_pager ul li.btn_prev {
    left: 0;
}

.box_works_pager ul li.btn_index {
    left: 33.33%;
}

.box_works_pager ul li.btn_next {
    right: 0;
}

.box_works_pager ul li a::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: #000;
    opacity: 0.3;
    z-index: 1;
}

.box_works_pager ul li a p {
    position: absolute;
    left: 10px;
    right: 10px;
    top: 50%;
    text-align: center;
    z-index: 2;
    font-size: 17px;
    line-height: 1em;
    margin-top: -0.5em;
}

.box_works_pager ul li.btn_prev a p i {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
}

.box_works_pager ul li.btn_next a p i {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
}

.box_works_pager ul li a p i::before {
    color: #fff;
    font-size: 32px;
    line-height: 1em;
    margin-top: -8px;
}

.swiper-mv-slide {
    overflow: hidden;
}

#box_swiper_gallery {
    margin: 40px 0 0;
    padding: 0 0 70px;
}

.swiper-container {
    margin: 0 110px;
}

#box_swiper_gallery .swiper-slide img {
    width: 100%;
    height: auto;
}

#box_swiper_gallery h3 {
    margin: 20px 0 0;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.67em;
}

#box_swiper_gallery p {
    margin: 10px 0 0;
    font-size: 14px;
    line-height: 1.67em;
}

#box_swiper_gallery .box_swiper-thumbnail {
    position: relative;
    width: 100%;
}

#box_swiper_gallery .swiper-thumbnail {
    margin: 40px 39px 0;
    overflow: hidden;
}

#box_swiper_gallery .swiper-thumbnail li {
    box-sizing: border-box;
    width: 16.66%;
    float: left;
    padding: 0 10px;
}

#box_swiper_gallery .swiper-thumbnail img {
    width: 100%;
    height: auto;
}

.swiper-button-next,
.swiper-button-prev {
    background: none;
    width: 22px;
    height: 22px;
    background-color: #a4002c;
    top: 0;
    bottom: 0;
    margin: auto;
}

.swiper-button-next {
    right: 0;
}

.swiper-button-prev {
    left: 0;
}

.swiper-button-next .fa,
.swiper-button-prev .fa {
    display: block;
    width: 22px;
    height: 22px;
    text-align: center;
}

.swiper-button-next .fa::before,
.swiper-button-prev .fa::before {
    font-size: 28px;
    color: #fff;
    margin: 0;
    line-height: 0.8em;
}

.swiper-button-next .fa::before {
    margin: 0 0 0 0;
}

.swiper-button-prev .fa::before {
    margin: 0 3px 0 0;
}

.swiper-slide a {
    display: block;
    border: 2px #ffffff solid;
}

.swiper-slide-active a {
    border: 2px #a4002c solid;
}

@media screen and (min-width: 768px) and (max-width: 1169px) {
    .swiper-container {
        margin: 0;
    }
}

@media screen and (max-width: 767px) {
    .box_tag_area {
        border: 1px #ddd solid;
        margin: 30px 0 0;
        background-color: #f5f5f2;
        padding: 8px 10px;
    }

    .box_tag_area h2 {
        margin: 0 0 20px;
    }

    .box_tag_area a {
        display: inline-block;
        font-size: 13px;
        line-height: 1em;
        padding: 5px 7px;
        background-color: #fff;
        margin: 0 2px 5px;
        border: 1px #ddd solid;
        border-radius: 16.5px;
    }

    .box_standard_works {
        margin: 40px 0 0;
    }

    .box_standard_works h2 {
        font-size: 18px;
        font-weight: 300;
        text-align: center;
        background-color: #fbf8e0;
        padding: 10px;
    }

    .box_standard_works p.txt_explain {
        margin: 0 0 0 21px;
        font-size: 13px;
        line-height: 1.67em;
    }

    .box_standard_works li a:hover {
        color: #000;
    }

    .box_standard_works li h3 {
        padding: 0 0 0 21px;
        position: relative;
        margin: 10px 0 0;
        line-height: 1.67em;
    }

    .box_standard_works li h3 i.fa {
        position: absolute;
        left: 0;
        top: 8px;
        display: inline-block;
        width: 16px;
        height: 16px;
        margin: -4px 8px 0 0;
        padding: 0;
        line-height: 20px;
        background: #a4002c;
        font-weight: bold;
        text-align: center;
        vertical-align: middle;
        font-size: 16px;
        line-height: 0.5em;
    }

    .box_standard_works li h3 i.fa::before {
        color: #ffffff;
        margin: 0;
    }

    .box_modelhouse_calender {
        border: 1px #ccc solid;
    }

    .txt_lead_works {
        font-size: 16px;
        line-height: 1.67em;
        text-align: center;
        margin: 0 0 10px;
    }

    .box_works_outline {
        max-width: 960px;
        margin: auto;
    }

    .box_works_pager {
        width: auto;
        text-align: center;
        max-width: none;
        margin: 0 auto;
    }

    .box_works_pager ul {
        margin: 10px -5px 0;
        position: relative;
        height: auto;
        text-align: center;
    }

    .box_works_pager ul li {
        position: relative;
        top: 0;
        padding: 0 5px;
        float: left;
    }

    .box_works_pager ul li a {
        position: relative;
        display: block;
        z-index: 2;
        color: #fff;
    }

    .box_works_pager ul li.btn_prev {
        left: inherit;
    }

    .box_works_pager ul li.btn_index {
        left: inherit;
    }

    .box_works_pager ul li.btn_next {
        right: inherit;
    }

    .box_works_pager ul li a::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        background-color: #000;
        opacity: 0.3;
        z-index: 1;
    }

    .box_works_pager ul li a p {
        position: absolute;
        left: 10px;
        right: 10px;
        top: 50%;
        text-align: center;
        z-index: 2;
        font-size: 13px;
        line-height: 1em;
        margin-top: -0.5em;
    }

    .box_works_pager ul li.btn_prev a p i {
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
    }

    .box_works_pager ul li.btn_next a p i {
        position: absolute;
        right: 0;
        top: 0;
        bottom: 0;
    }

    .box_works_pager ul li a p i::before {
        color: #fff;
        font-size: 20px;
        line-height: 1em;
        margin-top: -5px;
    }

    #box_swiper_gallery {
        margin: 20px 0 0;
        padding: 0 0 35px;
    }

    .swiper-container {
        margin: 0;
    }

    #box_swiper_gallery .swiper-slide img {
        width: 100%;
        height: auto;
    }

    #box_swiper_gallery h3 {
        margin: 10px 0 0;
        font-size: 15px;
        font-weight: 500;
        line-height: 1.67em;
    }

    #box_swiper_gallery p {
        margin: 0 0 0;
        font-size: 12px;
        line-height: 1.67em;
    }

    #box_swiper_gallery .box_swiper-thumbnail {
        position: relative;
        width: 100%;
    }

    #box_swiper_gallery .swiper-thumbnail {
        margin: 20px 22px 0;
        overflow: hidden;
    }

    #box_swiper_gallery .swiper-thumbnail li {
        box-sizing: border-box;
        width: 16.66%;
        float: left;
        padding: 0 2.5px;
    }

    #box_swiper_gallery .swiper-thumbnail img {
        width: 100%;
        height: auto;
    }

    .swiper-button-next,
    .swiper-button-prev {
        background: none;
        width: 16px;
        height: 16px;
        background-color: #a4002c;
        top: 0;
        bottom: 0;
        margin: auto;
    }

    .swiper-button-next {
        right: 0;
    }

    .swiper-button-prev {
        left: 0;
    }

    .swiper-button-next .fa,
    .swiper-button-prev .fa {
        display: block;
        width: 16px;
        height: 16px;
        text-align: center;
        margin-top: -2px;
    }

    .swiper-button-next .fa::before,
    .swiper-button-prev .fa::before {
        font-size: 16px;
        color: #fff;
        margin: 0;
        line-height: 1em;
    }

    .swiper-button-next .fa::before {
        margin: 0 0 0 0;
    }

    .swiper-button-prev .fa::before {
        margin: 0 3px 0 0;
    }

    .box_works_outline tbody tr {
        display: table-row;
    }

    .box_works_outline tbody th,
    .box_works_outline tbody td {
        display: table-cell;
        font-size: 14px;
        line-height: 1.33em;
        padding: 10px 10px;
    }

    .box_works_outline tbody th {
        width: 27%;
        vertical-align: top;
    }
}

/* Products > Standard > Modelhouse (index and detail)
-------------------------------------------------- */

.sec_modelhouse_outline {
    margin: 95px 0 0;
    position: relative;
}

.box_modelhouse_info {
    width: 36.75%;
    /*
    position: absolute;
    left: 0;
    top: 0;
    */
    float: left;
}

.box_modelhouse_info h2 {
    font-size: 35px;
    font-weight: 300;
    line-height: 1.67em;
}

.box_modelhouse_info p.txt_concept {
    font-size: 17px;
    line-height: 1.67em;
    margin: 15px 0 0;
}

.box_modelhouse_info dl {
    margin: 15px 0 0;
}

.box_modelhouse_info dl dt {
    width: 3.5em;
    clear: both;
    float: left;
}

.box_modelhouse_info dl dd {
    margin: 0 0 0 3.5em;
}

.box_modelhouse_info .button {
    margin: 30px 0 0;
}

.box_modelhouse_info .btn_contact {
    background-color: #a4002c;
    padding: 10px 20px;
    color: #fff;
    display: block;
    text-align: center;
    width: 215px;
}

.box_modelhouse_info .btn_contact .fa:before {
    color: #fff;
}

.box_modelhouse_map {
    margin: 40px 0 0;
}

.gmap {
    height: 0;
    overflow: hidden;
    /*padding-bottom: 56.25%;*/
    padding-bottom: 40%;
    position: relative;
}

.box_modelhouse_map .gmap {
    padding-bottom: 56.25%;
}

.gmap iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
}

.box_modelhouse_photo {
    width: auto;
    /*
    margin: 0 0 0 40.17%;
    */
    width: 59.83%;
    float: right;
}

@media (max-width: 767px) {
    .sec_modelhouse_outline {
        margin: 35px 0 0;
        padding: 0 0 10px;
        position: relative;
    }

    .box_modelhouse_info {
        width: auto;
        display: block;
        float: none;
        position: relative;
        left: inherit;
        top: inherit;
        margin: 10px 0 0;
    }

    .box_modelhouse_info h2 {
        font-size: 20px;
        font-weight: 300;
        line-height: 1.67em;
        text-align: center;
        clear: both;
    }

    .box_modelhouse_info p.txt_concept {
        font-size: 14px;
        line-height: 1.67em;
        margin: 10px 0 0;
    }

    .box_modelhouse_info dl {
        margin: 10px 0 0;
        font-size: 12px;
        line-height: 1.67em;
    }

    .box_modelhouse_info dl dt {
        width: 3.5em;
        clear: both;
        float: left;
    }

    .box_modelhouse_info dl dd {
        margin: 0 0 0 3.5em;
    }

    .box_modelhouse_info .button {
        margin: 15px auto 0;
        text-align: center;
    }

    .box_modelhouse_info .btn_contact {
        background-color: #a4002c;
        padding: 10px 20px;
        color: #fff;
        display: block;
        text-align: center;
        width: 180px;
        margin: auto;
    }

    .box_modelhouse_info .btn_contact .fa:before {
        color: #fff;
    }

    .box_modelhouse_map {
        margin: 20px 0 0;
    }

    .gmap {
        height: 0;
        overflow: hidden;
        padding-bottom: 56.25%;
        position: relative;
    }

    .gmap iframe {
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 100%;
    }

    .box_modelhouse_photo {
        width: auto;
        margin: 20px 0 0;
        float: none;
    }
}

/* Products > Standard > Financial Plan
-------------------------------------------------- */

.pg_financial_plan .sub_category_navi {
    margin: 60px 0 0;
}

.txt_financial strong {
    color: #a4002c;
}

.txt_cost_outline {
    text-align: center;
    font-size: 25px;
    font-weight: 500;
    line-height: 1.67em;
}

.txt_cost_outline strong {
    color: #a4002c;
}

.chart_payment {
    text-align: center;
    margin: 40px 0 0;
}

.box_loan_type .lst_media {
    width: auto;
    margin: 20px -15px 10px;
}

.box_loan_type .lst_media li {
    text-align: center;
}

.box_loan_type .lst_media li .inner {
    border: 1px #ddd solid;
}

.box_loan_type .lst_media li h4 {
    font-size: 17px;
    font-weight: 500;
    line-height: 1.33em;
    padding: 15px 10px;
    background-color: #f5f5f2;
}

.box_loan_type .lst_media li .chart {
    padding: 20px 54.5px;
}

.box_loan_type .lst_media li p {
    text-align: left;
    margin: 15px 0 0;
}

.txt_loan_condition {
    text-align: center;
    background-color: #f5f5f2;
    padding: 7px 10px;
}

@media screen and (max-width: 767px) {
    .pg_financial_plan .sub_category_navi {
        margin: 60px 0 0;
    }

    .txt_financial {
        text-align: left;
    }

    .txt_financial strong {
        color: #a4002c;
    }

    .txt_cost_outline {
        text-align: center;
        font-size: 12px;
        font-weight: 500;
        line-height: 1.67em;
    }

    .txt_cost_outline strong {
        color: #a4002c;
    }

    .chart_payment {
        text-align: center;
        margin: 10px 0 0;
    }

    .box_loan_type .lst_media {
        width: auto;
        margin: 20px 0 10px;
    }

    .box_loan_type .lst_media li {
        text-align: center;
    }

    .box_loan_type .lst_media li .inner {
        border: 1px #ddd solid;
    }

    .box_loan_type .lst_media li h4 {
        font-size: 15px;
        font-weight: 500;
        line-height: 1.33em;
        padding: 7px 10px;
        background-color: #f5f5f2;
    }

    .box_loan_type .lst_media li .chart {
        padding: 10px 15px;
    }

    .box_loan_type .lst_media li p {
        font-size: 13px;
        line-height: 1.67em;
        text-align: left;
        margin: 10px 0 0;
    }

    .txt_loan_condition {
        font-size: 13px;
        line-height: 1.67em;
        text-align: left;
        background-color: #f5f5f2;
        padding: 7px 10px;
    }
}

/* Value > quality > eco
-------------------------------------------------- */

.box_eco_contents {
    clear: both;
    border: 1px #ddd solid;
    margin: 60px 0 0;
}

.box_eco_contents > .inner {
    padding: 10px 30px 40px;
}

.box_eco_contents hr {
    margin: 0 15px;
}

.box_eco_contents h3 {
    font-size: 25px;
    line-height: 1.4em;
    border-bottom: 1px #ddd solid;
    background-color: #ebf4f4;
    padding: 13px;
}

.box_eco_contents h3 strong {
    color: #f28b3f;
}

.box_eco_contents h4 {
}

.box_eco_contents h4 span {
}

.box_eco_contents figure .fluid_image {
    margin: auto;
}

.box_eco_contents h4,
.box_eco_contents figcaption {
    text-align: center;
    margin: 28px 0 28px;
}

.box_eco_contents h4 span,
.box_eco_contents figcaption span {
    border: 1px #ddd solid;
    display: inline-block;
    padding: 5px 30px;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.4em;
}

.box_eco_contents .wrp_grid {
    margin-left: 3px;
    margin-right: 3px;
}

.box_eco_contents .wrp_grid p {
    text-align: left;
}

.box_eco_contents .wrp_grid figure {
    text-align: left;
}

.box_eco_contents .wrp_grid figcaption {
    text-align: left;
    margin: 20px 0 0;
    font-size: 13px;
    line-height: 1.4em;
}

.box_eco_merit figure {
    text-align: center;
    margin: auto;
    width: auto;
    max-width: 820px;
}

.lst_soratomo {
    margin: 20px 0 20px;
}

.lst_soratomo li {
    text-align: center;
    position: relative;
}

.lst_soratomo li > .inner {
    background-color: #e4f1f2;
    padding: 20px 23px 25px;
    position: relative;
    z-index: 2;
}

.lst_soratomo li:before {
    position: absolute;
    content: "";
    background-color: #e4f1f2;
    left: 15px;
    right: 15px;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 1;
}

.lst_soratomo dt {
    border-bottom: 1px #398e95 solid;
    color: #398e95;
    font-size: 19px;
    font-weight: 500;
    line-height: 1.4em;
    text-align: center;
    padding: 15px 0 7px;
    margin: 0 0 12px;
}

.txt_energy_note {
    font-size: 12px;
    color: #666;
    line-height: 1.67em;
    text-align: left;
    max-width: 970px;
    margin: auto;
    padding: 10px 0 20px;
}

@media screen and (max-width: 767px) {
    .box_eco_contents {
        clear: both;
        border: 1px #ddd solid;
        margin: 20px 0 0;
    }

    .box_eco_contents > .inner {
        padding: 0 10px 20px;
    }

    .box_eco_contents hr {
        margin: 0 0;
    }

    .box_eco_contents h3 {
        font-size: 16px;
        line-height: 1.4em;
        border-bottom: 1px #ddd solid;
        background-color: #ebf4f4;
        padding: 13px;
    }

    .box_eco_contents h3 strong {
        color: #f28b3f;
    }

    .box_eco_contents h4 {
        font-size: 15px;
    }

    .box_eco_contents h4 span {
    }

    .box_eco_contents figure .fluid_image {
        margin: auto;
    }

    .box_eco_contents h4,
    .box_eco_contents figcaption {
        text-align: center;
        margin: 28px 0 20px;
    }

    .box_eco_contents h4 span,
    .box_eco_contents figcaption span {
        border: 1px #ddd solid;
        display: inline-block;
        padding: 5px 15px;
        font-size: 15px;
        font-weight: 500;
        line-height: 1.4em;
    }

    .box_eco_contents .wrp_grid {
        margin-left: 3px;
        margin-right: 3px;
    }

    .box_eco_contents .wrp_grid .grid_12_sp {
        padding: 0 !important;
    }

    .box_eco_contents .wrp_grid p {
        text-align: left;
    }

    .box_eco_contents .wrp_grid figure {
        text-align: left;
    }

    .box_eco_contents .wrp_grid figcaption {
        text-align: left;
        margin: 20px 0 0;
        font-size: 13px;
        line-height: 1.4em;
    }

    .box_eco_merit figure {
        text-align: center;
        margin: auto;
        width: auto;
        max-width: 820px;
    }

    .lst_soratomo {
        margin: 20px 0 20px;
    }

    .lst_soratomo li {
        text-align: center;
    }

    .lst_soratomo li > .inner {
        background-color: #e4f1f2;
        padding: 10px 10px 15px;
    }

    .lst_soratomo li:before {
        position: absolute;
        content: "";
        background-color: #e4f1f2;
        left: 5px;
        right: 5px;
        top: 0;
        bottom: 0;
        margin: auto;
        z-index: 1;
    }

    .lst_soratomo dt {
        border-bottom: 1px #398e95 solid;
        color: #398e95;
        font-size: 15px;
        font-weight: 500;
        line-height: 1.4em;
        text-align: center;
        padding: 15px 0 7px;
        margin: 0 0 12px;
    }

    .txt_energy_note {
        font-size: 11px;
        color: #666;
        line-height: 1.4em;
        text-align: left;
        padding: 0 0 0;
    }
}

/* Property > terms
-------------------------------------------------- */

#wrap_property_term {
    width: auto;
    max-width: 970px;
    margin: auto;
    padding: 50px 15px 30px;
}

.box_property_term {
    padding: 40px 0 0;
}

.box_property_term * {
    line-height: 1.867em;
}

.box_property_term h2 {
    font-size: 21px;
    line-height: 1.4em;
    margin: 0 0 10px;
}

.box_property_term ol {
    list-style-position: outside;
    padding: 0 0 0 1em;
}

.box_property_term ol > li {
    list-style-type: decimal;
}

.box_property_term ul {
    list-style-position: outside;
    padding: 0 0 0 1em;
}

.box_property_term ul > li {
    list-style-type: disc;
}

@media screen and (max-width: 767px) {
    #wrap_property_term {
        width: auto;
        max-width: 970px;
        margin: auto;
        padding: 0 15px;
    }

    #wrap_property_term h1 {
        margin: 30px 0 0;
    }

    .box_property_term {
        padding: 30px 0 0;
    }

    .box_property_term * {
        line-height: 1.867em;
    }

    .box_property_term h2 {
        font-size: 17px;
        line-height: 1.4em;
        margin: 0 0 10px;
    }

    .box_property_term ol {
        list-style-position: outside;
        padding: 0 0 0 1em;
    }

    .box_property_term ol > li {
        list-style-type: decimal;
    }

    .box_property_term ul {
        list-style-position: outside;
        padding: 0 0 0 1em;
    }

    .box_property_term ul > li {
        list-style-type: disc;
    }
}

/* Property > Guide
-------------------------------------------------- */

#wrap_property_guide {
    width: auto;
    max-width: none;
    padding: 50px 0 30px;
}

.box_property_guide {
    clear: both;
    padding: 0 15px 0;
}

.box_property_guide > .inner {
    width: auto;
    max-width: 1170px;
    margin: auto;
}

.property_guide_merit li {
    text-align: center;
}

.property_guide_merit li h3 {
    font-size: 25px;
    line-height: 1.4em;
    text-align: center;
    margin: 25px 0 15px;
}

.property_guide_merit li p {
    text-align: left;
}

.property_guide_merit li img {
    border: 1px #ddd solid;
    border-radius: 50%;
}

.property_guide_flow {
    background-color: #f4f4f3;
    padding: 20px 15px 30px;
}

.property_guide_flow .lst_step {
}

.property_guide_flow .lst_step li {
    font-size: 21px;
    background-color: #fff;
}

.property_guide_flow .lst_step li:before {
    margin-top: -39px;
    right: -40px;
    z-index: 4;
    border-style: solid;
    border-width: 39px 0 39px 40px;
    border-color: transparent transparent transparent #ddd;
}

.property_guide_flow .lst_step li:after {
    margin-top: -38px;
    right: -39px;
    z-index: 5;
    border-style: solid;
    border-width: 38px 0 38px 39px;
    border-color: transparent transparent transparent #fff;
}

.property_guide_flow .lst_step p {
    padding: 23px 0 23px 30px;
    height: 80px;
}

.property_guide_flow .lst_step p strong {
    color: #a4002c;
    display: inline-block;
    margin-right: 10px;
}

.box_guide_step {
    box-sizing: border-box;
    border: 1px #ddd solid;
    background-color: #fff;
    padding: 60px 99px 60px;
    margin: 0 0 60px;
    text-align: center;
    position: relative;
}

.box_guide_step:before,
.box_guide_step:after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 50%;
    width: 0;
    height: 0;
}

.box_guide_step.step3:before,
.box_guide_step.step3:after {
    display: none;
}

.box_guide_step:before {
    margin-left: -39px;
    bottom: -39px;
    z-index: 4;
    border-style: solid;
    border-width: 39px 39px 0 40px;
    border-color: #ddd transparent transparent transparent;
}

.box_guide_step:after {
    margin-left: -38px;
    bottom: -38px;
    z-index: 4;
    border-style: solid;
    border-width: 38px 38px 0 39px;
    border-color: #fff transparent transparent transparent;
}

.box_guide_step h3 {
    text-align: center;
    font-size: 32px;
    line-height: 1.4em;
    font-weight: 200;
    margin: 0 0 30px;
}

.box_guide_step h3 span {
    display: block;
}

.box_guide_step h3 span:nth-child(1) {
    display: inline-block;
    color: #a4002c;
    border: 2px #a4002c solid;
    font-weight: 400;
    font-size: 17px;
    line-height: 1.4em;
    padding: 2px 30px;
}

.box_guide_step h3 span:nth-child(2) {
    padding: 20px 0 0;
}

.box_guide_step h4 {
    text-align: left;
    font-size: 21px;
    font-weight: 500;
    margin: 60px 0 10px;
}

.box_guide_step h4 > span {
    display: inline-block;
    box-sizing: border-box;
    font-size: 15px;
    padding: 6px 15px 0;
    line-height: 1em;
    color: #fff;
    background-color: #a4002c;
    height: 26px;
    position: relative;
}

.box_guide_step h4 > span:after {
    position: absolute;
    content: "";
    top: 0;
    right: -10px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 13px 0 13px 10px;
    border-color: transparent transparent transparent #a4002c;
}

.box_guide_step .txt_lead {
    font-size: 21px;
    line-height: 2em;
    font-weight: 500;
    margin: 20px 0 10px;
}

.box_guide_step .txt_step_lead {
    font-size: 15px;
    line-height: 2em;
    text-align: left;
    margin: 0 0 15px;
}

.box_guide_step .txt_step_lead em {
    font-size: 17px;
}

.box_guide_step .txt_step_lead strong {
    color: #a4002c;
}

.box_guide_step .lst_note {
    background-color: #fdfcf2;
    padding: 15px 20px;
}

.box_guide_step .lst_note li {
    line-height: 2em;
    text-indent: -1em;
    padding: 0 0 0 1em;
}

.box_guide_step .lst_note li:before {
    content: "※";
}

.box_guide_step figure {
    margin: 40px 0 0;
}

.property_guide_cancel .inner {
    width: auto;
    max-width: 1170px;
    margin: auto;
}

.property_guide_cancel .txt_lead {
    margin: 0 0 20px;
}

.lst_cancel_flow {
    background-color: #fdfcf2;
    padding: 30px 100px 30px;
    margin: 0 0 80px;
}

.lst_cancel_flow h3 {
    text-align: center;
    font-size: 21px;
    line-height: 1.4em;
    font-weight: 500;
    color: #a4002c;
    margin: 0 0 20px;
}

.lst_cancel_flow ol {
    border-top: 1px #c5c5bd solid;
}

.lst_cancel_flow ol li {
    border-bottom: 1px #c5c5bd dashed;
    padding: 18px 0 15px 30px;
    position: relative;
}

.lst_cancel_flow ol li:last-child {
    border-bottom: 1px #c5c5bd solid;
}

.txt_cancel_note {
    text-align: center;
    margin: 25px 0 0;
}

.lst_cancel_flow ol li > span {
    position: absolute;
    top: 19px;
    left: 0;
    display: inline-block;
    box-sizing: border-box;
    font-size: 14px;
    padding: 4px 0 0;
    line-height: 1em;
    color: #fff;
    background-color: #a4002c;
    height: 22px;
    width: 22px;
    text-align: center;
    margin-right: 5px;
}

.box_guide_btn {
    text-align: center;
    font-size: 0px;
    padding: 40px 0 20px;
}

.box_guide_btn .fa:before {
    color: #ffffff;
    font-size: 20px;
}

.box_guide_btn li {
    display: inline-block;
    width: 280px;
    text-align: center;
    margin: 0 20px;
}

.box_guide_btn li a,
.box_guide_btn li span {
    display: block;
    color: #fff;
    background-color: #a4002c;
    font-size: 16px;
    font-weight: 400;
    padding: 20px;
}

.box_guide_btn li span.close {
    background-color: #2d3339;
}

.box_guide_btn li span:hover {
    cursor: pointer;
}

@media screen and (max-width: 767px) {
    #wrap_property_guide {
        width: auto;
        max-width: none;
        padding: 0 0 30px;
    }

    .box_property_guide {
        clear: both;
        padding: 0 15px 0;
    }

    .box_property_guide > .inner {
        width: auto;
        max-width: 1170px;
        margin: auto;
    }

    .property_guide_merit li {
        text-align: center;
    }

    .property_guide_merit li h3 {
        font-size: 18px;
        line-height: 1.4em;
        text-align: center;
        margin: 25px 0 15px;
    }

    .property_guide_merit li p {
        text-align: left;
    }

    .property_guide_merit li img {
        border: 1px #ddd solid;
        border-radius: 50%;
    }

    .property_guide_flow {
        background-color: #f4f4f3;
        padding: 20px 15px 30px;
    }

    .property_guide_flow .lst_step {
        margin-bottom: 20px;
    }

    .property_guide_flow .lst_step li {
        font-size: 13px;
        background-color: #fff;
    }

    .property_guide_flow .lst_step li:before {
        margin-top: -19px;
        right: -20px;
        z-index: 4;
        border-style: solid;
        border-width: 19px 0 19px 20px;
        border-color: transparent transparent transparent #ddd;
    }

    .property_guide_flow .lst_step li:after {
        margin-top: -18px;
        right: -19px;
        z-index: 5;
        border-style: solid;
        border-width: 18px 0 18px 19px;
        border-color: transparent transparent transparent #fff;
    }

    .property_guide_flow .lst_step p {
        padding: 10px 0 10px 15px;
        height: 38px;
    }

    .property_guide_flow .lst_step p strong {
        color: #a4002c;
        display: none;
    }

    .box_guide_step {
        box-sizing: border-box;
        border: 1px #ddd solid;
        background-color: #fff;
        padding: 20px 14px 20px;
        margin: 0 0 30px;
        text-align: center;
        position: relative;
    }

    .box_guide_step:before,
    .box_guide_step:after {
        position: absolute;
        content: "";
        bottom: 0;
        left: 50%;
        width: 0;
        height: 0;
    }

    .box_guide_step:before {
        margin-left: -24px;
        bottom: -24px;
        z-index: 4;
        border-style: solid;
        border-width: 24px 24px 0 25px;
        border-color: #ddd transparent transparent transparent;
    }

    .box_guide_step:after {
        margin-left: -23px;
        bottom: -23px;
        z-index: 4;
        border-style: solid;
        border-width: 23px 23px 0 24px;
        border-color: #fff transparent transparent transparent;
    }

    .box_guide_step h3 {
        text-align: center;
        font-size: 21px;
        line-height: 1.4em;
        font-weight: 200;
        margin: 0 0 15px;
    }

    .box_guide_step h3 span {
        display: block;
    }

    .box_guide_step h3 span:nth-child(1) {
        display: inline-block;
        color: #a4002c;
        border: 2px #a4002c solid;
        font-weight: 400;
        font-size: 14px;
        line-height: 1.4em;
        padding: 2px 15px;
    }

    .box_guide_step h3 span:nth-child(2) {
        padding: 10px 0 0;
    }

    .box_guide_step h4 {
        text-align: left;
        font-size: 17px;
        font-weight: 500;
        margin: 30px 0 10px;
    }

    .box_guide_step h4 > span {
        display: inline-block;
        box-sizing: border-box;
        font-size: 13px;
        padding: 4px 10px 0;
        line-height: 1em;
        color: #fff;
        background-color: #a4002c;
        height: 20px;
        position: relative;
    }

    .box_guide_step h4 > span:after {
        position: absolute;
        content: "";
        top: 0;
        right: -8px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 10px 0 10px 8px;
        border-color: transparent transparent transparent #a4002c;
    }

    .box_guide_step .txt_lead {
        font-size: 17px;
        line-height: 1.6em;
        font-weight: 500;
        margin: 20px 0 10px;
    }

    .box_guide_step .txt_step_lead {
        font-size: 14px;
        line-height: 1.6em;
        text-align: left;
        margin: 0 0 15px;
    }

    .box_guide_step .txt_step_lead em {
        font-size: 15px;
    }

    .box_guide_step .txt_step_lead strong {
        color: #a4002c;
    }

    .box_guide_step .lst_note {
        background-color: #fdfcf2;
        padding: 15px 20px;
    }

    .box_guide_step .lst_note li {
        line-height: 1.6em;
        text-indent: -1em;
        padding: 0 0 0 1em;
    }

    .box_guide_step .lst_note li:before {
        content: "※";
    }

    .box_guide_step figure {
        margin: 20px 0 0;
    }

    .property_guide_cancel .inner {
        width: auto;
        max-width: 1170px;
        margin: auto;
    }

    .property_guide_cancel .txt_lead {
        margin: 0 0 20px;
    }

    .lst_cancel_flow {
        background-color: #fdfcf2;
        padding: 20px 14px 15px;
        margin: 0 0 40px;
    }

    .lst_cancel_flow h3 {
        text-align: center;
        font-size: 17px;
        line-height: 1.4em;
        font-weight: 500;
        color: #a4002c;
        margin: 0 0 10px;
    }

    .lst_cancel_flow ol {
        border-top: 1px #c5c5bd solid;
    }

    .lst_cancel_flow ol li {
        border-bottom: 1px #c5c5bd dashed;
        padding: 18px 0 15px 25px;
        position: relative;
    }

    .lst_cancel_flow ol li:last-child {
        border-bottom: 1px #c5c5bd solid;
    }

    .txt_cancel_note {
        text-align: center;
        margin: 15px 0 0;
    }

    .lst_cancel_flow ol li > span {
        position: absolute;
        left: 0;
        top: 19px;
        display: inline-block;
        box-sizing: border-box;
        font-size: 12px;
        padding: 3px 0 0;
        line-height: 1em;
        color: #fff;
        background-color: #a4002c;
        height: 18px;
        width: 18px;
        text-align: center;
        margin-right: 5px;
    }

    .box_guide_btn {
        text-align: center;
        font-size: 0px;
        padding: 40px 0 0;
    }

    .box_guide_btn .fa:before {
        color: #ffffff;
        font-size: 18px;
    }

    .box_guide_btn li {
        display: inline-block;
        width: 160px;
        text-align: center;
        margin: 0 5px;
    }

    .box_guide_btn li a,
    .box_guide_btn li span {
        display: block;
        color: #fff;
        background-color: #a4002c;
        font-size: 13px;
        font-weight: 400;
        padding: 15px 5px;
    }

    .box_guide_btn li span.close {
        background-color: #2d3339;
    }

    .box_guide_btn li span:hover {
        cursor: pointer;
    }
}

/* Loan simulator > repayment
-------------------------------------------------- */

.tab_loan_simulator {
    border-bottom: 1px #ddd solid;
    margin: 60px auto 0;
}

.tab_loan_simulator ul {
    width: auto;
    max-width: 1070px;
    text-align: center;
    font-size: 0;
    margin: auto;
    border-right: 1px #ddd solid;
}

.tab_loan_simulator ul li {
    width: 50%;
    display: inline-block;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.4em;
    margin-bottom: -1px;
}

.tab_loan_simulator ul li > a,
.tab_loan_simulator ul li > span {
    display: block;
    border: 1px #ddd;
    border-style: solid none none solid;
    text-align: center;
    background-color: #fff;
    padding: 20px 15px;
}

.tab_loan_simulator ul li > a {
    background-color: #f5f5f5;
    border: 1px #ddd;
    border-style: solid none solid solid;
}

.tab_loan_simulator ul li > a:hover {
    cursor: pointer;
}

.tab_loan_simulator ul li > span {
    color: #a4002c;
    border-bottom: 1px #fff solid;
}

.loan_simulator_input {
    width: auto;
    max-width: 970px;
    margin: auto;
}

.loan_simulator_input th {
    box-sizing: border-box;
    width: 350px;
    padding-left: 87px;
    position: relative;
    font-size: 15px;
    vertical-align: middle;
}

.loan_simulator_input th span.lbl {
    position: absolute;
    height: 15px;
    margin: auto;
    left: 20px;
    top: 0;
    bottom: 0;
}

.loan_simulator_input th .txt_note {
    text-indent: 0;
    padding-left: 5px;
    color: #333;
}

.loan_simulator_input th .txt_note:before {
    content: "";
}

.ls_input_group {
    padding: 20px 0 0 0;
}

.loan_simulator_input td .txt_cmn1 {
    display: inline-block;
    padding: 5px 5px 0 0;
}

.loan_simulator_input td .txt_cmn2 {
    display: inline-block;
    padding: 10px 5px 0 0;
}

.loan_simulator_input td .txt_unit {
    display: inline-block;
    padding: 10px 0 0 10px;
}

.ls_value_price {
    min-width: 70px;
    max-width: 120px;
}

.ls_value_bonus {
    min-width: 70px;
    max-width: 120px;
}

.ls_rate_percent {
    min-width: 60px;
    max-width: 80px;
}

.ls_repayment_term {
    min-width: 80px !important;
    max-width: 100px;
}

.ls_value_year {
    min-width: 50px;
    max-width: 50px;
}

.ls_value_month {
    min-width: 50px;
    max-width: 50px;
}

.btn_calculation button {
    margin: 0 5px;
}

#box_calculation_result {
    box-sizing: border-box;
    width: auto;
    max-width: 970px;
    margin: 110px auto 0;
    border: 4px #a4002c solid;
    background-color: #fdfcf2;
    padding: 36px 46px 46px;
    position: relative;
    /*
	*/
    display: none;
}

#box_calculation_result:before {
    position: absolute;
    content: "";
    bottom: 0;
    left: 50%;
    width: 0;
    height: 0;
    top: -54px;
    margin-left: -60px;
    z-index: 4;
    border-style: solid;
    border-width: 34px 60px 0 60px;
    border-color: #a4002c transparent transparent transparent;
}

#box_calculation_result h2 {
    text-align: center;
    font-size: 25px;
    line-height: 1.6em;
    margin: 0 0 25px;
}

#box_calculation_result table {
    border-top: 1px #cccccc solid;
    font-size: 17px;
    line-height: 1.4em;
}

#box_calculation_result tr {
    border-bottom: 1px #c7c7c7 solid;
}

#box_calculation_result th {
    clear: both;
    float: left;
    padding: 25px;
    vertical-align: middle;
}

#box_calculation_result td {
    text-align: right;
    padding: 22px 25px 22px 0;
    vertical-align: middle;
}

#box_calculation_result td strong {
    font-size: 32px;
    line-height: 1em;
    color: #a4002c;
    display: inline-block;
    margin-right: 5px;
}

#box_calculation_result p.note {
    text-align: right;
    padding: 10px 0 0;
}

.box_simulator_note {
    width: auto;
    max-width: 970px;
    margin: 80px auto 0;
    padding: 0 0 40px;
    font-size: 13px;
    line-height: 1.5em;
}

.box_simulator_note h3 {
    font-size: 15px;
    line-height: 1.5em;
    margin: 25px 0 5px;
}

.box_simulator_note ul {
    list-style: disc outside;
}

.box_simulator_note ul li {
    margin: 0 0 0 20px;
}

.box_simulator_note ul.note {
    list-style: none;
}

.box_simulator_note ul.note li {
    margin: 0 0 0 1em;
    text-indent: -1em;
}

input.error {
    background-color: #fcc;
}

label.error {
    color: #ff0000;
    display: block;
    padding: 3px 0 0;
}

#wrap_txt_payment {
    display: none;
}

.submit_box #jsFigureBtn {
    display: none;
}

.figure_calculation_result {
    width: 100%;
    margin-top: 50px;
}

@media screen and (max-width: 767px) {
    .tab_loan_simulator {
        border-bottom: 1px #ddd solid;
        margin: 30px auto 0;
    }

    .tab_loan_simulator ul {
        width: auto;
        max-width: 1070px;
        text-align: center;
        font-size: 0;
        margin: 0 10px;
        border-right: 1px #ddd solid;
    }

    .tab_loan_simulator ul li {
        width: 50%;
        display: inline-block;
        font-size: 14px;
        font-weight: 600;
        line-height: 1.4em;
    }

    .tab_loan_simulator ul li > a,
    .tab_loan_simulator ul li > span {
        display: block;
        border: 1px #ddd;
        border-style: solid none none solid;
        text-align: center;
        background-color: #fff;
        padding: 10px 5px;
    }

    .tab_loan_simulator ul li > a {
        background-color: #f5f5f5;
    }

    .tab_loan_simulator ul li > span {
        color: #a4002c;
    }

    .loan_simulator_input {
        width: auto;
        max-width: 970px;
        margin: auto;
    }

    .loan_simulator_input th {
        box-sizing: border-box;
        width: auto;
        padding-left: 70px;
        position: relative;
        font-size: 15px;
        vertical-align: middle;
    }

    .loan_simulator_input th.input_free_item {
        padding-left: 10px;
    }

    .loan_simulator_input th span.lbl {
        position: absolute;
        height: 15px;
        margin: auto;
        left: 10px;
        top: 0;
        bottom: 0;
    }

    .loan_simulator_input th .txt_note {
        text-indent: 0;
        padding-left: 5px;
        color: #333;
    }

    .loan_simulator_input th .txt_note:before {
        content: "";
    }

    .ls_input_group {
        padding: 20px 0 0 0;
    }

    .loan_simulator_input td .txt_cmn1 {
        display: inline-block;
        padding: 5px 5px 0 0;
    }

    .loan_simulator_input td .txt_cmn2 {
        display: inline-block;
        padding: 10px 5px 0 0;
    }

    .loan_simulator_input td .txt_unit {
        display: inline-block;
        padding: 10px 0 0 10px;
    }

    .ls_value_price,
    .ls_value_bonus,
    .ls_rate_percent,
    .ls_repayment_term,
    .ls_value_year,
    .ls_value_month {
        box-sizing: border-box;
        width: 30% !important;
        max-width: 140px;
        margin: 0;
    }

    .ls_value_price,
    .ls_value_bonus,
    .ls_rate_percent,
    .ls_value_year,
    .ls_value_month {
        margin: 2px 0;
    }

    .btn_calculation button {
        margin: 0 5px;
    }

    #box_calculation_result {
        box-sizing: border-box;
        width: auto;
        max-width: 970px;
        margin: 70px auto 0;
        border: 2px #a4002c solid;
        background-color: #fdfcf2;
        padding: 16px 8px 16px;
        position: relative;
        /*
		display:none;
		*/
    }

    #box_calculation_result:before {
        position: absolute;
        content: "";
        bottom: 0;
        left: 50%;
        width: 0;
        height: 0;
        top: -44px;
        margin-left: -40px;
        z-index: 4;
        border-style: solid;
        border-width: 24px 40px 0 40px;
        border-color: #a4002c transparent transparent transparent;
    }

    #box_calculation_result h2 {
        text-align: center;
        font-size: 17px;
        line-height: 1.6em;
        margin: 0 0 10px;
    }

    #box_calculation_result table {
        border-top: 1px #cccccc solid;
        font-size: 14px;
        line-height: 1.4em;
    }

    #box_calculation_result th {
        clear: both;
        float: left;
        padding: 10px 0 10px 5px;
    }

    #box_calculation_result td {
        border-bottom: 1px #c7c7c7 solid;
        text-align: right;
        padding: 8px 5px 8px 10px;
        width: 40%;
    }

    #box_calculation_result td strong {
        font-size: 20px;
        line-height: 1em;
        color: #a4002c;
        display: inline-block;
        margin-right: 5px;
    }

    #box_calculation_result p.note {
        text-align: left;
        padding: 10px 0 0;
        font-size: 13px;
    }

    .box_simulator_note {
        width: auto;
        max-width: 970px;
        margin: 40px auto 0;
        padding: 0;
        font-size: 13px;
        line-height: 1.5em;
    }

    .box_simulator_note h3 {
        font-size: 15px;
        line-height: 1.5em;
        margin: 15px 0 5px;
    }

    .box_simulator_note ul {
        list-style: disc outside;
    }

    .box_simulator_note ul li {
        margin: 0 0 0 20px;
    }

    .box_simulator_note ul.note {
        list-style: none;
    }

    .box_simulator_note ul.note li {
        margin: 0 0 0 1em;
        text-indent: -1em;
    }
}

/* Products > Standard > Estimate (Common)
-------------------------------------------------- */

.header_estimate {
    color: #fff;
    background-color: #333;
    text-align: center;
    height: 70px;
    width: 100%;
}

.header_estimate.posi_fixed {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 400;
}

.header_estimate .inner {
    width: auto;
    max-width: 1170px;
    margin: auto;
    position: relative;
}

.header_estimate h1 {
    font-size: 30px;
    font-weight: 400;
    line-height: 1.4em;
    padding: 14px 0 0;
}

.header_estimate ul {
    position: absolute;
    width: 140px;
    height: 70px;
    left: 0;
    top: 0;
    background-color: #898a8d;
}

.header_estimate ul li {
    position: absolute;
    box-sizing: border-box;
    width: 70px;
    height: 70px;
    padding: 15px 5px 0;
    top: 0;
    text-align: center;
}

.header_estimate ul li img {
    width: auto;
    height: 30px;
}

.header_estimate ul li.btn_estimate_menu {
    left: 0;
    background-color: #898a8d;
}

.header_estimate ul li.btn_estimate_list {
    right: 0;
    background-color: #6b6d71;
}

.header_estimate ul li:hover {
    cursor: pointer;
    background-color: #000;
}

.header_estimate ul li > *,
.header_estimate ul li > * span {
    display: block;
    font-size: 10px;
    line-height: 1em;
    color: #fff;
}

.header_estimate ul li > * span:nth-child(1) {
    margin: 0 0 7px;
}

body {
    position: relative;
}

#note_for_estimate {
    color: #a4002c;
    text-align: center;
    margin-top: 5px;
}

#note_for_estimate a {
    color: #a4002c;
}

#wrap_menu_estimate {
    /*position: absolute;*/
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: #383d43;
    opacity: 0.95;
    margin: auto;
    padding: 183px 0 0;
    z-index: 2002;
    color: #ffffff;
    /*
	*/
    display: none;
}

#wrap_menu_estimate a {
    color: #ffffff;
}

#wrap_menu_estimate .fa:before {
    color: #fff;
}

#wrap_menu_estimate .btn_close {
    width: auto;
    max-width: 1170px;
    height: 80px;
    margin: auto;
    text-align: center;
}

#wrap_menu_estimate .btn_close li {
    width: 80px;
    height: 80px;
    box-sizing: border-box;
    padding: 17px 0 0;
    text-align: center;
    font-size: 11px;
    line-height: 1em;
}

#wrap_menu_estimate .btn_close li:hover {
    cursor: pointer;
}

#wrap_menu_estimate .btn_close .fa {
    display: block;
    font-size: 30px;
    line-height: 1em;
}

#wrap_menu_estimate .btn_close .fa:before {
    margin: 0 0 5px;
}

#wrap_menu_estimate ul.list_menu_estimate {
    width: auto;
    max-width: 600px;
    margin: auto;
    border-top: 1px #9c9ea1 solid;
}

ul.list_menu_estimate li {
    border-bottom: 1px #9c9ea1 solid;
}

ul.list_menu_estimate li a {
    display: block;
    font-size: 18px;
    line-height: 1em;
    padding: 15px 15px;
}

ul.list_menu_estimate li.nv_estimate a {
    font-size: 25px;
    line-height: 1em;
    padding: 25px 15px;
}

ul.list_menu_estimate li .fa {
    margin-right: 10px;
}

table.tbl_estimate01 {
    width: 100%;
    border-collapse: collapse;
}

table.tbl_estimate01 th,
table.tbl_estimate01 td {
    border: 1px #ddd solid;
    vertical-align: middle;
    padding: 12px 20px 12px 20px;
    line-height: 2em;
}

table.tbl_estimate01 th {
    background-color: #f5f5f2;
    font-weight: 600;
    width: 25%;
}

#page_estimate .l_header {
    position: relative;
}

#page_estimate #l_container_02 {
    padding-top: 0;
}

#page_estimate #l_footer {
    margin-top: 0;
}

@media screen and (max-width: 767px) {
    .header_estimate {
        color: #fff;
        background-color: transparent;
        text-align: center;
        height: 50px;
    }

    .header_estimate .inner {
        width: auto;
        max-width: 1170px;
        margin: auto;
        position: relative;
        padding: 50px 0 0;
    }

    .header_estimate h1 {
        color: #333;
        font-size: 20px;
        font-weight: 400;
        line-height: 1.4em;
        padding: 15px 0 15px;
        border-bottom: 1px #ddd solid;
        background-color: #fff;
    }

    .header_estimate ul {
        /*position:fixed;*/
        width: 100%;
        height: 50px;
        left: 0;
        top: 0;
        background-color: #333;
        z-index: 401;
    }

    .header_estimate ul li {
        position: absolute;
        box-sizing: border-box;
        width: 66px;
        height: 50px;
        padding: 8px 0 0;
        top: 0;
        text-align: center;
        float: left;
    }

    .header_estimate ul li.btn_estimate_menu {
        left: 0;
        background-color: #898a8d;
    }

    .header_estimate ul li.btn_estimate_list {
        right: inherit;
        left: 66px;
        background-color: #6b6d71;
    }

    .header_estimate ul li:hover {
        cursor: pointer;
        background-color: #000;
    }

    .header_estimate ul li > *,
    .header_estimate ul li > * span {
        display: block;
        font-size: 7px;
        line-height: 1em;
        color: #fff;
    }

    .header_estimate ul li > * span:nth-child(1) {
        margin: 0 0 5px;
    }

    .header_estimate ul li img {
        width: auto;
        height: 20px;
    }

    body {
        position: relative;
    }

    #wrap_menu_estimate {
        padding: 0;
        position: fixed;
        left: 0;
        top: 0;
        width: 100%;
    }

    #wrap_menu_estimate .btn_close {
        height: 60px;
    }

    #wrap_menu_estimate .btn_close li {
        width: 60px;
        height: 60px;
        padding: 10px 0 0;
    }

    #wrap_menu_estimate .btn_close .fa {
        font-size: 20px;
        line-height: 1em;
    }

    ul.list_menu_estimate li a {
        font-size: 14px;
        line-height: 1em;
        padding: 15px 15px;
    }

    ul.list_menu_estimate li.nv_estimate a {
        font-size: 18px;
        line-height: 1em;
        padding: 25px 15px;
    }

    ul.list_menu_estimate li .fa {
        margin-right: 10px;
    }

    .wrp_estimate {
        padding-top: 20px;
    }

    table.tbl_estimate01 {
        width: 100%;
        border-collapse: collapse;
    }

    table.tbl_estimate01 th,
    table.tbl_estimate01 td {
        border: 1px #ddd solid;
        vertical-align: middle;
        padding: 6px 10px 6px 10px;
        font-size: 13px;
        line-height: 1.6em;
    }

    table.tbl_estimate01 th {
        background-color: #f5f5f2;
        font-weight: 600;
        width: 25%;
    }

    #page_estimate #l_document {
        padding-top: 0;
    }

    #page_estimate .l_header {
        position: relative;
    }

    #page_estimate #l_container_02 {
        padding-top: 0;
    }

    #page_estimate #l_footer {
        margin-top: 0;
    }
}

/* Products > Standard > Estimate (Step1)
-------------------------------------------------- */

.wrp_estimate_wide {
    max-width: none;
}

.wrp_estimate .hdg_lv2 {
    margin: 70px 0 30px;
}

.sec_estimate_select {
    width: 100%;
    clear: both;
    padding: 1px 0 60px;
    position: relative;
}

.sec_estimate_select.has_bg {
    background-color: #f5f5f2;
}

.sec_estimate_select:after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 50%;
    width: 0;
    height: 0;
    margin-left: -70px;
    bottom: -40px;
    z-index: 4;
    border-style: solid;
    border-width: 40px 70px 0 70px;
    border-color: #fff transparent transparent transparent;
}

.sec_estimate_select.has_bg:after {
    border-color: #f5f5f2 transparent transparent transparent;
}

.wrp_estimate_step3 .sec_estimate_select:after {
    display: none !important;
}

.sec_estimate_select.last:after {
    display: none;
}

.sec_estimate_select .inner {
    width: auto;
    max-width: 1170px;
    margin: auto;
}

.sec_estimate_select ul.lst_select {
    text-align: center;
    font-size: 0px;
    /* padding: 0 165px; */
    opacity: 0.6;
}

.sec_estimate_select ul.lst_select.active {
    opacity: 1;
}

.sec_estimate_select ul.lst_select li {
    display: inline-block;
    box-sizing: border-box;
    width: 33.33333%;
    margin: 40px 0 0;
    padding: 0 40px;
    text-align: center;
    font-size: 15px;
}

.sec_estimate_select ul.item_select2 {
    box-sizing: border-box;
    max-width: 1170px;
    margin: auto;
    padding: 0 190px;
}

.sec_estimate_select ul.item_select2 li {
    width: 50%;
}

.sec_estimate_select ul.lst_select li dl {
    padding: 20px 0 0;
}

.sec_estimate_select ul.lst_select li dl * {
    text-align: center;
}

.sec_estimate_select ul.lst_select li dl dt {
    font-size: 17px;
    font-weight: bold;
    line-height: 1.4em;
    padding: 0 0 10px;
}

.sec_estimate_select ul.lst_select li > div {
    position: relative;
}

.sec_estimate_select ul.lst_select.active li > div:hover {
    cursor: pointer;
}

.sec_estimate_select ul.lst_select li > div:after {
    transition: all 0.2s ease;
    content: "";
    box-sizing: border-box;
    width: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    border: 5px #a4002c solid;
    opacity: 0;
}

.sec_estimate_select ul.lst_select.active li > div:hover:after,
.sec_estimate_select ul.lst_select.active li > div.active:after {
    opacity: 1;
}

@media screen and (max-width: 767px) {
    .wrp_estimate_wide {
        max-width: none;
        padding: 0;
    }

    .wrp_estimate .hdg_lv2 {
        margin: 40px 0 15px;
    }

    .sec_estimate_select {
        width: 100%;
        clear: both;
        padding: 1px 0 40px;
        position: relative;
    }

    .sec_estimate_select .hdg_lv2 {
        margin: 35px 0 0;
    }

    .sec_estimate_select.has_bg {
        background-color: #f5f5f2;
    }

    .sec_estimate_select:after {
        position: absolute;
        content: "";
        bottom: 0;
        left: 50%;
        width: 0;
        height: 0;
        margin-left: -35px;
        bottom: -20px;
        z-index: 4;
        border-style: solid;
        border-width: 20px 35px 0 35px;
        border-color: #fff transparent transparent transparent;
    }

    .sec_estimate_select.has_bg:after {
        border-color: #f5f5f2 transparent transparent transparent;
    }

    .sec_estimate_select .inner {
        width: auto;
        max-width: 1170px;
        margin: auto;
    }

    .sec_estimate_select ul.lst_select {
        text-align: left;
        font-size: 0px;
        padding: 0;
        text-align: center;
    }

    .sec_estimate_select ul.lst_select li {
        display: inline-block;
        box-sizing: border-box;
        width: 50%;
        margin: 20px 0 0;
        padding: 0 10px;
        text-align: center;
        font-size: 15px;
    }

    .sec_estimate_select ul.item_select2 {
        box-sizing: border-box;
        max-width: 1170px;
        margin: auto;
        padding: 0 190px;
    }

    .sec_estimate_select ul.item_select2 li {
        width: 50%;
    }

    .sec_estimate_select ul.lst_select li dl {
        padding: 20px 0 0;
    }

    .sec_estimate_select ul.lst_select li dl * {
        text-align: center;
        font-size: 11px;
    }

    .sec_estimate_select ul.lst_select li dl dt {
        font-size: 13px;
        font-weight: bold;
        line-height: 1.4em;
        padding: 0 0 5px;
    }

    .sec_estimate_select ul.lst_select li > div {
        position: relative;
    }

    .sec_estimate_select ul.lst_select li > div:hover {
        cursor: pointer;
    }

    .sec_estimate_select ul.lst_select li > div:hover:after,
    .sec_estimate_select ul.lst_select li > div.active:after {
        content: "";
        box-sizing: border-box;
        width: 100%;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        border: 5px #a4002c solid;
    }
}

/* Products > Standard > Estimate (Step2-1/2-2)
-------------------------------------------------- */

#wrap_estimate_vrtour {
    width: 100%;
    height: 740px;
}

#wrap_estimate_vrtour iframe {
    width: 100%;
    height: 100%;
}

.pct_estimate_main {
}

.pct_estimate_main > div {
}

.pct_estimate_main img {
    /* width:100%; */
    height: auto;
}

@media (max-width: 1400px) {
    .pct_estimate_main img {
        width: 100%;
    }
}

.sec_estimate_info {
    box-sizing: border-box;
    max-width: 970px;
    margin: auto;
    padding: 0;
}

.sec_estimate_info .hdg_lv3_4 {
    border: none;
}

.sec_estimate_info .txt_lead {
    text-align: left;
}

.tbl_product_area tr > * {
    text-align: center;
}

.tbl_product_area td {
    width: 25%;
}

.tbl_product_area td.has_bg {
    background-color: #f5f5f2;
}

.btn_estimate_info_open {
    position: relative;
    height: 25px;
    margin: -60px 0 0;
    padding: 0 0 35px;
    border-bottom: 1px #ddd solid;
}

.btn_estimate_info_open li {
    display: inline-block;
    position: absolute;
    right: 0;
    top: 0;
}

.btn_estimate_info_open li:hover {
    cursor: pointer;
}

.btn_estimate_info_open li.info_close {
    display: none;
}

#estimate_info_detail {
    display: none;
}

#estimate_info_detail th,
#estimate_info_detail td {
    border-top: none;
}

#wrap_estimate_price {
    position: fixed;
    left: 0;
    bottom: 0;
    display: none;
    /*
	*/
    box-sizing: border-box;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    color: #fff;
    padding: 15px;
    z-index: 399;
    transition: all 0.2s ease;
}

#wrap_estimate_price.posi_relative {
    position: relative;
    margin-top: 40px;
}

#wrap_estimate_price .inner {
    width: auto;
    max-width: 1170px;
    margin: auto;
    text-align: left;
}

#wrap_estimate_price dl {
    display: inline-block;
}

#wrap_estimate_price dl > * {
    display: inline-block;
}

#wrap_estimate_price dt {
    padding: 20px 10px 0 0;
}

#wrap_estimate_price dd strong {
    font-family: "Roboto", sans-serif;
    font-size: 35px;
    font-weight: 700;
}

#wrap_estimate_price .button {
    display: inline-block;
    float: right;
}

.wrp_estimate_step2-1 .txt_price {
    padding: 40px 0 0;
}

.wrp_estimate_step2-1 .txt_price > * {
    text-align: center;
}

.wrp_estimate_step2-1 .txt_price dt {
    font-family: "Roboto", sans-serif;
    font-size: 40px;
    font-weight: 700;
}

.wrp_estimate_step2-1 .txt_price dd {
    font-size: 17px;
}

.wrp_estimate_step2-1 .txt_price dd strong {
    font-family: "Roboto", sans-serif;
    font-size: 48px;
    font-weight: 700;
}

@media screen and (max-width: 767px) {
    #wrap_estimate_vrtour {
        width: 100%;
        height: 250px;
    }

    .sec_estimate_info .txt_lead {
        font-size: 14px;
        line-height: 1.67em;
    }

    .btn_estimate_info_open {
        position: relative;
        height: 25px;
        margin: -40px 0 0;
        padding: 0 0 15px;
        border-bottom: 1px #ddd solid;
        font-size: 12px;
    }

    #wrap_estimate_price {
        /*
		position:fixed;
		left:0;
		bottom:0;
		*/
        background-color: rgba(0, 0, 0, 0.5);
        color: #fff;
        padding: 5px 10px;
    }

    #wrap_estimate_price .inner {
        width: auto;
        max-width: 1170px;
        margin: auto;
        text-align: left;
    }

    #wrap_estimate_price dl {
        display: inline-block;
    }

    #wrap_estimate_price dl > * {
        display: block;
        font-size: 13px;
    }

    #wrap_estimate_price dt {
        padding: 5px 0 0 0;
        line-height: 1.2em;
    }

    #wrap_estimate_price dd strong {
        font-family: "Roboto", sans-serif;
        font-size: 20px;
        font-weight: 700;
    }

    #wrap_estimate_price .button {
        display: inline-block;
        float: right;
        padding: 5px 0 0;
    }

    #wrap_estimate_price .button .btn {
        min-width: 130px;
        font-size: 11.5px;
        padding: 13px 10px;
    }

    .wrp_estimate_step2-1 .txt_price {
        padding: 10px 0 0;
    }

    .wrp_estimate_step2-1 .txt_price > * {
        text-align: center;
    }

    .wrp_estimate_step2-1 .txt_price dt {
        font-family: "Roboto", sans-serif;
        font-size: 24px;
        font-weight: 700;
        line-height: 1em;
    }

    .wrp_estimate_step2-1 .txt_price dd {
        font-size: 13px;
    }

    .wrp_estimate_step2-1 .txt_price dd strong {
        font-family: "Roboto", sans-serif;
        font-size: 30px;
        font-weight: 700;
    }
}

/* Products > Standard > Estimate (Step3)
-------------------------------------------------- */

.pct_estimate_option {
    width: auto;
    max-width: 670px;
    margin: 60px auto 0;
}

.btn_open_close {
    position: relative;
    height: 25px;
    margin: -60px 0 0;
    padding: 0 0 40px;
    border-bottom: 1px #ddd solid;
    text-align: right;
}

.btn_open_close li {
    display: inline-block;
    position: absolute;
    right: 0;
    top: 0;
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
}

.btn_open_close li:hover {
    cursor: pointer;
}

.item_all_open .btn_open_close li.info_open {
    display: none;
}

.item_all_open .btn_open_close li.info_close {
    display: inline-block;
}

.btn_open_close li:hover {
    cursor: pointer;
}

.btn_open_close li.info_close {
    display: none;
}

.sec_estimate_select table td {
    padding: 20px 20px 20px 20px !important;
    position: relative;
}

.sec_estimate_select table div.button {
    position: absolute;
    right: 0;
    top: 0;
    width: 120px;
    height: auto;
    font-weight: 600;
    text-align: right;
    padding: 40px 20px 20px 20px !important;
    vertical-align: top;
}

.sec_estimate_select table div.button button.btn {
    min-width: inherit;
    width: 100%;
}

.sec_estimate_select table div.button button.btn.btn_close {
    display: none;
}

.sec_estimate_select th {
    vertical-align: top !important;
}

.sec_estimate_select .item_selected {
    position: relative;
    min-height: 80px;
    padding: 0 150px 0 100px;
}

.sec_estimate_select .photo {
    left: 0 !important;
    top: 0 !important;
}

.sec_estimate_select .box_contact__pic__zoom {
    position: absolute;
    left: 5px;
    bottom: 0;
}

.sec_estimate_select .box_contact__pic__zoom::before {
    color: #333;
}

#js-style-image {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.lst_item_select {
    /*
	display:none;
	*/
    border-top: 1px #cccccc dashed;
    margin: 0 150px 0 0;
    transition: all 0.2s ease;
    visibility: hidden;
    opacity: 0;
    height: 0px;
    overflow: hidden;
}

.equipment_active .lst_item_select {
    transition: all 0.4s ease;
    visibility: visible;
    opacity: 1;
    margin: 20px 150px 0 0;
    height: auto;
}

.lst_item_select li {
    padding: 20px 0;
    min-height: 200px;
}

.lst_item_select li .item_photo {
    width: 33.9%;
    border: 1px solid #eeeeee;
    height: 205px;
    display: block;
    position: relative;
    float: left;
}

.lst_item_select li .item_photo img {
    margin: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    vertical-align: middle;
    max-height: 100%;
    max-width: 100%;
}

.lst_item_select li .item_info {
    padding: 0 0 0 38.1%;
}

.lst_item_select li .item_info .item_text {
    margin: 0 0 10px;
}

.lst_item_select li .item_info .item_price {
}

.lst_item_select li .item_info .item_price > * {
    font-weight: bold;
    display: block;
}

.lst_item_select li.item_active .item_info .item_price > * {
    color: #a4002c;
}

.lst_item_select li .item_info .item_price .basic {
    font-size: 13px;
    font-weight: normal;
    color: #333333;
}

.lst_item_select li .item_info .item_price strong {
    font-family: "Roboto", sans-serif;
    font-size: 32px;
    font-weight: 700;
    line-height: 1em;
}

.lst_item_select li .item_info button {
    color: #ffffff;
    background-color: #e8a736;
    box-sizing: border-box;
    width: 50%;
    padding: 10px;
    margin: 15px 0 0;
}

.equipment_active .lst_item_select {
    display: block;
}

.sec_estimate_select table tr.equipment_active div.button button.btn.btn_open {
    display: none;
}

.sec_estimate_select table tr.equipment_active div.button button.btn.btn_close {
    display: block;
}

.lst_item_select li.item_active .item_info button {
    background-color: #a4002c;
}

.lst_item_select .item_info button.btn_selected {
    display: none;
}

.lst_item_select .item_info button.btn_change {
    display: block;
}

.lst_item_select li.item_active .item_info button.btn_selected {
    display: block;
}

.lst_item_select li.item_active .item_info button.btn_change {
    display: none;
}

.sec_estimate_option .item_selected {
    position: relative;
    min-height: 80px;
    padding: 0 350px 0 100px;
}

.sec_estimate_option .option_price {
    position: absolute;
    top: 35px;
    right: 180px;
}

.sec_estimate_option .option_selected .option_price {
    color: #a4002c;
}

.sec_estimate_option .option_price strong {
    font-family: "Roboto", sans-serif;
    font-size: 25px;
    font-weight: 700;
}

.sec_estimate_option .icon_selected {
    /*
	display:block;
	*/
    display: none;
    width: 90px;
    box-sizing: border-box;
    padding: 3px 15px;
    line-height: 1em;
    background-color: #a4002c;
    color: #fff;
    text-align: center;
    border-radius: 10px;
    margin-top: 10px;
}

.sec_estimate_option tr.option_selected .icon_selected {
    display: block;
}

.sec_estimate_option tr button.btn_add_option {
    display: block;
}

.sec_estimate_option tr button.btn_del_option {
    display: none;
    background-color: #2d3339;
}

.sec_estimate_option tr.option_selected button.btn_add_option {
    display: none;
}

.sec_estimate_option tr.option_selected button.btn_del_option {
    display: block;
}

.sec_estimate_option table tr.option_active div.button button.btn.btn_open {
    display: none;
}

.sec_estimate_option table tr.option_active div.button button.btn.btn_close {
    display: block;
}

.sec_estimate_option tr.option_active .lst_item_select {
    transition: all 0.4s ease;
    visibility: visible;
    opacity: 1;
    margin: 20px 150px 0 0;
    height: auto;
}

.wrp_estimate.wrp_estimate_step3 .submit_box {
    margin: 0 0 80px;
}

.sub-box {
    margin-left: 29.9%;
}

.list_null {
    padding-left: 20px;
}

#estimate_pct_modal {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.8);
    z-index: 2000;
    text-align: center;
    display: none;
}

#estimate_pct_modal:hover {
    cursor: pointer;
}

#estimate_pct_modal .btn_modal_close {
    position: absolute;
    right: 10px;
    top: 20px;
    width: 22px;
    height: 22px;
}

#estimate_pct_modal .btn_modal_close span {
    position: absolute;
    width: 20px;
    height: 4px;
    left: 0;
    top: 0;
    background-color: #ffffff;
    border-radius: 2px;
}

#estimate_pct_modal .pct_container {
    display: table;
    height: 100%;
    width: 600px;
    margin: auto;
    padding: 20px;
}

#estimate_pct_modal .pct_container .inner {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

#estimate_pct_modal .pct_container .inner .fluid_image {
    max-width: 600px;
}

.item_selected .photo:hover,
.lst_item_select .item_photo:hover {
    cursor: pointer;
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
    .equipment_active .lst_item_select {
        transition: all 0.4s ease;
        visibility: visible;
        opacity: 1;
        margin: 20px 0 0 0;
        height: auto;
    }

    .sec_estimate_select table div.button {
        position: absolute;
        right: 0;
        top: 0;
        width: 120px;
        height: auto;
        font-weight: 600;
        text-align: right;
        padding: 20px 20px 20px 20px !important;
        vertical-align: top;
    }

    .sec_estimate_option .option_price {
        position: absolute;
        top: 60px;
        right: 20px;
    }

    .sec_estimate_option .item_selected {
        position: relative;
        min-height: 80px;
        padding: 0 150px 0 100px;
    }

    .sec_estimate_option tr.option_active .lst_item_select {
        transition: all 0.4s ease;
        visibility: visible;
        opacity: 1;
        margin: 20px 0 0 0;
        height: auto;
    }
}

@media screen and (max-width: 767px) {
    .list_null {
        padding-left: 10px;
    }

    .sub-box {
        margin-left: 0px;
    }

    .txt_sub {
        font-size: 12px;
        line-height: 1.6em;
    }

    .pct_estimate_option {
        width: auto;
        max-width: 670px;
        margin: 0 auto 0;
        padding: 0 10px;
    }

    .btn_open_close {
        position: relative;
        height: 25px;
        margin: -10px 0 0;
        padding: 0;
        border-bottom: 1px #ddd solid;
        text-align: right;
    }

    .btn_open_close li {
        display: inline-block;
        position: absolute;
        right: 0;
        top: 0;
        margin: 0 !important;
        padding: 0 !important;
        width: auto !important;
        font-size: 12px;
    }

    .btn_open_close li:hover {
        cursor: pointer;
    }

    .item_all_open .btn_open_close li.info_open {
        display: none;
    }

    .item_all_open .btn_open_close li.info_close {
        display: inline-block;
    }

    .btn_open_close li:hover {
        cursor: pointer;
    }

    .btn_open_close li.info_close {
        display: none;
    }

    .sec_estimate_select table td {
        padding: 10px 10px 10px 10px !important;
        position: relative;
    }

    .sec_estimate_select table div.button {
        position: absolute;
        right: 0;
        top: 0;
        width: 64px;
        height: auto;
        font-weight: 600;
        text-align: right;
        padding: 15px 0 0 !important;
        vertical-align: top;
    }

    .sec_estimate_select table div.button button.btn {
        min-width: inherit;
        width: 100%;
        font-size: 10px;
        padding: 7px 5px;
    }

    .sec_estimate_select table div.button button.btn.btn_close {
        display: none;
    }

    .sec_estimate_select th {
        vertical-align: top !important;
    }

    .sec_estimate_select .item_selected {
        position: relative;
        min-height: 40px;
        padding: 0 70px 0 50px;
    }

    .sec_estimate_select .lst_item_select {
    }

    .sec_estimate_select .photo {
        left: 0 !important;
        top: 0 !important;
    }

    .sec_estimate_select .photo .box_contact__pic__zoom {
        position: absolute;
        left: 0;
        bottom: -1px;
    }

    .lst_item_select {
        /*
		display:none;
		*/
        border-top: 1px #cccccc dashed;
        margin: 0 0 0 0;
        transition: all 0.2s ease;
        visibility: hidden;
        opacity: 0;
        height: 0px;
        overflow: hidden;
        /*
		border-top:1px #CCCCCC dashed;
		margin:20px 0 0 0;
		*/
    }

    .lst_item_select li {
        padding: 10px 0;
        min-height: inherit;
    }

    .equipment_active .lst_item_select {
        transition: all 0.4s ease;
        visibility: visible;
        opacity: 1;
        margin: 10px 0 0 0;
        height: auto;
    }

    .lst_item_select li .item_photo {
        width: 40px;
        height: 40px;
        float: left;
    }

    .lst_item_select li .item_info {
        padding: 0 0 0 50px;
    }

    .lst_item_select li .item_info .item_text {
        margin: 0 0 10px;
        line-height: 1.5em;
    }

    .lst_item_select li .item_info .item_price {
    }

    .lst_item_select li .item_info .item_price > * {
        font-weight: bold;
        display: block;
    }

    .lst_item_select li.item_active .item_info .item_price > * {
        color: #a4002c;
    }

    .lst_item_select li .item_info .item_price .basic {
        font-size: 13px;
        font-weight: normal;
        color: #333333;
    }

    .lst_item_select li .item_info .item_price strong {
        font-family: "Roboto", sans-serif;
        font-size: 18px;
        font-weight: 700;
        line-height: 1em;
    }

    .lst_item_select li .item_info button {
        color: #ffffff;
        background-color: #e8a736;
        box-sizing: border-box;
        width: 50%;
        padding: 5px;
        margin: 7px 0 0;
    }

    .equipment_active .lst_item_select {
        display: block;
        margin: 10px 0 0 0;
    }

    .sec_estimate_select
        table
        tr.equipment_active
        div.button
        button.btn.btn_open {
        display: none;
    }

    .sec_estimate_select
        table
        tr.equipment_active
        div.button
        button.btn.btn_close {
        display: block;
    }

    .lst_item_select li.item_active .item_info button {
        background-color: #a4002c;
    }

    .lst_item_select .item_info button.btn_selected {
        display: none;
    }

    .lst_item_select .item_info button.btn_change {
        display: block;
    }

    .lst_item_select li.item_active .item_info button.btn_selected {
        display: block;
    }

    .lst_item_select li.item_active .item_info button.btn_change {
        display: none;
    }

    .sec_estimate_option .item_selected {
        position: relative;
        min-height: 40px;
        min-height: 4em;
        padding: 0 70px 0 50px;
    }

    .sec_estimate_option .option_price {
        position: absolute;
        /* top: 66%; */
        right: 0;
        margin-top: 10px;
    }

    .sec_estimate_option .option_selected .option_price {
        color: #a4002c;
    }

    .sec_estimate_option .option_price strong {
        font-family: "Roboto", sans-serif;
        font-size: 13px;
        font-weight: 700;
    }

    .sec_estimate_option .icon_selected {
        /*
		display:block;
		*/
        display: none;
        width: 50px;
        box-sizing: border-box;
        padding: 3px 3px 4px;
        line-height: 1em;
        background-color: #a4002c;
        font-size: 8px;
        font-weight: normal;
        line-height: 1em;
        color: #fff;
        text-align: center;
        border-radius: 10px;
        margin-top: 5px;
    }

    .sec_estimate_option tr.option_selected .icon_selected {
        display: block;
    }

    .sec_estimate_option tr button.btn_add_option {
        display: block;
    }

    .sec_estimate_option tr button.btn_del_option {
        display: none;
        background-color: #2d3339;
    }

    .sec_estimate_option tr.option_selected button.btn_add_option {
        display: none;
    }

    .sec_estimate_option tr.option_selected button.btn_del_option {
        display: block;
    }

    .sec_estimate_option table tr.option_active div.button button.btn.btn_open {
        display: none;
    }

    .sec_estimate_option
        table
        tr.option_active
        div.button
        button.btn.btn_close {
        display: block;
    }

    .sec_estimate_option tr.option_active .lst_item_select {
        display: block;
        margin: 20px 0 0;
    }

    .wrp_estimate.wrp_estimate_step3 .submit_box {
        margin: 0 0 50px;
    }

    .wrp_estimate.wrp_estimate_step2-2 .submit_box .btn_medium,
    .wrp_estimate.wrp_estimate_step3 .submit_box .btn_medium {
        width: 200px;
        min-width: 200px;
    }

    #estimate_pct_modal {
        position: fixed;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        background-color: rgba(0, 0, 0, 0.8);
        z-index: 2000;
        text-align: center;
    }

    #estimate_pct_modal .btn_modal_close {
        position: absolute;
        right: 10px;
        top: 20px;
        width: 22px;
        height: 22px;
    }

    #estimate_pct_modal .btn_modal_close span {
        position: absolute;
        width: 20px;
        height: 4px;
        left: 0;
        top: 0;
        background-color: #ffffff;
        border-radius: 2px;
    }

    #estimate_pct_modal .pct_container {
        /*
        max-width: 400px;
        margin: auto;
        padding: 50px 20px 0;
        */
        display: table;
        height: 100%;
        width: auto;
        margin: auto;
        padding: 50px 20px 0;
    }

    #estimate_pct_modal .pct_container .inner {
        display: table-cell;
        text-align: center;
        vertical-align: middle;
    }

    #estimate_pct_modal .pct_container .inner .fluid_image {
        max-width: inherit;
        width: 100%;
    }
}

/* Products > Standard > Estimate (Step4)
-------------------------------------------------- */

.roboto {
    font-family: "Roboto", sans-serif;
}

.estimate_total_price {
    border-bottom: 1px #cccccc solid;
    width: 100%;
    background-color: #fff;
}

.estimate_total_price.posi_fixed {
    position: fixed;
    left: 0;
    z-index: 2001;
}

.estimate_total_price .inner {
    max-width: 520px;
    height: 110px;
    margin: 0 auto;
    padding: 15px;
    position: relative;
}

.estimate_total_price .photo {
    position: absolute;
    width: 110px;
    height: 110px;
    left: 15px;
    top: 15px;
}

.estimate_total_price dl {
    padding: 10px 0 0 140px;
}

.estimate_total_price dl dt {
    font-size: 17px;
    line-height: 1.4em;
    padding: 0 0 17px;
}

.estimate_total_price dl dd {
    font-size: 25px;
    font-weight: bold;
    line-height: 1.4em;
    color: #a4002c;
}

.estimate_total_price dl dd strong {
    font-size: 48px;
    font-weight: 700;
}

.sec_estimate_detail {
    box-sizing: border-box;
    max-width: 970px;
    margin: auto;
    padding: 0;
}

.sec_estimate_detail table tr {
    border-bottom: 1px #ddd solid;
}

.sec_estimate_detail table th,
.sec_estimate_detail table td {
    vertical-align: middle;
    padding: 20px 20px 20px 20px;
}

.sec_estimate_detail table th {
    background-color: #f5f5f2;
    font-weight: 600;
    width: 140px;
}

.sec_estimate_detail table td {
    position: relative;
    height: 80px;
    padding-left: 125px;
}

.sec_estimate_detail table tr.subtotal {
    font-size: 17px;
    background-color: #f5f5f2;
}

.sec_estimate_detail table tr.total,
.sec_estimate_detail table tr.total * {
    font-size: 17px;
    color: #fff;
    background-color: #2d3339;
}

.sec_estimate_detail table td.price {
    width: 160px;
    font-weight: 600;
    text-align: right;
    padding: 12px 20px 12px 20px;
}

.sec_estimate_detail table td.price strong {
    font-family: "Roboto", sans-serif;
    font-size: 25px;
}

.sec_estimate_detail table td .photo {
    position: absolute;
    left: 20px;
    top: 20px;
    width: 80px;
    height: 80px;
}

.sec_estimate_detail table .note {
    font-size: 15px;
    font-weight: normal;
}

.wrp_estimate .submit_box {
    margin: 60px 0 80px;
}

.wrp_estimate .btn_medium {
    width: 320px;
    padding: 30px 10px;
    margin: 0 15px;
    font-size: 20px;
}

.sec_estimate_other {
    box-sizing: border-box;
    max-width: 970px;
    margin: auto;
    padding: 0;
}

.other_cost_outline {
    background-color: #f5f5f2;
    padding: 40px 20px;
}

.other_cost_outline > * {
    text-align: center;
}

.other_cost_outline > dt {
    font-size: 25px;
    font-weight: 500;
    margin: 0 0 10px;
}

.other_cost_outline > dd {
    line-height: 2em;
}

.wrap_other_cost {
    padding: 30px 0 0;
}

.wrap_other_cost > h3 {
    font-size: 25px;
    font-weight: 500;
    margin: 0 0 20px;
}

.wrap_other_cost table {
    border-top: 1px #ddd solid;
    border-bottom: 1px #ddd solid;
}

.wrap_other_cost table caption {
    font-weight: 500;
    text-align: left;
    padding: 15px 0;
}

.wrap_other_cost table th,
.wrap_other_cost table td {
    padding: 20px;
    border-bottom: 1px #ddd dashed;
}

.wrap_other_cost table th {
    background-color: #f5f5f2;
    width: 140px;
    font-weight: 400;
}

.wrap_other_cost table td:nth-child(3) {
    text-align: right;
    width: 140px;
}

.wrap_other_cost table td:nth-child(3) strong {
    font-family: "Roboto", sans-serif;
    font-size: 20px;
    font-weight: normal;
    line-height: 1em;
}

.wrap_other_cost table.tbl_subtotal {
    border-top: none;
}

.wrap_other_cost table.tbl_subtotal tr > * {
    border-top: none;
    background-color: #f5f5f2;
}

.wrap_other_cost table.tbl_subtotal tr > th {
    width: 240px;
    font-size: 17px;
    font-weight: bold;
}

.wrap_other_cost table.tbl_subtotal tr > th .note {
    font-size: 15px;
}

.wrap_other_cost table.tbl_subtotal tr > td {
    text-align: right;
}

.wrap_other_cost table.tbl_subtotal tr > td strong {
    font-family: "Roboto", sans-serif;
    font-size: 20px;
    line-height: 1em;
}

.wrap_other_cost table.tbl_total {
    border-top: none;
}

.wrap_other_cost table.tbl_total tr > * {
    color: #fff;
    background-color: #2d3339;
}

.wrap_other_cost table.tbl_total tr > th {
    width: 50%;
    font-size: 17px;
    font-weight: bold;
}

.wrap_other_cost table.tbl_total tr > th .note {
    font-size: 15px;
}

.wrap_other_cost table.tbl_total tr > td {
    text-align: right;
}

.wrap_other_cost table.tbl_total tr > td strong {
    font-family: "Roboto", sans-serif;
    font-size: 20px;
    line-height: 1em;
}

.btn_estimate_other_open {
    position: relative;
    height: 25px;
    margin: -50px 0 0;
    padding: 0 0 25px;
    border-bottom: 1px #ddd solid;
}

.btn_estimate_other_open li {
    display: inline-block;
    position: absolute;
    right: 0;
    top: 0;
}

.btn_estimate_other_open li:hover {
    cursor: pointer;
}

.btn_estimate_other_open li.info_close {
    display: none;
}

.wrap_other_cost_detail {
    display: none;
}

.detail_active .wrap_other_cost_detail {
    /*display:block;*/
}

.detail_active .btn_estimate_other_open .info_open {
    display: none;
}

.detail_active .btn_estimate_other_open .info_close {
    display: block;
}

@media screen and (max-width: 767px) {
    .estimate_total_price {
        border-bottom: 1px #cccccc solid;
    }

    .estimate_total_price .inner {
        max-width: 280px;
        min-height: 70px;
        height: auto;
        margin: 0 auto;
        padding: 15px;
        position: relative;
    }

    .estimate_total_price .photo {
        position: absolute;
        width: 70px;
        height: 70px;
        left: 15px;
        top: 15px;
    }

    .estimate_total_price dl {
        padding: 10px 0 0 85px;
    }

    .estimate_total_price dl dt {
        font-size: 10px;
        line-height: 1.4em;
        padding: 0 0 10px;
    }

    .estimate_total_price dl dd {
        font-size: 17px;
        font-weight: bold;
        line-height: 1.4em;
        color: #a4002c;
    }

    .estimate_total_price dl dd strong {
        font-size: 32px;
        font-weight: 700;
    }

    .sec_estimate_detail {
        box-sizing: border-box;
        max-width: 970px;
        margin: auto;
        padding: 0;
    }

    .sec_estimate_detail .hdg_lv2,
    .sec_estimate_other .hdg_lv2 {
        margin: 30px 0 10px;
    }

    .sec_estimate_detail .hdg_lv3_4 {
        font-size: 17px;
        margin: 30px 0 0;
    }

    .sec_estimate_detail table tr {
        border-bottom: 1px #ddd solid;
    }

    .sec_estimate_detail table th,
    .sec_estimate_detail table td {
        vertical-align: middle;
        padding: 10px 10px 10px 10px;
        font-size: 12px;
    }

    .sec_estimate_detail table th {
        background-color: #f5f5f2;
        font-weight: 600;
        width: 50px;
        padding: 10px 5px 10px 5px;
    }

    .sec_estimate_detail table th:before {
        display: block;
        float: left;
        height: 40px;
        /* この値は適宜書き換える */
        content: "";
    }

    .sec_estimate_detail table td {
        position: relative;
        min-height: 57px;
        height: auto;
        padding-left: 60px;
    }

    .sec_estimate_detail table tr.subtotal {
        font-size: 17px;
        background-color: #f5f5f2;
    }

    .sec_estimate_detail table tr.total,
    .sec_estimate_detail table tr.total * {
        font-size: 15px;
        color: #fff;
        background-color: #2d3339;
    }

    .sec_estimate_detail table td.price {
        width: 120px;
        font-weight: 600;
        width: 50px;
        padding: 10px 5px 10px 5px;
    }

    .sec_estimate_detail table td.price strong {
        font-family: "Roboto", sans-serif;
        font-size: 15px;
    }

    .sec_estimate_detail table tr.total td.price strong {
        font-size: 18px;
    }

    .sec_estimate_detail table td .photo {
        position: absolute;
        left: 10px;
        top: 10px;
        width: 40px;
        height: 40px;
    }

    .sec_estimate_detail table .note {
        font-size: 10px;
        font-weight: normal;
    }

    .wrp_estimate .submit_box {
        margin: 30px 0 40px;
        font-size: 0;
    }

    .wrp_estimate .btn_medium {
        width: 140px;
        min-width: 140px;
        padding: 20px 10px;
        margin: 0 5px;
        font-size: 12px;
        line-height: 1.4em;
        display: inline-block;
    }

    .sec_estimate_other {
        box-sizing: border-box;
        max-width: 970px;
        margin: auto;
        padding: 0;
    }

    .other_cost_outline {
        background-color: #f5f5f2;
        padding: 20px 15px;
    }

    .other_cost_outline > * {
        text-align: center;
    }

    .other_cost_outline > dt {
        font-size: 15px;
        font-weight: 500;
        margin: 0 0 10px;
    }

    .other_cost_outline > dd {
        line-height: 1.6em;
    }

    .wrap_other_cost {
        padding: 30px 0 0;
    }

    .wrap_other_cost > h3 {
        font-size: 13px;
        font-weight: 500;
        margin: 0 0 20px;
    }

    .wrap_other_cost table {
        border-top: 1px #ddd solid;
        border-bottom: 1px #ddd solid;
    }

    .wrap_other_cost table caption {
        font-weight: 500;
        text-align: left;
        padding: 8px 0;
        font-size: 12px;
    }

    .wrap_other_cost table th,
    .wrap_other_cost table td {
        padding: 10px;
        border-bottom: 1px #ddd dashed;
        font-size: 12px;
    }

    .wrap_other_cost table th {
        background-color: #f5f5f2;
        width: 50px;
        font-weight: 400;
    }

    .wrap_other_cost table td:nth-child(3) {
        text-align: right;
        width: 70px;
        vertical-align: middle;
        padding: 10px 5px 10px 0px;
    }

    .wrap_other_cost table td:nth-child(3) strong {
        font-family: "Roboto", sans-serif;
        font-size: 12.5px;
        font-weight: normal;
        line-height: 1em;
    }

    .wrap_other_cost table.tbl_subtotal {
        border-top: none;
    }

    .wrap_other_cost table.tbl_subtotal tr > * {
        border-top: none;
        background-color: #f5f5f2;
    }

    .wrap_other_cost table.tbl_subtotal tr > th {
        width: 240px;
        font-size: 10px;
        font-weight: bold;
    }

    .wrap_other_cost table.tbl_subtotal tr > th .note {
        font-size: 10px;
    }

    .wrap_other_cost table.tbl_subtotal tr > td {
        text-align: right;
    }

    .wrap_other_cost table.tbl_subtotal tr > td strong {
        font-family: "Roboto", sans-serif;
        font-size: 12.5px;
        line-height: 1em;
    }

    .wrap_other_cost table.tbl_total {
        border-top: none;
    }

    .wrap_other_cost table.tbl_total tr > * {
        color: #fff;
        background-color: #2d3339;
    }

    .wrap_other_cost table.tbl_total tr > th {
        width: 50%;
        font-size: 10px;
        font-weight: bold;
    }

    .wrap_other_cost table.tbl_total tr > th .note {
        font-size: 10px;
    }

    .wrap_other_cost table.tbl_total tr > td {
        text-align: right;
        vertical-align: middle;
    }

    .wrap_other_cost table.tbl_total tr > td strong {
        font-family: "Roboto", sans-serif;
        font-size: 18px;
        line-height: 1em;
    }

    .wrap_other_cost .txt_note {
        font-size: 9px;
    }

    .btn_estimate_other_open {
        position: relative;
        height: 15px;
        margin: -35px 0 0;
        padding: 0 0 5px;
        border-bottom: 1px #ddd solid;
        font-size: 10px;
    }

    .btn_estimate_other_open li {
        display: inline-block;
        position: absolute;
        right: 0;
        top: 0;
    }

    .btn_estimate_other_open li:hover {
        cursor: pointer;
    }

    .btn_estimate_other_open li.info_close {
        display: none;
    }

    .wrap_other_cost_detail {
        display: none;
    }

    .detail_active .wrap_other_cost_detail {
        display: block;
    }

    .detail_active .btn_estimate_other_open .info_open {
        display: none;
    }

    .detail_active .btn_estimate_other_open .info_close {
        display: block;
    }

    /*
	*/
}

/* Products > Standard > Estimate (Step5)
-------------------------------------------------- */

.sec_estimate_list {
    box-sizing: border-box;
    max-width: 970px;
    margin: auto;
    padding: 0;
}

.sec_estimate_list .hdg_lv3_4 {
    border: none;
}

.sec_estimate_list ul {
    padding-bottom: 50px;
}

.sec_estimate_list ul li {
    position: relative;
}

.sec_estimate_list ul .photo {
    max-width: 25.8% !important;
    max-height: auto !important;
    position: absolute;
}

.sec_estimate_list ul .contents {
    margin: 0 0 0 29.9%;
    border-top: 1px #ddd solid;
}

.sec_estimate_list .contents .txt_price {
    font-weight: bold;
    border-bottom: 1px #ddd dashed;
    padding: 10px 0 5px;
}

.sec_estimate_list .contents .txt_price strong {
    font-family: "Roboto", sans-serif;
    font-size: 40px;
    font-weight: 700;
}

.sec_estimate_list .contents .txt_detail {
    padding: 20px 0 30px;
}

.sec_estimate_list .submit_box {
    margin: 0 0 0 29.9%;
    text-align: left;
}

.sec_estimate_list .submit_box button {
    width: 240px;
    min-width: 240px;
    font-size: 16px;
    margin-right: 18px;
}

.sec_estimate_list .submit_box button.btn_primary {
    margin-right: 7px;
}

.sec_estimate_list .submit_box a {
    font-size: 13px;
    line-height: 2.5em;
    display: inline-block;
}

.sec_estimate_list .submit_box a span {
    color: #a4002c;
}

@media screen and (max-width: 767px) {
    .sec_estimate_list {
        box-sizing: border-box;
        max-width: 970px;
        margin: auto;
        padding: 0;
    }

    .sec_estimate_list .hdg_lv3_4 {
        border: none;
        font-size: 17px;
        text-align: center;
        margin: 10px 0 0;
        padding: 0 0 5px;
    }

    .sec_estimate_list ul {
        padding-bottom: 50px;
    }

    .sec_estimate_list ul li {
        position: relative;
        padding: 0 0 10px;
    }

    .sec_estimate_list ul .leftside {
        width: 106px;
        float: left;
    }

    .sec_estimate_list ul .photo {
        max-width: 106px !important;
        max-height: 106px !important;
        position: relative;
        margin: 0 0 15px;
    }

    .sec_estimate_list ul .contents {
        margin: 0 0 0 116px;
        border: none;
    }

    .sec_estimate_list .contents .txt_price {
        font-size: 12px;
        font-weight: bold;
        border-bottom: 1px #ddd dashed;
        padding: 7px 0 3px;
        text-align: center;
    }

    .sec_estimate_list .contents .txt_price strong {
        font-family: "Roboto", sans-serif;
        font-size: 20px;
        font-weight: 700;
    }

    .sec_estimate_list .contents .txt_detail {
        padding: 10px 0 15px;
        font-size: 12px;
        line-height: 1.6em;
    }

    .sec_estimate_list .submit_box {
        clear: both;
        margin: 0;
        text-align: center;
        font-size: 0;
        margin: 0 -5px;
    }

    .sec_estimate_list .submit_box .type_button {
        display: inline-block;
        box-sizing: border-box;
        width: 50%;
        padding: 0 5px;
    }

    .sec_estimate_list .submit_box button {
        box-sizing: border-box;
        width: 100%;
        min-width: inherit;
        font-size: 11px;
        padding: 10px 10px;
    }

    .sec_estimate_list .submit_box button.btn_primary {
        margin: 0;
    }

    .sec_estimate_list .submit_box .type_link {
        display: block;
        padding: 5px 0 0;
    }

    .sec_estimate_list .submit_box a {
        font-size: 12px;
        line-height: 2.5em;
        display: inline-block;
    }

    .sec_estimate_list .submit_box a span {
        color: #a4002c;
    }
}

/* Products > Standard > Estimate (Step5)
-------------------------------------------------- */

.wrap_estimate_form {
    margin-bottom: 60px;
}

.wrap_estimate_form .hdg_lv3_3 {
    border: none;
}

.wrap_estimate_form .txt_price {
    border: 1px #ddd;
    border-style: solid none;
    text-align: center;
    padding: 15px 0 18px;
}

.wrap_estimate_form .txt_price > * {
    display: inline-block;
}

.wrap_estimate_form .txt_price > dt {
    font-family: "Roboto", sans-serif;
    font-size: 25px;
    font-weight: bold;
    padding: 17px 15px 0 0;
}

.wrap_estimate_form .txt_price > dd {
    display: inline-block;
    padding: 0 0 0 15px;
}

.wrap_estimate_form .txt_price > dd strong {
    font-family: "Roboto", sans-serif;
    font-size: 40px;
    font-weight: bold;
}

table.tbl_estimate_reserve {
}

table.tbl_estimate_reserve th,
table.tbl_estimate_reserve td {
    border-style: solid none;
}

@media screen and (max-width: 767px) {
    .wrap_estimate_form {
        margin-bottom: 30px;
    }

    .wrap_estimate_form .hdg_lv3_3 {
        border: none;
        font-size: 17px;
        padding: 25px 0 0;
    }

    .wrap_estimate_form .txt_price {
        border: 1px #ddd;
        border-style: solid none;
        text-align: center;
        padding: 10px 0 12px;
    }

    .wrap_estimate_form .txt_price > * {
        display: block;
        text-align: center;
        font-size: 12px;
    }

    .wrap_estimate_form .txt_price > dt {
        font-family: "Roboto", sans-serif;
        font-size: 17px;
        font-weight: bold;
        padding: 0;
    }

    .wrap_estimate_form .txt_price > dd {
        display: inline-block;
        padding: 0;
    }

    .wrap_estimate_form .txt_price > dd strong {
        font-family: "Roboto", sans-serif;
        font-size: 20px;
        font-weight: bold;
    }

    table.tbl_estimate_reserve {
    }

    table.tbl_estimate_reserve th,
    table.tbl_estimate_reserve td {
        border-style: solid none;
    }
}

/* Service > CLUB WOOD FRIENDS
-------------------------------------------------- */

.wrp_heading_cwf .hdg_lv1_2 span i {
    display: inline-block;
    line-height: 1.2em;
    margin-right: 8px;
}

.wrp_heading_cwf .hdg_lv1_2 span img {
    width: auto;
    height: 16px;
    vertical-align: middle;
    margin-bottom: 2px;
}

.sec-cwf-contents {
    margin: 80px 0 0;
    overflow: hidden;
}

.sec-cwf-contents h2 {
    color: #a4002c;
    font-size: 35px;
    font-weight: 300;
    line-height: 1.33em;
    text-align: center;
}

.sec-cwf-contents h2 > span,
.sec-cwf-contents h2 > storng {
    display: block;
}

.sec-cwf-contents h2 > storng > span.number-large {
    font-size: 45px;
}

.sec-cwf-contents ul {
    margin: 40px -37px 0;
}

.sec-cwf-contents ul li {
    width: 33.33%;
    float: left;
}

.sec-cwf-contents ul li > div {
    padding: 0 37px 0;
}

.sec-cwf-contents ul li + li > div {
    /*border-left: 1px #a4002c dashed;*/
    background: url(/resource/img/service/club-woodfriends/bg_line_dashed.gif)
        no-repeat left 35px;
}

.sec-cwf-contents ul li h3 {
    text-align: center;
    color: #a4002c;
    font-size: 20px;
    line-height: 1.67em;
}

.sec-cwf-contents ul li h3 .number {
    display: inline-block;
    box-sizing: border-box;
    width: 70px;
    height: 70px;
    padding: 7px 0 0;
    border-radius: 35px;
    color: #fff;
    background-color: #a4002c;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

.sec-cwf-contents ul li h3 .text {
    display: block;
    padding: 25px 0;
    border-top: 3px #a4002c solid;
    background-color: #fff;
    margin-top: -35px;
    position: relative;
    z-index: 2;
}

.sec-cwf-contents ul li p {
    margin: 10px 0 0;
}

.sec-cwf-contents ul li p.txt-feature {
    font-size: 17px;
    font-weight: 500;
    line-height: 1.67em;
    margin: 0;
}

.sec-cwf-contents ul li figure {
    margin: 40px 0 0;
}

.sec-cwf-install {
    background-color: #f5f5f2;
    margin: 100px 0 0;
    padding: 60px 70px 70px;
}

.sec-cwf-install .txt-lead {
    font-size: 17px;
    font-weight: 500;
    line-height: 1.67em;
    padding: 0 270px 0 0;
}

.sec-cwf-install .txt-note {
    font-size: 13px;
    line-height: 1.67em;
    text-indent: -1em;
    padding: 0 270px 0 1em;
    margin: 10px 0 0;
}

.sec-cwf-install .txt-note + .txt-note {
    margin: 0;
}

.cwf-intall-flow-outer {
    position: relative;
}

.cwf-intall-flow-outer .illust {
    position: absolute;
    right: 20px;
    top: -126px;
}

.cwf-intall-flow li {
    background-color: #fff;
    margin: 40px 0 0;
    display: table;
    width: 100%;
    position: relative;
}

.cwf-intall-flow li + li:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -25px;
    margin: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 10px 0 10px;
    border-color: #a4002c transparent transparent transparent;
}

.cwf-intall-flow li span,
.cwf-intall-flow li dl {
    display: table-cell;
    border: 16px #fff solid;
    vertical-align: middle;
}

.cwf-intall-flow li span {
    text-align: center;
    color: #a4002c;
    font-family: "Roboto", sans-serif;
    font-size: 24px;
    font-weight: 500;
    width: 120px;
}

.cwf-intall-flow li dl {
    padding: 10px 10px 10px 20px;
    position: relative;
}

.cwf-intall-flow li:nth-child(1) dl {
    padding: 10px 220px 10px 20px;
    position: relative;
}

.cwf-intall-flow li dl::before {
    position: absolute;
    content: "";
    width: 2px;
    height: 100%;
    left: -20px;
    top: 0;
    background-color: #a4002c;
}

.cwf-intall-flow li dt {
    font-size: 21px;
    font-weight: 500;
    line-height: 1.33em;
}

.cwf-intall-flow li dd {
    margin-top: 5px;
}

.cwf-intall-flow li dd a.button {
    position: absolute;
    right: 10px;
    top: 0;
    bottom: 0;
    margin: auto;
    color: #fff;
    background-color: #a4002c;
    height: 1.5em;
    padding: 8px 25px;
    font-size: 14px;
}

.cwf-intall-flow li dd a.button i:before {
    color: #fff;
    font-size: 17px;
}

.cwf-intall-flow li dd a.button:hover {
    opacity: 0.8;
}

.cwf-intall-flow-outer .txt-note {
    font-size: 13px;
    line-height: 1.67em;
    text-indent: -1em;
    padding: 0 0 0 1em;
    margin: 10px 0 0;
}

.cwf-intall-flow-outer .install-spec {
    font-size: 13px;
    line-height: 1.67em;
    margin: 20px 0 0;
}

.cwf-intall-flow-outer .install-spec dt {
    font-weight: bold;
}

@media screen and (max-width: 767px) {
    .wrp_heading_cwf .hdg_lv1_2 span i {
        display: inline-block;
        line-height: 1.2em;
        margin-right: 8px;
    }

    .wrp_heading_cwf .hdg_lv1_2 span img {
        width: auto;
        height: 16px;
        vertical-align: middle;
        margin-bottom: 2px;
    }

    .sec-cwf-contents {
        margin: 50px 0 0;
    }

    .sec-cwf-contents h2 {
        color: #a4002c;
        font-size: 20px;
        font-weight: 300;
        line-height: 1.33em;
        text-align: center;
    }

    .sec-cwf-contents h2 > span,
    .sec-cwf-contents h2 > storng {
        display: block;
    }

    .sec-cwf-contents h2 > storng > span.number-large {
        font-size: 25px;
    }

    .sec-cwf-contents ul {
        margin: 0 0 0;
    }

    .sec-cwf-contents ul li {
        width: 100%;
        float: none;
        margin: 20px 0 0;
    }

    .sec-cwf-contents ul li + li {
        margin: 50px 0 0;
    }

    .sec-cwf-contents ul li > div {
        padding: 0;
    }

    .sec-cwf-contents ul li + li > div {
        background: none;
    }

    .sec-cwf-contents ul li h3 {
        text-align: center;
        color: #a4002c;
        font-size: 20px;
        font-weight: 300;
        line-height: 1.33em;
    }

    .sec-cwf-contents ul li h3 .number {
        display: inline-block;
        box-sizing: border-box;
        width: 46px;
        height: 46px;
        padding: 1px 0 0;
        border-radius: 23px;
        font-size: 16px;
        color: #fff;
        background-color: #a4002c;
        margin: 0 auto;
        position: relative;
        z-index: 1;
    }

    .sec-cwf-contents ul li h3 .text {
        display: block;
        padding: 30px 0 25px;
        border-top: 3px #a4002c solid;
        background-color: #fff;
        margin-top: -23px;
        position: relative;
        z-index: 2;
    }

    .sec-cwf-contents ul li p {
        margin: 5px 15px 0;
        font-size: 13px;
        line-height: 1.67em;
    }

    .sec-cwf-contents ul li p.txt-feature {
        font-size: 15px;
        font-weight: 500;
        line-height: 1.67em;
        margin: 0 15px;
    }

    .sec-cwf-contents ul li figure {
        margin: 20px 0 0;
        text-align: center;
    }

    .sec-cwf-contents ul li figure img {
        max-width: 275px;
        height: auto;
        margin: auto;
    }

    .sec-cwf-install {
        background-color: #f5f5f2;
        margin: 50px 0 0;
        padding: 15px 15px 20px;
    }

    .sec-cwf-install .txt-lead {
        font-size: 14px;
        font-weight: 500;
        line-height: 1.67em;
        padding: 0 0 0 0;
    }

    .sec-cwf-install .txt-note {
        font-size: 12px;
        line-height: 1.67em;
        text-indent: -1em;
        padding: 0 0 0 1em;
        margin: 10px 0 0;
    }

    .sec-cwf-install .txt-note + .txt-note {
        margin: 0;
    }

    .cwf-intall-flow-outer {
        position: relative;
        margin-top: 80px;
    }

    .cwf-intall-flow-outer .illust {
        position: absolute;
        right: 20px;
        top: -80px;
    }

    .cwf-intall-flow-outer .illust img {
        height: 80px;
        width: auto;
    }

    .cwf-intall-flow li {
        background-color: #fff;
        margin: 30px 0 0;
        display: block;
        width: 100%;
        position: relative;
        box-sizing: border-box;
        padding: 15px 15px;
    }

    .cwf-intall-flow li + li:before {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        top: -20px;
        margin: auto;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 8px 6px 0 6px;
        border-color: #a4002c transparent transparent transparent;
    }

    .cwf-intall-flow li span,
    .cwf-intall-flow li dl {
        display: block;
        border: none;
        vertical-align: middle;
    }

    .cwf-intall-flow li span {
        text-align: center;
        color: #a4002c;
        font-family: "Roboto", sans-serif;
        font-size: 15px;
        font-weight: 500;
        width: auto;
    }

    .cwf-intall-flow li dl {
        padding: 10px 0 0;
        position: relative;
    }

    .cwf-intall-flow li:nth-child(1) dl {
        padding: 10px 0 0;
        position: relative;
    }

    .cwf-intall-flow li dl::before {
        display: none;
    }

    .cwf-intall-flow li dt {
        font-size: 15px;
        font-weight: 500;
        line-height: 1.33em;
    }

    .cwf-intall-flow li dd {
        margin-top: 7px;
        font-size: 13px;
        line-height: 1.33em;
    }

    .cwf-intall-flow li dd a.button {
        position: inherit;
        right: auto;
        top: auto;
        bottom: auto;
        margin: 10px 20px 0;
        display: block;
        color: #fff;
        background-color: #a4002c;
        height: 1.5em;
        padding: 8px 10px;
        font-size: 13px;
        text-align: center;
    }

    .cwf-intall-flow li dd a.button i:before {
        color: #fff;
        font-size: 15px;
    }

    .cwf-intall-flow li dd a.button:hover {
        opacity: 0.8;
    }

    .cwf-intall-flow-outer .txt-note {
        font-size: 12px;
        line-height: 1.67em;
        text-indent: -1em;
        padding: 0 0 0 1em;
        margin: 10px 0 0;
    }

    .cwf-intall-flow-outer .install-spec {
        font-size: 12px;
        line-height: 1.67em;
        margin: 10px 0 0;
    }

    .cwf-intall-flow-outer .install-spec dt {
        font-weight: bold;
    }
}

/* Subsidy > Green Point
-------------------------------------------------- */

.hdg_lv2_greenpoint {
    line-height: 1.5em;
}

.hdg_lv2_greenpoint strong {
    font-size: 130%;
    display: inline-block;
    padding: 0 10px;
}

.tbl_green_point {
    margin-top: 50px;
    margin-bottom: 30px;
}

.tbl_green_point strong {
    color: #a4002c;
}

.tbl_green_point th {
    font-size: 17px;
    background-color: #f5f5f3;
    padding: 10px;
}

.tbl_green_point td {
    padding: 20px;
}

.tbl_green_point th,
.tbl_green_point td {
    text-align: center;
    border: 1px #ccc solid;
    vertical-align: middle;
    box-sizing: border-box;
}

.tbl_green_point td:nth-child(1) {
    text-align: left;
    width: 50%;
}

.tbl_green_point td:nth-child(2),
.tbl_green_point td:nth-child(3) {
    width: 25%;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.33em;
}

.hosoku_greenpoint {
    font-size: 14px;
    line-height: 1.67em;
    margin-top: -10px;
}

.hosoku_greenpoint dt {
    font-weight: bold;
}

.greenpoint_standard {
    color: #fff;
    background-color: #78ae4e;
    font-size: 25px;
    text-align: center;
    padding: 17px 10px 30px;
    margin-top: 50px;
}

.greenpoint_standard > p:nth-child(1) span {
    position: relative;
    display: inline-block;
}

/*
.greenpoint_standard > p:nth-child(1) span:before ,
.greenpoint_standard > p:nth-child(1) span:after {
    position: absolute;
    content: "";
    width: 34px;
    height: 1px;
    background-color: #fff;
}

.greenpoint_standard > p:nth-child(1) span:before {
    left: -30px;
    top: 34px;
    transform: rotate(65deg);
}

.greenpoint_standard > p:nth-child(1) span:after {
    right: -30px;
    top: 34px;
    transform: rotate(-65deg);
}
*/

.greenpoint_standard strong {
    font-size: 140%;
    position: relative;
    margin: 0 10px;
}

.greenpoint_standard strong::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -7px;
    height: 3px;
    background-color: #fff;
}

p.txt_greenpoint_hosoku {
    font-size: 13px;
    line-height: 1.33em;
    margin-top: 5px;
    text-align: right;
    margin-top: 10px;
}

.lst_greenpoint_feature {
    border: 1px #ccc solid;
    text-align: center;
    padding: 50px 21.5px 20px;
}

.lst_greenpoint_feature h3 {
    font-size: 30px;
    line-height: 1.33em;
    font-weight: bold;
}

.lst_greenpoint_feature h3 span {
    display: inline-block;
    position: relative;
}

.lst_greenpoint_feature h3 span:before,
.lst_greenpoint_feature h3 span:after {
    position: absolute;
    content: "";
    width: 34px;
    height: 1px;
    background-color: #333;
}

.lst_greenpoint_feature h3 span:before {
    left: -30px;
    top: 20px;
    transform: rotate(65deg);
}

.lst_greenpoint_feature h3 span:after {
    right: -30px;
    top: 20px;
    transform: rotate(-65deg);
}

.lst_greenpoint_feature .lst_media {
    padding-top: 20px;
}

.lst_greenpoint_feature .lst_media li {
    padding: 0 57.5px;
    overflow: visible;
}

.lst_greenpoint_feature .lst_media p {
    text-align: center;
    font-size: 17px;
    line-height: 1.58em;
    font-weight: 500;
    margin-top: 20px;
}

.lst_greenpoint_feature .lst_media li:nth-child(3) p {
    text-align: left;
}

.lst_greenpoint_feature .lst_media p small {
    font-size: 14px;
    font-weight: normal;
    line-height: 1.58em;
    display: block;
    padding-top: 5px;
}

.lst_greenpoint_feature .lst_media li > div {
    position: relative;
}

.lst_greenpoint_feature .lst_media li span.arrow {
    position: absolute;
    right: -84px;
    top: 0;
    bottom: 0;
    margin: auto;
    height: 3em;
}

.lst_greenpoint_feature .lst_media li:nth-child(3) span.arrow {
    display: none;
}

.lst_greenpoint_feature.lst_tax_merit {
    padding: 50px 67.5px 40px;
}

.lst_greenpoint_feature.lst_tax_merit li {
    padding: 0 12.5px;
}

.lst_greenpoint_feature.lst_tax_merit li dl {
    padding: 20px 25px 5px;
    background-color: #f5f2e9;
    height: 100%;
}

.lst_greenpoint_feature.lst_tax_merit li dt {
    text-align: center;
    border-bottom: 1px #ccc solid;
    font-size: 19px;
    font-weight: bold;
    line-height: 1.33em;
    padding: 0 0 15px;
}

.lst_greenpoint_feature.lst_tax_merit li dd {
    text-align: center;
    font-size: 25px;
    font-weight: bold;
    line-height: 1.33em;
    margin-top: 40px;
}

.lst_greenpoint_feature.lst_tax_merit li dd.hosoku {
    font-size: 12px;
    font-weight: 400;
    line-height: 1.33em;
    margin-top: 10px;
    margin-bottom: -20px;
}

.lst_greenpoint_feature.lst_tax_merit li:nth-child(1) dd {
    margin-top: 20px;
}

.lst_greenpoint_feature.lst_tax_merit li dd span {
    color: #a4002c;
}

.lst_greenpoint_feature.lst_tax_merit li:nth-child(1) dd span {
    font-size: 17px;
}

.lst_greenpoint_feature.lst_tax_merit li dd small {
    font-size: 70%;
    line-height: 1em;
    font-weight: normal;
    display: block;
}

.lst_greenpoint_feature.lst_tax_merit li dd strong {
    font-size: 180%;
}

.lst_greenpoint_feature.lst_tax_merit li:nth-child(1) dd strong {
    font-size: 260%;
}

.lst_media.resale_value {
    padding-top: 40px;
}

.lst_media.resale_value h4 {
    font-size: 21px;
    line-height: 1.67em;
}

.lst_greenpoint_feature.lst_tax_merit .resale_value {
    width: auto;
    margin: 0 -30px;
}

.lst_greenpoint_feature.lst_tax_merit .resale_value li {
    padding: 0 30px;
}

.lst_media.resale_value li p {
    text-align: left;
    font-weight: normal;
    font-size: 17px;
    line-height: 1.8em;
}

.lst_other_support {
}

.lst_other_support dl {
    background-color: #78ae4e;
    color: #fff;
    padding: 20px 25px;
}

.lst_other_support dl > * {
    text-align: center;
}

.lst_other_support dl > dt {
    text-align: center;
    border-bottom: 1px #fff solid;
    font-size: 19px;
    font-weight: 500;
    line-height: 1.33em;
    padding: 0 0 15px;
}

.lst_other_support dl > dd {
    font-size: 25px;
    line-height: 1.5em;
    padding-top: 20px;
}

.lst_other_support dl > dd strong {
    font-size: 180%;
}

.lst_other_support p {
    text-align: center;
    font-size: 17px;
    line-height: 1.67em;
}

.lst_other_support p a {
    color: #a4002c;
    text-decoration: underline;
}

.lst_other_support p a i.fa {
    margin-left: 5px;
}

.txt_greenpoint_hosoku {
    font-size: 13px;
    line-height: 1.67em;
    color: #666;
}

.txt_greenpoint_hosoku dt {
    width: 3em;
    clear: both;
    float: left;
}

.txt_greenpoint_hosoku dd {
    padding: 0 0 0 3em;
}

@media screen and (min-width: 768px) and (max-width: 1120px) {
    .greenpoint_standard {
        color: #fff;
        background-color: #78ae4e;
        font-size: 20px;
        text-align: center;
        padding: 12px 30px 25px;
        margin-top: 50px;
    }

    .greenpoint_standard > p:nth-child(1) span {
        position: relative;
        display: inline-block;
    }

    .greenpoint_standard > p:nth-child(1) span:before,
    .greenpoint_standard > p:nth-child(1) span:after {
        position: absolute;
        content: "";
        width: 34px;
        height: 1px;
        background-color: #fff;
    }

    .greenpoint_standard > p:nth-child(1) span:before {
        left: -30px;
        top: 34px;
        transform: rotate(65deg);
    }

    .greenpoint_standard > p:nth-child(1) span:after {
        right: -30px;
        top: 34px;
        transform: rotate(-65deg);
    }

    .greenpoint_standard strong {
        font-size: 140%;
    }
}

@media screen and (max-width: 767px) {
    .hdg_lv2_greenpoint strong {
        padding: 0 5px;
    }

    .tbl_green_point {
        margin-top: 20px;
        margin-bottom: 10px;
    }

    .tbl_green_point strong {
        color: #a4002c;
    }

    .tbl_green_point th {
        font-size: 14px;
        background-color: #f5f5f3;
        padding: 5px;
    }

    .tbl_green_point td {
        padding: 10px;
    }

    .tbl_green_point th,
    .tbl_green_point td {
        text-align: center;
        border: 1px #ccc solid;
        vertical-align: middle;
        box-sizing: border-box;
    }

    .tbl_green_point td:nth-child(1) {
        text-align: left;
        width: 50%;
    }

    .tbl_green_point td:nth-child(2),
    .tbl_green_point td:nth-child(3) {
        width: 25%;
        font-size: 15px;
        font-weight: bold;
        line-height: 1.33em;
    }

    .hosoku_greenpoint {
        font-size: 13px;
        line-height: 1.67em;
        margin-top: 0;
    }

    .hosoku_greenpoint dt {
        font-weight: bold;
    }

    .greenpoint_standard {
        color: #fff;
        background-color: #78ae4e;
        font-size: 13px;
        text-align: center;
        padding: 12px 10px 16px;
        margin-top: 30px;
    }

    /*
    .greenpoint_standard > p:nth-child(1) span {
        position: relative;
        display: inline-block;
    }

    .greenpoint_standard > p:nth-child(1) span:before ,
    .greenpoint_standard > p:nth-child(1) span:after {
        display: none;
    }

    .greenpoint_standard > p:nth-child(1) span:before {
        left: -25px;
        top: 20px;
        transform: rotate(65deg);
    }

    .greenpoint_standard > p:nth-child(1) span:after {
        right: -25px;
        top: 20px;
        transform: rotate(-65deg);
    }
    */
    .greenpoint_standard strong {
        font-size: 140%;
        margin: 0 5px;
    }

    .greenpoint_standard strong::after {
        display: block;
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: -7px;
        height: 3px;
        background-color: #fff;
    }

    p.txt_greenpoint_hosoku {
        font-size: 11px;
        line-height: 1.33em;
        margin-top: 10px;
    }

    .lst_greenpoint_feature {
        border: 1px #ccc solid;
        text-align: center;
        padding: 25px 21.5px 0;
    }

    .lst_greenpoint_feature h3 {
        font-size: 18px;
        line-height: 1.33em;
        font-weight: bold;
    }

    .lst_greenpoint_feature h3 span {
        display: inline-block;
        position: relative;
    }

    .lst_greenpoint_feature h3 span:before,
    .lst_greenpoint_feature h3 span:after {
        display: none;
    }

    .lst_greenpoint_feature h3 span:before {
        left: -30px;
        top: 20px;
        transform: rotate(65deg);
    }

    .lst_greenpoint_feature h3 span:after {
        right: -30px;
        top: 20px;
        transform: rotate(-65deg);
    }

    .lst_greenpoint_feature .lst_media {
        padding-top: 20px;
    }

    .lst_greenpoint_feature .lst_media li {
        padding: 0 0 18px;
        overflow: visible;
    }

    .lst_greenpoint_feature .lst_media p {
        text-align: center;
        font-size: 17px;
        line-height: 1.58em;
        font-weight: 500;
        margin-top: 10px;
    }

    .lst_greenpoint_feature .lst_media li:nth-child(3) p {
        text-align: left;
        font-size: 15px;
        line-height: 1.58em;
    }

    .lst_greenpoint_feature .lst_media li:nth-child(2),
    .lst_greenpoint_feature .lst_media li:nth-child(3) {
        margin-top: 10px;
    }

    .lst_greenpoint_feature .lst_media p small {
        font-size: 14px;
        font-weight: normal;
        line-height: 1.58em;
        display: block;
        padding-top: 5px;
    }

    .lst_greenpoint_feature .lst_media li > div {
        position: relative;
        padding: 0 57.5px;
        text-align: center;
    }

    .lst_greenpoint_feature .lst_media li span.arrow {
        position: absolute;
        right: 0;
        left: 0;
        top: -40px;
        bottom: inherit;
        margin: auto;
        width: 30px;
    }

    .lst_greenpoint_feature .lst_media li span.arrow img {
        width: 100%;
        height: auto;
        transform: rotate(90deg);
    }

    .lst_greenpoint_feature .lst_media li:nth-child(1) span.arrow img {
        display: none;
    }

    .lst_greenpoint_feature .lst_media li:nth-child(3) span.arrow {
        display: block;
    }

    .lst_greenpoint_feature.lst_tax_merit {
        padding: 20px 10px 10px;
    }

    .lst_greenpoint_feature.lst_tax_merit p {
        text-align: left;
    }

    .lst_greenpoint_feature.lst_tax_merit li {
        padding: 0 5px;
        margin-top: 10px;
    }

    .lst_greenpoint_feature.lst_tax_merit li dl {
        padding: 20px 25px 0;
        background-color: #f5f2e9;
        height: 100%;
    }

    .lst_greenpoint_feature.lst_tax_merit li dt {
        text-align: center;
        border-bottom: 1px #ccc solid;
        font-size: 15px;
        font-weight: bold;
        line-height: 1.33em;
        padding: 0 0 15px;
    }

    .lst_greenpoint_feature.lst_tax_merit li dd {
        text-align: center;
        font-size: 18px;
        font-weight: bold;
        line-height: 1.33em;
        margin-top: 20px;
    }

    .lst_greenpoint_feature.lst_tax_merit li:nth-child(1) dd {
        margin-top: 12px;
    }

    .lst_greenpoint_feature.lst_tax_merit li dd span {
        color: #a4002c;
    }

    .lst_greenpoint_feature.lst_tax_merit li:nth-child(1) dd span {
        font-size: 17px;
    }

    .lst_greenpoint_feature.lst_tax_merit li dd small {
        font-size: 70%;
        line-height: 1.5em;
        font-weight: normal;
        display: block;
    }

    .lst_greenpoint_feature.lst_tax_merit li dd strong {
        font-size: 180%;
    }

    .lst_greenpoint_feature.lst_tax_merit li:nth-child(1) dd strong {
        font-size: 180%;
    }

    .lst_media.resale_value {
        padding-top: 10px;
    }

    .lst_media.resale_value h4 {
        font-size: 15px;
        font-weight: 500;
        line-height: 1.67em;
    }

    .lst_greenpoint_feature.lst_tax_merit .resale_value {
        width: auto;
        margin: 0;
    }

    .lst_greenpoint_feature.lst_tax_merit .resale_value li {
        padding: 0;
    }

    .lst_media.resale_value li p {
        text-align: left;
        font-weight: normal;
        font-size: 14px;
        line-height: 1.8em;
        margin-top: 10px;
    }

    .lst_other_support li {
        margin-top: 10px;
        margin-bottom: 0;
    }

    .lst_other_support dl {
        background-color: #78ae4e;
        color: #fff;
        padding: 20px 25px;
    }

    .lst_other_support dl > * {
        text-align: center;
    }

    .lst_other_support dl > dt {
        text-align: center;
        border-bottom: 1px #fff solid;
        font-size: 15px;
        font-weight: 500;
        line-height: 1.33em;
        padding: 0 0 15px;
    }

    .lst_other_support dl > dd {
        font-size: 18px;
        line-height: 1.5em;
        padding-top: 20px;
    }

    .lst_other_support dl > dd strong {
        font-size: 180%;
    }

    .lst_other_support p {
        text-align: center;
        font-size: 14px;
        line-height: 1.67em;
        margin-top: 20px;
    }

    .lst_other_support p a {
        color: #a4002c;
        text-decoration: underline;
    }

    .lst_other_support p a i.fa {
        margin-left: 5px;
    }

    .txt_greenpoint_hosoku {
        font-size: 13px;
        line-height: 1.67em;
    }

    .txt_greenpoint_hosoku dt {
        width: 3em;
        clear: both;
        float: left;
    }

    .txt_greenpoint_hosoku dd {
        padding: 0 0 0 3em;
    }
}

/* Buy > Propose > style
-------------------------------------------------- */

.page_propose_style .wrp_heading {
    position: relative;
}

.page_propose_style .txt_propose_category {
    position: absolute;
    right: 0;
    bottom: 0;
    color: #ffffff;
    padding: 10px 20px;
}

.page_propose_style .hdg_lv1_2 {
    margin: 80px auto 29px;
}

.page_propose_style .hdg_lv1_2 span {
    display: block;
    font-weight: normal;
    font-size: 35px;
    line-height: 1.67em;
    margin: 0;
    padding: 5px 30px 4px;
    text-align: center;
    color: #ffffff;
    border: none;
}

.page_propose_style .hdg_lv1_2 span:nth-child(2) {
    font-size: 26px;
    line-height: 1.67em;
}

.page_propose_style .hdg_lv2 {
    margin: 80px 0 30px;
    font-weight: 500;
}

.page_woodfriends_value .hdg_lv2,
.page_woodfriends_value p strong {
    color: #a4002c;
}

.page_propose_style_n .hdg_lv2,
.page_propose_style_n p strong {
    color: #487b1b;
}

.page_propose_style_n_zeh .hdg_lv2,
.page_propose_style_n_zeh p strong,
.page_propose_style_n_zeh .num_title {
    color: #67b5b7;
}

.page_propose_style_n_zeh .num_title span {
    color: #f6ae54;
    font-size: 1.35em;
    letter-spacing: 0.1em;
}

.page_propose_style_u .hdg_lv2,
.page_propose_style_u p strong {
    color: #314683;
}

.page_propose_style_p .hdg_lv2,
.page_propose_style_p p strong {
    color: #aa9b91;
}

.page_propose_family .hdg_lv2,
.page_propose_family p strong {
    color: #c8005a;
}

.page_propose_nihon .hdg_lv2,
.page_propose_nihon p strong {
    color: #91ab31;
}

.page_propose_style_n .box_aticle {
    background-color: #e1edd5;
}

.page_propose_style_n_zeh br.pcnone {
    display: block;
}

.page_propose_style_n_zeh figure img {
    width: 100%;
}

.page_propose_style_n_zeh .box_aticle {
    background-color: #e1edd5;
}

.page_propose_style_n_zeh .js--merit_title {
    position: relative;
    box-sizing: border-box;
}

.page_propose_style_n_zeh .reversal-design.js--merit_title:before {
    color: rgb(159 160 160);
}

.page_propose_style_n_zeh .reversal-design.js--merit_title:after {
    color: rgb(159 160 160);
    background: rgb(255 255 255);
}

.page_propose_style_n_zeh .js--merit_title:before {
    position: absolute;
    content: "〈";
    color: rgb(255 255 255);
    transform: rotate(-90deg);
    height: 60px;
    width: 22px;
    right: 70px;
    z-index: 1;
    bottom: -5px;
    font-size: 18px;
    opacity: 1;
}

.page_propose_style_n_zeh .js--merit_title.open:before {
    opacity: 0;
}

.page_propose_style_n_zeh .js--merit_title:after {
    content: "　MORE";
    position: absolute;
    color: #fff;
    letter-spacing: 0.1em;
    font-weight: 300;
    font-family: "源ノ角ゴシック Regular", "源ノ角ゴシック", "Noto Sans JP",
        sans-serif;
    background: #9fa0a0;
    text-align: center;
    height: 30px;
    width: 120px;
    right: 0;
    line-height: 30px;
    font-size: 16px;
}

.page_propose_style_n_zeh .js--merit_title.open:after {
    content: "－";
    font-size: 20px;
}

.page_propose_style_n_zeh .js--merit_title.js--merit_title__PC:before,
.page_propose_style_n_zeh .js--merit_title.js--merit_title__PC:after {
    display: block !important;
}

.page_propose_style_n_zeh .js--merit_title.js--merit_title__SP:before,
.page_propose_style_n_zeh .js--merit_title.js--merit_title__SP:after {
    display: none !important;
}

@media screen and (max-width: 1167px) {
    .page_propose_style_n_zeh .js--merit_title.js--merit_title__PC:before,
    .page_propose_style_n_zeh .js--merit_title.js--merit_title__PC:after {
        display: none !important;
    }

    .page_propose_style_n_zeh .js--merit_title.js--merit_title__SP:before,
    .page_propose_style_n_zeh .js--merit_title.js--merit_title__SP:after {
        display: block !important;
    }
}

.page_propose_style_n_zeh .js--merit_content {
    display: none;
}

.page_propose_style_n_zeh .movie {
    margin-top: 110px;
}

@media screen and (max-width: 640px) {
    .page_propose_style_n_zeh .movie {
        margin-top: 13.33vw;
    }
}

.page_propose_style_n_zeh .merit-top_box {
    width: 760px;
    margin: 0 auto;
    padding: 30px 0;
    border: 1px solid #000;
    position: relative;
}

.page_propose_style_n_zeh .merit-top_box:before,
.page_propose_style_n_zeh .merit-top_box:after {
    content: "";
    position: absolute;
    background: #fff;
    height: 3px;
    width: 80%;
    left: 10%;
    z-index: 2;
    right: 0;
}

.page_propose_style_n_zeh .merit-top_box:before {
    top: -2px;
}

.page_propose_style_n_zeh .merit-top_box:after {
    bottom: -2px;
}

.page_propose_style_n_zeh .merit_slidetitle {
    margin-top: 120px;
}

@media screen and (max-width: 640px) {
    .page_propose_style_n_zeh .merit_slidetitle {
        margin-top: 13.33vw;
    }
}

.page_propose_style_n_zeh .merit-top_box h4 {
    text-align: center;
    line-height: 1.5;
    font-size: 20px;
    font-weight: normal;
}

.page_propose_style_n_zeh .merit-top_box h4 strong span {
    font-size: 1.2em;
}

.page_propose_style_n_zeh .merit-top_box p.text {
    text-align: center;
}

.page_propose_style_n_zeh .sub-title_border {
    border: 3px solid #9fa0a0;
    text-align: center;
    font-size: 20px;
    line-height: 1;
    padding: 8px 0;
}

.page_propose_style_n_zeh .flat35 img,
.page_propose_style_n_zeh .zen_voice img {
    width: 100%;
}

.page_propose_style_n_zeh img.sp_img {
    display: none;
}

.page_propose_style_n_zeh img.pc_img {
    display: block;
}

@media screen and (max-width: 640px) {
    .page_propose_style_n_zeh img.sp_img {
        display: block;
    }

    .page_propose_style_n_zeh img.pc_img {
        display: none;
    }
}

.page_propose_style_n_zeh .text {
    text-align: center;
    font-size: 14px;
    letter-spacing: 0.025em;
    font-weight: 500;
    line-height: 2;
}

.page_propose_style_n_zeh .note_flat35 {
    font-size: 15px;
}

.page_propose_style_n_zeh .note_flat35_bottom {
    font-size: 14px;
    line-height: 1.6;
    color: #b2b1b1;
    font-weight: 200;
}

.page_propose_style_n_zeh .note_flat35_bottom.js--merit_title:before {
    font-size: 10px;
    right: 16px;
    bottom: -13px;
}

.page_propose_style_n_zeh .note_flat35_bottom.js--merit_title:after {
    font-size: 10px;
    width: 60px;
    height: 20px;
    line-height: 20px;
}

@media screen and (max-width: 640px) {
    .page_propose_style_n_zeh .note_flat35_bottom + .note_flat35_bottom {
        margin-top: 15px;
    }
}

.page_propose_style_n_zeh .note_flat35_bottom a {
    color: inherit;
    font-size: inherit;
    text-decoration: underline;
}

.page_propose_style_n_zeh .note_flat35_bottom span {
    color: rgb(103 181 183);
    font-size: 14px;
    line-height: 1.75;
}

.page_propose_style_n_zeh #merit h2.hdg_lv2 {
    margin-bottom: 40px;
}

@media screen and (max-width: 640px) {
    .page_propose_style_n_zeh #merit h2.hdg_lv2 {
        border: 1px solid rgb(103 181 183);
        font-size: 17px;
        letter-spacing: 0.05em;
        padding: 4.06vw 0;
        margin-bottom: 10px;
    }
}

.page_propose_style_n_zeh #merit .text a {
    color: inherit;
    font-size: inherit;
    text-decoration: underline;
}

.page_propose_style_n_zeh #merit .graph_area {
    border: 2px solid #595757;
    padding: 45px 13px 14px 60px;
}

.page_propose_style_n_zeh #merit .graph_area h3 {
    font-size: 18px;
    text-align: center;
    letter-spacing: 0.05em;
    font-weight: 500;
}

.page_propose_style_n_zeh #merit .graph_area ul {
    display: flex;
    justify-content: flex-start;
    align-self: flex-start;
}

.page_propose_style_n_zeh #merit .graph_area ul li {
    text-align: center;
}

.page_propose_style_n_zeh #merit .graph_area ul li + li {
    margin-left: 190px;
}

.page_propose_style_n_zeh #merit .graph_area ul li figure img {
    width: auto;
}

.page_propose_style_n_zeh #merit .graph_area p.title {
    text-align: center;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.15em;
}

.page_propose_style_n_zeh #merit .graph_area p.note {
    text-align: right;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.09em;
}

@media screen and (max-width: 1169px) {
    .page_propose_style_n_zeh #merit .graph_area {
        padding: 10% 5% 1%;
    }

    .page_propose_style_n_zeh #merit .graph_area ul {
        display: block;
    }

    .page_propose_style_n_zeh #merit .graph_area ul li {
        width: 100%;
    }

    .page_propose_style_n_zeh #merit .graph_area ul li + li {
        margin-left: 0;
        margin-top: 10%;
    }

    .page_propose_style_n_zeh #merit .graph_area ul li figure {
        width: calc(100% / 1.5);
        margin: 0 auto;
    }

    .page_propose_style_n_zeh #merit .graph_area ul li figure img {
        width: 100%;
    }

    .page_propose_style_n_zeh #merit .graph_area p.note {
        font-size: 0.7rem;
        line-height: 1.2;
    }
}

.page_propose_style_n_zeh .plan_box h3 {
    text-align: center;
    font-weight: normal;
    height: 200px;
    line-height: 2;
    background: rgb(254 236 191);
    font-size: 20px;
    padding: 20px 0;
    box-sizing: border-box;
    letter-spacing: 0.05em;
    margin-bottom: 50px;
}

.page_propose_style_n_zeh .plan_box h3 strong {
    color: rgb(103 181 183);
    font-size: 30px;
    line-height: 1.2;
    font-weight: normal;
}

.page_propose_style_n_zeh .plan_box h3 span.spnum {
    display: none;
}

.page_propose_style_n_zeh .plan_box h3 strong span {
    font-weight: bold;
    font-size: 38px;
}

.page_propose_style_n_zeh .plan_box h3 strong span span {
    font-size: 30px;
}

.page_propose_style_n_zeh .plan_box h3 span.transf90 {
    transform: rotateZ(90deg);
    display: block;
    margin: 0 auto;
}

.page_propose_style_n_zeh .plan_box .text {
    text-align: left;
    line-height: 2;
    margin-bottom: 40px;
}

.page_propose_style_n_zeh .plan_box .text strong {
    font-weight: normal;
    display: block;
    margin-bottom: 5px;
    font-size: 1.2em;
}

.page_propose_style_n_zeh .plan_box .text .note {
    display: block;
    font-size: 0.7em;
}

.page_propose_style_n_zeh .plan_box .merit_list {
    display: flex;
    justify-content: flex-start;
}

.page_propose_style_n_zeh .plan_box .merit_list .title {
    color: #fff;
    background: #67b5b7;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    padding: 8px;
    margin-right: 20px;
    display: flex;
    justify-content: center;
}

.page_propose_style_n_zeh .plan_box .merit_list ul li {
    color: #67b5b7;
    font-size: 15px;
    letter-spacing: 0.05em;
    font-weight: 300;
    margin-bottom: 5px;
    position: relative;
    padding-left: 1em;
}

.page_propose_style_n_zeh .plan_box .merit_list ul li:before {
    content: "■";
    color: #67b5b7;
    position: absolute;
    left: -0.25em;
    font-size: 0.7em;
    top: 0.5em;
}

@media screen and (max-width: 640px) {
    .page_propose_style_n_zeh .plan_box .merit_list ul li {
        font-size: 14px;
    }
}

.page_propose_style_n_zeh .select_plan {
    margin-top: 150px;
}

.page_propose_style_n_zeh .select_plan .hdg_lv2 {
    letter-spacing: 0.1em;
}

.page_propose_style_n_zeh .select_plan h2 span.thin {
    font-weight: normal;
    font-size: 0.9em;
}

.page_propose_style_n_zeh .select_plan h2 ruby rt {
    font-size: 25%;
}

.page_propose_style_n_zeh .select_plan h2 ruby rb {
    font-weight: bold;
}

@media screen and (max-width: 767px) {
    .page_propose_style_n_zeh .select_plan {
        margin-top: 24vw;
    }

    .page_propose_style_n_zeh .select_plan h2.hdg_lv2 {
        border: 1px solid rgb(103 181 183);
        font-size: 17px;
        letter-spacing: 0.05em;
        padding: 4.06vw 0;
        margin-bottom: 10px;
    }

    .page_propose_style_n_zeh .select_plan h2.hdg_lv2 span.spnone {
        display: none;
    }

    .page_propose_style_n_zeh .plan_box h3 {
        font-size: 16px;
        height: auto;
        line-height: 1.5;
        padding: 10px 0;
        position: relative;
        margin-top: 13.33vw;
        margin-bottom: 8vw;
    }

    .page_propose_style_n_zeh .plan_box h3 span.spnum {
        display: block;
        width: 100%;
        text-align: center;
        font-weight: bold;
        margin: 0 auto;
        color: rgb(246 174 84);
        font-size: 1.35em;
        letter-spacing: 0.1em;
        position: absolute;
        left: 0;
        top: -37px;
    }

    .page_propose_style_n_zeh .plan_box h3 strong {
        font-size: 18px;
    }

    .page_propose_style_n_zeh .plan_box h3 strong span {
        font-size: 22px;
    }

    .page_propose_style_n_zeh .plan_box h3 strong span span {
        font-size: 18px;
    }

    .page_propose_style_n_zeh .plan_box .text {
        margin-bottom: 8vw;
    }
}

@media screen and (max-width: 1199px) {
    .page_propose_style_n_zeh .plan_box + .plan_box {
        margin-top: 105px;
    }
}

@media screen and (min-width: 1200px) {
    .page_propose_style_n_zeh .plan_cont {
        display: flex;
        justify-content: space-between;
    }

    .page_propose_style_n_zeh .plan_box {
        width: 530px;
    }
}

.page_propose_style_n_zeh .good_deal {
    margin-top: 120px;
}

.page_propose_style_n_zeh .good_deal .payment {
    background: #fff;
    border: 2px solid #000;
    letter-spacing: 0.05em;
    padding: 0 90px 70px;
    margin-top: 60px;
}

.page_propose_style_n_zeh .good_deal .payment .title {
    text-align: center;
    font-size: 18px;
    font-weight: 500;
    padding: 50px 0 60px;
}

.page_propose_style_n_zeh .good_deal .payment .note {
    color: #3e3a39;
}

.page_propose_style_n_zeh .good_deal .payment .note.js--merit_title:before {
    right: 16px;
    font-size: 10px;
    bottom: -10px;
}

.page_propose_style_n_zeh .good_deal .payment .note.js--merit_title:after {
    font-size: 10px;
    width: 60px;
    height: 20px;
    line-height: 20px;
}

.page_propose_style_n_zeh .good_deal .payment .note span {
    color: rgb(103 181 183);
}

@media screen and (max-width: 767px) {
    .page_propose_style_n_zeh .good_deal {
        margin-top: 26.66vw;
    }

    .page_propose_style_n_zeh .good_deal .hdg_lv2 {
        border: 1px solid rgb(103 181 183);
        font-size: 17px;
        letter-spacing: 0.05em;
        padding: 4.56vw 0;
        margin-bottom: 6.66vw;
    }

    .page_propose_style_n_zeh .good_deal .payment {
        margin-top: 6.66vw;
    }
}

@media screen and (max-width: 1169px) {
    .page_propose_style_n_zeh .good_deal .payment .title {
        padding: 5% 0;
    }

    .page_propose_style_n_zeh .good_deal .payment {
        padding: 0 2% 1%;
    }

    .page_propose_style_n_zeh .good_deal .payment .note {
        font-size: 0.7rem;
    }

    .page_propose_style_n_zeh .good_deal .payment .note.js--merit_title:before {
        bottom: -16px;
    }
}

.page_propose_style_n_zeh .about_zen {
    margin-top: 120px;
}

.page_propose_style_n_zeh .about_zen .js--merit_title:before {
    bottom: -13px;
}

.page_propose_style_n_zeh .about_zen .js--merit_title:after {
    bottom: 8px;
}

.page_propose_style_n_zeh .about_zen figure {
    text-align: center;
}

.page_propose_style_n_zeh .about_zen p.w860,
.page_propose_style_n_zeh .about_zen figure.w860 {
    width: 860px;
    margin: 0 auto;
}

.page_propose_style_n_zeh .about_zen figure.w860 {
    margin-bottom: 60px;
}

.page_propose_style_n_zeh .about_zen .sub-title_border_inline {
    color: rgb(103 181 183);
    border: 2px solid rgb(103 181 183);
    font-size: 18px;
    font-weight: 600;
    padding: 7px 0;
    text-align: center;
    letter-spacing: 0.12em;
}

.page_propose_style_n_zeh .about_zen .text {
    line-height: 2.5;
}

.page_propose_style_n_zeh .about_zen .text span {
    color: rgb(103 181 183);
}

.page_propose_style_n_zeh .other .lst_menu {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.page_propose_style_n_zeh .other .lst_menu:after {
    content: none;
}

.page_propose_style_n_zeh .other .lst_menu li {
    width: 552px;
}

.page_propose_style_n_zeh .other .lst_menu li .box_menu {
    margin-bottom: 0;
}

.page_propose_style_n_zeh .about_zen .graph_area {
    border: 2px solid #595757;
    padding: 45px 13px 14px 60px;
}

.page_propose_style_n_zeh .about_zen .graph_area ul {
    display: flex;
    justify-content: flex-start;
    align-self: flex-start;
}

.page_propose_style_n_zeh .about_zen .graph_area ul li + li {
    margin-left: 65px;
}

.page_propose_style_n_zeh .about_zen .graph_area ul li:first-child p.title {
    margin-bottom: 50px;
}

.page_propose_style_n_zeh .about_zen .graph_area ul li figure img {
    width: auto;
}

.page_propose_style_n_zeh .about_zen .graph_area p.title {
    text-align: center;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.05em;
}

.page_propose_style_n_zeh .about_zen .graph_area p.title span {
    display: block;
    margin: 0 auto;
    font-size: 0.95em;
}

.page_propose_style_n_zeh .about_zen .graph_area p.title span.note {
    font-weight: normal;
}

.page_propose_style_n_zeh .about_zen .graph_area p.note {
    text-align: right;
    font-size: 15px;
    font-weight: 500;
}

@media screen and (max-width: 859px) {
    .page_propose_style_n_zeh .about_zen {
        margin-top: 26.66vw;
    }

    .page_propose_style_n_zeh .about_zen h2.hdg_lv2 {
        border: 1px solid rgb(103 181 183);
        padding: 4.06vw 0;
        margin-bottom: 10.13vw;
    }

    .page_propose_style_n_zeh .about_zen figure.w860 {
        margin-bottom: 10.66vw;
    }

    .page_propose_style_n_zeh .about_zen p.w860,
    .page_propose_style_n_zeh .about_zen figure.w860 {
        width: 100%;
    }

    .page_propose_style_n_zeh .about_zen .graph_area {
        padding: 10% 5% 1%;
    }

    .page_propose_style_n_zeh .about_zen .graph_area ul {
        display: block;
    }

    .page_propose_style_n_zeh .about_zen .graph_area ul li {
        width: 100%;
    }

    .page_propose_style_n_zeh .about_zen .graph_area ul li + li {
        margin-left: 0;
        margin-top: 10%;
    }

    .page_propose_style_n_zeh .about_zen .graph_area ul li:first-child p.title {
        margin-bottom: 20px;
    }

    .page_propose_style_n_zeh .about_zen .graph_area ul li figure {
        width: calc(100% / 1.21);
        margin: 0 auto;
    }

    .page_propose_style_n_zeh .about_zen .graph_area ul li:first-child figure {
        width: 100%;
    }

    .page_propose_style_n_zeh .about_zen .graph_area ul li figure img {
        width: 100%;
    }

    .page_propose_style_n_zeh .about_zen .graph_area p.note {
        font-size: 0.7rem;
        line-height: 1.2;
        margin-top: 20px;
    }
}

.page_propose_style_u .box_aticle {
    background-color: #d8edfe;
}

.page_propose_style_p .box_aticle {
    background-color: #e8e8c2;
}

.wrp_grid.lst_performance {
    margin: 0;
}

.lst_performance li p {
    margin-top: 20px;
    text-align: center;
}

.lst_performance_p li {
    text-align: center;
}

.lst_performance_p li p {
    margin-top: 20px;
    font-size: 17px;
    line-height: 2em;
    text-align: left;
    padding: 0 20px;
}

@media screen and (max-width: 767px) {
    .page_propose_style .hdg_lv1_2 {
        margin: 30px auto 29px;
    }

    .page_propose_style .wrp_product_concpet .text h3 {
        text-align: center;
    }

    .page_propose_style .hdg_lv1_2 span {
        display: block;
        font-weight: normal;
        font-size: 20px;
        line-height: 1.67em;
        margin: 0;
        padding: 5px 30px 4px;
        text-align: center;
        color: #ffffff;
        border: none;
    }

    .page_propose_style .hdg_lv1_2 span:nth-child(2) {
        font-size: 16px;
        line-height: 1.67em;
    }

    .page_propose_style .hdg_lv2 {
        margin: 40px 0 15px;
        font-weight: 500;
    }

    .page_propose_style .txt_lead {
        font-size: 14px;
        font-weight: 400;
        line-height: 1.67em;
        text-align: left;
    }

    .page_propose_style .txt_lead br {
        display: none;
    }

    .lst_performance li p {
        margin-top: 10px;
        text-align: center;
    }

    .lst_performance_p li {
        text-align: center;
    }

    .lst_performance_p li p {
        margin-top: 10px;
        font-size: 14px;
        line-height: 2em;
        text-align: left;
        padding: 0;
    }

    .page_propose_style_n_zeh .merit-top_box {
        width: 100%;
        padding: 5% 8%;
        box-sizing: border-box;
    }

    .page_propose_style_n_zeh .text {
        font-size: 12px;
        line-height: 1.32em;
        text-align: left;
    }

    .page_propose_style_n_zeh .merit-top_box h4 {
        font-size: 16px;
    }

    .page_propose_style_n_zeh .js--merit_title:after {
        height: 25px;
        line-height: 25px;
        width: 50px;
        right: 0;
    }

    .page_propose_style_n_zeh .sub-title_border {
        font-size: 15px;
    }

    .page_propose_style_n_zeh .note_flat35 {
        font-size: 12px;
        line-height: 1.3;
    }

    .page_propose_style_n_zeh .note_flat35_bottom {
        font-size: 12px;
    }

    .page_propose_style_n_zeh .note_flat35_bottom span {
        font-size: 12px;
    }
}

@media screen and (max-width: 1167px) {
    .page_propose_style_n_zeh .js--merit_title {
        padding-bottom: 40px;
    }

    .page_propose_style_n_zeh .js--merit_title:before {
        right: calc(50% - 11px);
        font-size: 10px;
        bottom: -20px;
    }

    .page_propose_style_n_zeh .js--merit_title:after {
        height: 20px;
        line-height: 20px;
        width: 70px;
        font-size: 10px;
        bottom: 3px;
        letter-spacing: 0;
        right: calc(50% - 35px);
    }

    .page_propose_style_n_zeh .about_zen .js--merit_title:before {
        bottom: -11%;
    }

    .page_propose_style_n_zeh .about_zen .js--merit_title:after {
        bottom: 3%;
    }

    .page_propose_style_n_zeh .note_flat35_bottom.js--merit_title,
    .page_propose_style_n_zeh .payment .js--merit_title {
        padding-bottom: 0;
    }

    .page_propose_style_n_zeh .note_flat35_bottom.js--merit_title:before,
    .page_propose_style_n_zeh .payment .js--merit_title:before {
        right: 16px;
        bottom: -17px;
    }

    .page_propose_style_n_zeh .note_flat35_bottom.js--merit_title:after,
    .page_propose_style_n_zeh .payment .js--merit_title:after {
        right: 0;
    }
}

@media screen and (max-width: 1106px) {
    .page_propose_style_n_zeh br.spnone {
        display: none;
    }
}

@media screen and (min-width: 1107px) {
    .page_propose_style_n_zeh br.pcnone {
        display: none;
    }
}

/* Buy TOP
-------------------------------------------------- */

.has_top_line {
    border-top: 1px #cccccc solid;
    padding-top: 50px;
}

/* Construct TOP
-------------------------------------------------- */

.txt_lifestyle_name {
    position: relative;
    font-size: 18px;
    font-weight: 600;
    padding: 15px 0 8px;
    text-align: center;
}

.txt_lifestyle_name::after {
    content: "";
    position: absolute;
    background-color: #000000;
    width: 60px;
    height: 2px;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

.style_newfamily {
    color: #a34114;
}

.style_select {
    color: #d17b18;
}

.txt_lifestyle_name.style_newfamily::after {
    background-color: #a34114;
}

.txt_lifestyle_name.style_select::after {
    background-color: #d17b18;
}

/* Construct TOP
-------------------------------------------------- */

.wrap_youtube {
    max-width: 800px;
    margin: 20px auto 0;
}

.wrap_youtube_inner {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}

.wrap_youtube_inner iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

/* Construct > Select
-------------------------------------------------- */

.hdg_lv2.ttl_page_select {
    color: #d17b16;
    font-size: 35px;
    font-weight: 500;
}

@media screen and (max-width: 767px) {
    .hdg_lv2.ttl_page_select {
        color: #d17b16;
        font-size: 22px;
        font-weight: 500;
    }
}

/* Construct > Flow
-------------------------------------------------- */

.wrp_heading_selectflow {
    background: url(/resource/img/products/standard/merit/main.jpg) no-repeat
        center;
    background-size: cover;
    box-sizing: border-box;
    height: 400px;
}

@media screen and (max-width: 767px) {
    .wrp_heading_selectflow {
        height: 220px;
    }
}

/* Construct > New family
-------------------------------------------------- */

.wrp_heading_newfamily {
    background: url(/resource/img/lineup/family/main.jpg) no-repeat center;
    background-size: cover;
    box-sizing: border-box;
    height: 460px;
}

/*.wrp_heading_newfamily .hdg_lv1_2 span:nth-child(1) {
    font-size: 26px;
}

.wrp_heading_newfamily .hdg_lv1_2 span:nth-child(2) {
    max-width: 210px;
    margin: auto;
}*/

.new_family_intro {
    margin-top: 50px;
}

.new_family_intro .main_image {
    height: 500px;
    background: url(/resource/img/construct/newfamily/intro_main.jpg) no-repeat
        center top;
    background-size: cover;
}

.new_family_intro .outline {
    margin: -120px auto 0;
    max-width: 1400px;
}

.sec_newfamily_style {
    box-sizing: border-box;
    margin-top: 90px;
    padding: 0 60px;
}

.newfamily_timetable {
    position: relative;
    background: url(/resource/img/construct/newfamily/bg_concept.png) repeat;
    border-top: 10px #48798b solid;
    padding: 40px 60px 100px 60px;
}

.newfamily_timetable h3 {
    font-size: 35px;
    font-weight: 400;
}

.newfamily_timetable > span {
    position: absolute;
    box-sizing: border-box;
    left: 60px;
    top: -75px;
    width: 140px;
    height: 140px;
    padding-top: 55px;
    font-size: 24px;
    line-height: 1em;
    color: #fff;
    background-color: #48798b;
    border-radius: 50%;
    text-align: center;
}

.newfamily_timetable.weekend > span {
    left: 0;
    right: 0;
    margin: auto;
}

.newfamily_timetable.holiday > span {
    left: auto;
    right: 60px;
}

.newfamily_doma {
    margin-top: 110px;
    max-width: none;
    height: 830px;
    background: url(/resource/img/construct/newfamily/img_doma.png) no-repeat
        center bottom;
    background-size: cover;
}

.newfamily_concept {
    background: url(/resource/img/construct/newfamily/bg_concept_btm.png)
            no-repeat center bottom,
        url(/resource/img/construct/newfamily/bg_concept.png) repeat;
    background-size: 100% 100px, auto;
    text-align: center;
    padding-bottom: 120px;
}

.sec-concept {
    padding: 190px 0 60px;
}

.newfamily_concept_heading {
    background-color: #fff;
    text-align: center;
    padding: 70px 0 60px;
}

.newfamily_concept h2 {
    color: #3e3a39;
    font-size: 22px;
    font-weight: 500;
}

.newfamily_concept_heading h2 {
    max-width: 990px;
    margin: 0 auto;
}

.newfamily_concept_heading p {
    font-size: 22px;
    font-weight: 400;
    line-height: 2em;
    margin-top: 40px;
}

.newfamily_concept .sec-concept h2 {
    margin: 0 auto;
}

.newfamily_concept .sec-concept h2 span:nth-child(2) {
    display: block;
    margin-top: 15px;
}

.newfamily_concept .concept01 h2 {
    max-width: 170px;
}

.newfamily_concept .concept02 h2 {
    max-width: 380px;
}

.newfamily_concept .concept03 h2 {
    max-width: 482px;
}

.newfamily_concept .concept03 h2 img {
    margin-left: 186px;
}

.newfamily_concept_heading h2 span {
    display: block;
}

.concept_outline {
    position: relative;
    margin-top: 60px;
}

.concept_outline .txt_area {
    position: absolute;
    box-sizing: border-box;
    color: #ffffff;
    background-color: #870007;
    width: 42.74%;
    padding: 4.27%;
    text-align: left;
}

.concept_outline .txt_area strong {
    color: #bdc200;
    font-weight: 400;
}

.concept01,
.concept02,
.concept03 {
    overflow-x: hidden;
}

.concept01 {
    background: url(/resource/img/construct/newfamily/bg_concept_top.png)
        no-repeat center top;
    background-size: 100% 100px;
}

.concept01 .concept_outline .outline_image {
    margin-right: -60px;
}

.concept01 .concept_outline .txt_area {
    left: 0;
    top: 52%;
}

.concept_outline .txt_area h3 {
    font-size: 36px;
    font-weight: 400;
    line-height: 1.5em;
}

.concept_outline .txt_area p {
    padding-top: 20%;
    padding-left: 20%;
    line-height: 2em;
}

.concept02,
.concept03 {
    background: url(/resource/img/construct/newfamily/concept_part.png)
        no-repeat center top;
    background-size: 100% 130px;
}

.concept_image_large {
    margin-top: 50px;
    margin-left: -60px;
}

.collabo_detail_bg {
    background: url(/resource/img/construct/newfamily/kosei_bg_top.png)
        no-repeat center top;
    padding: 84px 0 0;
    margin-top: 100px;
}

.collabo_detail {
    background: url(/resource/img/construct/newfamily/kosei_bg_repeat.png)
        repeat;
}

.collabo_detail a,
.collabo_detail a .fa:before {
    color: #ffffff;
    text-decoration: underline;
}

.collabo_detail a .fa:before {
    font-size: 18px;
    padding-left: 5px;
}

.collabo_detail a:hover,
.collabo_detail a:hover .fa:before {
    color: #a4002c;
}

.collabo_detail > .inner {
    padding: 70px 90px 100px;
    color: #fff;
    text-align: left;
    position: relative;
}

.collabo_detail .logo_kawai {
    position: absolute;
    width: 250px;
    top: 70px;
    right: 0;
}

.collabo_detail h3 {
    font-size: 24px;
    font-weight: 500;
    line-height: 1.67em;
    padding-right: 280px;
}

.collabo_detail h3 + p {
    margin-top: 50px;
}

.lst_collabo_kawai {
    margin-top: 50px;
}

.lst_collabo_kawai li {
    padding: 6px;
    color: #333;
    background-color: #ffffff;
    display: flex;
    align-items: center;
    margin-top: 10px;
}

.lst_collabo_kawai li:nth-child(even) {
    flex-direction: row-reverse;
}

.lst_collabo_kawai .k_photo {
    width: 42.42%;
}

.lst_collabo_kawai dl {
    text-align: center;
    width: 57.58%;
}

.lst_collabo_kawai dl > * {
    text-align: center;
    max-width: 55%;
    margin: auto;
}

.lst_collabo_kawai dl > dt {
    font-size: 40px;
    color: #a4002c;
    border-bottom: 2px #a4002c solid;
    padding: 0 0 10px;
}

.lst_collabo_kawai dl > dd {
    margin-top: 20px;
    line-height: 2em;
}

.concept02 .concept_outline .outline_image {
    margin-right: -175px;
}

.concept02 .concept_outline .txt_area {
    left: 0;
    top: 20%;
    padding-bottom: 100px;
}

.concept02 .concept_outline.main .outline_image {
    margin-left: -115px;
    margin-right: 0;
}

.concept02 .concept_outline.main .txt_area {
    left: auto;
    right: 60px;
    top: 45%;
    padding-bottom: 4.27%;
}

.concept02 ul.casestudy {
    padding-top: 75px;
    padding: 75px 60px 0;
    background-color: #ffffff;
}

.concept02 ul.casestudy li {
    box-sizing: border-box;
    width: 50%;
    float: left;
}

.concept03 .concept_outline .outline_image {
    margin-left: -60px;
}

.concept03 .concept_outline .txt_area {
    right: 0;
    top: 22%;
}

.concept03 .concept_outline.second .outline_image {
    margin-right: 0;
    margin-left: 0;
}

.concept03 .concept_outline.second .txt_area {
    left: 0;
    right: auto;
    top: 15%;
}

.concept03 .concept_outline.second .txt_area p {
    padding-top: 40%;
}

.lst_collabo_interior li {
    margin-top: 10px;
    margin-right: -205px;
}

.wrp_collabo_team {
    background: url(/resource/img/construct/newfamily/bg_concept.png) repeat;
    padding: 30px 0 100px;
}

.sec-collabo {
    padding: 20px 60px 0;
    background-color: #ffffff;
    margin-top: 60px;
}

.sec-collabo + .sec-collabo {
    margin-top: 10px;
}

.sec-collabo strong {
    color: #a4002c;
    font-weight: bold;
}

.sec-collabo h3 > span {
    display: block;
}

.sec-collabo.collabo01 h3 > span:nth-child(1) {
    max-width: 250px;
    margin: 0 auto;
}

.sec-collabo.collabo02 h3 > span:nth-child(1) {
    max-width: 370px;
    margin: 0 auto;
}

.sec-collabo.collabo01 h3 > span:nth-child(2) {
    font-family: "Roboto", sans-serif;
    font-size: 46px;
    font-weight: 500;
    line-height: 1.33em;
    margin-top: 20px;
}

.sec-collabo.collabo02 h3 > span:nth-child(2) {
    font-size: 35px;
    font-weight: 500;
    line-height: 1.33em;
    margin-top: 20px;
}

.sec-collabo .artist_photo {
    float: right;
    width: 38.1%;
}

.sec-collabo .txt_area {
    box-sizing: border-box;
    width: 61.9%;
    float: right;
    padding-right: 60px;
    line-height: 1.75em;
}

.sec-collabo .txt_area dl + p {
    margin-top: 20px;
}

.sec-collabo .txt_area dl {
    margin-top: 30px;
}

.sec-collabo .txt_area dt {
    font-weight: 600;
}

.sec-collabo .txt_area dd {
    font-size: 35px;
    font-weight: 600;
    line-height: 1.33em;
}

.sec-collabo .txt_area ul {
    margin-top: 20px;
    margin-left: 22px;
}

.sec-collabo .txt_area ul li {
    list-style: outside disc;
}

.artist_results {
    width: auto;
}

.artist_results h4 {
    font-size: 30px;
    font-weight: 500;
}

@media screen and (max-width: 767px) {
    .wrp_heading_newfamily {
        background: url(/resource/img/construct/newfamily/main.jpg) no-repeat
            center;
        background-size: cover;
        box-sizing: border-box;
        height: 225px;
    }

    /*.wrp_heading_newfamily .hdg_lv1_2 span:nth-child(1) {
        font-size: 20px;
    }
    .wrp_heading_newfamily .hdg_lv1_2 span:nth-child(2) {
        max-width: 110px;
        margin: auto;
    }*/
    .new_family_intro {
        margin-top: 25px;
    }

    .new_family_intro .main_image {
        height: 250px;
        background: url(/resource/img/construct/newfamily/intro_main.jpg)
            no-repeat center top;
        background-size: cover;
    }

    .new_family_intro .outline {
        margin: -50px auto 0;
        max-width: 290px;
    }

    .sec_newfamily_style {
        box-sizing: border-box;
        margin-top: 50px;
        padding: 0 30px;
    }

    .lst_lifestyle {
        width: auto;
        margin: 0 -20px;
    }

    .lst_lifestyle li {
        padding: 10px 10px 0;
    }

    .lst_lifestyle li p {
        margin-top: 5px;
    }

    .newfamily_timetable {
        position: relative;
        background: url(/resource/img/construct/newfamily/bg_concept.png) repeat;
        border-top: 5px #48798b solid;
        padding: 20px 20px 50px 20px;
        margin-top: 30px;
    }

    .newfamily_timetable.weekend,
    .newfamily_timetable.holiday {
        margin-top: 0;
    }

    .newfamily_timetable h3 {
        font-size: 18px;
        font-weight: 500;
        margin: 20px 0 5px;
    }

    .newfamily_timetable > span {
        position: absolute;
        box-sizing: border-box;
        left: 10px;
        top: -26px;
        width: 50px;
        height: 50px;
        padding-top: 17px;
        font-size: 16px;
        line-height: 1em;
        color: #fff;
        background-color: #48798b;
        border-radius: 50%;
        text-align: center;
    }

    .newfamily_timetable.weekend > span {
        left: 0;
        right: 0;
        margin: auto;
    }

    .newfamily_timetable.holiday > span {
        left: auto;
        right: 10px;
    }

    .newfamily_timetable .chart {
        overflow-x: scroll;
    }

    .newfamily_timetable .chart img {
        width: 525px;
    }

    .newfamily_timetable p.visible_sp {
        font-size: 12px;
        margin-top: 10px;
        color: #a4002c;
    }

    .newfamily_doma {
        margin-top: 50px;
        max-width: none;
        height: 200px;
        background: url(/resource/img/construct/newfamily/img_doma.png)
            no-repeat center bottom;
        background-size: cover;
    }

    .newfamily_concept {
        background: url(/resource/img/construct/newfamily/bg_concept_btm.png)
                no-repeat center bottom,
            url(/resource/img/construct/newfamily/bg_concept.png) repeat;
        background-size: 200% 50px, auto;
        text-align: center;
        padding-bottom: 30px;
    }

    .sec-concept {
        padding: 70px 0 30px;
    }

    .newfamily_concept_heading {
        background-color: #fff;
        text-align: center;
        padding: 35px 0 10px;
    }

    .newfamily_concept h2 {
        color: #3e3a39;
        font-size: 15px;
        font-weight: 500;
    }

    .newfamily_concept_heading h2 {
        max-width: 990px;
        margin: 0 auto;
    }

    .newfamily_concept_heading p {
        font-size: 15px;
        font-weight: 400;
        line-height: 1.67em;
        margin-top: 20px;
    }

    .newfamily_concept .sec-concept h2 {
        margin: 0 auto;
    }

    .newfamily_concept .sec-concept h2 span:nth-child(2) {
        display: block;
        margin: 5px 20px 0;
    }

    .newfamily_concept .concept01 h2 {
        max-width: 125px;
    }

    .newfamily_concept .concept02 h2 {
        max-width: 230px;
    }

    .newfamily_concept .concept03 h2 {
        max-width: 281px;
    }

    .newfamily_concept .concept03 h2 img {
        margin-left: 0;
    }

    .newfamily_concept_heading h2 span {
        display: block;
    }

    .concept_outline {
        position: relative;
        margin-top: 30px;
    }

    .concept_outline .txt_area {
        position: relative;
        box-sizing: border-box;
        color: #ffffff;
        background-color: #870007;
        width: 100%;
        padding: 20px;
        text-align: left;
    }

    .concept_outline .txt_area strong {
        color: #bdc200;
        font-weight: 400;
    }

    .concept01,
    .concept02,
    .concept03 {
        overflow-x: hidden;
    }

    .concept01 {
        background: url(/resource/img/construct/newfamily/bg_concept_top.png)
            no-repeat center top;
        background-size: auto 50px;
    }

    .concept01 .concept_outline .outline_image {
        margin-right: 0;
    }

    .concept01 .concept_outline .txt_area {
        left: inherit;
        top: inherit;
        margin-top: -25px;
    }

    .concept_outline .txt_area h3 {
        font-size: 18px;
        font-weight: 400;
        line-height: 1.5em;
    }

    .concept_outline .txt_area p {
        padding-top: 20px;
        padding-left: 0;
        font-size: 14px;
        line-height: 2em;
    }

    .concept02,
    .concept03 {
        background: url(/resource/img/construct/newfamily/concept_part.png)
            no-repeat center top;
        background-size: auto 65px;
    }

    .concept_image_large {
        margin-top: 30px;
        margin-left: 0;
    }

    .collabo_detail_bg {
        background: url(/resource/img/construct/newfamily/kosei_bg_top.png)
            no-repeat center top;
        padding: 84px 0 0;
        margin-top: 0;
    }

    .collabo_detail {
        background: url(/resource/img/construct/newfamily/kosei_bg_repeat.png)
            repeat;
    }

    .collabo_detail a,
    .collabo_detail a .fa:before {
        color: #ffffff;
        text-decoration: underline;
    }

    .collabo_detail a .fa:before {
        font-size: 18px;
        padding-left: 5px;
    }

    .collabo_detail a:hover,
    .collabo_detail a:hover .fa:before {
        color: #a4002c;
    }

    .collabo_detail > .inner {
        padding: 30px 20px 40px;
        color: #fff;
        text-align: left;
        position: relative;
    }

    .collabo_detail .logo_kawai {
        position: relative;
        width: 180px;
        margin: 0 auto;
        top: auto;
        right: auto;
    }

    .collabo_detail h3 {
        font-size: 18px;
        font-weight: 500;
        line-height: 1.67em;
        padding-right: 0;
        margin-top: 20px;
    }

    .collabo_detail h3 + p {
        margin-top: 20px;
    }

    .lst_collabo_kawai {
        margin-top: 50px;
    }

    .lst_collabo_kawai li {
        padding: 6px;
        color: #333;
        background-color: #ffffff;
        display: block;
        align-items: center;
        margin-top: 10px;
    }

    .lst_collabo_kawai li:nth-child(even) {
        flex-direction: row-reverse;
    }

    .lst_collabo_kawai .k_photo {
        width: 100%;
    }

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

    .lst_collabo_kawai dl > * {
        text-align: center;
        max-width: none;
        margin: auto;
    }

    .lst_collabo_kawai dl > dt {
        font-size: 26px;
        color: #a4002c;
        border-bottom: 2px #a4002c solid;
        padding: 5px 0 5px;
    }

    .lst_collabo_kawai dl > dd {
        margin: 15px 10px 15px;
        line-height: 2em;
    }

    .concept02 .concept_outline .outline_image {
        margin-right: 0;
    }

    .concept02 .concept_outline .txt_area {
        left: auto;
        top: auto;
        padding-bottom: 20px;
        margin-top: -50px;
    }

    .concept02 .concept_outline.main .outline_image {
        margin-left: 0;
        margin-right: 0;
    }

    .concept02 .concept_outline.main .txt_area {
        left: auto;
        right: 0;
        top: auto;
        padding-bottom: 4.27%;
        margin-top: -80px;
    }

    .concept02 ul.casestudy {
        padding: 40px 20px 0;
        background-color: #ffffff;
    }

    .concept02 ul.casestudy li {
        width: auto;
        float: none;
    }

    .concept03 .concept_outline .outline_image {
        margin-left: 0;
    }

    .concept03 .concept_outline .txt_area {
        right: 0;
        top: 22%;
        margin-top: -25px;
    }

    .concept03 .concept_outline.second .outline_image {
        margin-right: 0;
        margin-left: 0px;
    }

    .concept03 .concept_outline.second .txt_area {
        left: 0;
        right: auto;
        top: 15%;
        margin-top: -30px;
    }

    .concept03 .concept_outline.second .txt_area p {
        padding-top: 20px;
    }

    .lst_collabo_interior li {
        margin-top: 10px;
        margin-right: -35px;
    }

    .wrp_collabo_team {
        background: url(/resource/img/construct/newfamily/bg_concept.png) repeat;
        padding: 1px 0 50px;
    }

    .sec-collabo {
        padding: 1px 20px 0;
        margin-top: 30px;
    }

    .sec-collabo strong {
        color: #a4002c;
        font-weight: bold;
    }

    .sec-collabo h3 > span {
        display: block;
    }

    .sec-collabo.collabo01 h3 > span:nth-child(1) {
        max-width: 180px;
        margin: 0 auto;
    }

    .sec-collabo.collabo02 h3 > span:nth-child(1) {
        max-width: 240px;
        margin: 0 auto;
    }

    .sec-collabo.collabo01 h3 > span:nth-child(2) {
        font-family: "Roboto", sans-serif;
        font-size: 22px;
        font-weight: 500;
        line-height: 1.33em;
        margin-top: 20px;
    }

    .sec-collabo.collabo02 h3 > span:nth-child(2) {
        font-size: 22px;
        font-weight: 500;
        line-height: 1.33em;
        margin-top: 10px;
    }

    .sec-collabo .artist_photo {
        float: none;
        width: auto;
        max-width: 200px;
        margin: 20px auto;
    }

    .sec-collabo .txt_area {
        box-sizing: border-box;
        width: auto;
        float: right;
        padding-right: 0;
        line-height: 1.75em;
    }

    .sec-collabo .txt_area dl + p {
        margin-top: 20px;
    }

    .sec-collabo .txt_area dl {
        margin-top: 30px;
    }

    .sec-collabo .txt_area dt {
        font-weight: 400;
    }

    .sec-collabo .txt_area dd {
        font-size: 18px;
        font-weight: 600;
        line-height: 1.33em;
    }

    .sec-collabo .txt_area ul {
        margin-top: 10px;
        margin-left: 22px;
    }

    .sec-collabo .txt_area ul li {
        list-style: outside disc;
    }

    .artist_results {
        width: auto;
    }

    .artist_results h4 {
        font-size: 18px;
        font-weight: 500;
    }
}

.bx-clone {
    display: none !important;
}

.disp-flex {
    display: flex;
}

/* Lineup
-------------------------------------------------- */

.lst_products_lineup {
    display: flex;
    flex-wrap: wrap;
    margin: -90px -15px 0;
}

.lst_products_lineup li {
    width: 25%;
    box-sizing: border-box;
    padding: 0 15px;
    margin-top: 70px;
}

.lst_products_lineup li dl {
    margin-top: 20px;
}

.lst_products_lineup li dt {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.33em;
}

.lst_products_lineup li dd {
    font-size: 18px;
    line-height: 1.33em;
    margin-top: 10px;
}

.lst_products_lineup li dd + dd {
    margin-top: 15px;
}

.lst_products_lineup li dd.txt_product_catch {
    font-size: 15px;
    line-height: 1.33em;
    padding: 0 0 15px;
    border-bottom: 1px #ccc solid;
}

.lst_products_lineup li dd .txt_price_label {
    display: inline-block;
    background-color: #cccccc;
    border-radius: 10px;
    font-size: 14px;
    line-height: 1.33em;
    padding: 2px 8px;
    margin-right: 10px;
}

.lst_products_lineup li dd .txt_price_value strong {
    font-size: 21px;
}

.lst_products_lineup p {
    text-align: right;
    margin-top: 20px;
    display: flex;
    justify-content: flex-end;
}

.lst_products_lineup p .btn {
    width: 120px;
    min-width: inherit;
    box-sizing: border-box;
    box-shadow: none;
}

.lst_products_lineup p .btn + .btn {
    margin-left: 10px;
}

.lst_products_lineup .product_type_stylen p .btn {
    background-color: #999;
    flex: 1;
}

.lst_products_lineup .product_type_stylen_zeh p .btn {
    background-color: #999;
    flex: 1;
}

.lst_products_lineup .product_type_styleu p .btn {
    background-color: #999;
    flex: 1;
}

.lst_products_lineup .product_type_stylep p .btn {
    background-color: #999;
    flex: 1;
}

.lst_products_lineup .product_type_family p .btn {
    background-color: #999;
    flex: 1;
}

.lst_products_lineup .product_type_nihon p .btn {
    background-color: #999;
    flex: 1;
}

.lst_products_lineup .product_type_stylef p .btn {
    background-color: #999;
    flex: 1;
}

.lst_products_lineup .product_type_generation p .btn {
    background-color: #999;
    flex: 1;
}

.lst_products_lineup p .btn.btn_search {
    width: auto;
    background-color: #a4002c;
}

/*---------------------------*/

.lst_products_lineup.toppage .btn_more {
    background-color: #a4002c;
    margin: auto;
    padding: 0 15px;
    height: 17px;
}

.lst_products_lineup.toppage {
    margin-top: -50px;
}

.lst_products_lineup.toppage li {
    margin-top: 30px;
}

.lst_products_lineup.toppage li a {
    display: block;
    position: relative;
}

.lst_products_lineup.toppage li a dl {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 10px 10px 10px;
    background: rgba(0, 0, 0, 0.2);
    text-align: center;
}

.lst_products_lineup.toppage li a dl dt {
    text-align: center;
    color: #fff;
}

.lst_products_lineup.toppage li a dl dd {
    text-align: center;
    margin-top: 5px;
}

/*---------------------------*/

.wrp_lineup_select {
    display: none;
}

.lineup-spec-heading {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.33em;
    padding-top: 20px;
    position: sticky;
    top: 130px;
}

.lineup-spec-heading span {
    display: block;
    padding-bottom: 15px;
}

.lineup-spec-heading .lineup-spec-item:nth-child(1) span {
    color: #487b1c;
}

.lineup-spec-heading .lineup-spec-item:nth-child(2) span {
    color: #324683;
}

.lineup-spec-heading .lineup-spec-item:nth-child(3) span {
    color: #898019;
}

.lineup-spec-heading .lineup-spec-item:nth-child(4) span {
    color: #a34112;
}

.lineup-spec-heading .lineup-spec-item:nth-child(5) span {
    color: #d17b16;
}

#spec-category.lineup-spec-heading .lineup-spec-item span {
    color: #000000;
}

.tbl-lineup-spec {
    margin-top: 50px;
}

.tbl-lineup-ttl {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.33em;
}

.lineup-spec-row {
    display: flex;
    margin: 0 -15px;
    margin-top: 25px;
}

.lineup-spec-row.txt-mid {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.33em;
    align-items: center;
}

.lineup-spec-row.txt-large {
    font-size: 24px;
    font-weight: 500;
    line-height: 1.33em;
    align-items: center;
}

.lineup-spec-row + .lineup-spec-row {
    margin-top: 20px;
}

.lineup-spec-row .lineup-spec-item {
    width: 20%;
    box-sizing: border-box;
    padding: 0 15px;
    text-align: center;
}

#spec-category .lineup-spec-item {
    padding: 0 10px;
}

#spec-category .lineup-spec-item:nth-child(1) {
    width: 60%;
}

#spec-category .lineup-spec-item span {
    display: block;
    background-color: #ccc;
    border-radius: 0px;
    padding: 5px;
}

.lineup-spec-row .lineup-spec-item dt,
.lineup-spec-row .lineup-spec-item dd {
    text-align: center;
}

.lineup-spec-row .lineup-spec-item dt {
    font-size: 24px;
    font-weight: 500;
    line-height: 1.33em;
}

.lineup-spec-row .lineup-spec-item span {
    display: block;
}

.lineup-spec-row .lineup-spec-item strong {
    font-size: 36px;
    font-weight: 500;
    line-height: 1.33em;
}

.lineup-spec-row .lineup-spec-item span img {
    padding-bottom: 20px;
}

.wrp_leading_area {
    padding: 100px 0;
    margin-top: 50px;
}

.bg_leading_style_n {
    background: url("../img/lineup/stylen/main.jpg") no-repeat center center;
    background-size: cover;
}

.bg_leading_style_n_zeh {
    background: url("../img/lineup/stylenzeh/main.jpg") no-repeat center center;
    background-size: cover;
}

.bg_leading_style_u {
    background: url("../img/lineup/styleu/main.jpg") no-repeat center center;
    background-size: cover;
}

.bg_leading_style_p {
    background: url("../img/lineup/stylep/main.jpg") no-repeat center center;
    background-size: cover;
}

.bg_leading_family {
    background: url("../img/lineup/family/main.jpg") no-repeat center center;
    background-size: cover;
}

.bg_leading_nihon {
    background: url(../img/lineup/bg_leading_area.jpg) no-repeat center center;
    background-size: cover;
}

.bg_leading-style-f {
    background: url(../img/lineup/stylef/main.jpg) no-repeat center center;
    background-size: cover;
}

.page_propose_style_n_zeh .bg_leading_style_n_zeh figure img {
    width: auto;
}

.wrp_leading_area ul {
    display: flex;
    margin: 0 -15px;
}

.wrp_leading_area ul li {
    width: 33.3333%;
    box-sizing: border-box;
    padding: 0 15px;
    min-height: 240px;
}

.wrp_leading_area.bg_leading_nihon ul li {
    width: 50%;
    box-sizing: border-box;
    padding: 0 15px;
    min-height: 250px;
}

.wrp_leading_area ul li a {
    position: relative;
    display: flex;
    flex-direction: column;
    background-color: rgba(255, 255, 255, 0.8);
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    padding: 60px 20px 40px;
    text-align: center;
    transition: all 0.3s;
}

.wrp_leading_area ul li a:hover {
    background-color: rgba(255, 255, 255, 1);
    color: #333;
}

.wrp_leading_area ul li a p {
    position: absolute;
    left: 10px;
    right: 10px;
    top: 20px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.33em;
    color: #a4002c;
}

.wrp_leading_area ul li dl * {
    text-align: center;
}

.wrp_leading_area ul li dl dt {
    font-size: 24px;
    line-height: 1.33em;
    margin-top: 10px;
}

.wrp_leading_area ul li dl dd {
    margin-top: 12px;
}

.wrp_leading_area ul li a .btn {
    position: absolute;
    right: 10px;
    bottom: 10px;
    font-size: 12px;
    min-width: 80px;
    background-color: #a3002b;
    padding: 5px 10px;
}

@media screen and (max-width: 1024px) {
}

@media screen and (max-width: 767px) {
    .lst_products_lineup {
        display: flex;
        flex-wrap: wrap;
        margin: -90px -5px 0;
    }

    .lst_products_lineup.toppage {
        margin-top: -20px;
    }

    .lst_products_lineup li {
        width: 50%;
        box-sizing: border-box;
        padding: 0 5px 30px;
        margin-top: 30px;
    }

    /*---------------------------*/

    .lst_products_lineup.toppage {
        margin: 10px auto 0;
    }

    .lst_products_lineup.toppage li {
        box-sizing: border-box;
        padding: 0 0 0;
        margin-top: 10px;
    }

    /*---------------------------*/

    .lst_products_lineup li dl {
        margin-top: 10px;
    }

    .lst_products_lineup li dt {
        font-size: 20px;
        font-weight: 500;
        line-height: 1.33em;
    }

    .lst_products_lineup li dd {
        font-size: 14px;
        line-height: 1.33em;
        margin-top: 10px;
    }

    .lst_products_lineup li dd + dd {
        margin-top: 15px;
    }

    .lst_products_lineup li dd.txt_product_catch {
        font-size: 14px;
        line-height: 1.33em;
        padding: 0 0 15px;
        border-bottom: 1px #ccc solid;
    }

    .lst_products_lineup li dd .txt_price_label {
        display: inline-block;
        background-color: #cccccc;
        border-radius: 10px;
        font-size: 10px;
        line-height: 1.33em;
        padding: 2px 8px;
        margin-right: 10px;
    }

    .lst_products_lineup li dd .txt_price_value {
        display: block;
        margin-top: 10px;
    }

    .lst_products_lineup li dd .txt_price_value strong {
        font-size: 22px;
    }

    .lst_products_lineup p {
        text-align: right;
        margin-top: 20px;
        display: block;
        justify-content: flex-end;
    }

    .lst_products_lineup p .btn {
        width: auto;
        min-width: inherit;
        box-sizing: border-box;
        box-shadow: none;
        font-size: 12px;
        padding: 10px 10px;
        display: block;
        margin-top: 5px;
    }

    .lst_products_lineup p .btn + .btn {
        margin-left: 0;
    }

    .lst_products_lineup .product_type_stylen p .btn {
        background-color: #999;
        flex: 1;
    }

    .lst_products_lineup .product_type_styleu p .btn {
        background-color: #999;
        flex: 1;
    }

    .lst_products_lineup .product_type_stylep p .btn {
        background-color: #999;
        flex: 1;
    }

    .lst_products_lineup .product_type_family p .btn {
        background-color: #999;
        flex: 1;
    }

    .lst_products_lineup .product_type_nihon p .btn {
        background-color: #999;
        flex: 1;
    }

    .lst_products_lineup .product_type_generation p .btn {
        background-color: #999;
        flex: 1;
    }

    .lst_products_lineup p .btn.btn_search {
        width: auto;
        margin-right: 0;
        background-color: #a4002c;
    }

    .txt-spec-scroll {
        text-align: center;
        color: #a4002c;
    }

    .lineup-spec-heading {
        font-size: 20px;
        font-weight: 600;
        line-height: 1.33em;
        padding-top: 20px;
    }

    .lineup-spec-heading span {
        display: block;
        padding-bottom: 15px;
    }

    .lineup-spec-heading .lineup-spec-item:nth-child(1) span {
        color: #487b1c;
    }

    .lineup-spec-heading .lineup-spec-item:nth-child(2) span {
        color: #324683;
    }

    .lineup-spec-heading .lineup-spec-item:nth-child(3) span {
        color: #898019;
    }

    .lineup-spec-heading .lineup-spec-item:nth-child(4) span {
        color: #a34112;
    }

    .lineup-spec-heading .lineup-spec-item:nth-child(5) span {
        color: #d17b16;
    }

    .tbl-lineup-spec {
        margin-top: 30px;
    }

    .tbl-lineup-ttl {
        font-size: 14px;
        font-weight: 600;
        line-height: 1.33em;
    }

    .lineup-spec-row {
        display: flex;
        margin: 0 -5px;
        margin-top: 25px;
        flex-direction: row;
    }

    .lineup-spec-row.lineup-spec-heading {
        margin-top: 0;
    }

    .lineup-spec-row.txt-mid {
        font-size: 16px;
        font-weight: 500;
        line-height: 1.33em;
        align-items: center;
    }

    .lineup-spec-row.txt-large {
        font-size: 20px;
        font-weight: 500;
        line-height: 1.33em;
        align-items: center;
    }

    .lineup-spec-row + .lineup-spec-row {
        margin-top: 20px;
    }

    .lineup-spec-row .lineup-spec-item dt,
    .lineup-spec-row .lineup-spec-item dd {
        text-align: center;
    }

    .lineup-spec-row .lineup-spec-item dt {
        font-size: 24px;
        font-weight: 500;
        line-height: 1.33em;
    }

    .lineup-spec-row .lineup-spec-item span {
        display: block;
    }

    .lineup-spec-row .lineup-spec-item strong {
        font-size: 30px;
        font-weight: 500;
        line-height: 1.33em;
    }

    .lineup-spec-row .lineup-spec-item span img {
        padding-bottom: 20px;
        width: 71px;
        height: auto;
    }

    .wrp_leading_area {
        padding: 40px 0;
        margin-top: 30px;
    }

    .bg_leading_style_n {
        background: url("../img/lineup/stylen/main.jpg") no-repeat center center;
        background-size: cover;
    }

    .bg_leading_style_u {
        background: url("../img/lineup/styleu/main.jpg") no-repeat center center;
        background-size: cover;
    }

    .bg_leading_style_p {
        background: url("../img/lineup/stylep/main.jpg") no-repeat center center;
        background-size: cover;
    }

    .bg_leading_family {
        background: url("../img/lineup/family/main.jpg") no-repeat center center;
        background-size: cover;
    }

    .bg_leading_nihon {
        background: url(../img/lineup/bg_leading_area.jpg) no-repeat center
            center;
        background-size: cover;
    }

    .bg_leading-style-f {
        background: url(../img/lineup/stylef/main.jpg) no-repeat center center;
        background-size: cover;
    }

    .wrp_leading_area ul {
        display: flex;
        margin: 0 -5px;
    }

    .wrp_leading_area ul li {
        width: 33.3333%;
        box-sizing: border-box;
        padding: 0 5px;
        min-height: inherit;
    }

    .wrp_leading_area.bg_leading_nihon ul li {
        width: 50%;
        box-sizing: border-box;
        padding: 0 15px;
        min-height: inherit;
    }

    .wrp_leading_area ul li a {
        position: relative;
        display: flex;
        flex-direction: column;
        background-color: rgba(255, 255, 255, 0.8);
        box-sizing: border-box;
        width: 100%;
        height: 100%;
        padding: 40px 10px 40px;
        text-align: center;
        transition: all 0.3s;
    }

    .wrp_leading_area ul li a:hover {
        background-color: rgba(255, 255, 255, 1);
        color: #333;
    }

    .wrp_leading_area ul li a p {
        position: absolute;
        left: 2px;
        right: 2px;
        top: 10px;
        font-size: 9px;
        font-weight: 500;
        line-height: 1.33em;
        color: #a4002c;
    }

    .wrp_leading_area ul li dl * {
        text-align: center;
    }

    .wrp_leading_area ul li dl dt {
        font-size: 14px;
        line-height: 1.33em;
        margin-top: 10px;
    }

    .wrp_leading_area ul li dl dd {
        margin-top: 12px;
        display: none;
    }

    .wrp_leading_area ul li a .btn {
        position: absolute;
        right: 10px;
        left: 10px;
        bottom: 10px;
        font-size: 10px;
        min-width: 80px;
        background-color: #a3002b;
        padding: 5px 10px;
        margin: auto;
    }

    .wrp_leading_area ul li a figure {
        padding: 0 30px;
    }
}

@media screen and (max-width: 460px) {
    .lst_products_lineup.toppage li {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
}

@media screen and (max-width: 1023px) {
    .lineup-spec-row {
        width: 250%;
    }

    .lineup-spec-row .lineup-spec-item {
        width: 50%;
        flex-basis: 50%;
        box-sizing: border-box;
        padding: 0 10px;
        text-align: center;
    }

    #spec-category .lineup-spec-item {
        padding: 0 10px;
        width: 50%;
        flex-basis: 50%;
    }

    #spec-category .lineup-spec-item:nth-child(1) {
        width: 150%;
        flex-basis: 150%;
    }

    #spec-category .lineup-spec-item span {
        display: block;
        background-color: #ccc;
        border-radius: 0px;
        padding: 5px;
    }

    #spec-list {
        overflow: scroll;
        padding: 0 0 20px;
        border: 1px #eee;
        border-style: solid none;
    }

    .wrp_lineup_select {
        display: flex;
        margin: 0 -10px -20px;
    }

    .wrp_lineup_select > div {
        width: 50%;
        padding: 10px;
    }

    .wrp_lineup_select > div select {
        width: 100%;
        padding: 5px;
    }

    .lineup-spec-row.col_reverse {
        flex-direction: row-reverse;
    }

    .lineup-spec-row .lineup-spec-item.active1,
    .lineup-spec-row .lineup-spec-item.active2 {
        display: block;
    }
}

/* Product
-------------------------------------------------- */

.swiper-mv-slide .swiper-slide {
    background-color: #fff;
}

.page_propose_style {
    padding-top: 72px;
}

.wrp_product_title {
    min-height: 48px;
    padding: 20px 15px;
    background-color: #fff;
    border-bottom: 1px solid #ddd;
    transition: all 0.3s;
}

.wrp_product_title > .inner {
    display: flex;
    align-items: center;
    max-width: 1170px;
    margin: auto;
    background-color: #fff;
}

.page_propose_style .wrp_product_title {
    position: fixed;
    left: 0;
    right: 0;
    top: 128px;
    z-index: 1000;
}

.wrp_product_title h1 {
    font-size: 32px;
    font-weight: 500;
    line-height: 1.1em;
    flex-grow: 2;
}

.wrp_product_title .right {
    display: flex;
    align-items: center;
}

.wrp_product_title .right .price {
    display: flex;
    align-items: flex-end;
    line-height: 1.2em;
    text-align: center;
    padding-right: 10px;
}

.wrp_product_title .right .price > * {
    padding: 0 5px;
}

.wrp_product_title .right .price strong {
    font-family: "Oswald", sans-serif;
    font-size: 42px;
    font-weight: 400;
    line-height: 1em;
    color: #333333;
}

.wrp_product_title .right .button {
    display: flex;
    line-height: 1.2em;
}

.wrp_product_title .right .button a {
    display: block;
    color: #ffffff;
    background-color: #a7002c;
    margin: 0 4px;
    padding: 5px 15px;
    border: none;
}

/* Scrolled */
.page_propose_style .wrp_product_title.scrolled {
    padding: 15px 15px;
    font-size: 12px;
    line-height: 1.33em;
}

.page_propose_style .wrp_product_title.scrolled h1 {
    font-size: 24px;
    line-height: 1.1em;
}

.page_propose_style .wrp_product_title.scrolled .right .price strong {
    font-size: 30px;
    line-height: 1em;
}

/* Scrolled */

.swiper-mv-slide .wrp_product_title .right .button a {
    padding: 5px 40px;
}

.page_propose_style_n .wrp_product_title .right .button a {
    background-color: #487b1b;
}

.page_propose_style_u .wrp_product_title .right .button a {
    background-color: #314683;
}

.page_propose_style_p .wrp_product_title .right .button a {
    background-color: #aa9b91;
}

.page_propose_family .wrp_product_title .right .button a {
    background-color: #c8005a;
}

.page_propose_nihon .wrp_product_title .right .button a {
    background-color: #91ab31;
}

.page_propose_style_f .wrp_product_title .right .button a {
    background-color: #695848;
}

.wrp_product_title .right .button a .fa::before {
    color: #ffffff;
}

.wrp_border_none {
    border: none !important;
}

.txt-product-catch {
    position: absolute;
    background-color: rgba(255, 255, 255, 0.7);
    margin: auto;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 460px;
    height: 154px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 22px;
    line-height: 1.67em;
    /*opacity: 0.8;*/
}

.product_type_pinokio .text-content {
    height: 246px;
    padding: 0;
    line-height: 246px;
    font-size: 28px;
    font-weight: 500;
    color: #fff;
}

.color-black {
    color: #000 !important;
    font-weight: normal !important;
}

.txt-product-catch span {
    color: #fff;
    font-weight: lighter;
}

.bg-style-n {
    /*background-color: #22440C;*/
    background-color: RGBA(34, 68, 12, 0.8);
}

.bg-style-n_zen {
    /*background-color: #4d969f !important;*/
    background-color: RGBA(77, 150, 159, 0.8) !important;
}

.bg-style-n-zeh {
    background-color: #afeeee;
}

.bg-style-u {
    /*background-color: #01264C;*/
    background-color: RGBA(1, 38, 76, 0.8);
}

.bg-style-p {
    /*background-color: #AA9B91;*/
    background-color: RGBA(85, 50, 22, 0.8);
}

.bg-style-landsat {
    background-color: #ffe338;
    color: #000;
}

.bg-style-new-family {
    /*background-color: #c8005a;*/
    background-color: RGBA(177, 3, 43, 0.8);
}

.bg-style-nihonno {
    /*background-color: #91AB31;*/
    background-color: RGBA(112, 133, 35, 0.8);
}

.bg-style-pinokio {
    /*background-color: #282828;*/
    background-color: RGBA(40, 40, 40, 0.8);
}

.bg-style-f {
    /*background-color: rgb(104 89 81) !important;*/
    background-color: RGBA(104, 89, 81, 0.8) !important;
}

.bg-ic-style-n {
    background-color: #507936;
}

.bg-ic-style-n-zeh {
    background-color: #67b5b7 !important;
}

.bg-ic-style-u {
    background-color: #2e457c;
}

.bg-ic-style-p {
    background-color: #887c2b;
}

.bg-ic-style-landsat {
    background-color: #e1e44a;
}

.bg-ic-style-new-family {
    background-color: #a34323;
}

.bg-ic-style-nihonno {
    background-color: #8e450e;
}

.bg-ic-style-pinokio {
    background-color: #595757;
}

.wrp_product_concpet {
    display: flex;
    margin-top: 100px;
}

.wrp_product_concpet.even {
    flex-direction: row-reverse;
}

.wrp_product_concpet .text {
    flex-shrink: 0;
    width: 38.03%;
    box-sizing: border-box;
    padding-right: 60px;
}

.wrp_product_concpet.even .text {
    padding-right: 0;
    padding-left: 60px;
}

.wrp_product_concpet .text h3 {
    text-align: left;
    margin: 0 0 20px;
}

.wrp_product_concpet .text p {
    font-size: 18px;
    line-height: 2.25em;
}

.page_propose_style_n_zeh .wrp_product_concpet .text p {
    text-align: left;
    font-weight: normal;
}

@media screen and (min-width: 1169px) {
    .page_propose_style_n_zeh .wrp_product_concpet .text {
        width: 40%;
    }
}

.lst_media_zoom:not(.lst_media_zoom_sponly) li {
    position: relative;
    cursor: pointer;
}

.lst_media_zoom li span {
    position: absolute;
    width: 30px;
    height: 30px;
    right: 15px;
    bottom: 0;
    background-color: #a7002c;
    color: #ffffff;
    text-align: center;
    transition: all 0.3s;
}

.lst_media_zoom.lst_media_zoom_sponly li span {
    display: none;
}

.lst_media_zoom li:hover span {
    background-color: #000;
}

.lst_media_zoom li span .fa::before {
    color: #ffffff;
    font-size: 18px;
    margin-right: 0;
    margin-top: 5px;
}

.lst_media_zoom li .name {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    left: 15px;
    right: 15px;
    top: 0;
    bottom: 0;
    color: #ffffff;
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    transition: all 0.3s;
}

.lst_media_zoom li:hover .name {
    opacity: 1;
}

.modal_window_lineup {
    position: fixed;
    z-index: 2000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    display: none;
}

.modal_window_lineup ul {
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
}

.modal_window_lineup li {
    padding: 20px;
}

.modal_window_lineup .btn_modal_close span {
    background-color: #fff;
}

.product_type_pinikio {
    position: relative;
}

.btn_pinokio {
    content: "coming \A soon";
    white-space: pre-wrap;
    font-size: 30px;
    color: #fff !important;
    display: flex;
    position: absolute;
    left: 15px;
    right: 15px;
    top: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.3);
    justify-content: center;
    align-items: center;
    text-align: center;
}

.product_type_pinikio dl {
    margin-top: 75px !important;
}

.product_type_pinikio dt {
    text-align: center;
}

.product_type_pinikio dd {
    border: none !important;
    text-align: center;
}

.pinokio_img {
    margin-top: 100px;
    height: auto;
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

.pinokio_img_sp {
    display: none;
}

.pinokio_center {
    padding: 215px 75px;
    background-color: #e6e6e6;
}

.pinokio_content {
    display: block;
    padding: 30px;
    color: #333333;
    text-align: center;
    font-size: 12pt;
    line-height: 49px;
    letter-spacing: 4px;
}

.pinokio_content_sp {
    display: none;
}

.icon_new_style {
    position: absolute;
    bottom: 1px;
    right: 1px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.icon_new_style .new_circle {
    display: flex;
    border: 1px solid #fff;
    border-radius: 50%;
    font-size: 11px;
    color: #fff;
    width: 45px;
    height: 45px;
    justify-content: center;
    align-items: center;
    letter-spacing: 2px;
    font-weight: 100;
}

.icon_new_style .dot {
    display: inline-block;
    width: 6px;
    height: 6px;
    background: #fff;
    border-radius: 50%;
    margin-top: 2px;
}

.icon_new_style .dot:nth-child(2) {
    opacity: 0.6;
}

.icon_new_style .dot:last-child {
    opacity: 0.4;
}

.icon_new_style.js-anime .new_circle,
.icon_new_style.js-anime .dot {
    animation: anime0 1.25s;
}

@keyframes anime0 {
    0% {
        transform: translate(0px, 100px);
    }

    5% {
        transform: translate(0px, 95px);
    }

    10% {
        transform: translate(0px, 90px);
    }

    15% {
        transform: translate(0px, 85px);
    }

    20% {
        transform: translate(0px, 80px);
    }

    25% {
        transform: translate(0px, 75px);
    }

    30% {
        transform: translate(0px, 70px);
    }

    35% {
        transform: translate(0px, 65px);
    }

    40% {
        transform: translate(0px, 60px);
    }

    45% {
        transform: translate(0px, 55px);
    }

    50% {
        transform: translate(0px, 50px);
    }

    55% {
        transform: translate(0px, 45px);
    }

    60% {
        transform: translate(0px, 40px);
    }

    65% {
        transform: translate(0px, 35px);
    }

    70% {
        transform: translate(0px, 30px);
    }

    75% {
        transform: translate(0px, 25px);
    }

    80% {
        transform: translate(0px, 20px);
    }

    85% {
        transform: translate(0px, 15px);
    }

    90% {
        transform: translate(0px, 10px);
    }

    95% {
        transform: translate(0px, 5px);
    }

    100% {
        transform: translate(0px, 0px);
    }
}

@keyframes anime1 {
    0% {
        transform: translate(0px, 0px);
    }

    12.5% {
        transform: translate(1px, 1px);
    }

    25% {
        transform: translate(1px, 2px);
    }

    37.5% {
        transform: translate(1px, 1px);
    }

    50% {
        transform: translate(0px, 0px);
    }

    62.5% {
        transform: translate(-1px, -1px);
    }

    75% {
        transform: translate(-1px, -2px);
    }

    87.5% {
        transform: translate(-1px, -1px);
    }

    100% {
        transform: translate(0px, 0px);
    }
}

@keyframes anime2 {
    0% {
        transform: translate(0px, 0px);
    }

    12.5% {
        transform: translate(2px, 1px);
    }

    25% {
        transform: translate(3px, 2px);
    }

    37.5% {
        transform: translate(2px, 1px);
    }

    50% {
        transform: translate(0px, 0px);
    }

    62.5% {
        transform: translate(-2px, -1px);
    }

    75% {
        transform: translate(-3px, -2px);
    }

    87.5% {
        transform: translate(-2px, -1px);
    }

    100% {
        transform: translate(0px, 0px);
    }
}

@media screen and (max-width: 767px) {
    .swiper-mv-slide {
        overflow: hidden;
    }

    .page_propose_style {
        padding-top: 0;
    }

    .wrp_product_title {
        padding: 10px 10px 10px;
        background-color: #eee;
        border-top: 1px solid #ddd;
        border-bottom: none;
    }

    .swiper-mv-slide .wrp_product_title {
        background-color: #fff;
    }

    .wrp_product_title > .inner {
        display: flex;
        flex-direction: column;
        align-items: center;
        max-width: 1170px;
        margin: auto;
        background-color: transparent;
    }

    .swiper-mv-slide .wrp_product_title > .inner {
        flex-direction: row;
    }

    .page_propose_style .wrp_product_title {
        position: fixed;
        left: 0;
        right: 0;
        top: inherit;
        bottom: 0;
        z-index: 1000;
    }

    .swiper-mv-slide .wrp_product_title {
        font-size: 11px;
        min-height: 48px;
        box-sizing: border-box;
    }

    .swiper-mv-slide .page_woodfriends_value .wrp_product_title {
        padding: 15px 10px 10px;
    }

    .wrp_product_title h1 {
        font-size: 18px;
        font-weight: 500;
        line-height: 1.1em;
        flex-grow: 2;
    }

    .wrp_product_title .right {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .swiper-mv-slide .wrp_product_title .right {
        flex-direction: row;
    }

    .wrp_product_title .right .price {
        display: flex;
        align-items: flex-end;
        line-height: 1.2em;
        text-align: center;
        padding-right: 0;
        margin-top: 10px;
    }

    .swiper-mv-slide .wrp_product_title .right .price {
        margin-top: 0;
    }

    .wrp_product_title .right .price > * {
        padding: 0 5px;
    }

    .wrp_product_title .right .price strong {
        font-family: "Oswald", sans-serif;
        font-size: 26px;
        font-weight: 400;
        line-height: 1em;
        color: #333333;
    }

    .page_propose_style .wrp_product_title .right .price br {
        display: none;
    }

    .wrp_product_title .right .button {
        display: flex;
        line-height: 1.2em;
        margin-top: 10px;
    }

    .swiper-mv-slide .wrp_product_title .right .button {
        display: none;
    }

    .wrp_product_title .right .button a {
        display: block;
        color: #ffffff;
        background-color: #a7002c;
        margin: 0 4px;
        padding: 5px 15px;
    }

    .wrp_product_title .right .button a {
    }

    .btn_pinokio {
        content: "coming \A soon";
        white-space: pre-wrap;
        font-size: 25px;
        color: #fff !important;
        display: flex;
        position: absolute;
        left: 5px;
        right: 5px;
        top: 0;
        bottom: 30px;
        background: rgba(0, 0, 0, 0.3);
        justify-content: center;
        align-items: center;
        text-align: center;
        line-height: 30px;
    }

    .product_type_pinikio dl {
        margin-top: 40px !important;
    }

    .product_type_pinikio figure {
        margin-top: 40px !important;
    }

    .pinokio_center {
        padding: 20px 2%;
        background-color: #e6e6e6;
    }

    .pinokio_content {
        display: none;
    }

    .pinokio_content_sp {
        display: block;
        padding: 90px 8px;
        text-align: center;
    }

    .pinokio_content_sp p {
        font-size: 10pt;
        color: #333333;
        line-height: 30px;
    }

    .pinokio_img {
        display: none;
    }

    .pinokio_img_sp {
        height: auto;
        display: block;
        margin-left: auto;
        margin-right: auto;
        width: 100%;
    }

    .icon_new_style .new_circle {
        display: flex;
        border: 1px solid #fff;
        border-radius: 50%;
        font-size: 11px;
        color: #fff;
        width: 45px;
        height: 45px;
        justify-content: center;
        align-items: center;
        letter-spacing: 2px;
        font-weight: 100;
    }

    .swiper-mv-slide .wrp_product_title .right .button a {
        padding: 3px 15px;
    }

    .page_propose_style_n .wrp_product_title .right .button a {
        background-color: #487b1b;
    }

    .page_propose_style_n_zeh .wrp_product_title .right .button a {
        background-color: #67b5b7;
    }

    .page_propose_style_u .wrp_product_title .right .button a {
        background-color: #314683;
    }

    .page_propose_style_p .wrp_product_title .right .button a {
        background-color: #aa9b91;
    }

    .page_propose_family .wrp_product_title .right .button a {
        background-color: #c8005a;
    }

    .page_propose_nihon .wrp_product_title .right .button a {
        background-color: #91ab31;
    }

    .wrp_product_title .right .button a .fa::before {
        color: #ffffff;
    }

    .color-black {
        color: #000 !important;
    }

    .txt-product-catch {
        position: absolute;
        background-color: rgba(255, 255, 255, 0.7);
        margin: auto;
        top: 45px;
        bottom: 0;
        left: 0;
        right: 0;
        width: 260px;
        height: 120px;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        font-size: 16px;
        line-height: 1.67em;
        /*opacity: 0.8;*/
    }

    .bg-style-n {
        /*background-color: #22440C;*/
        background-color: RGBA(34, 68, 12, 0.8);
    }

    .bg-style-u {
        /*background-color: #01264C;*/
        background-color: RGBA(1, 38, 76, 0.8);
    }

    .bg-style-p {
        /*background-color: #AA9B91;*/
        background-color: RGBA(85, 50, 22, 0.8);
    }

    .bg-style-new-family {
        /*background-color: #c8005a;*/
        background-color: RGBA(177, 3, 43, 0.8);
    }

    .bg-style-nihonno {
        /*background-color: #91AB31;*/
        background-color: RGBA(112, 133, 35, 0.8);
    }

    .bg-style-pinokio {
        /*background-color: #282828;*/
        background-color: RGBA(40, 40, 40, 0.8);
    }

    .product_type_pinokio .text-content {
        font-size: 24px;
        font-weight: 500;
        color: #fff;
        height: 150px;
        line-height: 150px;
        padding: 0 !important;
    }

    .wrp_product_concpet {
        display: block;
        margin-top: 40px;
    }

    .wrp_product_concpet.even {
        flex-direction: row-reverse;
    }

    .wrp_product_concpet .text {
        flex-shrink: 0;
        width: auto;
        box-sizing: border-box;
        padding-right: 0;
        padding-bottom: 20px;
    }

    .wrp_product_concpet.even .text {
        padding-right: 0;
        padding-left: 0;
    }

    .wrp_product_concpet .text h3 {
        text-align: left;
        margin: 0 0 20px;
    }

    .wrp_product_concpet .text p {
        font-size: 15px;
        line-height: 1.67em;
    }

    .lst_media_zoom li {
        position: relative;
        cursor: pointer;
    }

    .lst_media_zoom_sponly li {
        position: relative;
        cursor: pointer;
    }

    .lst_media_zoom li span {
        position: absolute;
        width: 24px;
        height: 24px;
        right: 5px;
        bottom: 0;
        background-color: #a7002c;
        color: #ffffff;
        text-align: center;
        transition: all 0.3s;
    }

    .lst_media_zoom.lst_media_zoom_sponly li span {
        display: block;
    }

    .lst_media_zoom li:hover span {
        background-color: #000;
    }

    .lst_media_zoom li span .fa::before {
        color: #ffffff;
        font-size: 14px;
        margin-right: 0;
        margin-top: 5px;
    }

    .lst_media_zoom li .name {
        position: absolute;
        display: flex;
        justify-content: center;
        align-items: center;
        left: 5px;
        right: 5px;
        top: 0;
        bottom: 0;
        color: #ffffff;
        background-color: rgba(0, 0, 0, 0.5);
        opacity: 0;
        transition: all 0.3s;
    }

    .lst_media_zoom li:hover .name {
        opacity: 1;
    }

    .modal_window_lineup {
        position: fixed;
        z-index: 2000;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.7);
        display: none;
    }

    .modal_window_lineup ul {
        display: flex;
        width: 100%;
        height: 100%;
        justify-content: center;
        align-items: center;
    }

    .modal_window_lineup li {
        padding: 20px;
    }

    .modal_window_lineup .btn_modal_close span {
        background-color: #fff;
    }
}

.wrap-tbl-speclist {
    width: auto;
    height: 550px;
    overflow-y: scroll;
}

.tbl-speclist * {
    box-sizing: border-box;
}

.tbl-speclist tr.hd1 {
    top: 0;
    left: 0;
    background-color: #fff;
}

.tbl-speclist tr.hd2 {
    position: sticky;
    top: 0;
    left: 0;
    background-color: #fff;
}

.tbl-speclist th {
    text-align: center;
    color: #fff;
    background-color: #666;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.33em;
    padding: 5px;
}

.tbl-speclist td {
    width: 11.56%;
}

.tbl-speclist td:nth-child(1) {
    width: auto;
}

.tbl-speclist td ul {
    list-style-type: disc;
    padding-left: 20px;
}

.tbl-speclist td ul li {
}

.wrap-tbl-speclist .tbl-speclist th.type_select {
    color: #fff;
    font-size: 16px;
    line-height: 1.3em;
}

.wrap-tbl-speclist .tbl-speclist th.type_family {
    background-color: #a34112;
}

.wrap-tbl-speclist .tbl-speclist th.type_generation {
    background-color: #595757;
}

.wrap-tbl-speclist .tbl-speclist th.type_nihon {
    background-color: #d17b16;
}

.tbl-speclist td {
    text-align: center;
    vertical-align: middle;
    background-color: #2d3339;
    background-color: #999;
    font-size: 14px;
    padding: 15px 10px;
}

.tbl-speclist td.va-baseL {
    vertical-align: baseline;
}

.tbl-speclist td.ta-left {
    text-align: left;
}

.tbl-speclist td ul {
    list-style: none;
    padding: 0;
}

.tbl-speclist td ul li {
    text-indent: -1em;
    padding-left: 1em;
}

.tbl-speclist td:nth-child(1) {
    color: #fff;
}

.tbl-speclist td strong {
    font-size: 160%;
    font-weight: 500;
    line-height: 1.33em;
}

.tbl-speclist tr.sizeLL td:nth-child(n + 2) {
    font-size: 125%;
    font-weight: 500;
    line-height: 1.33em;
}

.tbl-speclist tr.sizeMM td:nth-child(n + 2) {
    font-size: 100%;
    font-weight: 500;
    line-height: 1.33em;
}

.tbl-speclist th,
.tbl-speclist td {
    border: 1px #fff solid;
}

.tbl-speclist td span {
    display: block;
}

.tbl-speclist tr.btm_border_none th,
.tbl-speclist tr.btm_border_none td {
    border-style: none solid;
}

.tbl-speclist th:nth-child(1) {
    width: auto;
    color: #fff;
    background-color: #2d3339;
    background-color: #999;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.33em;
}

.tbl-speclist th.type_select,
.tbl-speclist th:nth-child(2),
.tbl-speclist th:nth-child(3),
.tbl-speclist th:nth-child(4) {
    background-color: #487b1c;
}

.tbl-speclist td:nth-child(2),
.tbl-speclist td:nth-child(3),
.tbl-speclist td:nth-child(4),
.tbl-speclist td:nth-child(5) {
    /*background-color: #D9F1C4;
    background-color: #EBF7E1;*/
    background-color: #f5f2e8;
}

.tbl-speclist th:nth-child(6) {
    background-color: #a34112;
}

.tbl-speclist td:nth-child(6) {
    background-color: #f6c8b2;
    background-color: #e6e6e6;
}

.tbl-speclist th:nth-child(7) {
    background-color: #a34112;
}

.tbl-speclist td:nth-child(7) {
    background-color: #f6c8b2;
    background-color: #e6e6e6;
}

.tbl-speclist th:nth-child(8) {
    background-color: #a34112;
}

.tbl-speclist td:nth-child(8) {
    background-color: #f6c8b2;
    background-color: #e6e6e6;
}

.tbl-speclist th:nth-child(9) {
    background-color: #d17b16;
}

.tbl-speclist td:nth-child(9) {
    background-color: #f6d6b0;
    background-color: #f5f2e8;
}

.wrap-tbl-speclist .tbl-speclist th.product_category {
    vertical-align: middle;
    background: #999;
}

.wrap-tbl-speclist .tbl-speclist th.product_name {
    background: #666;
    font-size: 16px;
}

.wrap-tbl-speclist .tbl-speclist td.product_image {
    background: #fff;
    border-right: 1px solid #ececec;
}

@media screen and (max-width: 1024px) {
}

@media screen and (max-width: 767px) {
    /* スクリーンサイズが767px以下の場合に適用 */

    .wrap-tbl-speclist {
        overflow: auto;
        width: 100%;
        height: 350px;
    }

    .tbl-speclist {
        width: 225%;
    }

    .tbl-speclist th:nth-child(1) {
        width: 50px;
    }

    .tbl-speclist tr.hd1 {
    }

    .tbl-speclist tr.hd2 {
    }

    .tbl-speclist th {
        width: 120px;
        font-size: 15px;
        line-height: 1.33em;

        z-index: 1;
    }

    .wrap-tbl-speclist .tbl-speclist th.type_select {
        color: #fff;
        font-size: 15px;
        font-weight: 500;
        line-height: 1.33em;
        z-index: 1;
        width: 120px;
    }

    .wrap-tbl-speclist .tbl-speclist th.type_family {
        background-color: #a34112;
        z-index: 1;
    }

    .wrap-tbl-speclist .tbl-speclist th.type_generation {
        background-color: #595757;
        z-index: 1;
    }

    .wrap-tbl-speclist .tbl-speclist th.type_nihon {
        background-color: #d17b16;
        z-index: 1;
    }

    .tbl-speclist td {
        text-align: center;
        vertical-align: middle;
        background-color: #999;
        font-size: 12px;
        padding: 10px 5px;
    }

    .tbl-speclist th:nth-child(1) {
        z-index: 2;
        font-size: 15px;
    }

    .tbl-speclist tr.hd1 th:nth-child(1) {
    }

    .tbl-speclist td:nth-child(1) {
        top: 0;
        left: 0;
        z-index: 2;
    }

    .tbl-speclist td strong {
        font-size: 160%;
        font-weight: 500;
        line-height: 1.33em;
    }

    .tbl-speclist tr.sizeLL td:nth-child(n + 2) {
        font-size: 120%;
        font-weight: 500;
        line-height: 1.33em;
    }

    .tbl-speclist tr.sizeMM td:nth-child(n + 2) {
        font-size: 110%;
        font-weight: 500;
        line-height: 1.33em;
    }
}

/* -------------------MY PAGE--------------------- */

/* global css */
.d-flex {
    display: flex;
}

.align-center {
    align-items: center;
}

.justify-center {
    justify-content: center;
}

.justify-between {
    justify-content: space-between;
}

.l_document--hide {
    font-size: 14px;
    box-sizing: border-box;
}

.global__title {
    font-size: 18px;
    text-align: center;
    font-weight: bold;
    margin-bottom: 30px;
    line-height: 1.5;
}

.global__text-error {
    color: #a4002c;
    font-size: 16px;
}

a.btn-primary:visited {
    color: #fff;
}

.btn-primary {
    background-color: #a4002c;
    color: #fff;
    cursor: pointer;
}

.btn-primary:hover {
    color: #fff;
    opacity: 0.7;
}

.btn-secondary {
    background-color: #f5f5f2;
    cursor: pointer;
}

.btn-secondary:hover {
    color: inherit;
    opacity: 0.7;
}

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

.lbl_required {
    font-size: 12px;
    line-height: 1.5;
    padding: 1px 12px;
    margin-right: 10px;
    border-radius: 10px;
}

.lbl_step {
    font-size: 12px;
    padding: 8px 12px;
    border-radius: 16px;
}

.input_box_1 {
    width: auto;
    min-width: 340px;
    font-size: 16px;
    box-sizing: border-box;
    padding: 8px;
    background: #fff;
    border: 1px solid #ccc;
    -ms-box-shadow: inset 0px 1px 1px #00000029;
    -o-box-shadow: inset 0px 1px 1px #00000029;
    box-shadow: inset 0px 1px 1px #00000029;
}

.tbl_data_1 .td_lbl--1 {
    width: 221px;
}

.tbl_data_1 .td_lbl--2 {
    width: 141px;
}

.tbl_data.tbl_data_1 {
    margin-bottom: 0;
}

.tbl_data_1 td {
    padding: 30px 0;
    vertical-align: middle;
}

.input_box_2 {
    font-size: 16px;
    box-sizing: border-box;
    padding: 8px;
    background: #fff;
    border: 1px solid #ccc;
    -ms-box-shadow: inset 0px 1px 1px #00000029;
    -o-box-shadow: inset 0px 1px 1px #00000029;
    box-shadow: inset 0px 1px 1px #00000029;
    vertical-align: middle;
}

.input_box_tel {
    width: 80px;
}

.input_box_time {
    width: 110px;
}

.tbl_step tr td {
    padding: 0 0 15px 0;
    vertical-align: middle;
}

.tbl_step tr td:first-child {
    width: 90px;
}

.tbl_step tr td:last-child span {
    font-weight: bold;
    font-size: 16px;
}

/* header login & register */

.l_header__top__btn {
    height: 24px;
    font-size: 14px;
    display: block;
    color: #a4002c;
    padding: 2px 27px;
    border: 1px solid #a21830;
    cursor: pointer;
    box-sizing: border-box;
    line-height: 1.5;
    letter-spacing: 0.4px;
}

.l_header__top .search .l_header__top__btn {
    color: #fff;
    background-color: #a4002c;
}

.l_header__top ul li .fa-search:before {
    color: #fff;
}

.l_header__top__btn:visited {
    color: #a4002c;
}

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

.l_header__top__btn > img {
    padding-right: 4px;
}

.l_header_bookmark .auth,
.l_header_bookmark .register {
    text-indent: 0;
    font-size: 12px;
    text-align: center;
    border-left: 1px solid #ddd;
    padding: 0 2px;
}

.l_header__btn-auth {
    color: #a4002c;
}

.l_header__wrap_content {
    position: relative;
    top: 2px;
}

.l_header__btn__text {
    font-size: 10px;
    padding-top: 4px;
    color: #a4002c;
}

/* Login page
-------------------------------------------------- */
.wrp__login {
    width: 100%;
    max-width: 846px;
    margin: 0 auto;
    font-size: 14px;
    padding-top: 48px;
}

.wrp__login .error {
    margin-top: 18px;
}

.btn-login {
    padding: 12px 0;
    text-align: center;
    display: inline-block;
    width: 100%;
}

.btn-login--half {
    width: calc(100% - 95px);
}

.login-left {
    float: left;
    box-sizing: border-box;
    padding-right: 40px;
    width: 380px;
    position: relative;
}

.login-left__help {
    margin-top: 10px;
    margin-bottom: 50px;
}

.login-right {
    float: right;
    width: calc(100% - 380px);
    box-sizing: border-box;
    padding-left: 20px;
    padding-top: 16px;
    border-left: 1px solid #ddd;
}

.login-right__wrap {
    padding: 0 20px;
}

.login-right__sub {
    margin: 15px 0;
}

.login-right > .login__title {
    margin-top: 16px;
}

.login__input-group > span {
    font-weight: bold;
}

.login__input-group > input {
    display: block;
    margin-top: 10px;
    width: 100%;
    padding: 8px;
    box-sizing: border-box;
    border: 1px solid #ccc;
    font-size: 14px;
}

.login__input-check {
    margin-top: 10px;
    margin-bottom: 30px;
    height: 20px;
}

.form-group input {
    display: none;
    cursor: pointer;
}

.form-group label {
    position: relative;
    cursor: pointer;
    line-height: 14px;
    padding-left: 22px;
}

.form-group label:before {
    content: "";
    display: inline-block;
    background-color: #fff;
    border: 1px solid #000;
    width: 12px;
    height: 12px;
    position: absolute;
    left: 0;
    top: 7px;
    transform: translateY(-50%);
    border-radius: 2px;
}

.form-group input:checked ~ label:after {
    content: "";
    display: block;
    position: absolute;
    top: 6px;
    left: 7px;
    width: 3px;
    height: 6px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: translate(-50%, -50%) rotate(45deg);
}

.form-group input:checked ~ label::before {
    background-color: #a4002c;
}

.form-group .formError {
    margin-top: 18px;
}

.wrp-check {
    display: table;
    cursor: pointer;
}

.wrp-check span {
    display: table-cell;
    vertical-align: text-bottom;
}

.wrp-check .chk_box {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 1px solid #a4002c;
}

.chk_box.checked {
    background-color: #a4002c;
    position: relative;
}

.wrp-check .chk_text {
    padding-left: 6px;
}

.chk_box.checked::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 3px;
    height: 6px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: translate(-50%, -50%) rotate(45deg);
}

.login-right__desc {
    border: 1px solid #a4192c;
    border-radius: 4px;
    padding: 20px;
    font-size: 16px;
    margin-bottom: 50px;
}

.login-right__desc__heading {
    font-weight: bold;
    margin-bottom: 18px;
}

.login-right__desc__item + .login-right__desc__item {
    margin-top: 15px;
}

.login-right__desc__item > span:last-child {
    color: #333;
}

.login-right__desc__item > span:first-child {
    margin-right: 10px;
    padding: 5px 12px;
    font-size: 12px;
    background: #a4002c;
    color: #fff;
    display: inline-block;
    border-radius: 16px;
}

.login-right__btn {
    text-align: center;
}

.pb-50 {
    padding-bottom: 50px;
}

.member_only_img {
    display: none;
    background-image: url('/resource/img/login/login_member_only_pc.svg'); 
    max-width: 840px; 
    background-size: contain; 
    background-repeat: no-repeat; 
    width: 100%; 
    aspect-ratio: 4.52/1; 
    margin: 22px 0 70px 0;
}
@media screen and (max-width: 768px) {
    .member_only_img {
        background-image: url('/resource/img/login/login_member_only_sp.svg'); 
        max-width: 100%; 
        aspect-ratio: 3/2;
        margin: 12px 0 60px 0;
    }
}

/* Register page ------------------------------------- */

.wrp__register {
    max-width: 734px;
    margin: 0 auto;
    font-size: 14px;
}

.form-group__register {
    padding-top: 20px;
}

.register__btn {
    text-align: center;
    margin-top: 50px;
}

.register__btn .btn-check {
    display: inline-block;
    font-size: 14px;
    padding: 12px;
    width: 340px;
    box-sizing: border-box;
}

/* register guest */
.register-temp__left {
    float: left;
}

.register-temp__right {
    margin-left: 141px;
    font-size: 16px;
}

.register__btn-group {
    display: flex;
    justify-content: center;
    font-size: 0;
}

.register__btn-group a,
.register__btn-group button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 165px;
    padding: 2px 15px;
    box-sizing: border-box;
    height: 46px;
    font-size: 14px;
}

.register__btn-group .btn-back {
    margin-right: 125px;
}

/* register finish */
.register-finish__text {
    margin: 20px 0;
}

/* register member */
#form-register-confirm input {
    border: none;
    outline: none;
    box-shadow: none;
    pointer-events: none;
    padding: 0;
}

.modal-location-container {
    position: relative;
    padding: 60px 80px;
    background-color: #fff;
    border-radius: 4px;
    margin: 0 20px;
}

.btn-location {
    padding: 13px 12.5px;
}

.btn-close {
    position: absolute;
    top: 20px;
    right: 18px;
    font-size: 30px;
    line-height: 1;
}

.tbl_data_1 select {
    border-color: #ddd;
    font-size: 16px;
    min-width: 110px;
    height: 40px;
}

.modal-location.show {
    display: block;
    -webkit-animation: zoomIn 0.3s ease-in forwards;
    animation: zoomIn 0.3s ease-in forwards;
}

.modal-location {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    max-width: 1100px;
    box-sizing: border-box;
    z-index: 2;
    display: none;
    transform: translate(-50%, -50%) scale(0);
}

.overlay {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.2);
    top: 0;
    left: 0;
    cursor: pointer;
    opacity: 0;
}

.overlay.show {
    display: block;
    -webkit-animation: fadeIn 0.5s linear forwards;
    animation: fadeIn 0.5s linear forwards;
}

.modal-district {
    margin-top: 30px;
}

.modal__heading {
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 20px;
}

.modal__name {
    line-height: 1.5;
    margin-bottom: 5px;
    font-weight: bold;
}

.modal__error {
    color: #a4002c;
    line-height: 1.5;
}

/* profile */
.wrp__profile {
    padding: 60px 0;
    max-width: 790px;
    margin: 0 auto;
}

.profile-nav i {
    font-size: 16px;
}

.profile__title {
    font-size: 40px;
    line-height: 1.475;
    text-align: center;
}

.profile-name {
    display: flex;
    align-items: center;
}

.profile-name span {
    font-weight: bold;
    font-size: 16px;
    padding-left: 10px;
}

.profile-btn {
    font-size: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 5px 10px;
    border: 1px solid #ddd;
    cursor: pointer;
    box-sizing: border-box;
    line-height: 1.5;
}

.profile-btn + .profile-btn {
    margin-left: 12px;
}

.profile-nav {
    padding-bottom: 20px;
    margin: 50px 0;
    border-bottom: 1px solid #ddd;
}

.profile-btn img {
    padding-right: 4px;
}

.profile-btn__logout {
    color: #a4002c;
    border: 1px solid #a4002c;
}

.profile-btn__delete:hover {
    color: inherit;
}

.profile-body {
    padding: 0 18px;
}

.profile-list,
.profile-item {
    width: 50%;
    box-sizing: border-box;
    text-align: center;
}

.profile-list-1,
.profile-item-1 {
    float: left;
}

.profile-list-2,
.profile-item-2 {
    float: right;
}

.profile-item {
    border-right: 1px solid #ddd;
}

.profile-item--border {
    border-right: none;
}

.profile-item__content {
    color: #a4002c;
    padding: 20px 12px;
    margin: 0 15px;
    cursor: pointer;
    display: block;
}

.profile-item__content:hover {
    background-color: #f5f5f2;
}

.profile-item__content p {
    font-size: 18px;
    color: #a4002c;
    padding-top: 20px;
}

.show-on-phone {
    display: none;
}

.profile-group-btn {
    display: flex;
    align-items: center;
}

.profile-group-btn-phone {
    font-size: 0;
    margin-top: 22px;
    display: none;
}

.profile-group-btn .profile-btn {
    width: 130px;
}

.profile-group-btn-phone .profile-btn + .profile-btn {
    margin-left: 32px;
}

.tbl_data.tbl_data_money {
    border: none;
}

.tbl_data.tbl_data_money td {
    padding: 30px 0;
}

.wrp__money {
    max-width: 470px;
    margin: 0 auto;
}

.wrp__money .btn {
    color: inherit;
    box-shadow: none;
    border: 1px solid #ddd;
}

.tbl_step_member {
    margin-top: 30px;
    margin-bottom: 50px;
}

.member-text {
    padding-bottom: 12px;
    font-weight: bold;
    border-bottom: 1px solid #ddd;
}

.member-box {
    background-color: #f5f5f2;
    border-color: 1px solid #ddd;
}

.member-content {
    padding: 20px;
    font-size: 16px;
}

.modal-list {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
}

.modal-item {
    width: calc(100% / 5);
    margin-top: 15px;
}

.modal__text {
    font-weight: bold;
    margin-bottom: 5px;
}

.box_media__text_member {
    padding-left: 15px;
    text-align: left;
}

.box_media__text_member > p {
    display: inline-block;
    color: #a4002c;
    font-weight: bold;
    padding: 8px 42px;
    border: 2px solid #a4002c;
    border-radius: 18px;
    margin-bottom: 12px;
    line-height: 1;
}

.tbl_content__lock {
    width: 100px;
}

.tr_box_media__private {
    display: table;
    width: 100%;
}

.tr_box_media__private div {
    display: table-cell;
    vertical-align: middle;
}

.box_media__private_content {
    text-align: left;
    margin-left: 40px;
    font-weight: bold;
}

.tbl_content .td_box_media__private {
    padding: 0;
}

.box_media__private_content p {
    font-size: 45px;
    margin-bottom: 22px;
}

.box_media__private_content span {
    font-size: 28px;
    color: #a4002c;
}

.box_media__private_link {
    font-size: 30px;
    color: #fff !important;
    font-weight: bold;
    white-space: nowrap;
    background-color: #a4002c;
    cursor: pointer;
    display: table-cell;
    vertical-align: middle;
}

.box_media__private_link:hover {
    color: #fff;
}

.box_media__private_link .fa::before {
    color: #fff;
}

.box_media_icon {
    padding: 95px 20px 73px 63px;
}

.tr_error.error {
    background-color: #ffeeee;
}

.tr_error .lbl_error {
    color: #ff0000;
    display: block;
    padding: 3px 0 0;
}

.btn_post_code {
    min-width: auto;
    padding: 14px;
    margin-left: 25px;
}

a.link {
    color: #1f5bcc;
    text-decoration: underline;
}

a.link:visited {
    color: inherit;
}

a.link:hover {
    color: #a4002c;
}

input.error {
    background-color: #fff;
}

/* ---------------------------------------- */

/* Responsive */
@media screen and (min-width: 768px) and (max-width: 949px) {
    .l_header__top ul li:last-child {
        display: none;
    }
}

@media screen and (max-width: 767px) {
    .login-left,
    .login-right {
        float: none;
        width: 100%;
    }

    .login-left {
        padding-right: 0;
        padding-bottom: 20px;
    }

    .login-right {
        padding-left: 0;
    }

    .login-right {
        border-left: none;
    }

    .tbl_step tr td {
        vertical-align: baseline;
    }

    .login-right__wrap {
        border-top: 1px solid #ddd;
        padding: 20px 0 0 0;
    }

    .btn-login--half {
        width: 100%;
    }

    .wrp__register {
        max-width: 340px;
    }

    .l_document--hide .arc_back {
        display: none;
    }

    .tbl_data_1 .td_lbl {
        padding-bottom: 0;
    }

    .profile-item__content p {
        font-size: 14px;
    }

    .register__btn-group a {
        width: 120px;
    }

    .register__btn-group .btn-back {
        margin-right: 60px;
    }

    .wrp__profile {
        padding: 30px 0 70px 0;
    }

    .profile-nav {
        margin: 30px 0;
    }

    .profile-item {
        width: 100%;
        border: 0;
    }

    .profile-item__content {
        border: 1px solid #a4002c;
        margin: 8px;
    }

    .profile-group-btn-phone {
        display: flex;
    }

    .hide-on-phone {
        display: none;
    }

    .show-on-phone {
        display: block;
    }

    .modal-location-container {
        position: relative;
        padding: 50px 10px;
        margin: 0 8px;
    }

    .modal-body {
        border: 1px solid #ddd;
        max-height: 568px;
        overflow-y: auto;
    }

    .modal-body::-webkit-scrollbar {
        width: 8px;
    }

    .modal-body::-webkit-scrollbar-track {
        background: #ddd;
    }

    .modal-body::-webkit-scrollbar-thumb {
        background: #a4002c;
    }

    .modal-body::-webkit-scrollbar-thumb:hover {
        background: #ddd;
    }

    .modal-content {
        padding: 8px 16px;
    }

    .modal-location .register__btn {
        margin-top: 15px;
    }

    .box_media__private_content p {
        font-size: 18px;
        margin-bottom: 4px;
        line-height: 1;
    }

    .box_media__private_link {
        font-size: 10px;
    }

    .box_media__private_content span {
        font-size: 8px;
        color: #a4002c;
    }

    .box_media_icon {
        padding: 40px 10px 40px 10px;
    }

    .box_media_icon img {
        width: 20px;
    }

    .modal-item {
        width: calc(100% / 3);
    }

    .btn_post_code {
        margin-top: 12px;
        margin-left: 0;
    }
}

@-webkit-keyframes fadeIn {
    to {
        opacity: 1;
    }
}

@-webkit-keyframes zoomIn {
    to {
        transform: translate(-50%, -50%) scale(1);
    }
}

.err-txt {
    color: #ff0000;
    display: none;
}

.item-member {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    position: relative;
    border-radius: 10px 10px 10px 10px;
    border: 1px solid #ddd;
    height: 99%;
}

.break-line {
    display: block;
}

.item-member .item-member-left {
    position: absolute;
    top: 37%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0.6;
    pointer-events: none;
}

.item-member .item-member-left img {
    width: 80px;
}

.item-member .item-member-center {
    position: absolute;
    top: 35%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

.item-member .item-member-center .text-1 {
    text-align: center;
    font-size: 35px;
    font-weight: bold;
    color: #000;
    line-height: 1.5;
}

.item-member .item-member-center .text-2 {
    margin-top: 30px;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.3;
    color: #a4002c;
}

.item-member .item-member-right {
    width: 100%;
    text-align: center;
    border-radius: 0px 0px 10px 10px;
    color: #fff;
    background-color: #a4002c;
    padding: 20px 0;
    border: 1px solid #a4002c;
}

.item-member .item-member-right:hover {
    opacity: 0.8;
}

.item-member .item-member-right .fa::before {
    color: #fff;
    margin-left: 5px;
}

@media screen and (max-width: 1024px) {
    .new_items .lst_media > li.pd-0 {
        padding: 0 !important;
    }

    .temple-tag {
        display: none;
    }

    .break-line {
        display: inline;
    }

    .item-member {
        display: grid;
        grid-column-gap: 0;
        grid-template-columns: auto auto auto;
        align-items: unset;
        border: none;
        height: auto;
        min-height: 100px;
    }

    .item-member .item-member-left {
        display: flex;
        align-items: center;
        justify-content: center;
        position: unset;
        padding: 0 10px;
        opacity: 1;
        transform: translate(-0%, -0%);
    }

    .item-member .item-member-left img {
        width: 20px;
        opacity: 1;
    }

    .item-member .item-member-center {
        position: unset;
        transform: translate(0, 0);
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
    }

    .item-member .item-member-center .text-1 {
        font-size: 16px;
    }

    .item-member .item-member-center .text-2 {
        font-size: 8px;
        margin-top: 0;
    }

    .item-member .item-member-right {
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 0;
        padding: 20px 5px;
    }
}

/* Construct > Generation of the earth
-------------------------------------------------- */
.page_propose_earth .wrp_product_title .right .button a {
    padding: 5px 10px;
    background: #575452;
}

.page_propose_earth .wrp_product_title .right .button a .fa-search::before {
    content: "";
    width: 16px;
    height: 16px;
    vertical-align: middle;
    margin-right: 10px;
    background: url("/resource/img/lineup/generationoftheearth/common_icon_small_balloon.png")
        no-repeat left / 100% auto;
}

.ly_wrp_generationEarth .for-pc {
    display: block;
}

.ly_wrp_generationEarth .for-sp {
    display: none;
}

.ly_wrp_generationEarth .ly_fv {
    height: 445px;
    padding: 10px 0 155px;
    box-sizing: border-box;
    background: url("/resource/img/lineup/generationoftheearth/common_main.jpg")
        no-repeat center / cover;
}

.ly_wrp_generationEarth .ly_fv .el_fv_title {
    width: 460px;
    color: #fff;
    font-size: 22px;
    line-height: 1.4;
    font-weight: lighter;
    text-align: center;
    padding: 50px 0;
    margin: 100px auto 0;
    background: rgba(0, 0, 0, 0.5);
}

.ly_wrp_generationEarth .ly_concept {
    max-width: 1170px;
    padding: 90px 0 80px;
    margin: 0 auto;
}

.ly_wrp_generationEarth .ly_concept .el_concept_title {
    color: #575452;
    font-size: 35px;
    font-weight: 500;
    margin-bottom: 45px;
}

.ly_wrp_generationEarth .ly_concept .bl_conceptBox {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.ly_wrp_generationEarth .ly_concept .bl_conceptBox__flexReverse {
    flex-direction: row-reverse;
    -webkit-box-pack: flex-end;
    -ms-flex-pack: flex-end;
    justify-content: flex-end;
    margin-top: 110px;
}

.ly_wrp_generationEarth .bl_conceptBox .bl_onceptBox_desc {
    margin-right: 61px;
}

.ly_wrp_generationEarth .bl_conceptBox .bl_onceptBox_desc__mgLeft {
    margin-left: 70px;
}

.ly_wrp_generationEarth .bl_conceptBox dt {
    color: #333;
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 30px;
}

.ly_wrp_generationEarth .bl_conceptBox dd {
    font-size: 18px;
    line-height: 2;
}

.ly_wrp_generationEarth .bl_conceptBox .el_bl_conceptBox_img {
    max-width: 730px;
    max-height: 485px;
}

.ly_wrp_generationEarth .ly_kind {
    padding-top: 75px;
}

.ly_wrp_generationEarth .ly_kind .el_kind_title {
    color: #9ea24e;
    font-size: 40px;
    margin-bottom: 175px;
}

.ly_wrp_generationEarth .ly_kind .bl_kind_list {
    background: #eeefef;
    position: relative;
}

.ly_wrp_generationEarth .ly_kind .bl_kind_list:before {
    content: url(/resource/img/lineup/generationoftheearth/PC_title_pct_kind.png);
    position: absolute;
    top: -130px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}

.ly_wrp_generationEarth .bl_kind_list .bl_kindList_point {
    max-width: 1170px;
    padding-bottom: 220px;
    margin: 0 auto;
    position: relative;
}

.ly_wrp_generationEarth .bl_kind_list .bl_kindList_point__bg02:before {
    content: url(/resource/img/lineup/generationoftheearth/PC_title_pct_kind.png);
    position: absolute;
    top: -130px;
    left: 50%;
    transform: translateX(-50%);
}

.ly_wrp_generationEarth .bl_kindList_point .bl_point_title {
    width: 185px;
    color: #fff;
    font-size: 26px;
    line-height: 1.5;
    text-align: center;
    padding: 53px 0;
    margin: 0 auto;
    border-radius: 50%;
    background: #b5b376;
    position: absolute;
    top: -143px;
    left: 50%;
    transform: translateX(-50%);
}

.ly_wrp_generationEarth .bl_point_box .el_pointBox_title {
    color: #7d001a;
    font-size: 24px;
    padding: 10px 0;
    background: #fff;
    position: relative;
    z-index: 2;
}

.ly_wrp_generationEarth .bl_point_box .bl_pointTitle__mrgBtm {
    margin-bottom: 40px;
    position: relative;
}

.ly_wrp_generationEarth .bl_point_box .el_pointBoxTitle_label {
    display: block;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 4px;
    padding: 10px 0;
    background: #a39b96
        url(/resource/img/lineup/generationoftheearth/common_icon_crown_kind.png)
        no-repeat left calc(50% - 100px) center;
}

.ly_wrp_generationEarth .bl_point_box .el_pointBoxTitle_label__iconPosi {
    display: block;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 4px;
    padding: 10px 0;
    background: #a39b96
        url(/resource/img/lineup/generationoftheearth/common_icon_crown_kind.png)
        no-repeat calc(50% - 140px) center;
}

.ly_wrp_generationEarth .bl_point_box .bl_point_details {
    position: relative;
}

.ly_wrp_generationEarth .bl_point_details .bl_pointDetails_text {
    font-size: 16px;
    line-height: 2;
}

.ly_wrp_generationEarth .bl_point_details .el_pointDetails_text__gold {
    color: #9ea24e;
    font-size: 20px;
    font-weight: bold;
}

.ly_wrp_generationEarth .bl_pointDetails_text .bl_pointDetails_label {
    display: block;
    font-size: 15px;
    line-height: 2;
    text-indent: -15px;
    padding-left: 15px;
    margin-top: 20px;
}

.ly_wrp_generationEarth .bl_point_details .bl_pointDetails_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 16px;
    border-bottom: 1px solid #a1a09f;
}

.ly_wrp_generationEarth .bl_point_details .bl_pointDetails_list:first-child {
    border-top: 1px solid #a1a09f;
}

.ly_wrp_generationEarth .bl_pointDetails_list .bl_pointDetailsList_text {
    width: 150px;
    text-align: center;
    padding: 10px 0;
}

.ly_wrp_generationEarth
    .bl_pointDetails_list
    .bl_pointDetailsList_text__bgGold {
    color: #fff;
    background: #b5b376;
}

.ly_wrp_generationEarth .bl_pointDetails_list dd {
    padding-left: 20px;
}

.ly_wrp_generationEarth .bl_pointDetails_list .el_detailsList_label {
    color: #7d001a;
}

.ly_wrp_generationEarth .bl_pointBox_leftBox .bl_pointBox_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -webkit-align-items: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-top: 100px;
}

.ly_wrp_generationEarth .bl_pointBox_list li {
    width: 185px;
    height: 115px;
    color: #fff;
    font-size: 20px;
    text-align: center;
    padding-top: 70px;
    border-radius: 50%;
    background: #c9bb6e;
}

.ly_wrp_generationEarth .bl_pointBox_list li + li {
    margin-left: 30px;
}

.ly_wrp_generationEarth .bl_point_details .bl_pointDetails_image {
    margin-top: 40px;
}

.ly_wrp_generationEarth .bl_point_details .bl_pointDetails_image__mgnRight {
    margin: 40px 110px 0 0;
}

.ly_wrp_generationEarth .bl_point_box .bl_point_details__flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -webkit-align-items: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.ly_wrp_generationEarth .ly_details {
    padding-bottom: 115px;
    background: linear-gradient(
            90deg,
            transparent 0%,
            transparent 50%,
            #f4f1e7 50%,
            #f4f1e7 100%
        ),
        url(/resource/img/lineup/generationoftheearth/PC_bg_various_kind.png)
            no-repeat calc(50% - 50px) top;
}

.ly_wrp_generationEarth .ly_details .ly_plan {
    max-width: 915px;
    padding: 125px 0 70px;
    margin: 0 auto;
}

.ly_wrp_generationEarth .ly_plan .el_plan_title {
    max-width: 190px;
    color: #fff;
    font-size: 20px;
    font-weight: normal;
    padding: 40px 0 15px;
    margin: 0 auto 20px;
    border-radius: 100px 100px 0 0;
    background: #b5b376;
}

.ly_wrp_generationEarth .ly_plan .el_plan_text {
    color: #72706f;
    font-size: 24px;
    margin-bottom: 35px;
}

.ly_wrp_generationEarth .ly_details .ly_various {
    padding-top: 50px;
}

.ly_wrp_generationEarth .ly_various .el_various_title {
    color: #72706f;
    font-size: 33px;
    margin-bottom: 35px;
}

.ly_wrp_generationEarth .bl_various_example .el_variousExample_title {
    max-width: 190px;
    color: #fff;
    font-size: 20px;
    font-weight: normal;
    padding: 40px 0 15px;
    margin: 0 auto;
    border-radius: 100px 100px 0 0;
    background: #b5b376;
}

.ly_wrp_generationEarth .bl_various_example .bl_variousExample_details {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    max-width: 915px;
    margin: 0 auto 90px;
    background: #fff;
}

.ly_wrp_generationEarth .bl_variousExample_details dl {
    width: 455px;
}

.ly_wrp_generationEarth .bl_variousExample_details dt {
    font-size: 16px;
    padding: 0 0 10px 35px;
    border-bottom: 2px solid #acaaa9;
}

.ly_wrp_generationEarth .bl_variousExample_details dd {
    font-size: 16px;
    line-height: 2.1;
    padding: 35px 20px 35px 35px;
}

.ly_wrp_generationEarth .ly_image {
    max-width: 1170px;
    padding: 125px 0 80px;
    margin: 0 auto;
}

.ly_wrp_generationEarth .ly_image .bl_image_title {
    font-size: 30px;
    margin-bottom: 70px;
}

.ly_wrp_generationEarth .bl_image_title span {
    font-size: 18px;
    font-weight: normal;
    margin-left: 10px;
}

.ly_wrp_generationEarth .ly_image .bl_image_slider {
    width: 1080px;
    margin: 0 auto;
    position: relative;
}

.ly_wrp_generationEarth .bl_image_slider .bl_imageSlider_box {
    width: 255px;
    margin: 0 10px;
}

.ly_wrp_generationEarth .bl_imageSlider_box img {
    width: 255px;
    height: 255px;
}

.ly_wrp_generationEarth .bl_imageSlider_box p {
    font-size: 18px;
    padding: 10px 0 0 15px;
}

.ly_wrp_generationEarth .bl_image_slider .slick-arrow {
    position: absolute;
    top: 110px;
    cursor: pointer;
}

.ly_wrp_generationEarth .bl_image_slider .slick-arrow.slick-prev {
    left: -45px;
    z-index: 10;
}

.ly_wrp_generationEarth .bl_image_slider .slick-arrow.slick-next {
    right: -45px;
    z-index: 10;
}

.ly_wrp_generationEarth .ly_original {
    max-width: 1170px;
    padding: 70px 0 110px;
    margin: 0 auto;
}

.ly_wrp_generationEarth .ly_original .bl_original_title {
    font-size: 30px;
    margin-bottom: 20px;
}

.ly_wrp_generationEarth .bl_original_title span {
    font-size: 18px;
    margin-left: 15px;
}

.ly_wrp_generationEarth .ly_original .el_original_text {
    font-size: 18px;
    margin-bottom: 45px;
}

.ly_wrp_generationEarth .ly_original .bl_originalExample_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -webkit-align-items: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.ly_wrp_generationEarth .bl_originalExample_list .bl_originalExample_box {
    max-width: 545px;
    height: 450px;
}

.ly_wrp_generationEarth
    .bl_originalExample_list
    .bl_originalExampleBox__mgbottom {
    margin-bottom: 50px;
}

.ly_wrp_generationEarth .bl_originalExample_box .bl_exampleBox_details {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background: #f4f1e7;
}

.ly_wrp_generationEarth .bl_exampleBox_details .bl_exampleDetails_title {
    width: 275px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
}

.ly_wrp_generationEarth .bl_exampleDetailsTitle__hgtPos {
    width: 545px;
    height: 270px;
    position: relative;
}

.ly_wrp_generationEarth .bl_exampleDetailsTitle__hgtPos figure {
    position: absolute;
    top: 0;
    right: 0;
}

.ly_wrp_generationEarth .bl_originalExample_list .bl_exampleDetails_text {
    font-size: 18px;
    line-height: 1.8;
    margin-top: 20px;
}

.ly_wrp_generationEarth
    .bl_exampleDetailsTitle__hgtPos
    + .bl_exampleDetails_text {
    width: 378px;
}

.ly_woodresources {
    padding: 115px 0 95px;
    background: radial-gradient(
            at 0% 100%,
            hsl(74, 31%, 50%) 0px,
            transparent 50%
        ),
        radial-gradient(at 100% 1%, hsl(86, 25%, 51%) 0px, transparent 50%),
        radial-gradient(at 100% 100%, hsl(66, 31%, 52%) 0px, transparent 50%),
        radial-gradient(at 0% 0%, hsl(74, 20%, 54%) 0px, transparent 50%)
            #91a063;
}

.ly_woodresources .el_woodresources_title {
    color: #fff;
    font-size: 33px;
    margin-bottom: 80px;
}

.ly_woodresources .bl_woodresources_textBox {
    color: #fff;
    font-size: 18px;
    margin-bottom: 60px;
}

.ly_woodresources .bl_woodresources_textBox .el_woodresources_text {
    line-height: 1.9;
}

.ly_woodresources
    .bl_woodresources_textBox
    .el_woodresources_text
    + .el_woodresources_text {
    margin-top: 50px;
}

.bg_leading_earth {
    margin: 0;
    background: url(../img/lineup/generationoftheearth/common_main.jpg)
        no-repeat center center;
    background-size: cover;
}

@media screen and (max-width: 767px) {
    .page_propose_earth .wrp_product_title {
        position: fixed;
        left: 0;
        right: 0;
        top: inherit;
        bottom: 0;
        z-index: 1000;
    }

    .ly_generationEarth {
        /* padding-bottom: 20vw; */
        max-width: 767px;
        width: 100%;
    }

    .ly_generationEarth .l_header {
        max-width: 767px !important;
        overflow-x: scroll;
    }

    @media screen and (max-width: 376px) {
        .ly_generationEarth .wrp_product_title {
            bottom: -25vw;
        }
    }

    .ly_wrp_generationEarth .for-pc {
        display: none;
    }

    .ly_wrp_generationEarth .for-sp {
        display: block;
    }

    .ly_wrp_generationEarth .ly_fv {
        width: 100vw;
        height: 59.974vw;
        overflow-x: hidden;
        background: url("/resource/img/lineup/generationoftheearth/common_main.jpg")
            no-repeat right -50vw top -18vw/328.553vw 117.21vw;
        height: auto;
        padding: 20.209vw 0px 7.823vw;
    }

    .ly_wrp_generationEarth .ly_fv .el_fv_title {
        font-size: 3.96vw;
        width: 69.1vw;
        padding: 9.126vw 0;
        margin: 0 auto;
    }

    /* ======= .ly_concept ======= */
    .ly_wrp_generationEarth .ly_concept {
        padding: 13.038vw 2.608vw 0;
        overflow-x: hidden;
    }

    .ly_wrp_generationEarth .ly_concept .el_concept_title {
        font-size: 5.215vw;
        margin-bottom: 8.475vw;
    }

    .ly_wrp_generationEarth .ly_concept .bl_conceptBox {
        display: block;
    }

    .ly_wrp_generationEarth .bl_conceptBox .bl_onceptBox_desc {
        margin: 0 auto 5.215vw;
    }

    .ly_wrp_generationEarth .bl_conceptBox dt {
        font-size: 5.215vw;
        margin-bottom: 8.475vw;
        text-align: center;
    }

    .ly_wrp_generationEarth .bl_conceptBox dd {
        font-size: 3.96vw;
        line-height: 1.667;
    }

    .ly_wrp_generationEarth .bl_conceptBox .el_bl_conceptBox_img {
        max-width: 95.176vw;
        max-height: 63.233vw;
    }

    .ly_wrp_generationEarth .ly_concept .bl_conceptBox__flexReverse {
        margin-top: 7.171vw;
    }

    .ly_wrp_generationEarth .bl_conceptBox .bl_onceptBox_desc__mgLeft {
        margin: 0 auto 6.519vw;
    }

    /* ======= .ly_kind  ======= */
    .ly_wrp_generationEarth .ly_kind {
        overflow-x: hidden;
        padding-top: 10.43vw;
        overflow-x: hidden;
    }

    .ly_wrp_generationEarth .ly_kind .el_kind_title {
        font-size: 5.867vw;
        margin-bottom: 28.683vw;
    }

    .ly_wrp_generationEarth .ly_kind .bl_kind_list:before {
        content: url("/resource/img/lineup/generationoftheearth/SP_title_pct_kind.png");
        top: -23vw;
    }

    .ly_wrp_generationEarth .bl_point_box .bl_pointTitle__mrgBtm {
        font-size: 4.563vw;
        width: 84.746vw;
        margin: 0 auto 4.563vw;
        padding: 1.956vw 0;
    }

    .ly_wrp_generationEarth .bl_point_box .bl_point_details {
        display: none;
    }

    .ly_wrp_generationEarth .bl_point_box .bl_point_details__flex {
        flex-direction: column-reverse;
        align-items: center;
    }

    .ly_wrp_generationEarth .bl_point_details .bl_pointDetails_text {
        font-size: 3.96vw;
        line-height: 1.667;
        width: 84.746vw;
        padding: 6.519vw 0;
    }

    .ly_wrp_generationEarth .bl_point_details .el_pointDetails_text__gold {
        font-size: 4.2vw;
    }

    .ly_wrp_generationEarth .bl_pointDetails_text .bl_pointDetails_label {
        font-size: 3.6vw;
        line-height: 1.8;
        text-indent: 0;
        padding-left: 0;
        margin-top: 3.911vw;
    }

    .ly_wrp_generationEarth .bl_point_details .el_pointDetails_image img {
        width: 47.718vw;
        height: auto;
        margin: 0 auto;
    }

    .ly_wrp_generationEarth .bl_kind_list .bl_kindList_point {
        padding-bottom: 23vw;
        margin: 0 auto 12vw;
    }

    .ly_wrp_generationEarth
        .bl_kind_list
        .bl_kindList_point.bl_kindList_pointSkeleton {
        margin: 0 auto;
        padding-bottom: 8vw;
    }

    .ly_wrp_generationEarth .bl_kind_list .bl_kindList_point__bg02:before {
        content: url("/resource/img/lineup/generationoftheearth/SP_title_pct_kind.png");
        top: -22vw;
    }

    .ly_wrp_generationEarth .bl_kindList_point .bl_point_title {
        width: 26.12vw;
        padding: 6.823vw 0;
        font-size: 3.922vw;
        top: -22vw;
    }

    .ly_wrp_generationEarth .bl_point_box .el_pointBox_title {
        margin-top: -4vw;
        font-size: 4.563vw;
        padding: 2.408vw 0;
        line-height: 1.4;
    }

    .ly_wrp_generationEarth .bl_point_box .el_acc_btn {
        display: block;
        width: 17.18vw;
        color: #fff;
        font-size: 2.65vw;
        text-align: center;
        padding: 1.56vw 0 1.56vw 4.68vw;
        margin: 0 auto;
        background: #bbafa6
            url(/resource/img/lineup/generationoftheearth/SP_accordion_arrow.png)
            no-repeat center left 1.56vw / 2.34vw auto;
    }

    .ly_wrp_generationEarth .bl_point_box .el_acc_btn.is_active {
        display: none;
    }

    .ly_wrp_generationEarth .bl_point_details .el_acc_btn__grey {
        margin-top: 6.25vw;
        background: #575452
            url(/resource/img/lineup/generationoftheearth/SP_accordion_close_arrow.png)
            no-repeat center left 1.56vw / 2.34vw auto;
    }

    .ly_wrp_generationEarth .bl_point_box .el_pointBoxTitle_label__iconPosi {
        display: block;
        color: #fff;
        font-size: 3.96vw;
        letter-spacing: 0.2em;
        background: #a39b96
            url(/resource/img/lineup/generationoftheearth/common_icon_crown_kind.png)
            no-repeat left 14vw center;
    }

    .bl_point_details .el_zeh_chartImg {
        width: 87.353vw;
        height: 39.374vw;
    }

    .ly_wrp_generationEarth .bl_point_box .el_pointBoxTitle_label {
        font-size: 3.96vw;
        letter-spacing: 0.2em;
        background: #a39b96
            url(/resource/img/lineup/generationoftheearth/common_icon_crown_kind.png)
            no-repeat left 20vw center;
    }

    .bl_point_details {
        width: 84.746vw;
        margin: 0 auto;
    }

    .ly_wrp_generationEarth .bl_pointDetails_list .bl_pointDetailsList_text {
        width: 16.949vw;
        padding: 9.778vw 0;
        font-size: 3.96vw;
    }

    .ly_wrp_generationEarth .bl_pointDetails_list dd {
        width: 67.797vw;
        font-size: 3.52vw;
        line-height: 1.481;
        padding: 3.259vw 1.956vw;
    }

    .bl_pointDetails_image {
        margin-top: 0 !important;
    }

    .el_pct_structureImg {
        width: 50.326vw;
        height: 41.721vw;
    }

    .ly_wrp_generationEarth .bl_pointBox_leftBox .bl_pointBox_list {
        margin-top: 0;
        position: relative;
    }

    .ly_wrp_generationEarth .bl_pointBox_list li {
        width: 35.202vw;
        height: 20vw;
        font-size: 4vw;
        padding: 9.778vw 0;
        padding: 12.778vw 0 3vw;
    }

    .ly_wrp_generationEarth .bl_pointBox_list li + li {
        margin-left: 4vw;
    }

    .el_pct_homeImage {
        width: 100.391vw;
        height: 35.463vw;
    }

    .ly_wrp_generationEarth .ly_details .ly_plan {
        padding: 4vw 0;
    }

    .ly_wrp_generationEarth .ly_plan .el_plan_title {
        font-size: 4vw;
        border-radius: 36.506vw 36.506vw 0 0;
        padding: 8.778vw 0 2.563vw;
        max-width: 36.506vw;
        margin-bottom: 3vw;
    }

    .ly_wrp_generationEarth .ly_plan .el_plan_text {
        font-size: 4.563vw;
        line-height: 1.286;
        margin-bottom: 4vw;
    }

    .el_plan_image {
        overflow-x: auto;
        padding-bottom: 4.563vw;
    }

    .el_plan_image img {
        width: 174.05vw;
        height: auto;
    }

    .el_plan_scrollInfo {
        font-size: 3.39vw;
        color: #a4002a;
        text-align: start;
        padding-left: 9.778vw;
    }

    .ly_wrp_generationEarth .ly_details .ly_various {
        padding-top: 4vw;
    }

    .ly_wrp_generationEarth .ly_various .el_various_title {
        font-size: 5.47vw;
        margin-bottom: 4vw;
        font-weight: normal;
    }

    .ly_wrp_generationEarth .bl_various_example .el_variousExample_title {
        font-size: 4vw;
        border-radius: 36.506vw 36.506vw 0 0;
        padding: 8.778vw 0 2.563vw;
        max-width: 36.506vw;
    }

    .ly_wrp_generationEarth .bl_various_example .bl_variousExample_details {
        flex-direction: column;
        width: 96.48vw;
        margin: 45vw auto 9vw;
        padding: 27.379vw 0 9.126vw;
        position: relative;
    }

    .ly_wrp_generationEarth .ly_details {
        background: #f4f1e7;
        padding-bottom: 8vw;
    }

    .ly_wrp_generationEarth
        .bl_various_example
        .bl_variousExample_details
        figure {
        position: absolute;
        top: -45vw;
    }

    .el_home_storeImage {
        width: 59.974vw;
        height: 67.145vw;
    }

    .ly_wrp_generationEarth .bl_variousExample_details dl {
        width: 84.746vw;
    }

    .ly_wrp_generationEarth .bl_variousExample_details dt {
        font-size: 3.96vw;
        font-weight: bold;
        padding: 0 0 2vw 0;
        text-align: center;
        border-bottom: 0.6vw solid #acaaa9;
    }

    .ly_wrp_generationEarth .bl_variousExample_details dd {
        font-size: 3.52vw;
        line-height: 1.63;
        padding: 4vw 1vw;
    }

    .el_variousImage {
        width: 96.48vw;
        height: 144.72vw;
    }

    /* ======= .ly_image  ======= */
    .ly_wrp_generationEarth .ly_image {
        max-width: 100vw;
        margin: 0 auto;
        padding: 12.342vw 1.956vw 9.126vw;
        overflow-x: hidden;
    }

    .ly_wrp_generationEarth .ly_image .bl_image_title {
        font-size: 5.922vw;
        margin-bottom: 5vw;
    }

    .ly_wrp_generationEarth .bl_image_title span {
        font-size: 3.8vw;
    }

    .ly_wrp_generationEarth .ly_image .bl_image_slider {
        width: 84.746vw;
    }

    .ly_wrp_generationEarth .bl_imageSlider_box p {
        font-size: 3.8vw;
        padding: 1vw 0 0 0.4vw;
    }

    .ly_wrp_generationEarth .bl_image_slider .slick-arrow {
        width: 3.651vw;
        height: auto;
        top: calc(50% - 4.7vw);
        /* height: 5.476vw; */
    }

    .ly_wrp_generationEarth .bl_image_slider .slick-arrow img {
        width: 3.651vw;
        height: 5.476vw;
    }

    .ly_wrp_generationEarth .bl_image_slider .slick-arrow.slick-prev {
        left: -6vw;
    }

    .ly_wrp_generationEarth .bl_image_slider .slick-arrow.slick-next {
        right: -6vw;
    }

    .ly_wrp_generationEarth .bl_image_slider .slick-slide {
    }

    .ly_wrp_generationEarth .bl_imageSlider_box img {
        width: 100%;
        height: auto;
    }

    /* ======= .ly_original  ======= */
    .ly_wrp_generationEarth .ly_original {
        max-width: 767px;
        padding: 0 0 4vw;
        margin: 0 auto;
        overflow-x: hidden;
    }

    .ly_wrp_generationEarth .ly_original .bl_original_title {
        font-size: 5.867vw;
        line-height: 1.5;
        margin-bottom: 3.15vw;
    }

    .ly_wrp_generationEarth .ly_original .bl_original_title span {
        display: block;
        font-size: 4vw;
        font-weight: normal;
    }

    .ly_wrp_generationEarth .ly_original .el_original_text {
        font-size: 3.96vw;
        margin-bottom: 5vw;
    }

    .ly_wrp_generationEarth .bl_originalExample_list .bl_originalExample_box {
        max-width: 95.828vw;
        margin: 0 auto;
        height: auto;
    }

    .ly_wrp_generationEarth .bl_originalExample_box .bl_exampleBox_details {
        width: 96.48vw;
        height: 35.202vw;
    }

    .ly_wrp_generationEarth .bl_exampleBox_details .bl_exampleDetails_title {
        width: 60.887vw;
        font-size: 4.69vw;
        text-align: center;
    }

    .ly_wrp_generationEarth .bl_exampleBox_details figure img {
        width: 35.202vw;
        height: 35.202vw;
    }

    .ly_wrp_generationEarth .bl_originalExample_list .bl_exampleDetails_text {
        font-size: 3.65vw;
        line-height: 1.667;
        margin-top: 0;
        padding: 3.911vw 5.215vw 4.8vw;
    }

    .ly_wrp_generationEarth
        .bl_exampleBox_details
        figure
        .el_panel_originalImage {
        width: 34.941vw;
        height: 50.065vw;
    }

    .ly_wrp_generationEarth
        .bl_exampleDetailsTitle__hgtPos
        + .bl_exampleDetails_text {
        width: 71.227vw;
    }

    /* ======= .ly_woodresources  ======= */
    .ly_woodresources {
        padding: 12.342vw 1.956vw 11.213vw;
        overflow-x: hidden;
    }

    .ly_woodresources .el_woodresources_title {
        font-size: 6.519vw;
        margin-bottom: 10.43vw;
    }

    .ly_woodresources .bl_woodresources_textBox {
        font-size: 4vw;
        margin-bottom: 10vw;
    }

    .ly_woodresources .bl_woodresources_textBox .el_woodresources_text {
        font-size: 3.96vw;
        font-weight: 300;
        line-height: 1.667;
        text-align: start;
        padding: 0 6.023vw;
    }

    .ly_woodresources
        .bl_woodresources_textBox
        .el_woodresources_text
        + .el_woodresources_text {
        margin-top: 5vw;
    }

    .el_woodresourcesImage {
        width: 72.621vw;
        height: 80.052vw;
    }

    /* ======= .wrp_leading_area  ======= */
    .bg_leading_earth {
        padding: 10.43vw 1.956vw;
        overflow-x: hidden;
    }

    .bg_leading_earth .wrp_container {
        padding: 0;
    }

    .bg_leading_earth .wrp_container ul {
        width: 95.176vw;
        margin: 0 auto;
    }

    .bg_leading_earth .wrp_container li {
        height: 43.025vw;
    }

    .bg_leading_earth .wrp_leading_area ul li a {
        padding: 10.43vw 0 3vw;
        text-align: center;
    }

    .page_propose_earth .bg_leading_earth .fluid_image {
        width: 7.823vw;
        height: 7.823vw;
    }

    .page_propose_earth .wrp_leading_area ul li a {
        padding: 10.43vw 0;
    }

    .page_propose_earth .wrp_leading_area ul li a figure {
        padding: 0;
    }

    .page_propose_earth .wrp_leading_area ul li dl dt {
        font-size: 4vw;
        margin: 1.6vw 1.6vw 0;
    }

    .page_propose_earth .wrp_leading_area ul li a .btn {
        right: 1vw;
        left: 1vw;
        bottom: 3.15vw;
        font-size: 3.111111111111111vw;
        padding: 1.304vw 7.823vw;
    }

    .page_propose_earth .sub_category_navi {
        border: 0.4vw #ccc;
        border-top-style: solid;
        margin: 13vw 0 0;
    }

    .page_propose_earth .sub_category_navi .hdg_lv3 {
        font-size: 5vw;
        margin: 10vw 0 3vw;
    }

    .page_propose_earth .sub_category_navi .lst_media {
        margin: 0 0 93vw;
    }

    .page_propose_earth .category_standard .box_menu__content {
        padding: 6.88vw 0;
    }

    .page_propose_earth .sub_category_navi.category_standard .box_menu__title {
        font-size: 3vw !important;
        line-height: 1.2em;
        margin: 0 0 1vw !important;
    }

    .page_propose_earth .box_menu .btn_more {
        font-size: 3vw;
        height: 6vw;
        padding: 0.8vw 0;
        text-align: center;
        width: 22.164vw;
    }
}

/* service top
-------------------------------------------------- */

.service-anchor-menu {
    display: flex;
    justify-content: center;
    margin-top: 40px;
}

.service-anchor-menu li {
    flex-shrink: 0;
    min-width: 290px;
    text-align: center;
    box-sizing: border-box;
    border-right: 1px #ddd solid;
    display: flex;
    position: relative;
}

.service-anchor-menu li:nth-child(1) {
    border-left: 1px #ddd solid;
}

.service-anchor-menu li img {
    position: absolute;
    width: 12px;
    height: auto;
    margin: auto;
    left: 0;
    right: 0;
    bottom: -20px;
}

.service-anchor-menu li a {
    display: block;
    height: 100%;
    min-width: 290px;
    padding: 5px 20px;
    box-sizing: border-box;
}

.service-menu {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
    margin-top: 40px;
}

.service-menu li {
    width: 33.33%;
    flex-shrink: 0;
    text-align: center;
    box-sizing: border-box;
    padding: 0 10px;
}

.service-menu li a {
    display: block;
    box-sizing: border-box;
    padding: 40px 20px 30px;
    height: 100%;
    background-color: #f5f5f1;
}

.service-menu li figure {
    min-height: 100px;
}

.service-menu li h3 {
    font-size: 18px;
    font-weight: 600;
}

.service-menu li h3 span {
    display: inline-block;
    padding-left: 17px;
    background: url("/resource/img/service/arrow_right.svg") no-repeat left top
        8px;
}

.service-menu li p {
    font-size: 14px;
    line-height: 1.67em;
    margin-top: 10px;
}

.service-sub-menu {
    margin-top: 40px;
    text-align: center;
}

.service-sub-menu + .service-sub-menu {
    margin-top: 0px;
}

.service-sub-menu li {
    display: inline-block;
    margin: 7px 20px;
}

.service-sub-menu li a {
    display: block;
    padding-left: 15px;
    background: url("/resource/img/service/arrow_right.svg") no-repeat left top
        5px;
    background-size: 6px auto;
}

@media screen and (max-width: 767px) {
    .service-anchor-menu {
        display: flex;
        justify-content: center;
        margin-top: 30px;
    }

    .service-anchor-menu li {
        flex-shrink: 0;
        min-width: inherit;
        text-align: center;
        box-sizing: border-box;
        border-right: 1px #ddd solid;
        display: flex;
        position: relative;
    }

    .service-anchor-menu li:nth-child(1) {
        border-left: 1px #ddd solid;
    }

    .service-anchor-menu li img {
        position: absolute;
        width: 12px;
        height: auto;
        margin: auto;
        left: 0;
        right: 0;
        bottom: -20px;
    }

    .service-anchor-menu li a {
        display: block;
        height: 100%;
        min-width: inherit;
        padding: 5px 10px;
        box-sizing: border-box;
    }

    .service-menu {
        display: flex;
        flex-wrap: wrap;
        margin-left: 0;
        margin-right: 0;
        margin-top: 20px;
        border-top: 1px #dddddd solid;
    }

    .service-menu li {
        width: 100%;
        flex-shrink: 0;
        text-align: center;
        box-sizing: border-box;
        padding: 0;
        border-bottom: 1px #dddddd solid;
    }

    .service-menu li a {
        box-sizing: border-box;
        padding: 20px 10px 20px 20px;
        height: 100%;
        background-color: #f5f5f1;
        display: flex;
    }

    .service-menu li figure {
        min-height: inherit;
        padding-right: 25px;
        padding-top: 7px;
    }

    .service-menu li a > div {
        text-align: left;
    }

    .service-menu li h3 {
        font-size: 14px;
        font-weight: 600;
    }

    .service-menu li h3 span {
        display: inline-block;
        padding-left: 17px;
        background: url("/resource/img/service/arrow_right.svg") no-repeat left
            top 6px;
    }

    .service-menu li p {
        font-size: 13px;
        line-height: 1.67em;
        margin-top: 5px;
    }

    .service-menu li p br {
        display: none;
    }

    .service-sub-menu {
        margin-top: 0;
        text-align: left;
    }

    .service-sub-menu li {
        display: block;
        margin: 0;
    }

    .service-sub-menu li a {
        display: block;
        padding: 12px 10px 10px 35px;
        background: url("/resource/img/service/arrow_right.svg") no-repeat left
            20px top 17px;
        background-size: 6px auto;
        border-bottom: 1px #dddddd solid;
    }
}

/* reform
-------------------------------------------------- */

.reform-plus {
    display: flex;
    flex-wrap: wrap;
    margin-left: -35px;
    margin-right: -35px;
    box-sizing: border-box;
}

.reform-plus li {
    box-sizing: border-box;
    flex-shrink: 0;
    width: 50%;
    padding: 0 35px;
    margin-top: 50px;
}

.reform-plus h3 {
    font-size: 24px;
    font-weight: 400;
    line-height: 1.5em;
}

.reform-plus span {
    font-size: 0.75em;
    font-weight: 600;
}

.reform-plus-photo {
    display: flex;
    background: url("/resource/img/service/reform/arrow_right.png") no-repeat
        center center;
    margin-left: -13px;
    margin-right: -13px;
    margin-top: 20px;
}

.reform-plus-photo figure {
    box-sizing: border-box;
    flex-grow: 1;
    width: 50%;
    padding: 0 13px;
}

.reform-plus-photo figure img {
    width: 100%;
    height: auto;
}

.reform-plus-point {
    box-sizing: border-box;
    background: url("/resource/img/service/reform/icon_point.svg") no-repeat
        left 0 top 13px;
    background-color: #f5f5f1;
    border-radius: 10px;
    padding: 20px 20px 20px 65px;
    margin-top: 25px;
}

.reform-facility {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
    box-sizing: border-box;
}

.reform-facility h3 {
    font-size: 24px;
    font-weight: 400;
    line-height: 1.5em;
}

.reform-facility h3 span {
    font-size: 0.75em;
    font-weight: 600;
}

.reform-facility li {
    box-sizing: border-box;
    width: 33.33%;
    padding: 0 10px;
    margin-top: 50px;
}

.reform-facility figure img {
    width: 100%;
    height: auto;
    margin-top: 20px;
}

.reform-facility-point {
    box-sizing: border-box;
    background: url("/resource/img/service/reform/icon_point.svg") no-repeat
        left 0 top 13px;
    background-color: #f5f5f1;
    border-radius: 10px;
    padding: 20px 20px 20px 65px;
    margin-top: 25px;
    min-height: 93px;
}

@media screen and (max-width: 767px) {
    .reform-plus {
        display: flex;
        flex-wrap: wrap;
        margin-left: 0;
        margin-right: 0;
        box-sizing: border-box;
    }

    .reform-plus li {
        box-sizing: border-box;
        flex-shrink: 0;
        width: 100%;
        padding: 0;
        margin-top: 40px;
    }

    .reform-plus h3 {
        font-size: 18px;
        font-weight: 400;
        line-height: 1.5em;
    }

    .reform-plus span {
        font-size: 0.75em;
    }

    .reform-plus-photo {
        display: flex;
        background: url("/resource/img/service/reform/arrow_right.png")
            no-repeat center center;
        background-size: 10px auto;
        margin-left: -13px;
        margin-right: -13px;
        margin-top: 20px;
    }

    .reform-plus-photo figure {
        box-sizing: border-box;
        flex-grow: 1;
        width: 50%;
        padding: 0 13px;
    }

    .reform-plus-photo figure img {
        width: 100%;
        height: auto;
    }

    .reform-plus-point {
        box-sizing: border-box;
        background: url("/resource/img/service/reform/icon_point.svg") no-repeat
            left 0 top 5px;
        background-size: 50px auto;
        background-color: #f5f5f1;
        border-radius: 10px;
        padding: 10px 10px 10px 50px;
        margin-top: 15px;
        font-size: 13px;
        line-height: 1.67em;
    }

    .reform-facility {
        display: flex;
        flex-wrap: wrap;
        margin-left: 0;
        margin-right: 0;
        box-sizing: border-box;
    }

    .reform-facility h3 {
        font-size: 18px;
        font-weight: 400;
        line-height: 1.5em;
    }

    .reform-facility h3 span {
        font-size: 0.75em;
    }

    .reform-facility li {
        box-sizing: border-box;
        width: 100%;
        padding: 0;
        margin-top: 30px;
    }

    .reform-facility figure {
        text-align: center;
    }

    .reform-facility figure img {
        width: 100%;
        height: auto;
        max-width: 250px;
        margin-top: 20px;
    }

    .reform-facility-point {
        box-sizing: border-box;
        background: url("/resource/img/service/reform/icon_point.svg") no-repeat
            left 0 top 5px;
        background-size: 50px auto;
        background-color: #f5f5f1;
        border-radius: 10px;
        padding: 10px 10px 10px 50px;
        margin-top: 15px;
        font-size: 13px;
        line-height: 1.67em;
        min-height: 66px;
    }
}

/* toggle expand button */
.btn-more-toggle {
    position: relative;
    color: #fff;
    letter-spacing: 0.1em;
    font-weight: 300;
    font-family: "源ノ角ゴシック Regular", "源ノ角ゴシック", "Noto Sans JP",
        sans-serif;
    background: #9fa0a0;
    text-align: center;
    height: 30px;
    width: 120px;
    right: 0;
    line-height: 30px;
    font-size: 16px;
    margin: auto;
}

.js---merit_title .btn-more-toggle .moreText {
    margin-left: 20px;
}

.js---merit_title .btn-more-toggle:before {
    position: absolute;
    content: "〈";
    color: rgb(255 255 255);
    transform: rotate(-90deg);
    height: 60px;
    width: 22px;
    right: 70px;
    z-index: 1;
    top: -10px;
    font-size: 18px;
    opacity: 1;
}

.js---merit_title.open .btn-more-toggle:before {
    content: "－";
    transform: rotate(0deg);
    position: static;
}

.js---merit_title.open .btn-more-toggle .moreText {
    display: none;
}

#popup_n_zeh {
    padding: 0 15% 20px;
    box-sizing: border-box;
}

#popup_n_zeh .popup__button {
    padding: 10px 0px 0;
}

@media screen and (max-width: 767px) {
    .btn-more-toggle {
        height: 20px;
        line-height: 20px;
        width: 70px;
        font-size: 10px;
    }

    .js---merit_title .btn-more-toggle:before {
        height: 60px;
        width: 22px;
        right: 22px;
        top: -17px;
        font-size: 10px;
    }

    #popup_n_zeh {
        padding: 0 2% 20px;
        box-sizing: border-box;
    }

    #popup_n_zeh .popup__button {
        padding: 0;
    }
}
