/*
Theme Name: habakiri-child
Theme URI: http://2inc.org
Description: Habakiri's child theme
Author: Ai Ueno
Author URI:
Version: 1.0.0
License: None
License URI: None
Template: habakiri
*/

html {
    box-sizing: border-box;
    overflow-y: scroll;
    -webkit-text-size-adjust: 100%
}

dl {
    margin-bottom: initial;
}

*, ::before, ::after {
background-repeat: no-repeat;
box-sizing: inherit
}
::before, ::after {
text-decoration: inherit;
vertical-align: inherit
}
* {
padding: 0;
margin: 0
}
audio:not([controls]) {
display: none;
height: 0
}
hr {
overflow: visible
}
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section {
display: block
}
summary {
display: block;
display: list-item
}
small {
font-size: 80%
}
[hidden], template {
display: none
}
abbr[title] {
border-bottom: 1px dotted;
text-decoration: none
}
a {
background-color: transparent;
-webkit-text-decoration-skip: objects
}
a:active, a:hover {
outline-width: 0
}
code, kbd, pre, samp {
font-family: monospace, monospace
}
b, strong {
font-weight: bolder
}
dfn {
font-style: italic
}
mark {
background-color: #ff0;
color: #000
}
sub, sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline
}
sub {
bottom: -0.25em
}
sup {
top: -0.5em
}
input {
border-radius: 0
}
button, [type="button"], [type="reset"], [type="submit"], [role="button"] {
cursor: pointer
}
[disabled] {
cursor: default
}
[type="number"] {
width: auto
}
[type="search"] {
-webkit-appearance: textfield
}
[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
-webkit-appearance: none
}
textarea {
overflow: auto;
resize: vertical
}
button, input, optgroup, select, textarea {
font: inherit
}
optgroup {
font-weight: bold
}
button {
overflow: visible
}
button::-moz-focus-inner {
border-style: 0;
padding: 0
}
[type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
border-style: 0;
padding: 0
}
button:-moz-focusring, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
outline: 1px dotted ButtonText
}
button, html [type="button"], [type="reset"], [type="submit"] {
-webkit-appearance: button
}
button, select {
text-transform: none
}
button, input, select, textarea {
background-color: transparent;
border-style: none;
color: inherit
}
select {
-moz-appearance: none;
-webkit-appearance: none
}
select::-ms-expand {
display: none
}
select::-ms-value {
color: currentColor
}
legend {
border: 0;
color: inherit;
display: table;
max-width: 100%;
white-space: normal
}
::-webkit-file-upload-button {
-webkit-appearance: button;
font: inherit
}
[type="search"] {
-webkit-appearance: textfield;
outline-offset: -2px
}
img {
border-style: none
}
progress {
vertical-align: baseline
}
svg:not(:root) {
overflow: hidden
}
audio, canvas, progress, video {
display: inline-block
}
@media screen {
[hidden ~ ="screen"] {
    display: inherit
}
[hidden ~ ="screen"]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important
}
}
[aria-busy="true"] {
cursor: progress
}
[aria-controls] {
cursor: pointer
}
[aria-disabled] {
cursor: default
}
::-moz-selection, ::selection {
background-color: #b3d4fc;
color: #000;
text-shadow: none
}
@font-face {
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", sans-serif;
  src: local("Yu Gothic Medium")
}
body {
  background-color: #f7f7f7;
  color: #000;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
  -webkit-font-smoothing: initial;
}
a {
color: #000;
text-decoration: none
}
a:link, a:visited {
color: #000
}
a:hover {
color: #000;
text-decoration: underline
}
a:hover img {
opacity: 0.7
}
a:active {
color: #000
}
a[href^="tel:"], a[href^="tel:"]:link, a[href^="tel:"]:visited, a[href^="tel:"]:active, a[href^="tel:"]:hover {
color: #000;
cursor: default;
opacity: 1;
text-decoration: none
}
.news-head__lnk, body.home .anshin-lnk, body.souzoku .scdl-box.box10 .box10-lnk a, body.seizen .kanren-desc a, body.price .prc-txt {
color: #f39800;
font-weight: bold;
display: block;
line-height: 1;
font-size: 12px
}
@media screen and (min-width: 576px) {
.news-head__lnk, body.home .anshin-lnk, body.souzoku .scdl-box.box10 .box10-lnk a, body.seizen .kanren-desc a, body.price .prc-txt {
    font-size: 16px
}
}
.news-head__lnk:hover::before, body.home .anshin-lnk:hover::before, body.souzoku .scdl-box.box10 .box10-lnk a:hover::before, body.seizen .kanren-desc a:hover::before, body.price .prc-txt:hover::before {
text-decoration: none
}
.news-head__lnk::before, body.home .anshin-lnk::before, body.souzoku .scdl-box.box10 .box10-lnk a::before, body.seizen .kanren-desc a::before, body.price .prc-txt::before {
content: ">";
color: #FFF;
font-size: 10px;
line-height: 1.1;
background-color: #f39800;
text-align: center;
display: inline-block;
margin-right: 5px;
width: 13px;
height: 13px;
border-radius: 50%;
position: relative;
top: -2px
}
@media screen and (min-width: 576px) {
.news-head__lnk::before, body.home .anshin-lnk::before, body.souzoku .scdl-box.box10 .box10-lnk a::before, body.seizen .kanren-desc a::before, body.price .prc-txt::before {
    width: 18px;
    height: 18px;
    margin-right: 7px;
    font-size: 13px;
    line-height: 1.4
}
}
.tbl01, body.souzoku .jirei-tbl {
margin: 30px auto 0;
border-collapse: collapse;
width: 100%
}
@media screen and (min-width: 576px) {
.tbl01, body.souzoku .jirei-tbl {
    margin-top: 40px
}
}
.tbl01 thead .tbl-th, body.souzoku .jirei-tbl thead .tbl-th {
background-color: #91bc4d;
font-size: 16px;
color: #FFF;
text-align: center;
vertical-align: middle;
height: 50px;
border-bottom: 1px solid #fff
}
@media screen and (min-width: 576px) {
.tbl01 thead .tbl-th, body.souzoku .jirei-tbl thead .tbl-th {
    font-size: 18px;
    height: 70px
}
}
.tbl01 thead .tbl-th:not(:last-child), body.souzoku .jirei-tbl thead .tbl-th:not(:last-child) {
border-right: 1px solid #fff
}
.tbl01 tbody .tbl-th, body.souzoku .jirei-tbl tbody .tbl-th, .tbl01 tbody .tbl-td, body.souzoku .jirei-tbl tbody .tbl-td {
height: 50px;
vertical-align: middle;
font-size: 14px;
font-weight: normal;
text-align: center;
border-right: 1px solid #91bc4d;
border-bottom: 1px solid #91bc4d;
padding: 1em
}
@media screen and (min-width: 576px) {
.tbl01 tbody .tbl-th, body.souzoku .jirei-tbl tbody .tbl-th, .tbl01 tbody .tbl-td, body.souzoku .jirei-tbl tbody .tbl-td {
    height: 70px;
    font-size: 18px
}
}
.tbl01 tbody .tbl-th, body.souzoku .jirei-tbl tbody .tbl-th {
background-color: #e9e7ce
}
.tbl01 tbody .tbl-td, body.souzoku .jirei-tbl tbody .tbl-td {
background-color: #FFF
}
.tbl01 tbody > tr:last-child .tbl-th, body.souzoku .jirei-tbl tbody > tr:last-child .tbl-th, .tbl01 tbody > tr:last-child .tbl-td, body.souzoku .jirei-tbl tbody > tr:last-child .tbl-td {
border-bottom: none
}
.tbl01 tfoot .tbl-ft, body.souzoku .jirei-tbl tfoot .tbl-ft {
font-size: 12px;
padding-top: 1em
}
@media screen and (min-width: 576px) {
.tbl01 tfoot .tbl-ft, body.souzoku .jirei-tbl tfoot .tbl-ft {
    font-size: 14px
}
}
.tel-area {
background-color: #fff9e7;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
margin-top: 10px;
padding-bottom: 7px;
position: relative
}
@media screen and (min-width: 576px) {
.tel-area {
    height: 100px;
    margin: 0;
    padding: 0;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between
}
}
.tel-area .lg-logo {
display: none
}
@media screen and (min-width: 896px) {
.tel-area .lg-logo {
    display: block;
    width: 156px;
    height: 76px;
    position: relative;
    margin-left: 34px;
    margin-right: 10px;
    -ms-flex-order: 1;
    -webkit-box-ordinal-group: 1;
    -webkit-order: 1;
    order: 1
}
.tel-area .lg-logo__lnk {
    display: block;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    line-height: 1;
    font-size: 10px;
    background: url("../img/head-logo.png") no-repeat;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0
}
.tel-area .lg-logo__lnk:hover {
    opacity: 0.7
}
}
@media screen and (min-width: 576px) {
.tel-area__accs {
    margin-left: 106px
}
}
@media screen and (min-width: 896px) and (max-width: 1264px) {
.tel-area__accs {
    -ms-flex-order: 3;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 3;
    order: 3;
    margin-left: 12px;
    margin-right: auto
}
}
.tel-area__accs .br-1 {
display: none
}
@media screen and (min-width: 896px) and (max-width: 915px) {
.tel-area__accs .br-1 {
    display: inline
}
}
.tel-area__accs .br-2 {
display: none
}
@media screen and (min-width: 896px) and (max-width: 980px) {
.tel-area__accs .br-2 {
    display: inline
}
}
.tel-area__r {
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center
}
@media screen and (min-width: 576px) {
.tel-area__r {
    margin-right: 20px
}
}
@media screen and (min-width: 896px) and (max-width: 1264px) {
.tel-area__r {
    -ms-flex-order: 4;
    -webkit-box-ordinal-group: 4;
    -webkit-order: 4;
    order: 4
}
}
@media screen and (min-width: 1265px) {
.tel-area__r {
    margin-right: 33px
}
}
.tel-area__txt {
font-size: 10px;
text-align: center;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
border-right: 1px solid #000;
border-left: 1px solid #000;
height: 28px;
width: 70px;
line-height: 1.3;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
margin-left: 8px;
white-space: nowrap;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap
}
@media screen and (min-width: 321px) {
.tel-area__txt {
    width: 80px
}
}
@media screen and (min-width: 576px) {
.tel-area__txt {
    display: none
}
}
@media screen and (min-width: 768px) {
.tel-area__txt {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    width: auto;
    font-size: 16px;
    padding-left: 15px;
    padding-right: 15px;
    margin-left: 0
}
}
@media (min-width: 1059px) {
.tel-area__txt {
    width: 230px
}
}
@media screen and (min-width: 1265px) {
.tel-area__txt {
    margin-left: 0;
    -ms-flex: 0 0 auto;
    -webkit-box-flex: 0 0 auto;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto
}
}
@media screen and (min-width: 769px) {
.tel-area__txt br {
    display: none
}
}
@media screen and (min-width: 896px) and (max-width: 1058px) {
.tel-area__txt br {
    display: inline
}
}
.tel-area-span__yoko {
display: none;
font-size: 12px
}
@media (min-width: 1059px) {
.tel-area-span__yoko {
    display: block
}
}
.tel-area__desc {
line-height: 1;
margin: 8px 0 0 10px
}
@media screen and (min-width: 321px) {
.tel-area__desc {
    margin-left: 16px
}
}
@media screen and (min-width: 576px) {
.tel-area__desc {
    margin: 0 0 0 22px
}
}
.tel-area__lnk {
font-size: 22px;
font-weight: bold;
white-space: nowrap;
letter-spacing: 1px
}
@media screen and (min-width: 321px) {
.tel-area__lnk {
    letter-spacing: 0.08em
}
}
@media screen and (min-width: 576px) {
.tel-area__lnk {
    font-size: 30px
}
.tel-area__lnk:hover {
    text-decoration: none
}
}
@media screen and (min-width: 896px) {
.tel-area__lnk {
    font-size: 38px
}
}
.tel-area__sub {
background-color: #ffe23f;
font-size: 10px;
text-align: center;
margin-top: 2px;
padding: 3px 0;
width: 165px
}
@media screen and (min-width: 576px) {
.tel-area__sub {
    font-size: 12px;
    margin-top: 7px;
    width: 218px;
    height: 23px;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center
}
}
@media screen and (min-width: 896px) {
.tel-area__sub {
    width: calc(100% - 4px);
    padding: 0
}
}
.tel-area .btn-access {
position: absolute;
display: block;
width: 55px;
height: 55px;
color: #FFF;
font-size: 10px;
font-weight: bold;
text-align: center;
border-radius: 50%;
padding-top: 32px;
right: 5px;
top: -8px;
background-image: url(../img/btn_contact.png);
background-position-x: center;
background-position-y: center;
background-size: cover;
background-repeat: no-repeat;
}
@media screen and (min-width: 321px) {
.tel-area .btn-access {
    right: 17px;
    width: 60px;
    height: 60px;
    top: -16px;
    padding-top: 36px;
}
}
@media screen and (min-width: 576px) {
.tel-area .btn-access {
    right: auto;
    top: 18px;
    left: 32px
}
.tel-area .btn-access:hover {
    text-decoration: none;
    opacity: .7
}
}
@media screen and (min-width: 896px) and (max-width: 1264px) {
.tel-area .btn-access {
    position: static;
    -ms-flex-order: 2;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 2;
    order: 2
}
}
.side {
background-color: #FFF
}
@media screen and (min-width: 1265px) {
.side {
    display: block;
    width: 305px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2;
    overflow: hidden;
    height: 100%
}
}
@media screen and (min-width: 1265px) {
.side-wrap {
    width: calc(100% + 17px);
    padding-right: 17px;
    height: 100%;
    -ms-overflow-y: scroll;
    overflow-y: scroll;
    overflow-x: hidden;
}
}
.side-scroll {
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-direction: column;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
flex-direction: column;
}
@media screen and (min-width: 1265px) {
.side-scroll {
    width: 305px;
    height: 970px;
    display: block;
}
}
.side .tel-area {
-ms-flex-order: 2;
-webkit-box-ordinal-group: 2;
-webkit-order: 2;
order: 2
}
@media screen and (min-width: 1265px) {
.side .tel-area {
    display: none
}
}
.side .tel-area__yoko {
font-size: 10px;
position: relative;
top: 3px;
left: -8px
}
@media screen and (min-width: 576px) {
.side .tel-area__yoko {
    font-size: 12px;
    left: 1px
}
}
@media screen and (min-width: 896px) {
.side .tel-area__yoko {
    font-size: 14px;
    left: 16px
}
}
@media screen and (min-width: 1059px) {
.side .tel-area__yoko {
    display: none
}
}
@media screen and (max-width: 575px) {
.side .tel-area__accs {
    display: none
}
}
.side-head {
-ms-flex-order: 4;
-webkit-box-ordinal-group: 4;
-webkit-order: 4;
order: 4;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
margin-top: 8px;
padding-left: 5px;
padding-right: 5px
}
@media screen and (min-width: 321px) {
.side-head {
    padding-left: 0;
    padding-right: 0;
}
}
@media screen and (min-width: 576px) {
.side-head {
    margin-top: 25px;
    justify-content: space-around;
}
}
@media screen and (min-width: 896px) and (max-width: 1264px) {
.side-head {
    display: none
}
}
@media screen and (min-width: 1265px) {
.side-head {
    display: block;
    margin-top: 0;
    padding-top: 18px
}
}
.side-head__lnk {
position: relative
}
@media screen and (min-width: 1265px) {
.side-head__lnk {
    display: none !important
}
}
.side-head__lnk__img {
width: 100%;
filter: drop-shadow(4px 4px 0px #e7e7e7)
}
.side-head__lnk.current .side-head__lnk__img, .side-head__lnk:hover .side-head__lnk__img {
opacity: 1;
filter: drop-shadow(4px 4px 0px #fff100)
}
.side-head__lnk.sbmt {
width: 49.5px;
height: 49.5px;
margin-right: calc(7 / 375 * 100%)
}
@media screen and (min-width: 576px) {
.side-head__lnk.sbmt {
    width: calc(51 / 375 * 100%);
    height: auto;
    max-width: 141px
}
}
.side-head__lnk.simu {
width: 49.5px;
margin-right: 8px
}
@media screen and (max-width: 575px) {
.side-head__lnk.simu {
    width: 104px;
    margin-left: calc(23 / 375 * 100%);
}
}
@media screen and (min-width: 576px) {
.side-head__lnk.simu {
    width: calc(104 / 375 * 100%);
    max-width: 208px;
    height: auto;
}
}
@media screen and (min-width: 321px) {
    .side-head__lnk.simu {
        margin: auto;
    }
}
.side-head__lnk.voice {
width: 100px;
margin-left: 8px
}
@media screen and (min-width: 321px) {
.side-head__lnk.voice {
    width: 104px;
    margin: auto;
}
.side-head__lnk.contact {
    width: 104px;
    margin: auto;
}
}
@media screen and (min-width: 576px) {
.side-head__lnk.voice {
    width: calc(104 / 375 * 100%);
    max-width: 208px
}
.side-head__lnk.contact {
    width: calc(104 / 375 * 100%);
    max-width: 208px
}
}
.side-logo {
position: relative;
width: calc(191px / 2);
height: calc(93px / 2)
}
@media screen and (min-width: 576px) {
.side-logo {
    width: calc(191 / 750 * 100%);
    height: auto;
    max-width: 273px;
    max-height: 134px
}
}
@media screen and (min-width: 1265px) {
.side-logo {
    margin-left: 15px;
    width: 273px;
    height: 134px
}
}
.side-logo::before {
content: "";
display: block;
padding-top: calc(134 / 273 * 100%)
}
.side-logo__lnk {
display: block;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
line-height: 1;
font-size: 10px;
background: url("../img/head-logo.png") no-repeat;
background-size: cover;
position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0
}
.side-logo__lnk:hover {
opacity: 0.7
}
.side-place {
-ms-flex-order: 3;
-webkit-box-ordinal-group: 3;
-webkit-order: 3;
order: 3;
background-color: #77ad22;
color: #FFF;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
font-size: 10px;
height: 20px
}
@media screen and (min-width: 576px) {
.side-place {
    font-size: 14px;
    height: 30px
}
}
@media screen and (min-width: 1265px) {
.side-place {
    border-radius: 15px;
    width: 284px;
    margin: 12px 0 0 11px
}
}
.side-links {
-ms-flex-order: 5;
-webkit-box-ordinal-group: 5;
-webkit-order: 5;
order: 5;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
margin-top: 10px
}
@media screen and (min-width: 576px) {
.side-links {
    margin-top: 24px
}
}
@media screen and (min-width: 896px) and (max-width: 1264px) {
.side-links {
    margin-top: 0
}
}
@media screen and (min-width: 1265px) {
.side-links {
    display: block
}
}
.side-links__lnk {
font-size: 13px;
font-weight: bold;
text-decoration: none;
line-height: 25px;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
text-align: center;
height: 60px;
border-top: 1px dotted #000;
-ms-flex: 0 0 50%;
-webkit-box-flex: 0 0 50%;
-webkit-flex: 0 0 50%;
flex: 0 0 50%;
position: relative
}
@media screen and (min-width: 576px) {
.side-links__lnk {
    font-size: 16px;
    line-height: 34px;
    height: 90px
}
}
@media screen and (min-width: 896px) {
.side-links__lnk {
    font-size: 18px;
    line-height: 30px;
    height: 100px
}
}
@media screen and (min-width: 896px) and (max-width: 1264px) {
.side-links__lnk {
    border-top: none
}
}
@media screen and (min-width: 1265px) {
.side-links__lnk {
    text-align: left
}
}
@media screen and (min-width: 576px) {
.side-links__lnk .side-links__desc {
    position: relative;
    top: 2px
}
}
.side-links__lnk.current, .side-links__lnk:hover {
text-decoration: none
}
.side-links__lnk.current::after, .side-links__lnk:hover::after {
content: "";
height: 6px;
width: 100%;
display: block;
background-color: #fff100;
left: 0;
bottom: 0;
position: absolute
}
@media screen and (min-width: 896px) {
.side-links__lnk.current::after, .side-links__lnk:hover::after {
    height: 12px
}
}
.side-links__lnk.souzoku {
border-right: 1px dotted #000
}
@media screen and (min-width: 1265px) {
.side-links__lnk.souzoku {
    height: 100px;
    border-right: none
}
}
@media screen and (min-width: 1265px) {
.side-links__lnk.seizen {
    height: 90px;
    border-bottom: 1px dotted #000
}
}
.side-links__lnk .big {
font-size: 20px
}
@media screen and (min-width: 576px) {
.side-links__lnk .big {
    font-size: 30px
}
}
.side-links__lnk .grn {
color: #77ad22
}
.side-btns {
display: none
}
@media screen and (min-width: 896px) and (max-width: 1264px) {
.side-btns {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-ordinal-group: 6;
    -webkit-order: 6;
    -ms-flex-order: 6;
    order: 6;
    height: 60px;
    border-top: 1px dotted #000;
    border-bottom: 1px dotted #000
}
}
@media screen and (min-width: 1265px) {
.side-btns {
    padding: 24px 0 0 15px;
    display: block
}
}
.side-btns__lnk {
position: relative
}
@media screen and (min-width: 896px) and (max-width: 1264px) {
.side-btns__lnk {
    -ms-flex: 0 0 33%;
    -webkit-box-flex: 0 0 33%;
    -webkit-flex: 0 0 33%;
    flex: 0 0 33%;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 0.015em
}
}
@media screen and (min-width: 1265px) {
.side-btns__lnk {
    display: inline-block;
    line-height: 0;
    z-index: 1
}
}
@media screen and (min-width: 1265px) {
.side-btns__lnk.sbmt {
    margin-right: 10px
}
}
@media screen and (min-width: 896px) and (max-width: 1264px) {
.side-btns__lnk.simu {
    border-left: 1px dotted #000;
    border-right: 1px dotted #000;
    line-height: 1.1
}
}
@media screen and (min-width: 1265px) {
.side-btns__lnk.voice,
.side-btns__lnk.contact,
.side-btns__lnk.simu {
    margin-top: 10px
}
}
.side-btns__lnk::after {
content: "";
position: absolute
}
@media screen and (min-width: 1265px) {
.side-btns__lnk::after {
    display: block;
    background-color: #e7e7e7;
    border-radius: 10px;
    z-index: -1;
    left: 4px;
    top: 4px
}
}
@media screen and (min-width: 1265px) {
    .side-btns__lnk.sbmt, .side-btns__lnk.simu, .side-btns__lnk.contact {
        width: 270px;
    }
}
@media screen and (min-width: 1265px) {
.side-btns__lnk.voice {
    width: 270px;
    height: calc(270px * 65 / 297)
}
.side-btns__lnk.contact {
    width: 270px;
    height: calc(270px * 60 / 297)
}
.side-btns__lnk.column {
    width: 270px;
    height: calc(270px * 65 / 297)
}
}
@media screen and (min-width: 1265px) {
    .side-btns__lnk.contact::after {
    width: 270px;
    height: calc(270px * 60 / 297)
}
.side-btns__lnk.voice::after {
    width: 270px;
    height: calc(270px * 65 / 297)
}
.side-btns__lnk.column::after {
    width: 270px;
    height: calc(270px * 65 / 297)
}
.side-btns__lnk.simu::after {
    width: 270px;
    height: calc(270px * 60 / 297);
}
}
.side-btns__lnk.current, .side-btns__lnk:hover {
text-decoration: none
}
.side-btns__lnk.current::after, .side-btns__lnk:hover::after {
background-color: #fff100
}
@media screen and (min-width: 896px) and (max-width: 1264px) {
.side-btns__lnk.current::after, .side-btns__lnk:hover::after {
    width: 100%;
    height: 8px;
    bottom: 0;
    left: 0
}
}
.side-btns__lnk.current .side-btns__img, .side-btns__lnk:hover .side-btns__img {
opacity: 1
}
.side-btns__img {
display: none
}
@media screen and (min-width: 1265px) {
.side-btns__img {
    display: inline;
    width: 100%
}
}
@media screen and (min-width: 1265px) {
.side-btns__txt {
    display: none
}
}
.side-lst {
-ms-flex-order: 1;
-webkit-box-ordinal-group: 1;
-webkit-order: 1;
order: 1;
list-style: none;
padding: 10px 0 0 calc(8 / 375 * 100%);
line-height: 1;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex
}
@media screen and (min-width: 576px) {
.side-lst {
    padding-bottom: 7px;
    padding-left: 0;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center
}
}
@media screen and (min-width: 896px) {
.side-lst {
    -ms-flex-pack: end;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    margin-right: 20px
}
}
@media screen and (min-width: 1265px) {
.side-lst {
    margin: 20px 0 0 22px;
    display: block;
    padding: 0
}
}
.side-itm {
font-size: 11px;
margin-left: 14px
}
@media screen and (min-width: 576px) {
.side-itm {
    font-size: 14px;
    margin-left: 24px
}
}
@media screen and (min-width: 1265px) {
.side-itm {
    display: block;
    margin-left: 0;
    font-size: 16px
}
}
@media screen and (min-width: 1265px) {
.side-itm:not(:first-child) {
    margin-top: 12px
}
}
.side-itm.faq {
-ms-flex-order: 2;
-webkit-box-ordinal-group: 2;
-webkit-order: 2;
order: 2
}
.side-itm.cntct {
-ms-flex-order: 3;
-webkit-box-ordinal-group: 3;
-webkit-order: 3;
order: 3
}
.side-itm.info {
-ms-flex-order: 1;
-webkit-box-ordinal-group: 1;
-webkit-order: 1;
order: 1;
margin-left: 0
}
.side-itm::before {
content: ">";
display: inline-block;
background-color: #f39800;
width: 10px;
height: 10px;
border-radius: 50%;
text-align: center;
line-height: 1;
margin-right: 6px;
color: #FFF;
font-weight: bold;
font-size: 10px
}
@media screen and (min-width: 576px) {
.side-itm::before {
    width: 18px;
    height: 18px;
    margin-right: 13px;
    font-size: 14px;
    line-height: 1.2;
    position: relative;
    top: -2px
}
}
.side-itm__lnk.current, .side-itm__lnk:hover {
background-color: #fff100;
text-decoration: none;
opacity: 1
}
.side-banner {
display: none
}
@media screen and (min-width: 1265px) {
.side-banner {
    display: inline-block;
    margin: 16px 0 0 18px;
    width: 277px
}
}
/*==================================================
 * SP hamburger navigation
 *================================================*/
.sp-nav-toggle {
display: none
}
.sp-header {
display: none
}
@media screen and (max-width: 1264px) {
.sp-header {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 60px;
    padding: 0 15px;
    background-color: #FFF;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
    background-color: #fdf9ea;
    z-index: 100
}
.sp-header__brand {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-column-gap: 8px;
    column-gap: 8px
}
.sp-header__logo {
    display: block;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    line-height: 1;
    font-size: 10px;
    width: 90px;
    height: 44px;
    background: url("../img/head-logo.png") no-repeat center;
    background-size: contain
}
.sp-header__logo:hover {
    opacity: .7
}
.sp-header__place {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: inline-flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    background-color: #77ad22;
    color: #FFF;
    border-radius: 9px;
    font-size: 9px;
    line-height: 1;
    white-space: nowrap;
    height: 18px;
    padding: 0 8px
}
.sp-header__btn {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-direction: column;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 28px;
    height: 20px;
    cursor: pointer;
    z-index: 101
}
.sp-header__btn span {
    display: block;
    height: 3px;
    width: 100%;
    background-color: #333;
    border-radius: 2px;
    transition: transform .2s ease, opacity .2s ease
}
.sp-nav-toggle:checked ~ .sp-header .sp-header__btn span:nth-child(1) {
    transform: translateY(8.5px) rotate(45deg)
}
.sp-nav-toggle:checked ~ .sp-header .sp-header__btn span:nth-child(2) {
    opacity: 0
}
.sp-nav-toggle:checked ~ .sp-header .sp-header__btn span:nth-child(3) {
    transform: translateY(-8.5px) rotate(-45deg)
}
.side-wrap {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    overflow-y: auto;
    background-color: #FFF;
    z-index: 99;
    padding-top: 60px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    transition: opacity .2s ease, transform .2s ease, visibility .2s ease
}
.sp-nav-toggle:checked ~ .side-wrap {
    opacity: 1;
    visibility: visible;
    transform: translateY(0)
}
.side-scroll {
    display: block
}
.side-head {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex
}
.side-place {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex
}
.side-btns {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
}
.main-area {
    padding-top: 60px
}
}
@media screen and (max-width: 1264px) {
.sp-menu-break {
    display: none
}
.side-head,
.side-place,
.side-banner {
    display: none
}
.side-scroll {
    display: block;
    min-height: 100%;
    padding-bottom: 24px;
    text-align: center
}
.side-links {
    display: block;
    margin-top: 0
}
.side-links__lnk {
    height: 76px;
    border-right: none;
    border-top: none;
    border-bottom: 1px dotted #000
}
.side-links__lnk.souzoku,
.side-links__lnk.seizen {
    height: 76px
}
.side-btns {
    display: block;
    border-top: none;
    height: auto
}
.side-btns__lnk {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 0 20px;
    border-bottom: 1px dotted #000;
    font-size: 16px;
    font-weight: bold
}
.side-btns__img {
    display: none
}
.side-btns__txt {
    display: block
}
.side-lst {
    display: block;
    margin: 0;
    padding: 12px 20px 8px;
    text-align: center;
    border-bottom: 1px dotted #000
}
.side-itm {
    margin: 0;
    padding: 8px 0;
    font-size: 15px
}
}
@media screen and (min-width: 769px) {
.main-area {
    -ms-flex: 1 0 auto;
    -webkit-box-flex: 1 0 auto;
    -webkit-flex: 1 0 auto;
    flex: 1 0 auto
}
}
@media screen and (min-width: 1265px) {
.main-area {
    margin-left: 305px
}
}
@media screen and (max-width: 1264px) {
.main-area .header-nav {
    display: none
}
}
.main-area .header-nav .bc {
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
background-color: #f39800;
color: #FFF;
height: 35px;
padding-left: 28px;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
font-size: 14px
}
.main-area .header-nav .bc__lnk {
color: #FFF
}
@media (min-width: 1265px) {
.main-area .header-nav .tel-area__yoko {
    display: none
}
}
.page-contents {
margin: 25px 10px 0
}
@media screen and (min-width: 576px) {
.page-contents {
    margin: 80px 58px 0 28px
}
}
@media screen and (min-width: 1265px) {
.page-contents {
    margin-right: 0
}
}
@media screen and (min-width: 1293px) {
.page-contents {
    margin-right: 28px
}
}
@media screen and (min-width: 1385px) {
.page-contents {
    width: calc(100% - 120px);
    margin-right: auto;
    margin-left: auto
}
}
.page-contents p {
font-size: 15px;
line-height: calc(37 / 20);
}
@media screen and (min-width: 576px) {
.page-contents p {
    font-size: 17px;
    line-height: 2.0;
}
}
.page-contents .lead-ttl {
font-size: 15px;
font-weight: bold;
line-height: calc(50 / 30);
}
@media screen and (min-width: 576px) {
.page-contents .lead-ttl {
    font-size: 20px
}
}
@media screen and (min-width: 896px) {
.page-contents .lead-ttl {
    font-size: 30px
}
}
.page-contents .lead-desc {
margin-top: 15px
}
.page-contents .lead-desc p {
    display: block !important;
    margin-bottom: 1.0em !important;
}
@media screen and (min-width: 576px) {
.page-contents .lead-desc {
    margin-top: 30px
}
}
@media screen and (min-width: 896px) {
.page-contents .lead-desc p {
    font-size: 18px
}
}
.page-contents .sttl-no {
font-size: 18px;
font-weight: bold;
line-height: 1;
height: 40px;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
margin-top: 30px
}
@media screen and (min-width: 576px) {
.page-contents .sttl-no {
    font-size: 22px;
    height: 50px;
    margin-top: 40px
}
}
.page-contents .sttl-no::before {
display: inline-block;
border-radius: 50%;
background-color: #91bc4d;
color: #ff0;
margin-right: 10px;
text-align: center;
font-size: 28px;
height: 40px;
width: 40px;
font-weight: normal;
font-family: "Times New Roman", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
line-height: 1.5
}
@media screen and (min-width: 576px) {
.page-contents .sttl-no::before {
    margin-right: 17px;
    font-size: 35px;
    height: 50px;
    width: 50px
}
}
.page-contents .sttl-no:first-of-type::before {
content: "1"
}
.page-contents .sttl-no:nth-of-type(2)::before {
content: "2"
}
.page-contents .sttl-no:nth-of-type(3)::before {
content: "3"
}
.page-contents .sttl-no:nth-of-type(4)::before {
content: "4"
}
.page-contents .sttl-no + p {
margin-top: 18px
}
@media screen and (min-width: 576px) {
.page-contents .sttl-no + p {
    margin-top: 22px
}
}
.page-contents .ms-area {
background-color: #FFF;
position: relative;
margin-top: 100px;
padding: 0 20px 35px
}
@media screen and (min-width: 576px) {
.page-contents .ms-area {
    margin-top: 140px;
    padding: 0 40px 70px
}
}
.page-contents .ms-ttl {
background-color: #fbedd3;
font-size: 16px;
text-align: center;
line-height: 1;
border-radius: 11px;
height: 45px;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
letter-spacing: 0.05em;
margin: 0 auto;
position: relative;
top: -23px;
width: 260px
}
@media screen and (min-width: 321px) {
.page-contents .ms-ttl {
    font-size: 18px;
    width: 330px
}
}
@media screen and (min-width: 576px) {
.page-contents .ms-ttl {
    top: -46px;
    font-size: 33px;
    width: 610px;
    height: 90px;
    border-radius: 22px
}
}
@media screen and (min-width: 896px) {
.page-contents .ms-ttl {
    width: 660px
}
}
.page-contents .ms-ttl::after {
content: "";
width: 0;
height: 0;
border-style: solid;
border-width: 14px 14px 0 14px;
border-color: #fbedd3 transparent transparent transparent;
position: absolute;
bottom: -14px;
left: 45.8%
}
@media screen and (min-width: 576px) {
.page-contents .ms-ttl::after {
    bottom: -28px;
    border-width: 28px 28px 0 28px
}
}
.page-contents .ms-ttl__sub {
position: relative
}
.page-contents .ms-ttl__sub::before, .page-contents .ms-ttl__sub::after {
content: "";
width: 15px;
height: 27.5px;
display: inline-block;
background-repeat: no-repeat;
background-size: cover;
position: absolute;
top: -7px
}
@media screen and (min-width: 576px) {
.page-contents .ms-ttl__sub::before, .page-contents .ms-ttl__sub::after {
    width: 30px;
    height: 55px;
    top: -14px
}
}
.page-contents .ms-ttl__sub::before {
background-image: url(../img/ms-dot__l.png);
left: -20px
}
@media screen and (min-width: 321px) {
.page-contents .ms-ttl__sub::before {
    left: -30px
}
}
@media screen and (min-width: 576px) {
.page-contents .ms-ttl__sub::before {
    left: -60px
}
}
.page-contents .ms-ttl__sub::after {
background-image: url(../img/ms-dot__r.png);
right: -20px
}
@media screen and (min-width: 321px) {
.page-contents .ms-ttl__sub::after {
    right: -30px
}
}
@media screen and (min-width: 576px) {
.page-contents .ms-ttl__sub::after {
    right: -60px
}
}
@media screen and (max-width: 895px) {
.page-contents .ms-ttl {
    max-width: 100%;
    height: auto;
    min-height: 45px;
    padding: 8px 25px;
    line-height: 1.5
}
.page-contents .ms-ttl__sub {
    min-width: 0;
    overflow-wrap: anywhere
}
.page-contents .ms-ttl__sub::before,
.page-contents .ms-ttl__sub::after {
    top: 50%;
    transform: translateY(-50%)
}
.page-contents .ms-ttl__sub::before {
    left: -20px
}
.page-contents .ms-ttl__sub::after {
    right: -20px
}
}
@media screen and (min-width: 576px) and (max-width: 895px) {
.page-contents .ms-ttl {
    min-height: 90px;
    padding: 16px 50px
}
.page-contents .ms-ttl__sub::before {
    left: -40px
}
.page-contents .ms-ttl__sub::after {
    right: -40px
}
}
.page-contents .ms-sttl {
color: #E78D4A;
text-align: center;
font-size: 18px;
line-height: 1;
margin-top: 23px;
font-weight: bold
}
@media screen and (min-width: 576px) {
.page-contents .ms-sttl {
    font-size: 32px;
    margin-top: 46px
}
}
.page-contents .ms-lst,
.page-contents .follow_point {
list-style: none;
margin: 0;
padding: 0;
margin-top: 20px
}
.page-contents .ms-lst > li,
.page-contents .follow_point > li {
font-size: 12px;
text-indent: -16px;
padding-left: 16px
}
@media screen and (min-width: 576px) {
.page-contents .ms-lst > li,
.page-contents .follow_point > li {
    font-size: 16px
}
}
.page-contents .ms-lst > li:not(:first-child), 
.page-contents .follow_point > li:not(:first-child) {
margin-top: 0.8em
}
.page-contents .ms-lst > li::before,
.page-contents .follow_point > li::before {
content: "";
display: inline-block;
background-color: #f39800;
width: 10px;
height: 10px;
border-radius: 50%;
margin-right: 6px
}
@media screen and (min-width: 576px) {
.page-contents .ms-lst > li::before,
.page-contents .follow_point > li::before {
    width: 14px;
    height: 14px;
    margin-right: 8px
}
}
.page-contents .ms-lst,
.page-contents .follow_point {
    margin-top: 30px
}
.page-contents .ms-lst > li.ms-itm,
.page-contents .follow_point > li {
border-bottom: 1px dashed #000;
font-size: 14px;
padding-bottom: 8px
}
.page-contents .follow_point > li {
    border: 0;
}
@media screen and (min-width: 576px) {
.page-contents .ms-lst > li.ms-itm,
.page-contents .follow_point > li {
    font-size: 18px;
    padding-bottom: 14px
}
}
h4.follow_title {
    font-size: 1.3em;
    letter-spacing: 0.1em;
    color: #f39800;
    margin-top: 0.8em;
}
@media screen and (max-width: 576px) {
h4.follow_title {
    font-size: 1.15em;
    letter-spacing: 0.1em;
    color: #f39800;
    margin-top: 0.8em;
}
}
.page-ttl,
.column-ttl {
font-size: 22px;
line-height: 1;
padding-bottom: 8px;
border-bottom: 3px solid #f39800;
margin-bottom: 20px;
letter-spacing: 0.02em
}
.column-ttl {
    margin-bottom: 6px;
}
@media screen and (min-width: 321px) {
.page-ttl, .column-ttl {
    font-size: 25px
}
.column-ttl {
    margin-bottom: 6px;
}
}
@media screen and (min-width: 576px) {
.page-ttl, .column-ttl {
    font-size: 36px;
    border-bottom-width: 4px;
    padding-bottom: 12px;
    margin-bottom: 36px
}
.column-ttl {
    margin-bottom: 6px;
}
}
@media screen and (min-width: 896px) {
.page-ttl, .column-ttl {
    font-size: 47px;
    border-bottom-width: 6px;
    padding-bottom: 18px;
    margin-bottom: 50px
}
.column-ttl {
    margin-bottom: 6px;
}
}
.page-ttl .grn, .column-ttl .grn {
color: #77ad22
}
.page-ttl .small, .column-ttl .small {
font-size: 16px
}
@media screen and (min-width: 576px) {
.page-ttl .small, .column-ttl .small {
    font-size: 24px
}
}
@media screen and (min-width: 896px) {
.page-ttl .small, .column-ttl .small {
    font-size: 32px
}
}
.page-sttl {
background-color: #FFF;
text-align: center;
outline: 10px solid #fff;
border: 1px solid #f39800;
font-size: 18px;
line-height: calc(42 / 35);
font-weight: bold;
padding: 8px 0;
margin-top: 35px
}
@media screen and (min-width: 576px) {
.page-sttl {
    outline-width: 10px;
    font-size: 30px;
    padding: 15px 0;
    margin-top: 70px
}
}
.page-sttl + .sttl-no {
margin-top: 35px
}
@media screen and (min-width: 576px) {
.page-sttl + .sttl-no {
    margin-top: 45px
}
}
.page-sttl + p {
margin-top: 28px
}
@media screen and (min-width: 576px) {
.page-sttl + p {
    margin-top: 38px
}
}
.cntct-area {
margin: 30px 10px 0;
line-height: 1
}
@media screen and (min-width: 576px) {
.cntct-area {
    margin: 65px 58px 0
}
}
@media screen and (min-width: 1265px) {
.cntct-area {
    margin-right: 28px;
    margin-left: 28px
}
}
.cntct-ttl {
background-color: #f39800;
color: #FFF;
text-align: center;
font-size: 23px;
letter-spacing: 0.3em;
padding: 7px 0 5px;
border-bottom: 2px solid #fff
}
@media screen and (min-width: 576px) {
.cntct-ttl {
    font-size: 45px;
    letter-spacing: .2em;
    padding: 14px 0 11px
}
}
.cntct-ttl__sub {
display: block;
font-size: 10px;
margin-top: 4px;
letter-spacing: 0.3em
}
@media screen and (min-width: 576px) {
.cntct-ttl__sub {
    font-size: 20px;
    letter-spacing: .2em;
    margin-top: 8px
}
}
@media screen and (min-width: 896px) {
.cntct-inner {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex
}
}
.cntct-box {
background-color: #FFF
}
@media screen and (min-width: 896px) {
.cntct-box {
    height: 220px
}
}
.cntct-box.tel {
padding-bottom: 17px
}
@media screen and (min-width: 896px) {
.cntct-box.tel {
    border-right: 1px solid #7d7669;
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    -webkit-flex-grow: 0;
    flex-grow: 0;
    -ms-flex-negative: 0;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    -ms-flex-preferred-size: calc(475 / 880 * 100%);
    -webkit-flex-basis: calc(475 / 880 * 100%);
    flex-basis: calc(475 / 880 * 100%);
    padding-bottom: 0
}
}
.cntct-box.mail {
padding-bottom: 30px
}
@media screen and (min-width: 896px) {
.cntct-box.mail {
    -ms-flex: 1 0 auto;
    -webkit-box-flex: 1 0 auto;
    -webkit-flex: 1 0 auto;
    flex: 1 0 auto;
    padding-bottom: 0
}
}
.cntct-box__ttl {
background-color: #fbedd3;
font-weight: normal;
font-size: 12px;
height: 37px;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
padding-left: 8px;
line-height: 1.3
}
@media screen and (min-width: 576px) {
.cntct-box__ttl {
    font-size: 16px;
    height: 74px;
    padding-left: 16px
}
}
.cntct-box__ttl::before {
content: "";
display: inline-block;
background-color: #f39800;
border-radius: 50%;
width: 10px;
height: 10px;
margin-right: 6px
}
@media screen and (min-width: 576px) {
.cntct-box__ttl::before {
    width: 14px;
    height: 14px
}
}
.cntct-box__tel {
text-align: center;
font-size: 26px;
font-weight: bold;
letter-spacing: 0.06em;
color: #eb6100 !important;
display: block;
margin-top: 14px
}
@media screen and (min-width: 576px) {
.cntct-box__tel {
    font-size: 42px;
    margin-top: 27px
}
}
@media screen and (min-width: 896px) {
.cntct-box__tel {
    font-size: 52px
}
}
.cntct-box__tel:hover {
text-decoration: none
}
.cntct-box__sub {
background-color: #ebebeb;
margin: 10px auto 0;
display: block;
padding: 4px 0;
font-size: 12px;
text-align: center;
width: 190px
}
@media screen and (min-width: 576px) {
.cntct-box__sub {
    font-size: 16px;
    margin-top: 16px;
    padding: 8px 0;
    width: 300px
}
}
@media screen and (min-width: 896px) {
.cntct-box__sub {
    width: 370px
}
}
.cntct-box__mail {
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
width: 220px;
height: 40px;
margin: 25px auto 0;
background-color: #f39800;
color: #FFF !important;
font-size: 13px;
font-weight: bold;
padding-left: 12px;
transition: all .3s
}
@media screen and (min-width: 576px) {
.cntct-box__mail {
    width: 327px;
    height: 67px;
    font-size: 20px;
    margin-top: 40px;
    padding-left: 20px
}
}
.cntct-box__mail::after {
content: "→";
margin-left: 28px;
transition: all .3s
}
.cntct-box__mail:hover {
text-decoration: none;
opacity: 0.7
}
.cntct-box__mail:hover::after {
margin-left: 33px
}
.news-head {
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-pack: justify;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
justify-content: space-between;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
height: 30px;
border-bottom: 1px solid #000
}
@media screen and (min-width: 576px) {
.news-head {
    height: 60px
}
}
.news-ttl {
font-size: 16px;
font-weight: bold;
padding-left: 12px
}
@media screen and (min-width: 576px) {
.news-ttl {
    font-size: 30px;
    padding-left: 24px
}
}
.news-lst {
list-style: none
}
.news-itm {
font-size: 12px;
padding: 16px 0 13px 12px;
border-bottom: 1px dotted #cecece
}
.news-itm a {
font-size: 14px;
}
@media screen and (min-width: 576px) {
.news-itm {
    font-size: 16px;
    padding: 32px 0 26px 24px;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center
}
}
.news-date {
display: inline-block;
width: 75px
}
@media screen and (min-width: 576px) {
.news-date {
    width: auto;
    -ms-flex: 0 0 120px;
    -webkit-box-flex: 0 0 120px;
    -webkit-flex: 0 0 120px;
    flex: 0 0 120px
}
}
.news-cat {
display: -ms-inline-flexbox;
display: -webkit-inline-box;
display: -webkit-inline-flex;
display: inline-flex;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
width: 80px;
height: 21px;
color: #FFF
}
@media screen and (min-width: 576px) {
.news-cat {
    width: 105px;
    height: 28px;
    -ms-flex-negative: 0;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    margin-right: 28px
}
}
.news-cat.news {
background-color: #eb6100
}
.news-cat.other {
background-color: #f19149
}
.news-cat.info {
background-color: #f6b37f
}
.news-lnk {
display: block;
margin-top: 6px
}
@media screen and (min-width: 576px) {
.news-lnk {
    margin-top: 0
}
}
.muryou-lnk {
position: relative;
display: block;
margin: 30px auto 0;
width: 230.5px
}
.muryou-lnk::after {
position: absolute;
left: 4px;
top: 4px;
content: "";
display: block;
border-radius: 10px;
width: 230.5px;
height: 70.5px;
background-color: #e7e7e7;
z-index: -1
}
@media screen and (min-width: 576px) {
.muryou-lnk::after {
    width: 461px;
    height: 141px
}
}
.muryou-lnk:hover {
opacity: 1
}
.muryou-lnk:hover::after {
background-color: #fff100
}
.muryou-lnk:hover img {
opacity: 1
}
@media screen and (min-width: 576px) {
.muryou-lnk {
    margin-top: 100px;
    width: 461px
}
}
.muryou-img {
width: 100%
}
@media screen and (min-width: 1265px) {
body.home .tel-area {
    position: relative
}
}
@media screen and (min-width: 1265px) {
body.home .tel-area__accs {
    margin-left: 32px
}
}
@media screen and (min-width: 1265px) {
body.home .tel-area .btn-access {
    width: 120px;
    height: 120px;
    position: absolute;
    font-size: 18px;
    z-index: 2;
    top: 73px;
    left: 22px;
    padding-top: 78px;
}
}
@media screen and (min-width: 896px) and (max-width: 1264px) {
body.home .side-btns {
    border-bottom: none
}
}
body.home .hero-area {
position: relative
}
@media screen and (min-width: 896px) {
body.home .hero-area {
    height: 583px
}
}
body.home .hero-area::before {
display: block;
content: "";
width: 100%;
padding-top: 64%
}
@media screen and (min-width: 360px) {
body.home .hero-area::before {
    padding-top: 60%
}
}
@media screen and (min-width: 375px) {
body.home .hero-area::before {
    padding-top: 56%
}
}
@media screen and (min-width: 896px) {
body.home .hero-area::before {
    content: none
}
}
body.home .hero-inner {
background: url(../img/top-vis__pc.jpg) no-repeat;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
justify-content: flex-end;
-ms-flex-pack: end;
-webkit-box-pack: end;
-webkit-justify-content: flex-end;
background-size: 140%;
background-position: 26% 0
}
@media screen and (min-width: 576px) {
body.home .hero-inner {
    -ms-flex-pack: start;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    justify-content: flex-start
}
}
@media screen and (min-width: 896px) and (max-width: 1264px) {
body.home .hero-inner {
    background-size: 113%;
    background-position: 0 -50px
}
}
@media screen and (min-width: 1265px) {
body.home .hero-inner {
    display: block;
    background-position: left top;
    background-size: cover
}
}
body.home .hero-desc {
-webkit-writing-mode: vertical-rl;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
color: #FFF;
background-color: rgba(243, 152, 0, 0.8);
width: calc(310 / 750 * 100%);
padding: 12px 8px 0 0 !important;
}
@media screen and (min-width: 321px) {
body.home .hero-desc {
    padding-top: 12px;
    padding-right: 10px
}
}
@media screen and (min-width: 576px) {
body.home .hero-desc {
    width: calc(293 / 1009 * 100%);
    padding: 20px 20px 0 0;
    margin-left: calc(440 / 750 * 100%)
}
}
@media screen and (min-width: 896px) {
body.home .hero-desc {
    position: absolute;
    padding: 30px 30px 0 0;
    width: 293px;
    height: 583px;
    left: calc(620 / 1009 * 100%);
    margin-left: 0
}
}
@media screen and (min-width: 1265px) {
body.home .hero-desc {
    padding-top: calc(30 / 1009 * 100%)
}
}
body.home .hero-ttl {
font-size: 18px;
line-height: 1.3;
margin-left: 8px
}
@media screen and (min-width: 321px) {
body.home .hero-ttl {
    font-size: 20px;
    margin-left: 12px
}
}
@media screen and (min-width: 576px) {
body.home .hero-ttl {
    font-size: 32px;
    letter-spacing: 0.12em
}
}
@media screen and (min-width: 896px) {
body.home .hero-ttl {
    margin-left: 18px;
    font-size: 40px
}
}
body.home .hero-lead {
font-size: 12px;
line-height: 1.7
}
@media screen and (min-width: 576px) {
body.home .hero-lead {
    font-size: 18px;
    line-height: 1.9;
    letter-spacing: 0.1em
}
}
@media screen and (min-width: 896px) {
body.home .hero-lead {
    font-size: 20px
}
}
body.home .hero-lead .cmma-txt {
display: none
}
@media screen and (min-width: 375px) {
body.home .hero-lead .cmma-txt {
    display: inline;
    -webkit-text-combine: none;
    -ms-text-combine-horizontal: none;
    text-combine-upright: none
}
}
body.home .hero-lead .cmma-img {
display: inline-block;
position: relative;
left: 3px;
margin-bottom: 5px;
margin-top: 1px;
width: 3px;
height: auto
}
@media screen and (min-width: 375px) {
body.home .hero-lead .cmma-img {
    display: none
}
}
body.home .anshin-area {
background-color: #FFF;
padding: 22px 0 25px;
position: relative
}
@media screen and (min-width: 769px) {
body.home .anshin-area {
    border-radius: 20px;
    padding-top: 44px;
    margin: 0 26px
}
}
@media screen and (min-width: 896px) {
body.home .anshin-area {
    margin-top: -150px
}
}
@media screen and (min-width: 1265px) {
body.home .anshin-area {
    margin-top: calc(-583px + calc(407 / 1009 * 100%));
    margin-right: 0;
    margin-left: 13px
}
}
@media screen and (min-width: 1278px) {
body.home .anshin-area {
    margin-right: 13px
}
}
@media screen and (min-width: 1760px) {
body.home .anshin-area {
    margin-top: -17px
}
}
@media screen and (min-width: 896px) {
body.home .anshin-area::after {
    content: "";
    display: block;
    width: calc(100% - 26px);
    height: 0;
    border-top: 1px dotted #f39800;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: 780px
}
}
@media screen and (min-width: 1006px) {
body.home .anshin-area::after {
    top: 745px
}
}
@media screen and (min-width: 1100px) {
body.home .anshin-area::after {
    top: 775px
}
}
@media screen and (min-width: 1265px) {
body.home .anshin-area::after {
    content: none
}
}
body.home .anshin-area .hero-name {
display: none
}
@media screen and (min-width: 896px) {
body.home .anshin-area .hero-name {
    font-size: 17px;
    font-weight: bold;
    display: block;
    position: absolute;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl
}
body.home .anshin-area .hero-name.dai {
    left: calc(50 / 1009 * 100%);
    top: -261px
}
body.home .anshin-area .hero-name.nori {
    top: -156px;
    left: calc(600 / 1009 * 100%)
}
}
@media screen and (min-width: 896px) and (min-width: 1265px) and (max-width: 1385px) {
body.home .anshin-area .hero-name.nori {
    left: 550px
}
}
@media screen and (min-width: 896px) and (min-width: 1370px) {
body.home .anshin-area .hero-name.nori {
    left: calc(535 / 1009 * 100%)
}
}
body.home .anshin-ttl {
display: block;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
line-height: 1;
font-size: 10px;
background: url("../img/6anshin.png") no-repeat;
background-size: cover;
width: calc(509px / 2);
height: calc(116px / 2);
margin: 0 auto
}
@media screen and (min-width: 769px) {
    body.home .anshin-ttl {
        width: 364px;
        height: 83px
    }
}
@media screen and (min-width: 576px) {
    body.home .anshin-inner {
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -ms-flex-pack: center;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        -ms-flex-wrap: wrap;
        -webkit-box-lines: multiple;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-top: 40px
    }
}
body.home .anshin-box {
    border-bottom: 1px dotted #f39800;
    padding: 36px 16px 23px;
    position: relative
}
@media screen and (min-width: 576px) {
    body.home .anshin-box {
        -ms-flex: 0 0 50%;
        -webkit-box-flex: 0 0 50%;
        -webkit-flex: 0 0 50%;
        flex: 0 0 50%;
        border-bottom: none;
        padding-top: 6px
    }
}
@media screen and (min-width: 896px) {
    body.home .anshin-box {
        -ms-flex: 0 0 33%;
        -webkit-box-flex: 0 0 33%;
        -webkit-flex: 0 0 33%;
        flex: 0 0 33%
    }
}
@media screen and (min-width: 896px) {
    body.home .anshin-box:first-child .anshin-sttl {
        font-size: 32px;
        letter-spacing: -1.6px
    }
}
@media screen and (min-width: 1265px) {
    body.home .anshin-box:first-child::after {
        width: calc(100% - 16px);
        left: 16px
    }
}
@media screen and (min-width: 576px) {
    body.home .anshin-box:nth-child(2) {
        border-left: 1px dotted #f39800
    }
}
@media screen and (min-width: 896px) {
    body.home .anshin-box:nth-child(2) {
        border-right: 1px dotted #f39800
    }
}
@media screen and (min-width: 1265px) {
    body.home .anshin-box:nth-child(2)::after {
        width: 100%;
        left: 0
    }
}
@media screen and (min-width: 1265px) {
    body.home .anshin-box:nth-child(2) .anshin-sttl__sub {
        letter-spacing: -1px
    }
}
@supports (-ms-ime-align: auto) {
    body.home .anshin-box:nth-child(2) .anshin-sttl__sub {
        letter-spacing: -1px
    }
}
@media screen and (min-width: 576px) {
    body.home .anshin-box:nth-child(n+3) {
        margin-top: 36px
    }
}
@media screen and (min-width: 896px) {
body.home .anshin-box:nth-child(3) {
    margin-top: 0
}
}
@media screen and (min-width: 1265px) {
body.home .anshin-box:nth-child(3)::after {
    width: calc(100% - 16px);
    right: 16px
}
}
@media screen and (min-width: 896px) {
body.home .anshin-box:nth-child(3) .anshin-sttl {
    font-size: 34px
}
}
@media screen and (min-width: 576px) {
body.home .anshin-box:nth-child(5) {
    border-left: 1px dotted #f39800
}
}
@media screen and (min-width: 896px) {
body.home .anshin-box:nth-child(5) {
    border-right: 1px dotted #f39800
}
}
@media screen and (min-width: 1265px) {
body.home .anshin-box:nth-child(5)::after {
    width: 100%;
    left: 0
}
}
body.home .anshin-box:nth-child(5) .anshin-sttl__sub {
    letter-spacing: -1px
}
@supports (-ms-ime-align: auto) {
body.home .anshin-box:nth-child(5) .anshin-sttl__sub {
    letter-spacing: -1px
}
}
@media screen and (min-width: 896px) {
body.home .anshin-box:nth-child(6) {
    margin-top: 36px
}
}
@media screen and (min-width: 1265px) {
body.home .anshin-box:nth-child(6)::after {
    width: calc(100% - 16px);
    right: 16px
}
}
@media screen and (min-width: 896px) {
body.home .anshin-box:nth-child(6) .anshin-sttl {
    font-size: 34px
}
}
@media screen and (min-width: 1265px) {
    body.home .anshin-box.box5,
    body.home .anshin-box.box6 {
        border-bottom: none !important;
    }

    body.home .anshin-box.box5::after,
    body.home .anshin-box.box6::after {
        content: none !important;
        border-bottom: none !important;
    }
}
body.home .anshin-box:last-child {
border-bottom: none
}
@media screen and (min-width: 1292px) and (max-width: 1264px) {
body.home .anshin-box:last-child {
    margin-right: 50px
}
}
@media screen and (min-width: 1265px) {
body.home .anshin-box:last-child {
    -ms-flex-preferred-size: 33%;
    -webkit-flex-basis: 33%;
    flex-basis: 33%
}
}
@media screen and (min-width: 1265px) {
    body.home .anshin-box:nth-child(n-3):after {
        content: "";
        display: block;
        position: absolute;
        height: 1px;
        border-bottom: 1px dotted #f39800;
        bottom: -20px;
    }
}
body.home .anshin-no {
text-align: center;
font-weight: bold;
font-size: 35px;
font-family: "Times New Roman", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
background: url(../img/anshin-head.png) no-repeat center top/75.5px;
padding-top: 20px;
line-height: 1
}
@media screen and (min-width: 576px) {
body.home .anshin-no {
    font-size: 50px;
    background-size: 108px;
    padding-top: 27px
}
}
body.home .anshin-sttl {
color: #f39800;
font-size: 25px;
text-align: center;
line-height: 26px;
margin-top: 10px
}
@media screen and (min-width: 576px) {
body.home .anshin-sttl {
    font-size: 35px;
    line-height: 37px;
    margin-top: 20px
}
}
body.home .anshin-sttl__sub {
display: block;
font-size: 17px
}
@media screen and (min-width: 576px) {
body.home .anshin-sttl__sub {
    font-size: 25px
}
}
body.home .anshin-block {
margin-top: 25px;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: start;
-webkit-box-align: start;
-webkit-align-items: flex-start;
align-items: flex-start
}
@media screen and (min-width: 576px) {
body.home .anshin-block {
    margin-top: 20px;
    display: block
}
}
body.home .anshin-i_lnk {
display: block;
width: 100%;
margin-right: 10px
}
@media screen and (min-width: 576px) {
body.home .anshin-i_lnk {
    width: 100%;
    margin-right: 0
}
}
body.home .anshin-img {
vertical-align: top;
width: 100%
}
body.home .anshin-info {
font-size: 14px;
line-height: 1.5;
padding: 5px 0 0 8px;
}
@media screen and (min-width: 576px) {
body.home .anshin-info {
    font-size: 16px;
    margin-top: 20px
}
}
body.home .anshin-lnk {
margin-top: 10px
}
@media screen and (min-width: 576px) {
body.home .anshin-lnk {
    margin-top: 36px;
    text-align: center
}
}
body.home .voice-area {
margin-top: 40px;
position: relative;
max-height: 335px
}
@media screen and (min-width: 576px) {
body.home .voice-area {
    margin-top: 70px
}
}
@media screen and (min-width: 1265px) {
body.home .voice-area {
    width: 940px;
    margin-left: auto;
    margin-right: auto
}
}
body.home .voice-area:before {
display: block;
content: "";
width: 100%;
padding-top: 34.35897%
}
body.home .voice-area > .voice-inner {
background: url(../img/top-voice-bk.jpg) no-repeat center/cover;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
padding-top: 8.73181%;
padding-bottom: 8.31601%
}
@media screen and (min-width: 896px) {
body.home .voice-area > .voice-inner {
    padding-top: 84px;
    padding-bottom: 80px
}
}
body.home .voice-bk {
background-color: rgba(255, 255, 255, 0.8);
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
height: 100%
}
@media screen and (min-width: 1265px) {
body.home .voice-lnk {
    margin-left: 25px
}
}
body.home .voice-lnk:hover .voice-lnk__img {
opacity: 0.6
}
body.home .voice-lnk__img {
width: 140px
}
@media screen and (min-width: 576px) {
body.home .voice-lnk__img {
    width: 220px
}
}
@media screen and (min-width: 896px) {
body.home .voice-lnk__img {
    width: 280px
}
}
body.home .books-area {
border: 2px solid #f39800;
background-color: #FFF;
position: relative;
margin: 40px 30px 0;
padding: 50px 20px 26px
}
@media screen and (min-width: 576px) {
body.home .books-area {
    border-width: 3px;
    margin: 87px 50px 0;
    padding: 75px 50px 50px
}
}
@media screen and (min-width: 1265px) {
body.home .books-area {
    margin-right: 0
}
}
body.home .books-ttl {
font-size: 16px;
font-weight: bold;
color: #FFF;
background: url(../img/book-bak.png) no-repeat left top/cover;
width: 200px;
height: calc(200px * 61 / 298);
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
position: absolute;
top: -7px;
left: -15px
}
@media screen and (min-width: 576px) {
body.home .books-ttl {
    font-size: 20px;
    width: 298px;
    height: 61px;
    top: -14px;
    left: -30px
}
}
@media screen and (min-width: 896px) {
body.home .books-inner {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: flex-start
}
}
@media screen and (min-width: 1265px) {
body.home .books-inner {
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center
}
}
body.home .books-box.box1 .books-desc {
margin-bottom: 20px
}
@media screen and (min-width: 576px) {
body.home .books-box.box1 .books-desc {
    margin-bottom: 26px
}
}
body.home .books-box.box2 {
margin-top: 35px
}
@media screen and (min-width: 896px) {
body.home .books-box.box2 {
    margin-top: 0
}
}
body.home .books-box.box2 .books-desc {
margin-bottom: 6px
}
@media screen and (min-width: 576px) {
body.home .books-box.box2 .books-desc {
    margin-bottom: 14px
}
}
body.home .books-desc {
font-size: 14px
}
@media screen and (min-width: 321px) {
body.home .books-fig {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-align: start;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    align-items: flex-start
}
}
@media screen and (min-width: 576px) {
body.home .books-fig {
    display: block
}
}
body.home .books-img {
vertical-align: top
}
body.home .books-img.book1 {
width: 90px
}
@media screen and (min-width: 576px) {
body.home .books-img.book1 {
    margin-right: 10px;
    width: auto
}
}
body.home .books-img.book2 {
margin-top: 20px;
width: 175px
}
@media screen and (min-width: 321px) {
body.home .books-img.book2 {
    margin-top: 0
}
}
@media screen and (min-width: 576px) {
body.home .books-img.book2 {
    width: auto
}
}
body.home .books-img.book3 {
width: 100px;
display: block;
margin: 0 auto
}
@media screen and (min-width: 576px) {
body.home .books-img.book3 {
    width: auto
}
}
body.home .news-area {
margin: 30px 10px 0
}
@media screen and (min-width: 576px) {
body.home .news-area {
    margin: 75px 25px 0 25px
}
}
@media screen and (min-width: 1265px) {
body.home .news-area {
    margin-right: 0;
    margin-left: 13px
}
}
@media screen and (min-width: 1278px) {
body.home .news-area {
    margin-right: 13px
}
}
body.souzoku .main-contents {
overflow: hidden
}
body.souzoku .lead-area .lead-ttl {
background: url("../img/souzoku-01.jpg") no-repeat right top/80px;
height: 80px;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center
}
body.souzoku-tama .lead-area .lead-ttl {
background: url("../img/tama-img01.jpg") no-repeat right top/80px;
height: 80px;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center
}

@media screen and (min-width: 576px) {
body.souzoku .lead-area .lead-ttl {
    background-image: none !important;
    height: auto;
    display: block
}
}
@media screen and (min-width: 576px) {
body.souzoku-tama .lead-area .lead-ttl {
    background-image: none !important;
    height: auto;
    display: block
}
}
@media screen and (max-width: 575px) {
body.souzoku .lead-area .lead-desc {
    background-image: none !important
}
}
@media screen and (min-width: 576px) {
body.souzoku .lead-area .lead-desc {
    margin-top: 50px;
    padding-right: calc(350 / 880 * 100%);
    background: url("../img/souzoku-01.jpg") no-repeat right top/calc(313 / 880 * 100%);
    font-size: 14px;
}
}
@media screen and (min-width: 896px) {
body.souzoku .lead-area .lead-desc {
    background-size: 313px;
    min-height: 320px;
    font-size: 16px;
}
}
@media screen and (min-width: 1265px) {
body.souzoku .lead-area .lead-desc {
    padding-right: 360px;
    font-size: 17px;
}
}

@media screen and (max-width: 575px) {
body.souzoku-tama .lead-area .lead-desc {
    background-image: none !important
}
}
@media screen and (min-width: 576px) {
body.souzoku-tama .lead-area .lead-desc {
    margin-top: 50px;
    padding-right: calc(350 / 880 * 100%);
    background: url("../img/tama-img01.jpg") no-repeat right top/calc(313 / 880 * 100%);
    font-size: 14px;
}
}
@media screen and (min-width: 896px) {
body.souzoku-tama .lead-area .lead-desc {
    background-size: 313px;
    min-height: 320px;
    font-size: 16px;
}
}
@media screen and (min-width: 1265px) {
body.souzoku-tama .lead-area .lead-desc {
    padding-right: 360px;
    font-size: 17px;
}
}
body.souzoku .scdl-area {
max-width: 815px;
margin: 30px auto 0
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-area {
    margin-top: 45px
}
}
body.souzoku .scdl-area .fuki {
position: absolute
}
@media screen and (min-width: 1265px) {
body.souzoku .scdl-area {
    max-width: none
}
}
body.souzoku .scdl-ttl {
height: 42px;
color: #FFF;
text-align: center;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
background-color: #91bc4d;
font-size: 14px;
border-radius: 7px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-ttl {
    height: 82px;
    font-size: 22px;
    border-radius: 14px
}
}
body.souzoku .scdl-ttl.hassei {
position: relative
}
body.souzoku .scdl-ttl.hassei::before {
content: "";
display: block;
position: absolute;
z-index: 0;
width: 60px;
height: 60px;
border-radius: 50%;
background-color: #91bc4d;
top: -9px;
left: 20px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-ttl.hassei::before {
    width: 120px;
    height: 120px;
    top: -19px;
    left: calc(50 / 815 * 100%)
}
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-ttl.hassei::before {
    left: 50px
}
}
body.souzoku .scdl-ttl.hassei .iei {
position: absolute;
width: 33px;
left: 33px;
top: -1px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-ttl.hassei .iei {
    width: 66px;
    left: calc(83 / 815 * 100%);
    top: -2px
}
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-ttl.hassei .iei {
    left: 76px
}
}
body.souzoku .scdl-ttl.hassei .fuki-01 {
right: 10px;
top: 30px;
width: 140px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-ttl.hassei .fuki-01 {
    width: 208px;
    top: 34px
}
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-ttl.hassei .fuki-01 {
    right: 26px;
    width: 208px
}
}
@media screen and (min-width: 1265px) {
body.souzoku .scdl-ttl.hassei .fuki-01 {
    right: auto;
    left: calc(50% + 165px)
}
}
body.souzoku .scdl-ttl.kanryou {
position: relative
}
body.souzoku .scdl-ttl.kanryou .grn-buil {
position: absolute;
width: 63px;
right: 36px;
bottom: 10px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-ttl.kanryou .grn-buil {
    width: 128px;
    right: 58px;
    bottom: 20px
}
}
body.souzoku .scdl-box {
border-bottom: 1px dashed #91bc4d;
position: relative;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
background: url(../img/arw-head__grey.png) no-repeat 16px bottom/11px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box {
    background-position: 17px bottom
}
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-box {
    background-position: 97.5px bottom;
    background-size: 22px
}
}
body.souzoku .scdl-box::before {
content: "";
width: 2px;
display: block;
background-color: #dcdddd;
-ms-flex-flex-item-align: stretch;
-webkit-align-self: stretch;
align-self: stretch;
z-index: -1;
margin-left: 21px;
-ms-flex-negative: 0;
-webkit-flex-shrink: 0;
flex-shrink: 0
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box::before {
    width: 4px
}
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-box::before {
    margin-left: 107px
}
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box02 {
    height: 126px
}
}
body.souzoku .scdl-box.box02 .scdl-lst {
margin: 38px 0 18px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box03 {
    height: 144px
}
}
body.souzoku .scdl-box.box03 .scdl-lst {
margin: 26px 0 30px
}
body.souzoku .scdl-box.box03 .fuki-02 {
width: 121px;
top: -18px;
right: 3px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box03 .fuki-02 {
    width: 242px;
    top: -36px;
    right: 50px
}
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-box.box03 .fuki-02 {
    right: 110px
}
}
@media screen and (min-width: 1265px) {
body.souzoku .scdl-box.box03 .fuki-02 {
    left: 460px;
    right: auto
}
}
body.souzoku .scdl-box.box03 .houtei {
right: 0;
top: 97px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box03 .houtei {
    top: 87px;
    right: 130px
}
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-box.box03 .houtei {
    right: 190px
}
}
@media screen and (min-width: 1265px) {
body.souzoku .scdl-box.box03 .houtei {
    right: auto;
    left: 450px
}
}
body.souzoku .scdl-box.box04 .scdl-lst {
margin: 20px 0 30px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box04 .scdl-lst {
    margin-bottom: 20px
}
}
body.souzoku .scdl-box.box04 .houtei {
right: 0;
bottom: 7px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box04 .houtei {
    right: 120px;
    bottom: auto
}
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-box.box04 .houtei {
    right: 170px
}
}
@media screen and (min-width: 1265px) {
body.souzoku .scdl-box.box04 .houtei {
    right: auto;
    left: 460px
}
}
body.souzoku .scdl-box.box05 .scdl-waku {
margin-top: 100px;
padding-bottom: 20px
}
@media screen and (min-width: 321px) {
body.souzoku .scdl-box.box05 .scdl-waku {
    margin-top: 80px
}
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box05 .scdl-waku {
    margin-top: 30px
}
}
body.souzoku .scdl-box.box05 .scdl-box__inner {
margin: 15px 0 45px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box05 .scdl-box__inner {
    margin: 30px 0 70px
}
}
body.souzoku .scdl-box.box05 .w-house {
text-indent: 0
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box05 .w-house {
    margin-right: 60px
}
}
body.souzoku .scdl-box.box05 .grn-house {
position: absolute;
width: 141px;
right: -30px;
bottom: -10px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box05 .grn-house {
    width: 282px;
    right: -70px;
    bottom: -40px
}
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-box.box05 .grn-house {
    right: -65px;
    bottom: -30px
}
}
@media screen and (min-width: 1265px) {
body.souzoku .scdl-box.box05 .grn-house {
    right: 0
}
}
@media screen and (min-width: 1293px) {
body.souzoku .scdl-box.box05 .grn-house {
    right: -28px
}
}
@media screen and (min-width: 1385px) {
body.souzoku .scdl-box.box05 .grn-house {
    right: -60px
}
}
@media screen and (max-width: 1264px) {
body.souzoku .scdl-box.box05 .grn-house {
    right: 0
}
}
body.souzoku .scdl-box.box05 .fuki-03 {
width: 100px;
right: 16px;
top: 0
}
@media screen and (min-width: 321px) {
body.souzoku .scdl-box.box05 .fuki-03 {
    top: 7px
}
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box05 .fuki-03 {
    width: 200px;
    top: -8px;
    right: 154px
}
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-box.box05 .fuki-03 {
    right: 214px
}
}
@media screen and (min-width: 1265px) {
body.souzoku .scdl-box.box05 .fuki-03 {
    right: auto;
    left: 405px
}
}
body.souzoku .scdl-box.box06 .scdl-box__inner {
margin: 60px 0 20px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box06 .scdl-box__inner {
    margin: 80px 0 40px
}
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-box.box06 .scdl-box__inner {
    margin-top: 50px
}
}
body.souzoku .scdl-box.box06 .mokuroku {
width: calc(565 / 750 * 100%);
display: block;
margin: 20px auto 0
}
body.souzoku .scdl-box.box07 .scdl-box__inner {
margin: 55px 0 15px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box07 .scdl-box__inner {
    margin: 35px 0 30px
}
}
body.souzoku .scdl-box.box07 .scdl-waku .srvs {
top: -80px
}
body.souzoku .scdl-box.box07 .simu {
width: calc(290 / 750 * 100%);
display: block;
margin: 20px auto 0
}
body.souzoku .scdl-box.box07 .fuufu {
bottom: 0;
left: -20px;
position: absolute;
width: calc(200 / 750 * 100%)
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box07 .fuufu {
    left: -30px
}
}
@media screen and (min-width: 1265px) {
body.souzoku .scdl-box.box07 .fuufu {
    width: 172px
}
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box08 {
    height: 170px
}
}
body.souzoku .scdl-box.box08 .scdl-lst {
margin: 30px 0
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box08 .scdl-lst {
    margin: 0
}
}
body.souzoku .scdl-box.box08 .fuki-04 {
width: 150px;
right: calc(10 / 355 * 100%);
top: -10px
}
@media screen and (min-width: 321px) {
body.souzoku .scdl-box.box08 .fuki-04 {
    top: 20px
}
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box08 .fuki-04 {
    width: 250px;
    right: calc(160 / 652 * 100%);
    top: 35px
}
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-box.box08 .fuki-04 {
    right: 220px
}
}
@media screen and (min-width: 1265px) {
body.souzoku .scdl-box.box08 .fuki-04 {
    left: 345px;
    right: auto
}
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box09 {
    height: 144px
}
}
body.souzoku .scdl-box.box09 .scdl-lst {
margin: 25px 0
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box09 .scdl-lst {
    margin: 0
}
}
body.souzoku .scdl-box.box09 .fuki-05 {
width: 125px;
top: -13px;
right: 20px
}
@media screen and (min-width: 321px) {
body.souzoku .scdl-box.box09 .fuki-05 {
    top: -10px
}
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box09 .fuki-05 {
    width: 250px;
    top: -15px;
    right: 150px
}
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-box.box09 .fuki-05 {
    right: 200px
}
}
@media screen and (min-width: 1265px) {
body.souzoku .scdl-box.box09 .fuki-05 {
    right: auto;
    left: 355px
}
}
body.souzoku .scdl-box.box10 {
border-bottom: none
}
body.souzoku .scdl-box.box10 .scdl-box__inner {
margin: 30px 0 25px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box10 .scdl-box__inner {
    margin-bottom: 50px
}
}
body.souzoku .scdl-box.box10 .scdl-waku {
margin-top: 105px
}
@media screen and (min-width: 321px) {
body.souzoku .scdl-box.box10 .scdl-waku {
    margin-top: 55px
}
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-box.box10 .scdl-waku {
    margin-top: 20px
}
}
body.souzoku .scdl-box.box10 .box10-lnk {
text-indent: 0;
margin-top: 6px
}
body.souzoku .scdl-box.box10 .box10-lnk a {
color: #000;
font-weight: normal
}
body.souzoku .scdl-box.box10 .fuki-06 {
width: 165px;
right: 0;
top: -10px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box.box10 .fuki-06 {
    width: 220px;
    right: 130px
}
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-box.box10 .fuki-06 {
    right: 190px
}
}
@media screen and (min-width: 1265px) {
body.souzoku .scdl-box.box10 .fuki-06 {
    left: 410px;
    right: auto;
    width: 280px;
    top: -15px
}
}
body.souzoku .scdl-box.box10 .houtei {
position: relative;
margin-top: 5px
}
body.souzoku .scdl-box .houtei {
position: absolute;
background-color: #e40012;
color: #fff;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
font-size: 11px;
width: 120px;
height: 20px;
border-radius: 10px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-box .houtei {
    width: 180px;
    height: 28px;
    border-radius: 14px;
    font-size: 16px
}
}
body.souzoku .scdl-month {
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
width: 42px;
height: 42px;
background-color: #FFF;
border-radius: 50%;
border: 3px solid #91bc4d;
font-size: 10px;
position: relative;
left: -21px;
-ms-flex-negative: 0;
-webkit-flex-shrink: 0;
flex-shrink: 0
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-month {
    width: 60px;
    height: 60px;
    border-width: 5px;
    font-size: 14px;
    left: -30px
}
}
body.souzoku .scdl-month .month-no {
font-size: 12px
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-month .month-no {
    font-size: 19px
}
}
body.souzoku .scdl-lst {
list-style: none;
margin: 0;
padding: 0
}
body.souzoku .scdl-lst > li {
font-size: 13px;
text-indent: -16px;
padding-left: 16px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-lst > li {
    font-size: 16px
}
}
body.souzoku .scdl-lst > li:not(:first-child) {
margin-top: 0.8em
}
body.souzoku .scdl-lst > li::before {
content: "";
display: inline-block;
background-color: #f39800;
width: 10px;
height: 10px;
border-radius: 50%;
margin-right: 6px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-lst > li::before {
    width: 14px;
    height: 14px;
    margin-right: 8px
}
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-lst {
    margin-top: 0;
    margin-bottom: 0
}
}
body.souzoku .scdl-itm:not(:first-child) {
margin-top: 0.4em !important
}
body.souzoku .scdl-waku {
background-color: #FFF;
border: 1px solid #91bc4d;
margin: 15px 0 0;
position: relative;
padding: 10px 10px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-waku {
    margin-top: 30px;
    padding: 20px 22px
}
}
body.souzoku .scdl-waku p {
text-indent: 1em
}
body.souzoku .scdl-waku .srvs {
position: absolute;
right: -10px;
top: -80px
}
@media screen and (min-width: 321px) {
body.souzoku .scdl-waku .srvs {
    top: -60px
}
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-waku .srvs {
    right: -20px;
    top: -68px
}
}
@media screen and (min-width: 896px) {
body.souzoku .scdl-waku .srvs {
    right: 20px
}
}
body.souzoku .scdl-waku .srvs .tokui {
border-radius: 50%;
position: absolute;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
background-color: #ffffb0;
color: #f39800;
font-weight: bold;
font-size: 12px;
line-height: 1.5;
text-align: center;
top: -20px;
left: -58px;
width: 72px;
height: 72px;
text-indent: 0
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-waku .srvs .tokui {
    top: -25px;
    left: -37px
}
}
body.souzoku .scdl-waku .srvs-ttl {
width: 90px;
height: 90px;
padding-top: 10px;
border-radius: 50%;
background-color: #91bc4d;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
-ms-flex-direction: column;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
flex-direction: column;
color: #FFF;
font-size: 16px;
line-height: 1;
text-indent: 0
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-waku .srvs-ttl {
    width: 130px;
    height: 130px;
    font-size: 18px
}
}
body.souzoku .scdl-waku .srvs-ttl__no {
color: #ff0;
display: block;
font-size: 34px;
margin-top: 2px
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-waku .srvs-ttl__no {
    font-size: 52px;
    margin-top: 5px
}
}
body.souzoku .scdl-sttl {
line-height: 1.5;
font-size: 20px;
color: #91bc4d
}
@media screen and (min-width: 576px) {
body.souzoku .scdl-sttl {
    font-size: 24px
}
}
body.souzoku .scdl-sttl + p {
margin-top: 1em
}
body.souzoku .hiyou-area {
position: relative;
max-width: 770px;
margin: 30px auto 0
}
@media screen and (min-width: 576px) {
body.souzoku .hiyou-area {
    margin-top: 55px
}
}
@media screen and (min-width: 1265px) {
body.souzoku .hiyou-area {
    max-width: none
}
}
body.souzoku .hiyou-head {
text-align: center;
width: 330px;
max-width: 100%;
margin: 0 auto
}
@media screen and (min-width: 576px) {
body.souzoku .hiyou-head {
    width: calc(570 / 770 * 100%)
}
}
body.souzoku .hiyou-ttl {
color: #FF1F1F;
line-height: 1;
position: relative;
font-size: 22px;
letter-spacing: 0.14em
}
@media screen and (min-width: 576px) {
body.souzoku .hiyou-ttl {
    font-size: 34px
}
}
body.souzoku .hiyou-ttl::before {
content: "";
position: absolute;
height: 3px;
width: 100%;
background-color: #FF1F1F;
left: 0;
z-index: -1;
top: 34px
}
@media screen and (min-width: 321px) {
    body.souzoku .hiyou-ttl::before {
        top: 10px
    }
}
@media screen and (min-width: 576px) {
body.souzoku .hiyou-ttl::before {
    top: 16px
}
}
body.souzoku .hiyou-ttl__main {
background-color: #f7f7f7;
display: inline-block;
padding: 0 15px
}
@media screen and (min-width: 576px) {
body.souzoku .hiyou-ttl__main {
    padding: 0 30px
}
}
body.souzoku .hiyou-ttl__sub {
display: block;
font-size: 16px;
margin-bottom: .7em
}
@media screen and (min-width: 576px) {
body.souzoku .hiyou-ttl__sub {
    font-size: 20px
}
}
body.souzoku .hiyou-lead {
margin-top: 20px;
font-size: 14px
}
@media screen and (min-width: 576px) {
body.souzoku .hiyou-lead {
    margin-top: 40px;
    font-size: 20px
}
}
body.souzoku .hiyou-lst {
font-size: 14px;
margin: 24px 0 0;
background-color: #FFF;
padding: 18px 5px 16px 19px;
list-style: none
}
@media screen and (min-width: 576px) {
body.souzoku .hiyou-lst {
    font-size: 18px;
    margin-top: 44px;
    padding: 36px 10px 32px 38px
}
}
body.souzoku .hiyou-lst .orng {
color: #f39800
}
body.souzoku .hiyou-lst .big {
font-size: 20px
}
@media screen and (min-width: 576px) {
body.souzoku .hiyou-lst .big {
    font-size: 25px
}
}
body.souzoku .hiyou-itm {
position: relative;
padding-left: 40px
}
@media screen and (min-width: 576px) {
body.souzoku .hiyou-itm {
    padding-left: 46px
}
}
body.souzoku .hiyou-itm.itm-01::before {
content: "1";
top: 2px
}
body.souzoku .hiyou-itm.itm-02::before {
content: "2";
top: 1px
}
body.souzoku .hiyou-itm.itm-03::before {
content: "3";
top: -4px
}
body.souzoku .hiyou-itm.itm-04::before {
content: "4";
top: 3px
}
body.souzoku .hiyou-itm:not(:first-child) {
margin-top: 10px
}
@media screen and (min-width: 576px) {
body.souzoku .hiyou-itm:not(:first-child) {
    margin-top: 16px
}
}
body.souzoku .hiyou-itm::before {
position: absolute;
left: 0;
display: -ms-inline-flexbox;
display: -webkit-inline-box;
display: -webkit-inline-flex;
display: inline-flex;
text-align: center;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
text-align: center;
color: #FFF;
background-color: #f39800;
height: 30px;
width: 30px;
border-radius: 50%;
font-size: 18px
}
@media screen and (min-width: 576px) {
body.souzoku .hiyou-itm::before {
    font-size: 22px;
    width: 36px;
    height: 36px
}
}
body.souzoku .hiyou-img {
position: absolute;
width: 27px;
bottom: -49px
}
@media screen and (min-width: 576px) {
body.souzoku .hiyou-img {
    width: 53px;
    bottom: -98px
}
}
body.souzoku .hiyou-img.arw-pnk {
left: calc(170 / 770 * 100%)
}
body.souzoku .hiyou-img.arw-blu {
right: calc(170 / 770 * 100%)
}
body.souzoku .plan-area {
margin: 55px auto 0;
max-width: 770px;
}
@media screen and (min-width: 576px) {
body.souzoku .plan-area {
    margin-top: 110px
}
}
@media screen and (min-width: 1265px) {
body.souzoku .plan-area {
    max-width: none
}
}
body.souzoku .plan-box {
-ms-flex: 0 0 48.051%;
-webkit-box-flex: 0 0 48.051%;
-webkit-flex: 0 0 48.051%;
flex: 0 0 48.051%;
border-width: 3px;
border-style: solid;
background-color: #FFF;
text-align: center
}
@media screen and (min-width: 576px) {
body.souzoku .plan-box {
    border-width: 5px
}
}
body.souzoku .plan-box.tei {
border-color: #ee86aa
}
body.souzoku .plan-box.tei .plan-ttl {
background-color: #ee86aa
}
body.souzoku .plan-box.tei .plan-name {
border-bottom-color: #ee86aa;
color: #ee86aa;
background-image: url(../img/hiyou-icon__tei.png)
}
body.souzoku .plan-box.an {
border-color: #338fbf
}
body.souzoku .plan-box.an .plan-ttl {
background-color: #338fbf
}
body.souzoku .plan-box.an .plan-name {
border-bottom-color: #338fbf;
color: #338fbf;
background-image: url(../img/hiyou-icon__an.png)
}
body.souzoku .plan-ttl {
position: relative;
font-size: 12px;
color: #FFF;
font-weight: bold;
border-radius: 11px;
padding: 0 10px;
top: -11.5px;
left: 0;
right: 0;
height: 42px
}
@media screen and (min-width: 321px) {
body.souzoku .plan-ttl {
    height: 22px;
    display: -ms-inline-flexbox;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: inline-flex;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center
}
}
@media screen and (min-width: 576px) {
body.souzoku .plan-ttl {
    height: 32px;
    font-size: 18px;
    border-radius: 16px;
    padding: 0 20px;
    top: -16.5px
}
}
@media screen and (min-width: 321px) {
body.souzoku .plan-ttl br {
    display: none
}
}
body.souzoku .plan-ttl .yllw {
color: #ff0
}
body.souzoku .plan-name {
padding-top: 55px;
background-repeat: no-repeat;
background-position: center top;
background-size: 42px;
font-size: 17px;
line-height: 1;
margin: 3px auto 0;
padding-bottom: 10px;
border-bottom-width: 1px;
border-bottom-style: solid;
width: calc(322 / 370 * 100%);
font-weight: bold
}
@media screen and (min-width: 321px) {
body.souzoku .plan-name {
    font-size: 20px
}
}
@media screen and (min-width: 576px) {
body.souzoku .plan-name {
    background-size: 53px;
    font-size: 25px;
    margin-top: 12px;
    padding-top: 65px;
    padding-bottom: 20px
}
}
body.souzoku .plan-price {
font-weight: bold;
color: #f39800;
line-height: 1;
margin-top: 12px;
font-size: 20px
}
@media screen and (min-width: 576px) {
body.souzoku .plan-price {
    margin-top: 24px;
    font-size: 35px
}
}
body.souzoku .plan-price .small {
font-size: 50%
}
body.souzoku .plan-lead {
width: calc(322 / 370 * 100%);
text-align: center;
margin: 1em auto 0;
line-height: calc(29 / 18)
}
body.souzoku .plan-lst {
margin: 16px auto 0;
list-style: none;
width: calc(322 / 370 * 100%)
}
@media screen and (min-width: 896px) {
body.souzoku .plan-lst {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    -webkit-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
}
}
body.souzoku .plan-itm {
margin-top: 8px;
font-size: 14px;
font-weight: bold;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
height: 45px;
text-align: center;
background-color: #DEEBC9;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
justify-content: center;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
border-radius: 5px
}
@media screen and (min-width: 576px) {
body.souzoku .plan-itm {
    font-size: 16px
}
}
@media screen and (min-width: 896px) {
body.souzoku .plan-itm {
    font-size: 14px;
    -ms-flex: 0 0 49%;
    -webkit-box-flex: 0 0 49%;
    -webkit-flex: 0 0 49%;
    flex: 0 0 49%
}
}
@media screen and (min-width: 1265px) {
body.souzoku .plan-itm {
    font-size: 16px
}
}
body.souzoku .plan-itm:first-child {
margin-top: 0
}
@media screen and (min-width: 896px) {
body.souzoku .plan-itm:nth-child(2) {
    margin-top: 0
}
}
body.souzoku .plan-itm.grey {
background-color: #e5e5e5;
color: #FFF
}
body.souzoku .plan-itm.nuki {
background-color: #FFF;
border: 1px solid #9ec462
}
body.souzoku .plan-itm .chu {
font-size: 10px;
position: relative;
top: -5px;
margin-left: 2px
}
@media screen and (min-width: 768px) {
body.souzoku .plan-itm .chu {
    font-size: 12px
}
}
body.souzoku .plan-cmnt {
font-size: 14px;
text-align: left;
line-height: 22px;
margin-top: 10px;
margin-left: calc(24 / 370 * 100%)
}
body.souzoku .plan-lnk {
color: #f39800;
font-weight: bold;
font-size: 45px;
line-height: 1
}
@media screen and (min-width: 576px) {
body.souzoku .plan-lnk {
    bottom: 30px;
    font-size: 90px
}
}
body.souzoku .plan-lnk:hover {
opacity: 0.7;
text-decoration: none
}
body.souzoku .ryoukin-ttl {
background-color: #fff;
font-size: 16px;
padding-left: 80px;
height: 40px;
line-height: 1;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
border-bottom-width: 5px;
border-bottom-style: solid;
position: relative
}
@media screen and (min-width: 576px) {
body.souzoku .ryoukin-ttl {
    font-size: 20px;
    height: 60px;
    padding-left: 110px
}
}
body.souzoku .ryouking-ttl {
background-color: #fff;
font-size: 16px;
padding-left: 10px;
height: 40px;
line-height: 1;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
border-bottom-width: 5px;
border-bottom-style: solid;
position: relative
}
@media screen and (min-width: 576px) {
body.souzoku .ryouking-ttl {
    font-size: 20px;
    height: 60px;
    padding-left: 20px
}
}
body.souzoku .ryoukin-ttl::before {
position: absolute;
left: 14px;
top: -9px;
width: 55px;
height: 55px;
content: "";
background-repeat: no-repeat;
background-size: cover;
z-index: 2
}
@media screen and (min-width: 576px) {
body.souzoku .ryoukin-ttl::before {
    width: 75px;
    height: 75px
}
}
body.souzoku .ryoukin-ttl.tei {
color: #ee86aa;
border-bottom-color: #ee86aa
}
body.souzoku .ryoukin-ttl.tei::before {
background-image: url(../img/hiyou-icon__tei.png)
}
body.souzoku .ryoukin-ttl.tujo {
color: #338fbf;
border-bottom-color: #338fbf
}
body.souzoku .ryouking-ttl {
color: #91bc4d;
border: none
}
body.souzoku .ryoukin-ttl.tujo::before {
background-image: url(../img/hiyou-icon__an.png)
}
body.souzoku .tei-area {
margin-top: 27px
}
@media screen and (min-width: 576px) {
body.souzoku .tei-area {
    margin-top: 43px
}
}
body.souzoku .tei-area .tbl01, body.souzoku .tei-area .jirei-tbl {
max-width: 770px;
margin: 60px auto 0
}
@media screen and (min-width: 576px) {
body.souzoku .tei-area .tbl01, body.souzoku .tei-area .jirei-tbl {
    margin-top: 90px
}
}
body.souzoku .tei-area .tbl01 .tbl-th, body.souzoku .tei-area .jirei-tbl .tbl-th {
text-align: center;
white-space: nowrap;
background-color: #ee86aa;
color: #FFF;
width: 50%
}
body.souzoku .tei-area .tbl01 .tbl-td, body.souzoku .tei-area .jirei-tbl .tbl-td {
text-align: right
}
body.souzoku .tujo-area {
margin-top: 60px
}
@media screen and (min-width: 576px) {
body.souzoku .tujo-area {
    margin-top: 80px
}
}
body.souzoku .tujo-area .tbl01, body.souzoku .tujo-area .jirei-tbl {
max-width: 770px;
margin: 20px auto 0
}
@media screen and (min-width: 576px) {
body.souzoku .tujo-area .tbl01, body.souzoku .tujo-area .jirei-tbl {
    margin-top: 40px
}
}
body.souzoku .tujo-area .tbl01 thead .tbl-th, body.souzoku .tujo-area .jirei-tbl thead .tbl-th {
background-color: #338fbf
}
body.souzoku .tujo-area .tbl01 tbody .tbl-th, body.souzoku .tujo-area .jirei-tbl tbody .tbl-th {
text-align: center;
background-color: #E1EFF7;
border-bottom-color: #338fbf
}
body.souzoku .tujo-area .tbl01 tbody .tbl-td, body.souzoku .tujo-area .jirei-tbl tbody .tbl-td {
text-align: right;
border-bottom-color: #338fbf
}
body.souzoku .tujo-desc {
max-width: 770px;
margin: 16px auto 0;
font-size: 12px
}
@media screen and (min-width: 576px) {
body.souzoku .tujo-desc {
    margin-top: 32px;
    font-size: 14px
}
}
body.souzoku .ginko-area {
margin-top: 60px
}
@media screen and (min-width: 576px) {
body.souzoku .ginko-area {
    margin-top: 100px
}
}
body.souzoku .ginko-area .tbl01 {
max-width: 770px;
margin: 20px auto 0
}
@media screen and (min-width: 576px) {
body.souzoku .ginko-area .tbl01 {
    margin-top: 40px
}
}
body.souzoku .ginko-area .tbl01 thead .tbl-th {
background-color: #91bc4d
}
body.souzoku .ginko-area .tbl01 tbody .tbl-th {
text-align: center;
background-color: #e9f2dc;
border-bottom-color: #91bc4d
}
body.souzoku .ginko-area .tbl01 tbody .tbl-td {
text-align: right;
border-bottom-color: #91bc4d
}
body.souzoku .ginko-desc {
margin: 16px auto 0;
font-size: 16px
}
@media screen and (min-width: 576px) {
body.souzoku .ginko-desc {
    margin-top: 32px;
    font-size: 18px
}
}
body.souzoku .jirei-area {
margin-top: 50px
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-area {
    margin-top: 100px
}
}
body.souzoku .jirei-ttl,
body.souzoku-tama .jirei-ttl  {
color: #91bc4d;
line-height: 1;
font-weight: bold;
font-size: 18px;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
border-left: 8px solid #91bc4d;
padding-left: 7px;
height: 22px
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-ttl,
body.souzoku-tama .jirei-ttl {
    font-size: 22px;
    height: 44px;
    border-left-width: 15px;
    padding-left: 14px
}
}
body.souzoku .jirei-sttl,
body.souzoku-tama .jirei-sttl {
font-size: 18px;
font-weight: bold;
line-height: 1;
padding-bottom: 14px;
margin-top: 20px;
border-bottom: 1px solid #91bc4d;
max-width: 825px;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-sttl,
body.souzoku-tama .jirei-sttl {
    font-size: 22px;
    margin-top: 38px;
    padding-bottom: 28px
}
}
@media screen and (min-width: 1265px) {
body.souzoku .jirei-sttl,
body.souzoku-tama .jirei-sttl {
    max-width: none
}
}
body.souzoku .jirei-sttl .grn {
color: #91bc4d;
-ms-flex: 0 0 60px;
-webkit-box-flex: 0 0 60px;
-webkit-flex: 0 0 60px;
flex: 0 0 60px
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-sttl .grn {
    -ms-flex-preferred-size: 90px;
    -webkit-flex-basis: 90px;
    flex-basis: 90px
}
}
body.souzoku .jirei-inner {
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
margin-top: 16px
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-inner {
    margin-top: 30px
}
}
body.souzoku .jirei-inner .jirei-head {
-ms-flex: 0 0 70px;
-webkit-box-flex: 0 0 70px;
-webkit-flex: 0 0 70px;
flex: 0 0 70px;
margin-top: 0
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-inner .jirei-head {
    -ms-flex-preferred-size: 90px;
    -webkit-flex-basis: 90px;
    flex-basis: 90px
}
}
body.souzoku .jirei-head {
color: #91bc4d;
font-size: 14px;
font-weight: normal;
margin-top: 18px
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-head {
    font-size: 16px;
    margin-top: 36px
}
}
body.souzoku .jirei-lst {
list-style: none;
margin: 0;
padding: 0
}
body.souzoku .jirei-lst > li {
font-size: 12px;
text-indent: -16px;
padding-left: 16px
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-lst > li {
    font-size: 16px
}
}
body.souzoku .jirei-lst > li:not(:first-child) {
margin-top: 0.8em
}
body.souzoku .jirei-lst > li::before {
content: "";
display: inline-block;
background-color: #f39800;
width: 10px;
height: 10px;
border-radius: 50%;
margin-right: 6px
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-lst > li::before {
    width: 14px;
    height: 14px;
    margin-right: 8px
}
}
body.souzoku .jirei-itm:not(:first-child) {
margin-top: 0.3em !important
}
body.souzoku .jirei-tbl {
margin-top: 0
}
body.souzoku .jirei-tbl .tbl-th, body.souzoku .jirei-tbl .tbl-td {
height: 30px !important;
font-size: 14px !important
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-tbl .tbl-th, body.souzoku .jirei-tbl .tbl-td {
    height: 40px !important;
    font-size: 16px !important
}
}
body.souzoku .jirei-tbl__head .tbl-th {
font-weight: normal
}
body.souzoku .jirei-tbl__body .tbl-th, body.souzoku .jirei-tbl__body .tbl-td {
padding: 0 10px !important
}
body.souzoku .jirei-tbl__body .tbl-th {
font-size: 13px !important
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-tbl__body .tbl-th {
    font-size: 16px !important
}
}
body.souzoku .jirei-tbl__body .tbl-td {
text-align: right !important
}
body.souzoku .jirei-tbl__body > tr:nth-of-type(n+1) .tbl-td:first-of-type {
border-right: 1px solid #91bc4d
}
body.souzoku .jirei-tbl__foot .tbl-th, body.souzoku .jirei-tbl__foot .tbl-td {
background-color: #f39800;
color: #FFF;
font-size: 14px !important;
padding: 12px 5px
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-tbl__foot .tbl-th, body.souzoku .jirei-tbl__foot .tbl-td {
    padding-top: 18px;
    padding-bottom: 18px;
    font-size: 18px !important
}
}
body.souzoku .jirei-tbl__foot .tbl-th {
font-weight: normal
}
body.souzoku .jirei-tbl__foot .tbl-td {
font-size: 18px !important;
text-align: center;
border-left: 1px solid #fff
}
@media screen and (min-width: 321px) {
body.souzoku .jirei-tbl__foot .tbl-td {
    font-size: 20px !important
}
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-tbl__foot .tbl-td {
    font-size: 26px !important
}
}
body.souzoku .jirei-tbl .jirei-tbl__head .tbl-th:last-of-type, body.souzoku .jirei-tbl .jirei-tbl__body .tbl-td:last-of-type, body.souzoku .jirei-tbl .jirei-tbl__foot .tbl-td:last-of-type {
background-color: #e2eed1 !important;
color: #E60012;
border-right: 2px solid #e60012;
border-left: 2px solid #e60012
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-tbl .jirei-tbl__head .tbl-th:last-of-type, body.souzoku .jirei-tbl .jirei-tbl__body .tbl-td:last-of-type, body.souzoku .jirei-tbl .jirei-tbl__foot .tbl-td:last-of-type {
    border-right-width: 3px;
    border-left-width: 3px
}
}
body.souzoku .jirei-tbl .jirei-tbl__head .tbl-th:last-child {
border-top: 2px solid #e60012;
border-bottom-color: #91bc4d;
font-weight: bold;
width: 145px
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-tbl .jirei-tbl__head .tbl-th:last-child {
    border-top-width: 3px;
    width: calc(238 / 880 * 100%)
}
}
body.souzoku .jirei-tbl .jirei-tbl__foot .tbl-td:last-child {
border-bottom: 2px solid #e60012;
border-top: 1px solid #91bc4d
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-tbl .jirei-tbl__foot .tbl-td:last-child {
    border-bottom-width: 3px
}
}
body.souzoku .jirei-tbl-wrapper {
position: relative
}
body.souzoku .jirei-bd {
position: absolute;
background-color: rgba(255, 255, 255, 0.8);
width: 135px;
right: 5px;
top: 40px;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
border-radius: 6px;
text-align: center;
-ms-flex-wrap: wrap;
-webkit-box-lines: multiple;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
height: 190px
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-bd {
    right: 15px;
    top: 55px;
    width: calc(238 / 880 * 100% - 30px);
    border-radius: 10px;
    height: 255px
}
}
body.souzoku .jirei-bd__crcl {
border: 1px solid #b0cf7f;
border-radius: 50%;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-direction: column;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
flex-direction: column;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
width: 120px;
height: 120px
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-bd__crcl {
    width: 130px;
    height: 130px
}
}
body.souzoku .jirei-bd__sub {
font-size: 11px;
line-height: 1.4
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-bd__sub {
    font-size: 13px
}
}
body.souzoku .jirei-bd__txt {
font-size: 14px;
line-height: 1.25;
margin-top: 5px
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-bd__txt {
    font-size: 17px
}
}
body.souzoku .jirei-bd__price {
width: 100%;
font-size: 20px;
line-height: 1
}
@media screen and (min-width: 576px) {
body.souzoku .jirei-bd__price {
    font-size: 26px
}
}
body.souzoku .btn-simu {
position: relative;
margin: 30px auto 0;
display: block;
width: 230.5px
}
body.souzoku .btn-simu::after {
position: absolute;
left: 4px;
top: 4px;
content: "";
display: block;
border-radius: 10px;
width: 230.5px;
height: 70.5px;
background-color: #e7e7e7;
z-index: -1
}

@media screen and (min-width: 576px) {
body.souzoku .btn-simu::after {
    width: 461px;
    height: 141px
}
}
body.souzoku .btn-simu:hover {
opacity: 1
}
body.souzoku .btn-simu:hover::after {
background-color: #fff100
}
body.souzoku .btn-simu:hover img {
opacity: 1
}
@media screen and (min-width: 576px) {
body.souzoku .btn-simu {
    margin-top: 60px;
    width: 461px
}
}
body.souzoku .btn-simu__img {
width: 100%
}
body.souzoku .kei-lst {
margin: 35px auto 0;
list-style: none;
width: calc(100% - 30px)
}
@media screen and (min-width: 576px) {
body.souzoku .kei-lst {
    width: calc(700 / 880 * 100%);
    margin-top: 70px
}
}
@media screen and (min-width: 1265px) {
body.souzoku .kei-lst {
    width: 100%
}
}
body.souzoku .kei-itm {
background-color: #FFF;
position: relative;
padding: 27px 27px 20px;
max-width: 710px;
margin-left: auto;
margin-right: auto
}
@media screen and (min-width: 576px) {
body.souzoku .kei-itm {
    padding: 55px 55px 40px
}
}
body.souzoku .kei-itm:not(:last-child) {
margin-bottom: 25px
}
@media screen and (min-width: 576px) {
body.souzoku .kei-itm:not(:last-child) {
    margin-bottom: 50px
}
}
body.souzoku .kei-itm:not(:last-child)::after {
margin: 0 auto;
z-index: 2;
content: "";
display: block;
position: absolute;
left: 0;
right: 0;
bottom: -35px;
width: 26.5px;
height: 54px;
background: url(../img/arw-grn.png) no-repeat left top/cover
}
@media screen and (min-width: 576px) {
body.souzoku .kei-itm:not(:last-child)::after {
    width: 53px;
    height: 108px;
    bottom: -70px
}
}
body.souzoku .kei-itm::before {
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
border-radius: 7.5px;
width: 73.5px;
height: 23px;
color: #FFF;
background-color: #91bc4d;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
letter-spacing: 0.14em;
font-size: 13px;
position: absolute;
left: -15px;
top: -11.5px
}
@media screen and (min-width: 576px) {
body.souzoku .kei-itm::before {
    width: 147px;
    height: 46px;
    border-radius: 15px;
    font-size: 26px;
    left: -30px;
    top: -23px
}
}
body.souzoku .kei-itm.itm-01 {
padding-bottom: 30px
}
@media screen and (min-width: 576px) {
body.souzoku .kei-itm.itm-01 {
    padding-bottom: 60px
}
}
body.souzoku .kei-itm.itm-01::before {
content: "step1"
}
body.souzoku .kei-itm.itm-01 .kei-block {
border: 1px solid #91bc4d;
padding: 30px 10px;
text-align: center;
margin-top: 36px
}
@media screen and (min-width: 576px) {
body.souzoku .kei-itm.itm-01 .kei-block {
    padding-left: 24px;
    padding-right: 24px
}
}
@media screen and (min-width: 896px) {
body.souzoku .kei-itm.itm-01 .kei-inr {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center
}
}
@media screen and (min-width: 896px) {
body.souzoku .kei-itm.itm-01 .kei-inr__desc {
    text-align: left
}
}
body.souzoku .kei-itm.itm-01 .kei-inr__desc .sub {
font-size: 14px;
line-height: 25px
}
body.souzoku .kei-itm.itm-01 .kei-inr__desc .cmnt:nth-of-type(2) {
margin-top: 10px
}
body.souzoku .kei-itm.itm-01 .kei-inr__desc .cmnt-inr {
background-color: #E9F2DB;
display: inline-block;
padding: 3px 5px 2px
}
body.souzoku .kei-itm.itm-01 .kei-inr__ttl {
font-weight: normal;
font-size: 18px;
color: #91bc4d;
margin-top: 14px;
margin-bottom: 10px
}
body.souzoku .kei-itm.itm-01 .kei-inr__fig {
margin-top: 20px
}
@media screen and (min-width: 896px) {
body.souzoku .kei-itm.itm-01 .kei-inr__fig {
    margin-top: 0
}
}
body.souzoku .kei-itm.itm-01 .kei-inr__cap {
font-size: 12px
}
body.souzoku .kei-itm.itm-01 .kei-sttl {
color: #FFF;
background-color: #91bc4d;
text-align: center;
padding: 5px 0 3px;
margin-top: 25px
}
body.souzoku .kei-itm.itm-01 .kei-tel__2 {
line-height: 1;
font-weight: bold;
font-size: 17px;
margin-top: 14px
}
@media screen and (min-width: 321px) {
body.souzoku .kei-itm.itm-01 .kei-tel__2 {
    font-size: 18px
}
}
@media screen and (min-width: 576px) {
body.souzoku .kei-itm.itm-01 .kei-tel__2 {
    margin-top: 24px
}
}
body.souzoku .kei-itm.itm-01 .kei-tel__lnk {
line-height: 1;
color: #f00;
font-weight: bold;
font-size: 24px;
letter-spacing: 0.06em;
margin-top: 8px;
display: inline-block
}
@media screen and (min-width: 576px) {
body.souzoku .kei-itm.itm-01 .kei-tel__lnk {
    font-size: 38px;
    margin-top: 12px
}
}
body.souzoku .kei-itm.itm-01 .kei-tel__3 {
line-height: 1;
font-weight: bold;
margin-top: 8px;
font-size: 13px
}
@media screen and (min-width: 321px) {
body.souzoku .kei-itm.itm-01 .kei-tel__3 {
    font-size: 14px
}
}
@media screen and (min-width: 576px) {
body.souzoku .kei-itm.itm-01 .kei-tel__3 {
    margin-top: 12px
}
}
body.souzoku .kei-itm.itm-01 .itm-01__lnk {
margin: 20px auto 0;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-pack: justify;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
justify-content: space-between;
height: 50px;
background-color: #f39800;
color: #FFF;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
padding: 0 12px 0 16px;
font-weight: bold;
font-size: 14px
}
@media screen and (min-width: 321px) {
body.souzoku .kei-itm.itm-01 .itm-01__lnk {
    font-size: 16px
}
}
@media screen and (min-width: 576px) {
body.souzoku .kei-itm.itm-01 .itm-01__lnk {
    padding: 0 24px 0 32px;
    width: 420px;
    height: 80px;
    font-size: 24px;
    margin-top: 28px
}
}
body.souzoku .kei-itm.itm-01 .itm-01__lnk::after {
font-family: fontawesome;
content: "\f138"
}
body.souzoku .kei-itm.itm-01 .itm-01__lnk:hover {
text-decoration: none;
opacity: 0.7
}
body.souzoku .kei-itm.itm-02 {
margin-bottom: 150px
}
@media screen and (min-width: 576px) {
body.souzoku .kei-itm.itm-02 {
    margin-bottom: 210px
}
}
body.souzoku .kei-itm.itm-02::before {
content: "step2"
}
body.souzoku .kei-itm.itm-02::after {
bottom: -160px
}
@media screen and (min-width: 576px) {
body.souzoku .kei-itm.itm-02::after {
    bottom: -230px
}
}
body.souzoku .kei-itm.itm-02 p:nth-of-type(2) {
margin-top: 1em
}
body.souzoku .kei-itm.itm-02 .kei-toku {
position: absolute;
left: 0;
right: 0;
background-color: #f7f7f7;
line-height: 1.3;
text-align: center;
color: #f00;
font-weight: bold;
font-size: 20px;
bottom: -90px
}
@media screen and (min-width: 576px) {
body.souzoku .kei-itm.itm-02 .kei-toku {
    font-size: 28px
}
}
body.souzoku .kei-itm.itm-03::before {
content: "step3"
}
body.souzoku .kei-itm.itm-04::before {
content: "step4"
}
body.souzoku .kei-itm.itm-05::before {
content: "step5"
}
body.souzoku .kei-itm.itm-06::before {
content: "step6"
}
body.souzoku .kei-ttl {
font-weight: bold;
letter-spacing: .08em;
color: #f39800;
line-height: 1;
font-size: 20px
}
@media screen and (min-width: 576px) {
body.souzoku .kei-ttl {
    font-size: 26px
}
}
@media screen and (min-width: 896px) {
body.souzoku .kei-ttl {
    font-size: 34px
}
}
body.souzoku .kei-desc {
margin-top: 12px
}
@media screen and (min-width: 576px) {
body.souzoku .kei-desc {
    margin-top: 26px
}
}
body.souzoku .kei-desc .red {
color: #f00
}
body.seizen .lead-area .lead-ttl {
background: url("../img/seizen-img01.jpg") no-repeat right top/80px;
height: 80px;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center
}
@media screen and (min-width: 576px) {
body.seizen .lead-area .lead-ttl {
    background-image: none !important;
    height: auto;
    display: block
}
}
@media screen and (max-width: 575px) {
body.seizen .lead-area .lead-desc {
    background-image: none !important
}
}
@media screen and (min-width: 576px) {
body.seizen .lead-area .lead-desc {
    margin-top: 50px;
    padding-right: calc(350 / 880 * 100%);
    background: url("../img/seizen-img01.jpg") no-repeat right top/calc(313 / 880 * 100%)
}
}
@media screen and (min-width: 896px) {
body.seizen .lead-area .lead-desc {
    background-size: 313px;
    min-height: 320px
}
}
@media screen and (min-width: 1265px) {
body.seizen .lead-area .lead-desc {
    padding-right: 360px
}
}
body.seizen .lead-area .lead-ttl {
-webkit-background-size: 70px;
-o-background-size: 70px;
background-size: 70px
}
@media screen and (min-width: 321px) {
body.seizen .lead-area .lead-ttl {
    -webkit-background-size: 80px;
    -o-background-size: 80px;
    background-size: 80px
}
}
body.seizen .yuigon-area {
background-color: #FFF;
margin-top: 20px;
padding: 20px
}
@media screen and (min-width: 576px) {
body.seizen .yuigon-area {
    margin-top: 30px;
    padding: 30px
}
}
body.seizen .yuigon-ttl {
line-height: 1;
font-size: 18px;
font-weight: normal;
color: #91bc4d
}
@media screen and (min-width: 576px) {
body.seizen .yuigon-ttl {
    font-size: 20px
}
}
.land-box {
    margin-bottom: 1em;
}
body.seizen .yuigon-lst,
.jirei-box .yuigon-lst,
.land-box .yuigon-lst {
list-style: none;
margin: 0;
padding: 0;
margin-top: 16px
}
body.seizen .yuigon-lst > li,
.jirei-box .yuigon-lst > li,
.land-box .yuigon-lst > li {
font-size: 14px;
text-indent: -16px;
padding-left: 16px
}
@media screen and (min-width: 576px) {
body.seizen .yuigon-lst > li,
.jirei-box .yuigon-lst > li,
.land-box .yuigon-lst > li {
    font-size: 16px
}
}
body.seizen .yuigon-lst > li:not(:first-child),
.jirei-box .yuigon-lst > li:not(:first-child),
.land-box .yuigon-lst > li:not(:first-child) {
margin-top: 0.8em
}
body.seizen .yuigon-lst > li::before,
.jirei-box .yuigon-lst > li::before,
.land-box .yuigon-lst > li::before {
content: "";
display: inline-block;
background-color: #f39800;
width: 10px;
height: 10px;
border-radius: 50%;
margin-right: 6px
}
@media screen and (min-width: 576px) {
body.seizen .yuigon-lst > li::before,
.jirei-box .yuigon-lst > li::before,
.land-box .yuigon-lst > li::before {
    width: 14px;
    height: 14px;
    margin-right: 8px
}
}
body.seizen .yuigon-lst .red {
color: #f00
}
body.seizen .yuigon-dt {
-ms-flex: 0 0 80px;
-webkit-box-flex: 0 0 80px;
-webkit-flex: 0 0 80px;
flex: 0 0 80px;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-pack: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
justify-content: center;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
border-radius: 8px 0 0 8px;
color: #FFF;
height: 50px
}
@media screen and (min-width: 576px) {
body.seizen .yuigon-dt {
    font-size: 15px;
    -ms-flex-preferred-size: 65px;
    -webkit-flex-basis: 65px;
    flex-basis: 65px
}
}
@media screen and (min-width: 896px) {
body.seizen .yuigon-dt {
    font-size: 16px;
    -ms-flex-preferred-size: 80px;
    -webkit-flex-basis: 80px;
    flex-basis: 80px
}
}
body.seizen .yuigon-dt.dt-grn {
background-color: #91bc4d
}
body.seizen .yuigon-dt.dt-bl {
background-color: #3290bf
}
body.seizen .yuigon-dt.dt-red {
background-color: #e68a72
}
body.seizen .yuigon-dt.tujo-3rd {
height: auto
}
body.seizen .yuigon-dt.shomen-3rd {
height: auto
}
body.seizen .yuigon-dd {
border-radius: 0 8px 8px 0;
height: 50px;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-webkit-box-flex: 0;
-ms-flex-positive: 0;
-webkit-flex-grow: 0;
flex-grow: 0;
-ms-flex-negative: 0;
-webkit-flex-shrink: 0;
flex-shrink: 0;
-ms-flex-preferred-size: calc(100% - 80px);
-webkit-flex-basis: calc(100% - 80px);
flex-basis: calc(100% - 80px);
max-width: calc(100% - 80px);
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
padding: 0 8px 0 12px;
line-height: 1.3
}
@media screen and (min-width: 576px) {
body.seizen .yuigon-dd {
    font-size: 15px;
    -ms-flex-preferred-size: calc(100% - 65px);
    -webkit-flex-basis: calc(100% - 65px);
    flex-basis: calc(100% - 65px);
    max-width: calc(100% - 65px)
}
}
@media screen and (min-width: 896px) {
body.seizen .yuigon-dd {
    font-size: 16px;
    -ms-flex-preferred-size: calc(100% - 80px);
    -webkit-flex-basis: calc(100% - 80px);
    flex-basis: calc(100% - 80px);
    max-width: calc(100% - 80px)
}
}
body.seizen .yuigon-dd.dd-grn {
background-color: #d0e2b2
}
body.seizen .yuigon-dd.dd-bl {
background-color: #c2deec
}
body.seizen .yuigon-dd.dd-red {
background-color: #f5d0c0
}
body.seizen .yuigon-dd.tujo-3rd {
height: auto;
-ms-flex-wrap: wrap;
-webkit-box-lines: multiple;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
padding-top: 12px;
padding-bottom: 8px
}
body.seizen .yuigon-dd.tujo-3rd p {
font-size: 13px;
line-height: 1.4;
margin-top: 8px
}
body.seizen .yuigon-dd.shomen-3rd {
height: auto;
padding-top: 12px !important;
padding-bottom: 8px
}
/*************************
 *
 *  simurator
 *
 *************************/

body.simulator .page-ttl span,
body.simulator_result .page-ttl span {
display: block;
margin-bottom: 10px
}
@media screen and (min-width: 576px) {
body.simulator .page-ttl span,
body.simulator_result .page-ttl span{
    margin-bottom: 14px
}
}
body.simulator input[type="text"], body.simulator input[type="tel"], body.simulator select,
body.simulator_result input[type="text"], body.simulator_result input[type="tel"], body.simulator_result select {
background-color: #FFF
}
body.simulator select {
-webkit-appearance: menulist
}
body.simulator .sim-lst {
width: 100%;
border-top: 1px dotted #acacac
}
body.simulator .sim-lst.date {
margin-top: 20px
}
@media screen and (min-width: 576px) {
body.simulator .sim-lst.date {
    margin-top: 40px;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center
}
}
body.simulator .sim-lst.date .sim-hd {
padding-left: 0;
padding-top: 20px;
text-align: center;
font-weight: bold
}
@media screen and (min-width: 576px) {
body.simulator .sim-lst.date .sim-hd {
    padding-top: 0;
    padding-left: 20px;
    width: 298px;
    text-align: left;
    -ms-flex-negative: 0;
    -webkit-flex-shrink: 0;
    flex-shrink: 0
}
}
body.simulator .sim-lst.date .sim-cnt {
text-align: center
}
@media screen and (min-width: 576px) {
body.simulator .sim-lst.date .sim-cnt {
    border-left: 1px dotted #acacac;
    padding-left: 40px;
    text-align: left
}
}
body.simulator .sim-lst.date .sim-cnt .sim-date__lst {
list-style: none
}
body.simulator .sim-lst.date .sim-cnt .sim-date__itm {
display: inline-block
}
body.simulator .sim-lst.date .sim-cnt .sim-date__itm:not(:first-child) {
margin-left: 50px
}
@media screen and (min-width: 896px) {
body.simulator .sim-lst.date .sim-cnt .sim-date__itm:not(:first-child) {
    margin-left: 90px
}
}
body.simulator .sim-lst.date .sim-cnt .sim-date__itm.red {
display: block;
color: #f00;
margin: 12px 0 0;
font-size: 14px
}
@media screen and (min-width: 896px) {
body.simulator .sim-lst.date .sim-cnt .sim-date__itm.red {
    font-size: 16px
}
}
body.simulator .sim-lst.date .sim-cnt .sim-date__rd {
display: none
}
body.simulator .sim-lst.date .sim-cnt .sim-date__rd + .sim-date__lbl {
position: relative;
padding-left: 25px
}
body.simulator .sim-lst.date .sim-cnt .sim-date__rd + .sim-date__lbl::before {
content: "";
display: block;
position: absolute;
top: 0;
left: 0;
width: 18px;
height: 18px;
background-color: #FFF;
border-radius: 50%
}
body.simulator .sim-lst.date .sim-cnt .sim-date__rd:checked + .sim-date__lbl::after {
content: "";
display: block;
position: absolute;
top: 5px;
left: 5px;
width: 8px;
height: 8px;
background: #f39800;
border-radius: 50%
}
@media screen and (min-width: 576px) {
body.simulator .sim-lst.rwd {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center
}
}
body.simulator .sim-lst.rwd > .sim-hd {
text-align: center;
padding-left: 0;
padding-top: 20px
}
@media screen and (min-width: 576px) {
body.simulator .sim-lst.rwd > .sim-hd {
    text-align: left;
    padding-top: 0;
    padding-left: 20px;
    width: 137px;
    -ms-flex-negative: 0;
    -webkit-flex-shrink: 0;
    flex-shrink: 0
}
}
body.simulator .sim-lst.rwd > .sim-cnt {
padding: 0
}
@media screen and (min-width: 576px) {
body.simulator .sim-lst.rwd > .sim-cnt {
    border-left: 1px dotted #acacac
}
}
body.simulator .sim-lst.rwd .inner {
border-top: none;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
-ms-flex-wrap: wrap;
-webkit-box-lines: multiple;
-webkit-flex-wrap: wrap;
flex-wrap: wrap
}
body.simulator .sim-lst.rwd .inner .sim-hd {
font-size: 14px;
height: 70px;
width: 90px;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
padding-left: 0
}
@media screen and (min-width: 321px) {
body.simulator .sim-lst.rwd .inner .sim-hd {
    padding-left: 20px;
    width: 120px
}
}
@media screen and (min-width: 576px) {
body.simulator .sim-lst.rwd .inner .sim-hd {
    width: 160px
}
}
@media screen and (min-width: 896px) {
body.simulator .sim-lst.rwd .inner .sim-hd {
    font-size: 16px
}
}
body.simulator .sim-lst.rwd .inner .sim-hd:not(:first-of-type) {
border-top: 1px dotted #acacac
}
body.simulator .sim-lst.rwd .inner .sim-hd.lnd {
height: 180px
}
@media screen and (min-width: 576px) {
body.simulator .sim-lst.rwd .inner .sim-hd.lnd {
    height: 140px
}
}
body.simulator .sim-lst.rwd .inner .sim-hd.bld {
height: 120px
}
@media screen and (min-width: 896px) {
body.simulator .sim-lst.rwd .inner .sim-hd.bld {
    height: 110px
}
}
body.simulator .sim-lst.rwd .inner .sim-cnt {
height: 70px;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
-webkit-box-lines: multiple;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
width: 210px
}
@media screen and (min-width: 321px) {
body.simulator .sim-lst.rwd .inner .sim-cnt {
    width: calc(100% - 140px)
}
}
@media screen and (min-width: 576px) {
body.simulator .sim-lst.rwd .inner .sim-cnt {
    width: calc(100% - 160px);
    padding-right: 20px;
    padding-left: 40px;
    border-left: 1px dotted #acacac
}
}
@media screen and (min-width: 896px) {
body.simulator .sim-lst.rwd .inner .sim-cnt {
    padding-right: 50px
}
}
body.simulator .sim-lst.rwd .inner .sim-cnt:not(:first-of-type) {
border-top: 1px dotted #acacac
}
body.simulator .sim-lst.rwd .inner .sim-cnt.lnd {
height: 180px
}
@media screen and (min-width: 576px) {
body.simulator .sim-lst.rwd .inner .sim-cnt.lnd {
    height: 140px
}
}
body.simulator .sim-lst.rwd .inner .sim-cnt.bld {
height: 120px
}
@media screen and (min-width: 896px) {
body.simulator .sim-lst.rwd .inner .sim-cnt.bld {
    height: 110px
}
}
body.simulator .sim-lst.rwd .inner .sim-cnt input {
text-align: right;
width: 170px;
height: 40px;
padding-right: 5px
}
@media screen and (min-width: 576px) {
body.simulator .sim-lst.rwd .inner .sim-cnt input {
    width: calc(100% - 42px)
}
}
@media screen and (min-width: 896px) {
body.simulator .sim-lst.rwd .inner .sim-cnt input {
    width: calc(100% - 50px)
}
}
body.simulator .sim-lst.rwd .inner .sim-cnt .sim-txt {
-ms-flex-negative: 0;
-webkit-flex-shrink: 0;
flex-shrink: 0;
font-size: 14px;
margin-left: 5px
}
@media screen and (min-width: 321px) {
body.simulator .sim-lst.rwd .inner .sim-cnt .sim-txt {
    margin-left: 1em
}
}
@media screen and (min-width: 896px) {
body.simulator .sim-lst.rwd .inner .sim-cnt .sim-txt {
    font-size: 16px
}
}
body.simulator .sim-lst.rwd .inner .sim-cnt .sim-cmnt {
font-size: 14px;
margin-top: 12px;
line-height: calc(33 / 16)
}
@media screen and (min-width: 896px) {
body.simulator .sim-lst.rwd .inner .sim-cnt .sim-cmnt {
    -ms-flex-negative: 0;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    font-size: 16px;
    margin-top: 20px
}
}
body.simulator .sim-lst.thm {
border-bottom: 1px dotted #acacac;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center
}
body.simulator .sim-lst.thm .sim-hd {
height: 90px;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
font-weight: bold;
padding-left: 0;
width: 90px
}
@media screen and (min-width: 321px) {
body.simulator .sim-lst.thm .sim-hd {
    width: 140px;
    padding-left: 20px
}
}
@media screen and (min-width: 576px) {
body.simulator .sim-lst.thm .sim-hd {
    width: 298px;
    height: 120px
}
}
body.simulator .sim-lst.thm .sim-cnt {
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center;
height: 90px;
width: 210px
}
@media screen and (min-width: 321px) {
body.simulator .sim-lst.thm .sim-cnt {
    width: calc(100% - 140px)
}
}
@media screen and (min-width: 576px) {
body.simulator .sim-lst.thm .sim-cnt {
    border-left: 1px dotted #acacac;
    padding-left: 40px;
    padding-right: 20px;
    width: calc(100% - 298px);
    height: 120px
}
}
@media screen and (min-width: 896px) {
body.simulator .sim-lst.thm .sim-cnt {
    padding-right: 70px
}
}
body.simulator .sim-lst.thm .sim-cnt input {
width: 100%;
text-align: right;
padding-right: 5px;
height: 40px;
font-weight: bold
}
body.simulator .sim-hd {
padding-left: 20px
}
body.simulator .sim-cnt {
padding-top: 18px;
padding-bottom: 18px
}
body.simulator .sim-cnt .sim-txt {
margin-left: 1em
}
body.simulator .rslt-lst,
body.simulator_result .rslt-lst {
margin-top: 40px
}
@media screen and (min-width: 576px) {
body.simulator .rslt-lst,
body.simulator_result .rslt-lst {
    margin-top: 70px;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center
}
}
body.simulator .rslt-hd,
body.simulator_result .rslt-hd  {
font-weight: bold
}
@media screen and (min-width: 576px) {
body.simulator .rslt-hd,
body.simulator_result .rslt-hd {
    width: auto;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    text-align: right;
    padding-right: 20px
}
}
body.simulator .rslt-cnt,
body.simulator_result .rslt-cnt {
font-weight: bold;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center
}
@media screen and (min-width: 576px) {
body.simulator .rslt-cnt,
body.simulator_result .rslt-cnt {
    padding-right: 40px;
    -ms-flex-pack: end;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    width: auto;
    -ms-flex-preferred-size: 380px;
    -webkit-flex-basis: 380px;
    flex-basis: 380px
}
}
@media screen and (min-width: 896px) {
body.simulator .rslt-cnt,
body.simulator_result .rslt-cnt {
    -ms-flex-preferred-size: 410px;
    -webkit-flex-basis: 410px;
    flex-basis: 410px;
    padding-right: 70px
}
}
body.simulator .rslt-cnt input, 
body.simulator_result .rslt-cnt input{
height: 60px;
border: 5px solid #91bc4d;
text-align: right;
width: 100%;
font-size: 25px;
padding-right: 8px
}
@media screen and (min-width: 576px) {
body.simulator .rslt-cnt input,
body.simulator_result .rslt-cnt input {
    height: 90px;
    max-width: 340px
}
}
body.simulator .rslt-cnt .sim-txt,
body.simulator_result .rslt-cnt .sim-txt {
margin-left: 1em
}
body.simulator_result h2 {
    font-size: 24px;
    color: #77ad22;
}
body.simulator_result .result-area {
    background-color: #FFF;
    line-height: 30px;
    margin: 20px auto 50px;
    font-size: 20px;
    padding: 0 26px 20px;
}
body.simulator_result .result-area .cnfm_head {
    margin-right: .5em;
    color: #77ad22;
    display: inline-block;
}
body.simulator_result .result-area .cnfm_body {
    display: inline-block;
    margin-right: 20px;
}
body.simulator_result .result-area h3 {
    font-size: 24px;
    display: inline-block;
    font-weight: bold;
    margin-right: 20px;
    width: 100%;
    text-align: center;
    margin: 20px 0;
}
body.simulator_result #result-list {
    font-size: 18px;
    list-style-type: none;
}
body.simulator_result #result-list li {
    display: inline-block;
    margin-bottom: 6px;
}
body.simulator_result .btn-area {
    margin: auto;
    display: flex;
    justify-content: space-around;
}
body.simulator_result .discription-area{
	font-size:1.2em;
	text-align:center;
    line-height: 32px;
    margin-bottom: 40px;
}
body.simulator_result .btnlnk{
    position: relative;
}
body.simulator_result .btnlnk::after{
    display: block;
    background-color: #e7e7e7;
    border-radius: 10px;
    z-index: -1;
    left: 4px;
    top: 4px;
}
body.simulator_result .btnlnk:hover::after {
    background-color: #fff100;
}
body.simulator_result .btnlnk::after {
    content: "";
    position: absolute;
}
body.simulator_result .btnlnk.simu {
    margin-top: 13px;
}
body.simulator_result .btnlnk img {
    display: inline;
    width: 100%;
}
body.simulator_result .btnlnk:hover img{
    opacity: 1;
}
@media screen and (min-width: 1265px) {
    body.simulator_result .btnlnk{
        display: inline-block;
        line-height: 0;
        z-index: 1;
    }
    body.simulator_result .btnlnk.contact::after {
        width: 411px;
        height: calc(411px * 121 / 411)
    }
    body.simulator_result .btnlnk.simu::after {
        width: 411px;
        height: calc(411px * 71 / 411)
    }
}

.site-footer {
background-color: #f39800;
color: #FFF;
margin-top: 80px;
padding: 10px
}
@media screen and (min-width: 576px) {
.site-footer {
    margin-top: 180px;
    padding: 30px 25px 20px
}
}
@media screen and (min-width: 1265px) {
.site-footer {
    padding-right: 0
}
}
.site-footer .fnav {
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
-webkit-box-lines: multiple;
-webkit-flex-wrap: wrap;
flex-wrap: wrap
}
.site-footer .fnav-lst {
line-height: 1;
list-style: none;
border-bottom: 1px dotted #fff;
-ms-flex: 0 0 50%;
-webkit-box-flex: 0 0 50%;
-webkit-flex: 0 0 50%;
flex: 0 0 50%;
padding-bottom: 20px
}
@media screen and (min-width: 576px) {
.site-footer .fnav-lst {
    padding-bottom: 40px
}
}
@media screen and (min-width: 1265px) {
.site-footer .fnav-lst {
    -ms-flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap
}
}
@media screen and (min-width: 1265px) {
.site-footer .fnav-lst:first-child {
    -ms-flex: 0 0 13.473%;
    -webkit-box-flex: 0 0 13.473%;
    -webkit-flex: 0 0 13.473%;
    flex: 0 0 13.473%
}
}
@media screen and (min-width: 1265px) {
.site-footer .fnav-lst:nth-child(2), .site-footer .fnav-lst:nth-child(3) {
    -ms-flex: 0 0 29.473%;
    -webkit-box-flex: 0 0 29.473%;
    -webkit-flex: 0 0 29.473%;
    flex: 0 0 29.473%
}
}
@media screen and (min-width: 1265px) {
.site-footer .fnav-lst:last-child {
    -ms-flex: 1 0 auto;
    -webkit-box-flex: 1 0 auto;
    -webkit-flex: 1 0 auto;
    flex: 1 0 auto
}
}
.site-footer .fnav-lst:nth-child(n+3) {
margin-top: 16px
}
@media screen and (min-width: 1265px) {
.site-footer .fnav-lst:nth-child(n+3) {
    margin-top: 0
}
}
.site-footer .fnav-itm:not(:last-child) {
margin-bottom: 8px
}
@media screen and (min-width: 576px) {
.site-footer .fnav-itm:not(:last-child) {
    margin-bottom: 15px
}
}
.site-footer .fnav-lnk {
color: #FFF;
font-size: 11px
}
@media screen and (min-width: 576px) {
.site-footer .fnav-lnk {
    font-size: 16px
}
}
.site-footer .fnav-lnk::before {
content: ">";
margin-right: 7px
}
.site-footer .f-logo {
display: block;
margin: 25px auto 0;
width: 250px
}
@media screen and (min-width: 576px) {
.site-footer .f-logo {
    width: auto
}
}
@media screen and (min-width: 1265px) {
.site-footer .f-logo {
    margin-left: 0
}
}
.site-footer .f-adrs {
margin-top: 22px;
font-size: 10px
}
@media screen and (min-width: 576px) {
.site-footer .f-adrs {
    font-size: 16px
}
}
.site-footer .copy {
font-size: 10px;
margin-top: 30px;
text-align: right
}
@media screen and (min-width: 576px) {
.site-footer .copy {
    font-size: 16px
}
}
@media screen and (min-width: 1265px) {
.site-footer .copy {
    padding-right: 25px
}
}
.totop {
display: none;
}
@media screen and (max-width: 895px) {
.totop {
    display: none !important;
}
}
@media screen and (min-width: 896px) {
.totop {
    position: fixed;
    bottom: 20px;
    right: 10px;
    transition: ease all 0.3s;
    display: block;
}
}
.totop-img {
width: 8px
}
@media screen and (min-width: 576px) {
.totop-img {
    width: auto
}
}
@media screen and (min-width: 576px) {
.only-sp {
    display: none
}
}
@media screen and (min-width: 896px) {
.lower-tb {
    display: none
}
}
@media screen and (max-width: 575px) and (min-width: 896px) {
.only-tb {
    display: none
}
}
@media screen and (max-width: 575px) {
.upper-tb {
    display: none
}
}
@media screen and (max-width: 895px) {
.upper-pc {
    display: none
}
}
.w230 {
width: 230px !important
}
.text-combine {
-webkit-text-combine: horizontal;
-ms-text-combine-horizontal: all;
text-combine-upright: all
}
@supports (-ms-ime-align: auto) {
.text-combine {
    margin-top: -4px;
    margin-bottom: 8px
}
}
@media all and (-ms-high-contrast: none) {
*::-ms-backdrop, body.home .anshin-box {
    padding: 36px 10px 23px
}
}
@media all and (-ms-high-contrast: none) {
*::-ms-backdrop, body.simulator .rwd > .sim-cnt {
    width: 100%
}
}
@media all and (min-width: 896px) and (-ms-high-contrast: none) {
*::-ms-backdrop, body.home .anshin-area::after {
    top: 805px
}
}
@media all and (min-width: 976px) and (-ms-high-contrast: none) {
*::-ms-backdrop, body.home .anshin-area::after {
    top: 775px
}
}
@media all and (min-width: 1080px) and (-ms-high-contrast: none) {
*::-ms-backdrop, body.home .anshin-area::after {
    top: 790px
}
}
@media all and (min-width: 1130px) and (-ms-high-contrast: none) {
*::-ms-backdrop, body.home .anshin-area::after {
    top: 800px
}
}
@media all and (min-width: 1180px) and (-ms-high-contrast: none) {
*::-ms-backdrop, body.home .anshin-area::after {
    top: 820px
}
}
@media all and (min-width: 896px) and (-ms-high-contrast: none) {
*::-ms-backdrop, body.home .anshin-box {
    flex: 0 0 31%
}
}
@media all and (min-width: 1265px) and (-ms-high-contrast: none) {
*::-ms-backdrop, body.home .anshin-box:nth-child(n+4) {
    flex-basis: 30%
}
}
@media all and (-ms-high-contrast: none) {
*::-ms-backdrop, body.souzoku .scdl-waku .srvs-ttl {
    padding-top: 20px
}
}
@media all and (-ms-high-contrast: none) {
*::-ms-backdrop, body.souzoku .scdl-waku .srvs-ttl__no {
    margin-top: 8px
}
}
.wpcf7-list-item {
    display: block;
    margin-top: 10px;
}
.wpcf7-list-item.first {
    margin-top: 0;
}
body.contact .cntct-tbl .mt-radio label::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 18px;
    height: 18px;
    background-color: #FFF;
    border-radius: 50%
}
body.contact .cntct-tbl .mt-radio input[type='radio']:checked + span:after {
    content: "";
    display: block;
    position: absolute;
    top: 5px;
    left: 5px;
    width: 8px;
    height: 8px;
    background: #77ad22;
    border-radius: 50%
}
body.contact .cntct-tbl .mt-radio label {
    position: relative;
    padding-left: 25px
}
.wpcf7 input[type="url"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7-date {
    background-color: #FFF;
}
.pager .pagination {
    margin-top: 20px;
    text-align: center;
}

.pager .pagination li {
    display: inline;
    margin: 0 2px;
    padding: 0;
    display: inline-block;
    width: 50px;
    height: 50px;
    text-align: center;
    position: relative;
    border-radius: 10px;
}


.pager .pagination li a {
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    display:table;
    text-decoration: none;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}

.pager .pagination li span{
    display:table-cell;
    vertical-align:middle;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    display: table;
}

.pager .pagination li a:hover,
.pager .pagination li a.active{
    color: #eb6100;
    background: #88a4e4;
}

.pagination li > span {
    border-color: #337ab7;
    color: #eb6100;
}
body.faq .faq-q {
    background-color: #fbedd3;
    border-radius: 8px;
    font-size: 18px;
    font-weight: bold;
    padding: 1.4em 30px 1.4em 60px;
    position: relative;
}
@media screen and (min-width: 576px) {
    body.faq .faq-q {
        font-size: 22px;
        padding-left: 100px;
        padding-right: 50px;
    }
}
body.faq .faq-q::before {
    content: "Q.";
    font-weight: bold;
    font-size: 32px;
    color: #77ad22;
    position: absolute;
    top: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    left: 18px;
}
@media screen and (min-width: 576px) {
    body.faq .faq-q::before {
        font-size: 40px;
        left: 23px;
    }
}
body.faq .faq-q::after {
    content: "▼";
    position: absolute;
    color: #f39800;
    display: flex;
    align-items: center;
    top: 0;
    bottom: 0;
    right: 12px;
}
@media screen and (min-width: 576px) {
    body.faq .faq-q::after {
        right: 20px;
    }
}
body.faq .faq-q.opened::after {
    content: "▲";
}
body.faq .faq-q:not(:first-child) {
    margin-top: 36px;
}
@media screen and (min-width: 576px) {
    body.faq .faq-q:not(:first-child) {
        margin-top: 44px;
    }
}
body.faq .faq-a {
    padding: 30px 0;
    border-bottom: 1px dotted #000;
}
@media screen and (min-width: 576px) {
    body.faq .faq-a {
        padding: 36px 0;
    }
}
body.faq .faq-a a {
    color: #77ad22;
    text-decoration: underline;
}
body.faq .faq-a a:hover {
    opacity: 0.7;
    text-decoration: none;
}
body.info .cp-lst {
    font-size: 14px;
    line-height: 2.25;
    display: flex;
    justify-content: space-between;
}
@media screen and (min-width: 576px) {
    body.info .cp-lst {
        font-size: 16px;
    }
}
body.info .cp-lst:first-of-type {
    margin-top: 50px;
}
body.info .cp-dt,
body.info .cp-dd {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    min-height: 62px;
    padding-top: 6px;
    padding-bottom: 6px;
    border-bottom: 1px dotted #000;
}
body.info .cp-dt {
    flex: 0 0 26.7046%;
}
@media screen and (min-width: 896px) {
    body.info .cp-dt {
        padding-left: 40px;
    }
}
body.info .cp-dd {
    flex: 0 0 71.0227%;
}
@media screen and (min-width: 896px) {
    body.info .cp-dd {
        padding-left: 30px;
    }
}
body.info .cp-dd p {
    width: 100%;
}
body.info .cp-dd__lst {
    list-style: none;
    margin: 0;
    padding: 0;
}
body.info .cp-dd__lst > li {
    font-size: 12px;
    text-indent: -16px;
    padding-left: 16px;
}
@media screen and (min-width: 576px) {
    body.info .cp-dd__lst > li {
        font-size: 16px;
    }
}
body.info .cp-dd__lst > li:not(:first-child) {
    margin-top: 0.8em;
}
body.info .cp-dd__lst > li::before {
    content: "";
    display: inline-block;
    background-color: #f39800;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    margin-right: 6px;
}
@media screen and (min-width: 576px) {
    body.info .cp-dd__lst > li::before {
        width: 14px;
        height: 14px;
        margin-right: 8px;
    }
}
body.info .cp-dd__itm {
    margin-top: 4px;
}
body.info .ntwk-area {
    padding-bottom: 50px;
    position: relative;
}
@media screen and (min-width: 576px) {
    body.info .ntwk-area {
        padding-bottom: 90px;
    }
}
@media screen and (min-width: 1265px) {
    body.info .ntwk-area {
        overflow: hidden;
    }
}
body.info .ntwk-img {
    display: block;
    margin: 40px auto 0;
    width: auto;
    max-width: 100%;
}
@media screen and (min-width: 576px) {
    body.info .ntwk-img {
        margin-top: 70px;
    }
}
body.info .ntwk-bk {
    position: absolute;
    z-index: -1;
    right: -10px;
    top: 50px;
    width: 150%;
}
@media screen and (min-width: 576px) {
    body.info .ntwk-bk {
        right: -60px;
        width: auto;
        max-width: 100%;
    }
}
@media screen and (min-width: 896px) {
    body.info .ntwk-bk {
        right: -10px;
    }
}
@media screen and (min-width: 1265px) {
    body.info .ntwk-bk {
        width: 100%;
    }
}
body.info .accs-area p {
    text-align: center;
    line-height: 2.25;
}
body.info .accs-area p + p {
    margin-top: 2em;
}
body.info .accs-area .gmap {
    margin-top: 50px;
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 52.4752%;
    overflow: hidden;
}
body.info .accs-area .gmap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
body.contact .lead-area a {
    color: #77ad22;
    text-decoration: underline;
}
body.contact .lead-area a:hover {
    opacity: 0.7;
    text-decoration: none;
}
body.contact .cntct-tbl,
body.contact-confirm .cntct-tbl {
    margin-top: 40px;
    border-collapse: collapse;
    width: 100%;
}
@media screen and (min-width: 576px) {
    body.contact .cntct-tbl tr.tr-adrs > th,
    body.contact .cntct-tbl tr.tr-adrs > td,
    body.contact-confirm .cntct-tbl tr.tr-adrs > th,
    body.contact-confirm .cntct-tbl tr.tr-adrs > td {
        padding-top: 0;
        padding-bottom: 0;
    }
}
body.contact .cntct-tbl tr.tr-adrs > th,
body.contact-confirm .cntct-tbl tr.tr-adrs > th {
    position: relative;
}
@media screen and (min-width: 576px) {
    body.contact .cntct-tbl tr.tr-adrs > th::after,
    body.contact-confirm .cntct-tbl tr.tr-adrs > th::after {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 136px;
        border-left: 1px dotted #acacac;
    }
}
body.contact .cntct-tbl tr:first-child th,
body.contact-confirm .cntct-tbl tr:first-child th {
    border-top: 1px dotted #acacac;
}
@media screen and (max-width: 575px) {
    body.contact .cntct-tbl th,
    body.contact .cntct-tbl td,
    body.contact-confirm .cntct-tbl th,
    body.contact-confirm .cntct-tbl td {
        display: block;
    }
}
body.contact .cntct-tbl th,
body.contact-confirm .cntct-tbl th {
    padding: 20px 10px 10px;
    text-align: left;
    border-bottom: 1px dashed #e1e1e1;
}
@media screen and (min-width: 576px) {
    body.contact .cntct-tbl th,
    body.contact-confirm .cntct-tbl th {
        width: 30.6818%;
        border-right: 1px dotted #acacac;
        border-bottom: 1px dotted #acacac;
        padding-bottom: 20px;
    }
}
body.contact .cntct-tbl th .mst,
body.contact-confirm .cntct-tbl th .mst {
    display: flex;
    justify-content: space-between;
    align-items: center;
    white-space: nowrap;
}
body.contact .cntct-tbl th .mst::after,
body.contact-confirm .cntct-tbl th .mst::after {
    content: "必須";
    display: flex;
    width: 36px;
    height: 20px;
    justify-content: center;
    align-items: center;
    font-size: 12px;
    color: #f8757b;
    border: 1px solid #f8757b;
    background-color: #fff2f2;
}
body.contact .cntct-tbl td,
body.contact-confirm .cntct-tbl td {
    padding: 10px 10px 20px;
    font-weight: bold;
    border-bottom: 1px dotted #acacac;
}
@media screen and (min-width: 576px) {
    body.contact .cntct-tbl td,
    body.contact-confirm .cntct-tbl td {
        border-top: 1px dotted #acacac;
        padding-top: 20px;
    }
}
@media screen and (min-width: 995px) {
    body.contact .cntct-tbl td .cntnt-nm,
    body.contact-confirm .cntct-tbl td .cntnt-nm {
        display: inline-block;
    }
}
body.contact .cntct-tbl td .cntnt-nm:first-of-type,
body.contact-confirm .cntct-tbl td .cntnt-nm:first-of-type {
    margin-bottom: 18px;
}
@media screen and (min-width: 995px) {
    body.contact .cntct-tbl td .cntnt-nm:first-of-type,
    body.contact-confirm .cntct-tbl td .cntnt-nm:first-of-type {
        margin-bottom: 0;
    }
}
@media screen and (min-width: 896px) {
    body.contact .cntct-tbl td .cntnt-nm:first-of-type,
    body.contact-confirm .cntct-tbl td .cntnt-nm:first-of-type {
        margin-right: 36px;
    }
}
body.contact .cntct-tbl td .cntnt-nm input,
body.contact-confirm .cntct-tbl td .cntnt-nm input {
    width: 228px;
}
body.contact .cntct-tbl td .w-in,
body.contact-confirm .cntct-tbl td .w-in {
    margin-right: 12px;
}
body.contact .wpcf7 .wpcf7-text,
body.contact .wpcf7 .wpcf7-select,
body.contact .wpcf7 .wpcf7-textarea,
body.contact .wpcf7 .wpcf7-date {
    box-sizing: border-box;
    max-width: 100%;
    min-height: 44px;
    padding: 10px 12px;
    border: 1px solid #acacac;
    border-radius: 4px;
    background-color: #fff;
    color: #333;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.5;
}
body.contact .wpcf7 .wpcf7-text:focus,
body.contact .wpcf7 .wpcf7-select:focus,
body.contact .wpcf7 .wpcf7-textarea:focus,
body.contact .wpcf7 .wpcf7-date:focus {
    border-color: #f39800;
    outline: 2px solid #f39800;
    outline-offset: 2px;
}
body.contact .wpcf7 .wpcf7-form-control[aria-invalid="true"] {
    border-color: #dc3232;
}
body.contact .cntct-tbl input[type="text"] {
    background-color: #fff;
    width: 100%;
}
body.contact .cntct-tbl select {
    background-color: #fff;
    width: 230px;
    appearance: menulist;
}
body.contact .cntct-tbl textarea {
    background-color: #fff;
    width: 100%;
    height: 190px;
}
@media screen and (min-width: 576px) and (max-width: 768px) {
    body.contact .cntct-tbl th,
    body.contact .cntct-tbl td {
        display: block;
        width: 100%;
    }
    body.contact .cntct-tbl.cntct-tbl__inner {
        margin-left: 0;
        width: 100%;
    }
    body.contact .cntct-tbl tr.tr-adrs > th::after {
        display: none;
    }
}
body.contact .cntct-tbl__inner,
body.contact-confirm .cntct-tbl__inner {
    margin-top: 0;
}
@media screen and (min-width: 576px) {
    body.contact .cntct-tbl__inner,
    body.contact-confirm .cntct-tbl__inner {
        margin-left: -146px;
        width: calc(100% + 156px);
    }
}
body.contact .cntct-tbl__inner tr:first-child th,
body.contact .cntct-tbl__inner tr:first-child td,
body.contact-confirm .cntct-tbl__inner tr:first-child th,
body.contact-confirm .cntct-tbl__inner tr:first-child td,
body.contact .cntct-tbl__inner tr:last-child th,
body.contact .cntct-tbl__inner tr:last-child td,
body.contact-confirm .cntct-tbl__inner tr:last-child th,
body.contact-confirm .cntct-tbl__inner tr:last-child td,
body.contact .cntct-tbl__inner th,
body.contact-confirm .cntct-tbl__inner th {
    border: none;
}
@media screen and (min-width: 576px) {
    body.contact .cntct-tbl__inner th,
    body.contact-confirm .cntct-tbl__inner th {
        width: 136px;
    }
}
body.contact .cntct-tbl .mt-lst {
    list-style: none;
}
body.contact .cntct-tbl .mt-itm:not(:first-child) {
    margin-top: 10px;
}
body.contact .cntct-tbl .mt-radio input[type="radio"] {
    display: none;
}
body.contact .cntct-tbl .mt-radio + label {
    position: relative;
    padding-left: 25px;
}
body.contact .cntct-tbl .mt-radio + span.wpcf7-radio::before,
body.contact .cntct-tbl .mt-radio label::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 18px;
    height: 18px;
    background-color: #fff;
    border-radius: 50%;
}
body.contact .cntct-tbl .mt-radio:checked + span::after,
body.contact .cntct-tbl .mt-radio input[type="radio"]:checked + span::after {
    content: "";
    display: block;
    position: absolute;
    top: 5px;
    left: 5px;
    width: 8px;
    height: 8px;
    background: #77ad22;
    border-radius: 50%;
}
body.contact .cntct-tbl .mt-radio label {
    position: relative;
    padding-left: 25px;
}
body.contact .wpcf7-submit.sbmt-btn {
    display: block;
    width: 100%;
    min-height: 50px;
    margin: 30px auto 0;
    padding: 14px 20px;
    border: 2px solid #f39800;
    border-radius: 8px;
    background: #f39800 url("../img/bot_arrow.png") no-repeat center right 12px;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
}
body.contact .wpcf7-submit.sbmt-btn:hover {
    border-color: #e07a00;
    background-color: #e07a00;
}
body.contact .wpcf7-submit.sbmt-btn:focus-visible {
    outline: 2px solid #333;
    outline-offset: 3px;
}
@media screen and (min-width: 576px) {
    body.contact .wpcf7-submit.sbmt-btn {
        min-height: 80px;
        margin-top: 40px;
        padding: 20px 32px;
        font-size: 24px;
    }
}
body.voice .page-ttl {
    display: block;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    line-height: 1;
    font-size: 10px;
    background: url("../img/voice-ttl.png") 0 0 / cover no-repeat;
    border-bottom: none;
    margin-left: auto;
    margin-right: auto;
    width: 200px;
    height: 66.1111px;
}
@media screen and (min-width: 576px) {
    body.voice .page-ttl {
        width: 300px;
        height: 99.1667px;
    }
}
@media screen and (min-width: 896px) {
    body.voice .page-ttl {
        width: 360px;
        height: 119px;
    }
}
body.voice .vnav {
    margin-top: 30px;
}
@media screen and (min-width: 576px) {
    body.voice .vnav {
        margin-top: 50px;
    }
}
body.voice .vnav-bttm {
    margin-top: 80px;
}
@media screen and (min-width: 576px) {
    body.voice .vnav-bttm {
        margin-top: 150px;
    }
}
body.voice .vnav-lst {
    list-style: none;
    display: flex;
    justify-content: space-between;
}
body.voice .vnav-itm {
    flex: 0 0 24%;
}
@media screen and (min-width: 896px) {
    body.voice .vnav-itm {
        flex-basis: 24%;
    }
}
body.voice .vnav-lnk {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 8px;
    border: 2px solid #000;
    height: 40px;
    font-size: 26px;
}
@media screen and (min-width: 576px) {
    body.voice .vnav-lnk {
        border-radius: 13px;
        border-width: 3px;
        height: 80px;
        font-size: 43px;
    }
}
body.voice .vnav-lnk:hover {
    text-decoration: none;
    background-color: #ddefc1;
}
body.voice .vnav-lnk.active {
    background-color: #fff98d;
}
body.voice .vlead-area {
background-color: #ddefc1;
border-radius: 8px;
position: relative;
padding: 30px 18px 15px;
margin-top: 75px;
}
@media screen and (min-width: 576px) {
body.voice .vlead-area {
    border-radius: 15px;
    padding: 55px 35px 30px;
    margin-top: 145px;
}
}
body.voice .vlead-ttl {
font-weight: 400;
line-height: 1.80769;
font-size: 20px;
}
@media screen and (min-width: 576px) {
body.voice .vlead-ttl {
    font-size: 26px;
}
}
body.voice .vlead-desc {
margin-top: 20px;
line-height: 2;
font-size: 16px;
}
@media screen and (min-width: 576px) {
body.voice .vlead-desc {
    margin-top: 30px;
    font-size: 18px;
}
}
body.voice .vlead-no {
position: absolute;
font-size: 38px;
line-height: 1;
background: url("../img/voice-mark.png") right bottom / 56px no-repeat;
right: 14px;
height: 49px;
padding-top: 15px;
top: -39px;
padding-right: 61px;
}
@media screen and (min-width: 576px) {
body.voice .vlead-no {
    font-size: 77px;
    height: 99px;
    padding-top: 30px;
    top: -78px;
    padding-right: 132px;
    background-size: auto;
}
}
body.voice .voice-cntnt p {
margin-top: 20px;
}
@media screen and (min-width: 576px) {
body.voice .voice-cntnt p {
    margin-top: 36px;
}
}
body.voice .voice-ttl {
margin-top: 60px;
font-size: 22px;
line-height: 1.46154;
letter-spacing: 0.08em;
color: #77ad22;
font-weight: 400;
}
@media screen and (min-width: 576px) {
body.voice .voice-ttl {
    margin-top: 100px;
    font-size: 26px;
}
}
body.staff .staff-box {
margin-top: 42px;
background-color: #fff;
padding: 22px 15px 30px;
}
@media screen and (min-width: 896px) {
body.staff .staff-box {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 15px;
}
}
body.staff .staff-fig {
width: 49.2308%;
margin: 0 auto;
line-height: 0;
}
@media screen and (min-width: 576px) {
body.staff .staff-fig {
    width: 260px;
}
}
@media screen and (min-width: 896px) {
body.staff .staff-fig {
    margin: 0 20px 0 0;
    width: 210px;
}
}
body.staff .staff-img {
width: 100%;
}
@media screen and (min-width: 896px) {
body.staff .tab-area {
    width: 600px;
}
}
body.staff .tab-area input[type="radio"] {
display: none;
}
body.staff .tab-header {
display: flex;
margin-top: 15px;
}
@media screen and (min-width: 896px) {
body.staff .tab-header {
    margin-top: 0;
}
}
body.staff .tab-itm {
width: 33.3333%;
flex: 0 0 33.33%;
height: 40px;
border: 1px solid #91bc4d;
font-size: 12px;
letter-spacing: 0.14em;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
font-weight: bold;
transition: 0.2s;
border-radius: 8px 8px 0 0;
}
@media screen and (min-width: 321px) {
body.staff .tab-itm {
    font-size: 13px;
}
}
@media screen and (min-width: 576px) {
body.staff .tab-itm {
    font-size: 16px;
    height: 50px;
}
}
body.staff .tab-itm:hover {
background-color: #e9f1db;
}
body.staff .tab-cntnt {
display: none;
padding: 15px 0.5em 0 1em;
}
@media screen and (min-width: 896px) {
body.staff .tab-cntnt {
    padding-top: 30px;
}
}
body.staff .tab-cntnt p {
line-height: 1.7;
}
body.staff .tab-cntnt.cr {
padding-top: 25px;
}
@media screen and (min-width: 896px) {
body.staff .tab-cntnt.cr {
    padding-top: 50px;
}
}
body.staff .tab-cntnt.cr p {
line-height: 2.0625;
}
body.staff #cr-01:checked ~ .tab-header .tab-cr,
body.staff #cm-01:checked ~ .tab-header .tab-cm,
body.staff #in-01:checked ~ .tab-header .tab-in,
body.staff #cr-02:checked ~ .tab-header .tab-cr,
body.staff #cm-02:checked ~ .tab-header .tab-cm,
body.staff #in-02:checked ~ .tab-header .tab-in,
body.staff #cr-03:checked ~ .tab-header .tab-cr,
body.staff #cm-03:checked ~ .tab-header .tab-cm,
body.staff #in-03:checked ~ .tab-header .tab-in,
body.staff #cr-04:checked ~ .tab-header .tab-cr,
body.staff #cm-04:checked ~ .tab-header .tab-cm,
body.staff #in-04:checked ~ .tab-header .tab-in,
body.staff #cr-05:checked ~ .tab-header .tab-cr,
body.staff #cm-05:checked ~ .tab-header .tab-cm,
body.staff #in-05:checked ~ .tab-header .tab-in,
body.staff #cr-06:checked ~ .tab-header .tab-cr,
body.staff #cm-06:checked ~ .tab-header .tab-cm,
body.staff #in-06:checked ~ .tab-header .tab-in,
body.staff #cr-07:checked ~ .tab-header .tab-cr,
body.staff #cm-07:checked ~ .tab-header .tab-cm,
body.staff #in-07:checked ~ .tab-header .tab-in,
body.staff #cr-08:checked ~ .tab-header .tab-cr,
body.staff #cm-08:checked ~ .tab-header .tab-cm,
body.staff #in-08:checked ~ .tab-header .tab-in,
body.staff #cr-09:checked ~ .tab-header .tab-cr,
body.staff #cm-09:checked ~ .tab-header .tab-cm,
body.staff #in-09:checked ~ .tab-header .tab-in,
body.staff #cr-10:checked ~ .tab-header .tab-cr,
body.staff #cm-10:checked ~ .tab-header .tab-cm,
body.staff #in-10:checked ~ .tab-header .tab-in,
body.staff #cr-11:checked ~ .tab-header .tab-cr,
body.staff #cm-11:checked ~ .tab-header .tab-cm,
body.staff #in-11:checked ~ .tab-header .tab-in,
body.staff #cr-12:checked ~ .tab-header .tab-cr,
body.staff #cm-12:checked ~ .tab-header .tab-cm,
body.staff #in-12:checked ~ .tab-header .tab-in,
body.staff #cr-13:checked ~ .tab-header .tab-cr,
body.staff #cm-13:checked ~ .tab-header .tab-cm,
body.staff #in-13:checked ~ .tab-header .tab-in,
body.staff #cr-14:checked ~ .tab-header .tab-cr,
body.staff #cm-14:checked ~ .tab-header .tab-cm,
body.staff #in-14:checked ~ .tab-header .tab-in {
background-color: #91bc4d;
color: #fff;
}
body.staff #cr-01:checked ~ .cr01-cntnt,
body.staff #cm-01:checked ~ .cm01-cntnt,
body.staff #in-01:checked ~ .in01-cntnt,
body.staff #cr-02:checked ~ .cr02-cntnt,
body.staff #cm-02:checked ~ .cm02-cntnt,
body.staff #in-02:checked ~ .in02-cntnt,
body.staff #cr-03:checked ~ .cr03-cntnt,
body.staff #cm-03:checked ~ .cm03-cntnt,
body.staff #in-03:checked ~ .in03-cntnt,
body.staff #cr-04:checked ~ .cr04-cntnt,
body.staff #cm-04:checked ~ .cm04-cntnt,
body.staff #in-04:checked ~ .in04-cntnt,
body.staff #cr-05:checked ~ .cr05-cntnt,
body.staff #cm-05:checked ~ .cm05-cntnt,
body.staff #in-05:checked ~ .in05-cntnt,
body.staff #cr-06:checked ~ .cr06-cntnt,
body.staff #cm-06:checked ~ .cm06-cntnt,
body.staff #in-06:checked ~ .in06-cntnt,
body.staff #cr-07:checked ~ .cr07-cntnt,
body.staff #cm-07:checked ~ .cm07-cntnt,
body.staff #in-07:checked ~ .in07-cntnt,
body.staff #cr-08:checked ~ .cr08-cntnt,
body.staff #cm-08:checked ~ .cm08-cntnt,
body.staff #in-08:checked ~ .in08-cntnt,
body.staff #cr-09:checked ~ .cr09-cntnt,
body.staff #cm-09:checked ~ .cm09-cntnt,
body.staff #in-09:checked ~ .in09-cntnt,
body.staff #cr-10:checked ~ .cr10-cntnt,
body.staff #cm-10:checked ~ .cm10-cntnt,
body.staff #in-10:checked ~ .in10-cntnt,
body.staff #cr-11:checked ~ .cr11-cntnt,
body.staff #cm-11:checked ~ .cm11-cntnt,
body.staff #in-11:checked ~ .in11-cntnt,
body.staff #cr-12:checked ~ .cr12-cntnt,
body.staff #cm-12:checked ~ .cm12-cntnt,
body.staff #in-12:checked ~ .in12-cntnt,
body.staff #cr-13:checked ~ .cr13-cntnt,
body.staff #cm-13:checked ~ .cm13-cntnt,
body.staff #in-13:checked ~ .in13-cntnt,
body.staff #cr-14:checked ~ .cr14-cntnt,
body.staff #cm-14:checked ~ .cm14-cntnt,
body.staff #in-14:checked ~ .in14-cntnt {
display: block;
}
body.zeimu .page-contents p + p {
margin-top: 1em;
}
body.zeimu .zeimu-area {
margin: 45px auto 0;
max-width: 790px;
}
@media screen and (min-width: 576px) {
body.zeimu .zeimu-area {
    display: flex;
    justify-content: space-between;
    margin-top: 90px;
    align-items: flex-start;
}
}
body.zeimu .zeimu-box {
background-color: #fff;
border-radius: 8px;
padding-bottom: 24px;
}
@media screen and (min-width: 576px) {
body.zeimu .zeimu-box {
    flex: 0 0 320px;
}
}
@media screen and (min-width: 896px) {
body.zeimu .zeimu-box {
    flex-basis: 360px;
}
}
body.zeimu .zeimu-box.shomen {
margin-top: 50px;
position: relative;
}
@media screen and (min-width: 576px) {
body.zeimu .zeimu-box.shomen {
    margin-top: 0;
}
}
body.zeimu .zeimu-box.shomen .zeimu-lst:first-of-type .zeimu-dd {
font-size: 15px;
}
@media screen and (min-width: 576px) {
body.zeimu .zeimu-box.shomen .zeimu-lst:first-of-type .zeimu-dd {
    font-size: 14px;
}
}
@media screen and (min-width: 896px) {
body.zeimu .zeimu-box.shomen .zeimu-lst:first-of-type .zeimu-dd {
    font-size: 15px;
}
}
body.zeimu .zeimu-box.shomen .zeimu-lst:nth-of-type(3)::after {
opacity: 0.5;
}
body.zeimu .zeimu-box.shomen .zeimu-lst:nth-of-type(3) .zeimu-dd {
display: block;
padding-top: 6px;
}
body.zeimu .zeimu-box.shomen .zeimu-lst:nth-of-type(4) {
opacity: 0.6;
}
body.zeimu .zeimu-box.shomen .rcross {
position: absolute;
bottom: 30px;
width: 300px;
left: 0;
right: 0;
margin: 0 auto;
}
body.zeimu .zeimu-ttl {
border-radius: 8px 8px 0 0;
background-color: #91bc4d;
color: #fff;
font-size: 20px;
display: flex;
align-items: center;
justify-content: center;
height: 50px;
}
body.zeimu .zeimu-lst {
display: flex;
flex-wrap: wrap;
margin: 0 15px;
position: relative;
}
@media screen and (min-width: 576px) {
body.zeimu .zeimu-lst {
    margin: 0 10px;
}
}
@media screen and (min-width: 896px) {
body.zeimu .zeimu-lst {
    margin: 0 15px;
}
}
body.zeimu .zeimu-lst:first-of-type {
margin-top: 22px;
}
body.zeimu .zeimu-lst:not(:last-of-type) {
margin-bottom: 72px;
}
body.zeimu .zeimu-lst:not(:last-of-type)::after {
position: absolute;
content: "";
display: block;
width: 57px;
height: 53px;
background: url("../img/arw-grn__mini.png") center center / cover no-repeat;
left: 0;
right: 0;
bottom: -60px;
margin: auto;
}
body.zeimu .zeimu-lst .red {
color: red;
}
body.zeimu .zeimu-dt {
flex: 0 0 80px;
display: flex;
justify-content: center;
align-items: center;
border-radius: 8px 0 0 8px;
color: #fff;
height: 50px;
}
@media screen and (min-width: 576px) {
body.zeimu .zeimu-dt {
    font-size: 15px;
    flex-basis: 65px;
}
}
@media screen and (min-width: 896px) {
body.zeimu .zeimu-dt {
    font-size: 16px;
    flex-basis: 80px;
}
}
body.zeimu .zeimu-dt.dt-grn {
background-color: #91bc4d;
}
body.zeimu .zeimu-dt.dt-bl {
background-color: #3290bf;
}
body.zeimu .zeimu-dt.dt-red {
background-color: #e68a72;
}
body.zeimu .zeimu-dt.tujo-3rd,
body.zeimu .zeimu-dt.shomen-3rd {
height: auto;
}
body.zeimu .zeimu-dd {
border-radius: 0 8px 8px 0;
height: 50px;
display: flex;
flex: 0 0 calc(100% - 80px);
max-width: calc(100% - 80px);
align-items: center;
padding: 0 8px 0 12px;
line-height: 1.3;
}
@media screen and (min-width: 576px) {
body.zeimu .zeimu-dd {
    font-size: 15px;
    flex-basis: calc(100% - 65px);
    max-width: calc(100% - 65px);
}
}
@media screen and (min-width: 896px) {
body.zeimu .zeimu-dd {
    font-size: 16px;
    flex-basis: calc(100% - 80px);
    max-width: calc(100% - 80px);
}
}
body.zeimu .zeimu-dd.dd-grn {
background-color: #d0e2b2;
}
body.zeimu .zeimu-dd.dd-bl {
background-color: #c2deec;
}
body.zeimu .zeimu-dd.dd-red {
background-color: #f5d0c0;
}
body.zeimu .zeimu-dd.tujo-3rd {
height: auto;
flex-wrap: wrap;
padding-top: 12px;
padding-bottom: 8px;
}
body.zeimu .zeimu-dd.tujo-3rd p {
font-size: 13px;
line-height: 1.4;
margin-top: 8px;
}
body.zeimu .zeimu-dd.shomen-3rd {
height: auto;
padding-bottom: 8px;
padding-top: 12px !important;
}
#fixed_banner.show {
visibility: visible;
}
#fixed_banner {
    position: fixed;
    bottom: 15px;
    right: 220px;
    z-index: 10;
    max-width: 400px;
    width: 30%;
    min-width: 300px;
    animation: fadeIn 1s ease 1s 1 normal backwards;
}
@media screen and (max-width: 575px) {
    #fixed_banner {
        left: 5px !important;
		right: auto;
        bottom: 8px;
        animation: fadeInMini 1s ease 1s 1 normal backwards;
    }
}
@media screen and (max-width: 575px) {
    #fixed_banner img.pc {
        display: none;
    }
    #fixed_banner img.sp {
        display: block;
    }
}
@media screen and (min-width: 576px) {
    #fixed_banner img.pc {
        display: block;
    }
    #fixed_banner img.sp {
        display: none;
    }
}
@keyframes fadeIn {
    from {
      opacity: 0;
      transform: translateX(400px);
    }
    to {
      opacity: 1;
      transform: translateX(0);
    }
}
@keyframes fadeInMini {
    from {
      opacity: 0;
      transform: translateX(400px);
    }
    to {
      opacity: 1;
      transform: translateX(-50%);
    }
}
body.simulator_result .thanksbox {
	padding:60px 0 20px;
}
body.simulator_result .thanksbox h4 {
	font-size: 1.6em;
	text-align: center;
}
.pc_none {display:none;}
.sp_none {display:block;}
@media only screen and (max-width: 767px){
    .pager .pagination {
        padding-left: 0;
        margin-left: 0;

        ul {
            padding-left: 0;
            margin-left: 0;
        }
    }

    .pager .pagination li.pre,
    .pager .pagination li.next{
        display: inline-block;
        width: 40%;
        height: 50px;
        text-align: center;
    }

    .pager .pagination li.pre a,
    .pager .pagination li.next a{
        width: 100%;
        text-align: center;
    }

    .pager .pagination li.pre span::after{
        content: "　前の10件へ";
    }

    .pager .pagination li.next span::before{
        content: "次の10件へ　";
    }
	body.simulator_result .thanksbox {
		padding:50px 0 20px;
	}
	body.simulator_result .thanksbox h4 {
		font-size: 1.2em;
		text-align: center;
	}
	body.simulator_result .discription-area{
	font-size:1.0em;
		text-align: left;
		padding: 0 6%;
	}
	.pc_none {display:block;}
	.sp_none {display:none;}
}

/* 20260625 add Google Button*/

.google_review {
    text-align: center;
    margin-bottom: 50px;
    width: 100%;
}

.gsi-material-button {
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  -webkit-appearance: none;
  background-color: WHITE;
  background-image: none;
  border: 1px solid #747775;
  -webkit-border-radius: 20px;
  border-radius: 20px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #1f1f1f;
  cursor: pointer;
  font-family: 'Roboto', arial, sans-serif;
  font-size: 14px;
  height: 40px;
  letter-spacing: 0.25px;
  outline: none;
  overflow: hidden;
  padding: 0 12px;
  position: relative;
  text-align: center;
  -webkit-transition: background-color .218s, border-color .218s, box-shadow .218s;
  transition: background-color .218s, border-color .218s, box-shadow .218s;
  vertical-align: middle;
  white-space: nowrap;
  width: auto;
  max-width: 60%;
  min-width: min-content;
}

.gsi-material-button .gsi-material-button-icon {
  height: 20px;
  margin-right: 10px;
  min-width: 20px;
  width: 20px;
}

.gsi-material-button .gsi-material-button-content-wrapper {
  -webkit-align-items: center;
  align-items: center;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 100%;
  justify-content: space-between;
  position: relative;
  width: 100%;
}

.gsi-material-button .gsi-material-button-contents {
  -webkit-flex-grow: 1;
  flex-grow: 1;
  font-family: 'Roboto', arial, sans-serif;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: top;
}

.gsi-material-button .gsi-material-button-state {
  -webkit-transition: opacity .218s;
  transition: opacity .218s;
  bottom: 0;
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.gsi-material-button:disabled {
  cursor: default;
  background-color: #ffffff61;
  border-color: #1f1f1f1f;
}

.gsi-material-button:disabled .gsi-material-button-contents {
  opacity: 38%;
}

.gsi-material-button:disabled .gsi-material-button-icon {
  opacity: 38%;
}

.gsi-material-button:not(:disabled):active .gsi-material-button-state, 
.gsi-material-button:not(:disabled):focus .gsi-material-button-state {
  background-color: #303030;
  opacity: 12%;
}

.gsi-material-button:not(:disabled):hover {
  -webkit-box-shadow: 0 1px 2px 0 rgba(60, 64, 67, .30), 0 1px 3px 1px rgba(60, 64, 67, .15);
  box-shadow: 0 1px 2px 0 rgba(60, 64, 67, .30), 0 1px 3px 1px rgba(60, 64, 67, .15);
}

.gsi-material-button:not(:disabled):hover .gsi-material-button-state {
  background-color: #303030;
  opacity: 8%;
}

/* 20260625 add Google Button*/

.google_review {
    text-align: center;
    margin-bottom: 50px;
    width: 100%;
}

.gsi-material-button {
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  -webkit-appearance: none;
  background-color: WHITE;
  background-image: none;
  border: 1px solid #747775;
  -webkit-border-radius: 20px;
  border-radius: 20px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #1f1f1f;
  cursor: pointer;
  font-family: 'Roboto', arial, sans-serif;
  font-size: 14px;
  height: 40px;
    text-align: center !important;
  letter-spacing: 0.25px;
  outline: none;
  overflow: hidden;
  padding: 0 12px;
  position: relative;
  text-align: center;
  -webkit-transition: background-color .218s, border-color .218s, box-shadow .218s;
  transition: background-color .218s, border-color .218s, box-shadow .218s;
  vertical-align: middle;
  white-space: nowrap;
  width: auto;
  max-width: 60%;
  min-width: min-content;
}

.gsi-material-button .gsi-material-button-icon {
  height: 20px;
  margin-right: 10px;
  min-width: 20px;
  width: 20px;
}

.gsi-material-button .gsi-material-button-content-wrapper {
  -webkit-align-items: center;
  align-items: center;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 100%;
  justify-content: space-between;
  position: relative;
  width: 100%;
}

.gsi-material-button .gsi-material-button-contents {
  -webkit-flex-grow: 1;
  flex-grow: 1;
  font-family: 'Roboto', arial, sans-serif;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: top;
}

.gsi-material-button .gsi-material-button-state {
  -webkit-transition: opacity .218s;
  transition: opacity .218s;
  bottom: 0;
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.gsi-material-button:disabled {
  cursor: default;
  background-color: #ffffff61;
  border-color: #1f1f1f1f;
}

.gsi-material-button:disabled .gsi-material-button-contents {
  opacity: 38%;
}

.gsi-material-button:disabled .gsi-material-button-icon {
  opacity: 38%;
}

.gsi-material-button:not(:disabled):active .gsi-material-button-state, 
.gsi-material-button:not(:disabled):focus .gsi-material-button-state {
  background-color: #303030;
  opacity: 12%;
}

.gsi-material-button:not(:disabled):hover {
  -webkit-box-shadow: 0 1px 2px 0 rgba(60, 64, 67, .30), 0 1px 3px 1px rgba(60, 64, 67, .15);
  box-shadow: 0 1px 2px 0 rgba(60, 64, 67, .30), 0 1px 3px 1px rgba(60, 64, 67, .15);
}

.gsi-material-button:not(:disabled):hover .gsi-material-button-state {
  background-color: #303030;
  opacity: 8%;
}

.page-contents .gsi-material-button-content-wrapper p {
	width: 100%;
}

.column-card-list {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 24px;
width: calc(100% - 32px);
margin: 20px auto;
}

.column-card {
position: relative;
display: flex;
flex-direction: column;
min-width: 0;
width: 100%;
height: 100%;
overflow: visible;
padding: 0;
border: 3px solid #111;
border-radius: 12px;
background-color: #fff;
box-shadow: 8px 8px 0 #e7e7e7;
transition: box-shadow 0.2s ease;
}

.column-card::after {
display: none;
}

.column-card:hover,
.column-card:focus-within {
box-shadow: 8px 8px 0 #fff100;
}

.column-card__link {
display: flex;
position: relative;
flex: 1;
flex-direction: column;
min-width: 0;
width: 100%;
overflow: hidden;
border-radius: 8px;
background-color: #fff;
color: #333;
text-decoration: none;
}

.column-card__link:hover,
.column-card__link:focus {
color: #333;
text-decoration: none;
}

.column-card > p,
.column-card__link > p {
display: none;
}

.column-card__image {
display: block;
width: 100%;
aspect-ratio: 800 / 470;
object-fit: cover;
}

.column-card__body {
display: flex;
flex: 1;
flex-direction: column;
padding: 10px 14px 12px;
}

.column-card__category,
.page-contents .column-card__category {
align-self: flex-start;
margin: 0 0 12px;
padding: 3px 18px 4px;
background-color: #77ad22;
color: #fff;
font-size: 16px;
line-height: 1.1;
display: inline-block !important;
}

.column-card__title {
margin: 0;
font-size: 18px;
font-weight: normal;
line-height: 1.45;
}

.column-card__date,
.page-contents .column-card__date {
margin: auto 0 0;
padding-top: 24px;
font-size: 13px;
line-height: 1.3;
text-align: right;
}
.page-contents .column-card__date2 {
font-size: 14px;
line-height: 1.4;
text-align: right;
margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
.column-card-list {
grid-template-columns: 1fr;
gap: 28px;
width: calc(100% - 20px);
}

.column-card__body {
padding-right: 16px;
padding-left: 16px;
}
}

/* Keep the result page aligned with the existing page-contents layout. */
body.simulator_result .resultblock {
max-width: none;
margin: 50px auto;
}

body.simulator_result .resultblock > p:empty,
body.simulator_result .result-intro-grid > p:empty {
display: none;
}

body.simulator_result .resultblock > .rslt-lst,
body.simulator_result .resultblock > .rslt-lst:nth-of-type(1),
body.simulator_result .resultblock > .rslt-lst:nth-of-type(2) {
display: inline-flex;
width: calc(50% - 50px);
margin: 0;
vertical-align: middle;
}

body.simulator_result .resultblock > .rslt-lst .rslt-hd {
flex: 0 0 auto;
padding-right: 10px;
font-size: inherit;
}

body.simulator_result .resultblock > .rslt-lst .rslt-cnt {
flex: 1 1 auto;
min-width: 0;
padding: 0;
}

body.simulator_result .resultblock > .rslt-lst .rslt-cnt input {
width: 100%;
max-width: 340px;
height: 58px;
border-width: 2px;
font-size: inherit;
}

body.simulator_result .resultblock .tax-note {
margin: 8px 0 0;
font-size: inherit;
text-align: right;
}

body.simulator_result .resultblock .result-intro {
margin: 28px 0 30px;
}

body.simulator_result .resultblock .result-intro > h2 {
margin: 0 0 12px;
font-size: inherit;
text-align: center;
}

body.simulator_result .resultblock .result-intro-lead,
body.simulator_result .resultblock .result-intro-copy p {
font-size: inherit;
line-height: inherit;
}

body.simulator_result .resultblock .result-intro-grid {
grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
gap: 18px;
}

body.simulator_result .resultblock .result-photo {
min-height: 0;
aspect-ratio: 1.47 / 1;
}

body.simulator_result .resultblock .result-intro-copy h3 {
font-size: inherit;
}

body.simulator_result .resultblock .result-area {
font-size: inherit;
}

body.simulator_result .resultblock .result-area h3 {
font-size: inherit;
}

body.simulator_result .resultblock #result-list {
font-size: inherit;
}

body.simulator_result .resultblock .result-actions .btnlnk {
width: 32%;
max-width: 411px;
min-height: 0;
}

body.simulator_result .resultblock .result-actions .btnlnk.contact {
min-height: 54px;
}

body.simulator_result .resultblock .result-actions .btnlnk.simu {
min-height: 38px;
}

@media screen and (min-width: 576px) and (max-width: 895px) {
body.simulator_result .resultblock > .rslt-lst .rslt-cnt input {
    max-width: 140px;
}

body.simulator_result .resultblock .result-area,
body.simulator_result .resultblock #result-list {
    font-size: 13px;
}

body.simulator_result .resultblock .result-intro-copy h3 {
    font-size: 15px;
}
}

@media screen and (max-width: 767px) {
body.simulator_result .resultblock > .rslt-lst,
body.simulator_result .resultblock > .rslt-lst:nth-of-type(1),
body.simulator_result .resultblock > .rslt-lst:nth-of-type(2) {
    display: flex;
    width: 100%;
    margin: 12px 0 0;
}

body.simulator_result .resultblock > .rslt-lst:first-of-type {
    margin-top: 0;
}

body.simulator_result .resultblock > .rslt-lst .rslt-cnt input {
    max-width: none;
    height: 52px;
}

body.simulator_result .resultblock .result-intro-grid {
    grid-template-columns: 1fr;
    margin-top: 20px;
}

body.simulator_result .resultblock .result-actions .btnlnk {
    width: min(100%, 280px);
}
}

/* SP Bottom Menu 20260926 ADD */
.bot_menu {
    border-top: 1px solid #555;
    width: 100%;
	position:fixed;
	bottom: -50px;
	z-index: 9999;
}
.bot_menu ul {
    display: flex;
    list-style: none;
}
.bot_menu li {
    flex: 1;
    font-size: 1.0em;
    text-align: center;
    padding: 10px 5px;
    border-right: 1px solid#555;
    text-decoration: none !important;
    text-indent: 0.5em;
}
.bot_menu li.sptel {
    background: #7eac31 url("../img/spnavi_tel.png") center left 7px no-repeat;
}
.bot_menu li.spmail {
    background: #ea9825 url("../img/spnavi_mail.png") center left 7px no-repeat;
}
.bot_menu li a {
    color: #fff !important;
    width: 100%;
    display: block;
}

@media screen and (min-width: 768px) and (max-width: 1264px) {
    .bot_menu {
        display: block;
    }
}

body .lead-area-follow .lead-ttl {
background: url("../img/follow-img01.jpg") no-repeat right top/80px;
height: 80px;
display: -ms-flexbox;
display: -webkit-box;
display: -webkit-flex;
display: flex;
-ms-flex-align: center;
-webkit-box-align: center;
-webkit-align-items: center;
align-items: center
}


@media screen and (min-width: 576px) {
body .lead-area-follow .lead-ttl {
    background-image: none !important;
    height: auto;
    display: block
}
}
@media screen and (max-width: 575px) {
body .lead-area-follow .lead-desc {
    background-image: none !important
}
}
@media screen and (min-width: 576px) {
body .lead-area-follow .lead-desc {
    margin-top: 50px;
    padding-right: calc(350 / 880 * 100%);
    background: url("../img/follow-img01.jpg") no-repeat right top/calc(313 / 880 * 100%);
    font-size: 16px;
}
}
@media screen and (min-width: 896px) {
body .lead-area-follow .lead-desc {
    background-size: 313px;
    min-height: 320px;
    font-size: 17px;
}
}
@media screen and (min-width: 1265px) {
body .lead-area-follow .lead-desc {
    padding-right: 360px;
    font-size: 17px;
}
}
.fllow_p {
    display: block;
    padding-bottom: 1.2em;
    margin: 0;
}

body.price .prc-lst {
    list-style: none;
}

@media screen and (min-width: 576px) {
    body.price .prc-lst {
        display: flex;
        justify-content: space-between;
    }
}

body.price .prc-itm {
    background-color: #fff;
}

@media screen and (min-width: 576px) {
    body.price .prc-itm {
        flex: 0 0 48%;
    }
}

body.price .prc-itm:not(:first-child) {
    margin-top: 30px;
}

@media screen and (min-width: 576px) {
    body.price .prc-itm:not(:first-child) {
        margin-top: 0;
    }
}

body.price .prc-lnk {
    display: flex;
    height: 130px;
    text-align: center;
    justify-content: center;
    align-items: center;
}

body.price .prc-lnk:hover {
    text-decoration: none;
}

body.price .prc-lnk:hover .prc-txt {
    background-color: #fff100;
}

body.price .prc-txt {
    color: #000;
    font-size: 16px;
}

@media screen and (min-width: 576px) {
    body.price .prc-txt {
        font-size: 20px;
    }
}

.follow-up-ttl {
    margin: 2em 0 1em;
    font-size: 22px;
    line-height: calc(38 / 26);
    letter-spacing: .08em;
    color: #77ad22;
    font-weight: 400;
}
@media screen and (min-width: 576px) {
    .follow-up-ttl {
        margin: 2em 0 1em;
        font-size: 26px;
        line-height: calc(38 / 26);
        letter-spacing: .08em;
        color: #77ad22;
        font-weight: 400;
    }
}

/* Homepage key visual */
.souzoku-mv {
    position: relative;
    isolation: isolate;
    width: 100vw;
    height: 80vh;
    margin-left: calc(50% - 50vw);
    overflow: hidden;
    color: #171717;
    background: url("../img/main_sp_bg.jpg") center center / cover no-repeat;
    font-family: inherit;
}

.souzoku-mv *,
.souzoku-mv *::before,
.souzoku-mv *::after {
    box-sizing: border-box;
}

.souzoku-mv__people {
    position: absolute;
    z-index: 1;
    right: 2%;
    bottom: 6%;
    width: 96%;
    height: 78%;
    text-align: center;
}

.souzoku-mv__people img {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    object-fit: contain;
    object-position: center bottom;
}

.souzoku-mv__name {
    position: absolute;
    z-index: 2;
    top: 30%;
    color: #fff;
    font-size: clamp(12px, 2.4vw, 18px);
    font-weight: 700;
    line-height: 1.7;
    letter-spacing: .08em;
    text-shadow: 0 1px 4px rgba(0, 0, 0, .8);
    writing-mode: vertical-rl;
}

.souzoku-mv__name--left {
    left: 3%;
}

.souzoku-mv__name--right {
    right: 3%;
}

.souzoku-mv__copy {
    position: absolute;
    z-index: 2;
    top: 5%;
    left: 0;
    width: 100%;
    padding: 28px 7.0% 20px;
    background: rgba(255, 255, 255, .70);
}

.souzoku-mv__title {
    margin: 0;
    font-size: clamp(35px, 7.0vw, 56px);
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: .05em;
}

.souzoku-mv__title-line {
    display: block;
    white-space: nowrap;
}

.souzoku-mv__title-orange {
    color: #f39800;
}

.souzoku-mv__title-green {
    color: #47751b;
    padding-top: .15em;
    background-position: top left 1px;
    background-repeat: repeat-x;
    background-size: 1.0em .2em;
    background-image: radial-gradient(.10em .10em at center center, #47751b, #47751b 100%, transparent);
}

.souzoku-mv__lead {
    margin: 12px 0 0;
    padding-top: 10px;
    border-top: 1px dashed rgba(23, 23, 23, .65);
    font-size: clamp(12px, 2.5vw, 18px);
    font-weight: 700;
    line-height: 1.7;
    letter-spacing: .02em;
}

.souzoku-mv__lead span {
    display: block;
}

.souzoku-mv__achievements {
    position: absolute;
    z-index: 3;
    right: 2.2%;
    bottom: 80px;
    left: 2.2%;
    display: flex;
    gap: 2.2%;
    margin: 0;
    padding: 0;
    list-style: none;
}

.souzoku-mv__achievement {
    display: flex;
    flex: 1 1 0;
    min-width: 0;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 5px 3px;
    border: 3px solid #547d2a;
    border-radius: 9px;
    background: rgba(255, 255, 255, .82);
    text-align: center;
}

.souzoku-mv__achievement img {
    display: block;
    width: clamp(48px, 12vw, 108px);
    height: auto;
    margin: 0 auto 5px;
    border-radius: 50%;
}

.souzoku-mv__achievement-label {
    margin: 0;
    font-size: clamp(10px, 2.2vw, 18px);
    font-weight: 700;
    line-height: 1.35;
    white-space: nowrap;
}

.souzoku-mv__achievement-value {
    margin: 0;
    color: #47751b;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(25px, 6.5vw, 52px);
    line-height: 1.05;
    white-space: nowrap;
}

.souzoku-mv__achievement-value small {
    color: #171717;
    font-family: inherit;
    font-size: .36em;
    font-weight: 700;
}

.souzoku-mv__achievement-followup {
    margin: 1px 0 0;
    color: #47751b;
    font-size: clamp(11px, 2.6vw, 20px);
    font-weight: 700;
    line-height: 1.25;
}

@media screen and (min-width: 896px) {
    .souzoku-mv {
        height: 650px;
        background-image: url("../img/main_pc_bg.jpg");
        background-position: center center;
    }

    .souzoku-mv__people {
        right: 1%;
        width: 47%;
        height: 93%;
    }

    .souzoku-mv__name {
        bottom: 2px;
        font-size: 16px;
    }

    .souzoku-mv__name--left {
        left: 10%;
    }

    .souzoku-mv__name--right {
        right: 2%;
    }

    .souzoku-mv__copy {
        top: 6%;
        width: 56%;
        padding: 35px 3.5% 24px 3.5%;
    }

    .souzoku-mv__title {
        font-size: clamp(48px, 5.2vw, 72px);
        line-height: 1.1;
        letter-spacing: .04em;
    }

    .souzoku-mv__lead {
        margin-top: 14px;
        padding-top: 14px;
        font-size: clamp(17px, 1.5vw, 22px);
        letter-spacing: .05em;
    }

    .souzoku-mv__achievements {
        right: auto;
        bottom: 80px;
        left: 1.5%;
        width: 53%;
        gap: 2.2%;
    }

    .souzoku-mv__achievement {
        border-width: 2px;
        border-radius: 9px;
        padding: 10px 5px;
    }

    .souzoku-mv__achievement img {
        width: clamp(72px, 7vw, 115px);
        margin-bottom: 7px;
    }

    .souzoku-mv__achievement-label {
        font-size: clamp(15px, 1.4vw, 20px);
    }

    .souzoku-mv__achievement-value {
        font-size: clamp(38px, 3.5vw, 46px);
    }

    .souzoku-mv__achievement-followup {
        font-size: clamp(15px, 1.5vw, 21px);
    }
}

@media screen and (min-width: 1265px) {
    .souzoku-mv {
        width: 100%;
        margin-left: 0;
        z-index: 1;
    }

    .souzoku-mv__people img {
        width: 94%;
        margin-right: 0;
        margin-left: auto;
    }

    .souzoku-mv__copy {
        top: 4%;
    }

    .souzoku-mv__achievements {
        bottom: 82px;
    }

    body.home .souzoku-mv + .anshin-area {
        z-index: 2;
    }

    .souzoku-mv__title {
        font-size: clamp(44px, 5.2vw, 72px);
        line-height: 1.1;
    }

    .souzoku-mv__lead {
        font-size: clamp(14px, 1.2vw, 20px);
        line-height: 1.4;
    }
}

/* Prevent WordPress editor-inserted breaks from expanding the key visual. */
.souzoku-mv__title-line + br,
.souzoku-mv__lead span + br,
.souzoku-mv__people figcaption br {
    display: none;
}

.souzoku-mv__copy > p:empty {
    display: none;
}

.souzoku-mv__title {
    font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
}

.souzoku-mv__achievement {
    font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
}

.souzoku-mv__achievement-value {
    font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
}

.souzoku-mv__achievement-value small {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", sans-serif;
}

body.home .souzoku-mv + .anshin-area {
    margin-top: -60px;
}

@media screen and (min-width: 1265px) {
    body.home .tel-area__accs {
        margin-left: 106px;
    }

    body.home .tel-area .btn-access {
        width: 60px;
        height: 60px;
        top: 18px;
        left: 32px;
        right: auto;
        padding-top: 36px;
        font-size: 10px;
    }
}

@media screen and (min-width: 1265px) {
    .souzoku-mv__achievement:nth-child(3) .souzoku-mv__achievement-label {
        font-size: calc(clamp(15px, 1.4vw, 20px) - 2px);
    }
}

@media screen and (max-width: 375px) and (max-height: 700px) {
    .souzoku-mv {
        height: max(80svh, 520px);
    }

    .souzoku-mv__copy {
        top: 3%;
        padding: 18px 5% 12px;
    }

    .souzoku-mv__title {
        font-size: 27px;
        line-height: 1.1;
    }

    .souzoku-mv__lead {
        margin-top: 8px;
        padding-top: 7px;
        line-height: 1.4;
    }

    .souzoku-mv__people {
        top: calc(43% - 80px);
        bottom: auto;
        height: 64%;
    }
}

.entry__column {
    margin: 0 auto 50px;
    padding: 0 3%;
    max-width: 1100px;
}
.entry__column img {
    margin-bottom: 20px;
}

.column-card__placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f2f2f2;
    color: #666;
}

.column-single .column-card__category a {
    color: inherit;
}

.column-category-title,
.column-back-link,
.column-empty {
    text-align: center;
}

.column-back-link a.column-back-link__button,
.column-back-link a.column-back-link__button:link,
.column-back-link a.column-back-link__button:visited,
.column-back-link a.column-back-link__button:hover,
.column-back-link a.column-back-link__button:focus,
.column-back-link a.column-back-link__button:active {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    max-width: 420px;
    height: 50px;
    margin: 20px auto 0;
    padding: 0 12px 0 16px;
    background-color: #f39800;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
}

.column-back-link a.column-back-link__button::after {
    font-family: fontawesome;
    content: "\f138";
    color: #fff;
}

.column-back-link a.column-back-link__button:hover,
.column-back-link a.column-back-link__button:focus {
    color: #fff;
    text-decoration: none;
    opacity: 0.7;
}

@media screen and (min-width: 321px) {
    .column-back-link a.column-back-link__button {
        font-size: 16px;
    }
}

@media screen and (min-width: 576px) {
    .column-back-link a.column-back-link__button {
        width: 420px;
        height: 80px;
        margin-top: 28px;
        padding: 0 24px 0 32px;
        font-size: 24px;
    }
}

.column-card__media,
.column-single .column-featured-media {
    position: relative;
    width: 100%;
    aspect-ratio: 800 / 470;
    overflow: hidden;
    flex-shrink: 0;
    margin-top: 1em;
}

.column-single .column-featured-media {
    margin-bottom: 20px;
}

.column-card__media .column-card__image,
.column-single .column-featured-media .column-featured-image {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    margin: 0;
    object-fit: cover;
    object-position: center;
}

.column-card__media .column-card__placeholder {
    display: flex;
}

.column-pagination .page-numbers {
    padding: 0;
    margin: 30px 0;
    text-align: center;
    list-style: none;
}

.column-pagination li {
    display: inline-block;
    margin: 4px;
}

.column-pagination li > .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 44px;
    padding: 8px;
    margin: 0;
    border: 2px solid #111;
    border-radius: 8px;
    color: #333;
    text-decoration: none;
}

.column-pagination .current,
.column-pagination a:hover,
.column-pagination a:focus {
    background: #fff100;
}

.column-pagination .dots {
    border-color: transparent;
}
body.souzoku-tama .jirei-sttl .jirei {
    background: #ea9825;
    font-weight: normal !important;
    color: #fff;
    padding: 4px 12px;
    margin-right: 0.6em;
    display: inline-block;
}
.jirei-box {
    background: #fff;
    padding: 20px 30px;
    margin: 25px 1%;
    width: 98%;
}
.jirei-box h5 {
    font-size: 20px;
    margin-top: 1.0em !important;
    margin-bottom: 0.6em;
    color: #91bc4d;
}
.jirei-box p {
    font-size: 16px;
    line-height: 1.6;
    color: #333;
    margin-bottom: 0.8em;
}
.jirei-box ul {
    margin-bottom: 0.8em !important;
}
.tamap {
    margin: 0 auto 20px;
    width: 92%;
}
.tamap img {
    width: 100%;
}
@media screen and (min-width: 576px) {
.tamap {
    width: 92%;
    max-width: 920px;
}
}
ol.tamap_bot {
    display: block;
    margin: 0 auto 25px;
    width: 92%;
}
ol.tamap_bot li {
    list-style: none;
    margin-bottom: 10px;
    width: 100%;
}
ol.tamap_bot li a {
    background: url('../img/bot_arrow.png') no-repeat center right 8px;
    font-size: 14px;
    line-height: 32px;
    text-align: center;
    color: #333;
    border-radius: 16px;
    display: inline-block;
    width: 100%;
}
ol.tamap_bot li a:hover {
    text-decoration: none;
    color: #f39800 !important;
    opacity: 0.5;
}
ol.tamap_bot li a.tamap_area1 { background-color: #d9eaad; }
ol.tamap_bot li a.tamap_area2 { background-color: #efecca; }
ol.tamap_bot li a.tamap_area3 { background-color: #cec9b6; }
ol.tamap_bot li a.tamap_area4 { background-color: #e5d1a5; }
ol.tamap_bot li a.tamap_area5 { background-color: #e5c6ac; }
ol.tamap_bot li a.tamap_area6 { background-color: #e6edb7; }

@media screen and (min-width: 576px) {
    ol.tamap_bot {
        display: flex;
        justify-content: space-between;
        align-items: center;
        list-style: none;
        flex-wrap: wrap;
        gap: 10px 20px;
        margin-bottom: 35px;
    }
    ol.tamap_bot li {
        list-style: none;
        margin-bottom: 10px;
        width: calc((100% - (20px * 2)) / 3);
    }
    ol.tamap_bot li a {
        background: url('../img/bot_arrow.png') no-repeat center right 15px;
        font-size: 18px;
        line-height: 42px;
        text-align: center;
        border-radius: 21px;
        display: inline-block;
        width: 100%;
    }
}

.ms-area a.follow_bot {
    display: inline-block;
    margin: 25px 0 10px;
    padding: 8px 16px;
    background: #f39800 url('../img/bot_arrow.png') no-repeat center right 15px;
    font-size: 15px;
    font-weight: bold;
    color: #fff !important;
    text-align: center;
    text-decoration: none;
    width: 100%;
}
.ms-area a.follow_bot:hover {
    background-color: #e07a00;
    text-decoration: none;
}
@media screen and (min-width: 576px) {
    .ms-area a.follow_bot {
        font-size: 20px;
    }
}
.page-contents p.follow_cyuu {
    font-size: 0.8em;
    text-align: center;
}

body.privacy-policy .page-header {
    padding-right: 20px;
    padding-left: 20px;
}

body.privacy-policy .sub-page-contents {
    padding: 40px 20px 0;
}

body.privacy-policy .sub-page-contents > .container {
    max-width: 1000px;
    margin-right: auto;
    margin-left: auto;
}

body.privacy-policy #main {
    line-height: 1.9;
    overflow-wrap: anywhere;
}

body.privacy-policy #main .bc {
    margin-bottom: 32px;
    font-size: 14px;
}

body.privacy-policy #main h2 {
    margin: 32px 0 16px;
    line-height: 1.5;
}

body.privacy-policy #main p {
    margin-bottom: 1.2em;
}

@media screen and (min-width: 576px) {
    body.privacy-policy .sub-page-contents {
        padding: 48px 40px 0;
    }
}

@media screen and (min-width: 1265px) {
    body.privacy-policy .page-header,
    body.privacy-policy .sub-page-contents,
    body.privacy-policy .site-footer {
        margin-left: 305px;
    }
}

/* Simulator result page refresh */
body.simulator_result .resultblock {
    margin: 50px auto;
}

body.simulator_result .resultblock .rslt-lst {
    box-sizing: border-box;
    width: calc(50% - 20px);
    margin: 18px 0 0;
}

body.simulator_result .resultblock .rslt-lst:first-child {
    margin-top: 0;
}

body.simulator_result .resultblock .rslt-lst:nth-of-type(1),
body.simulator_result .resultblock .rslt-lst:nth-of-type(2) {
    display: inline-flex;
    vertical-align: top;
    align-items: center;
}

body.simulator_result .resultblock .rslt-lst .rslt-hd {
    flex: 0 0 auto;
    width: auto;
    padding-right: 12px;
    text-align: left;
    color: #252525;
}

body.simulator_result .resultblock .rslt-lst .rslt-cnt {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    padding: 0;
}

body.simulator_result .resultblock .rslt-lst .rslt-cnt input {
    box-sizing: border-box;
    height: 58px;
    max-width: none;
    border: 2px solid #91bc4d;
    background: #fff;
    font-size: 20px;
}

body.simulator_result .resultblock .tax-note {
    margin: 4px 0 0;
    color: #555;
    font-size: 11px;
    text-align: center;
}

body.simulator_result .resultblock .result-intro {
    margin: 55px 0 30px;
}

body.simulator_result .resultblock .result-intro > h2 {
    margin: 0 0 12px;
    color: #85b342;
    font-size: 21px;
    text-align: center;
}

body.simulator_result .resultblock .result-intro-lead {
    margin: 0 0 20px;
    font-size: 14px;
    line-height: 1.9;
}

body.simulator_result .resultblock .result-intro-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 28px;
    align-items: start;
    margin-top: 20px;
}

body.simulator_result .resultblock .result-photo {
    display: block;
    width: 100%;
    min-height: 220px;
    object-fit: cover;
    background: #eee;
}

body.simulator_result .resultblock .result-intro-copy h3 {
    margin: 0 0 8px;
    color: #ed8c00;
    font-size: 18px;
}

body.simulator_result .resultblock .result-intro-copy p {
    margin: 0 0 18px;
    font-size: 14px;
    line-height: 1.9;
}

body.simulator_result .resultblock .result-area {
    margin: 0 0 50px;
    padding: 14px 20px 16px;
    background: #fff;
    line-height: 1.8;
}

body.simulator_result .resultblock .result-area h3 {
    display: block;
    width: auto;
    margin: 0 0 10px;
    font-size: 17px;
}

body.simulator_result .resultblock #result-list {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 14px;
    margin: 0;
    padding: 0;
    font-size: 13px;
    list-style: none;
}

body.simulator_result .resultblock #result-list li {
    display: block;
    margin: 0;
}

body.simulator_result .resultblock #result-list .cnfm_head {
    margin: 0 4px 0 0;
    color: #85b342;
}

body.simulator_result .resultblock #result-list .cnfm_body {
    margin: 0;
}

body.simulator_result .resultblock .result-actions {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    margin: 24px auto 0;
}

body.simulator_result .resultblock .result-actions .btnlnk {
    display: flex;
    box-sizing: border-box;
    width: min(100%, 280px);
    min-height: 48px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 8px 14px;
    border: 1px solid #333;
    border-radius: 6px;
    background: #fff;
    box-shadow: 2px 3px 3px rgb(0 0 0 / 18%);
    color: #222;
    font-size: 15px;
    font-weight: bold;
    line-height: 1.4;
    text-decoration: none;
}

body.simulator_result .resultblock .result-actions .btnlnk::after {
    display: none;
}

body.simulator_result .resultblock .result-actions .btnlnk:hover {
    background: #fff8e8;
    opacity: 0.85;
}

body.simulator_result .resultblock .result-actions .btnlnk img {
    display: block;
    width: 24px;
    height: 24px;
    object-fit: contain;
}

@media screen and (max-width: 767px) {
    body.simulator_result .resultblock .rslt-lst,
    body.simulator_result .resultblock .rslt-lst:nth-of-type(1),
    body.simulator_result .resultblock .rslt-lst:nth-of-type(2) {
        display: flex;
        width: 100%;
        margin-top: 18px;
    }

    body.simulator_result .resultblock .rslt-lst:first-child {
        margin-top: 0;
    }

    body.simulator_result .resultblock .rslt-lst .rslt-hd {
        flex: 0 0 42%;
    }

    body.simulator_result .resultblock .rslt-lst .rslt-cnt input {
        height: 52px;
        font-size: 18px;
    }

    body.simulator_result .resultblock .tax-note {
        margin: 10px 0 0;
        text-align: left;
    }

    body.simulator_result .resultblock .result-intro {
        margin: 30px 0 24px;
    }

    body.simulator_result .resultblock .result-intro > h2 {
        font-size: 18px;
    }

    body.simulator_result .resultblock .result-intro-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    body.simulator_result .resultblock .result-photo {
        min-height: 180px;
    }

    body.simulator_result .resultblock .result-area {
        padding: 14px;
    }

    body.simulator_result .resultblock #result-list {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px 10px;
        font-size: 12px;
    }

    body.simulator_result .resultblock .result-intro-copy h3 {
        font-size: 16px;
    }

    body.simulator_result .resultblock .result-intro-copy p,
    body.simulator_result .resultblock .result-intro-lead {
        font-size: 13px;
    }
}

@media screen and (min-width: 768px) {
    body.simulator_result .resultblock > .rslt-lst,
    body.simulator_result .resultblock > .rslt-lst:nth-of-type(1),
    body.simulator_result .resultblock > .rslt-lst:nth-of-type(2) {
        display: inline-flex;
        width: calc(50% - 18px);
        margin: 0 7px;
        align-items: center;
        justify-content: center;
        vertical-align: middle;
        text-align: left;
    }

    body.simulator_result .resultblock > .rslt-lst .rslt-hd {
        flex: 0 0 auto;
        padding-right: 16px;
        font-size: 16px;
        text-align: right;
    }

    body.simulator_result .resultblock > .rslt-lst .rslt-cnt {
        flex: 0 1 380px;
        width: auto;
        padding: 0;
        justify-content: center;
    }

    body.simulator_result .resultblock > .rslt-lst .rslt-cnt input {
        box-sizing: border-box;
        flex: 1 1 240px;
        width: 100%;
        max-width: 340px;
        height: 90px;
        border: 5px solid #91bc4d;
        font-size: 25px;
    }

    body.simulator_result .resultblock .tax-note {
        margin: 8px 60px 0 0;
        font-size: 14px;
        text-align: right;
    }
}

@media screen and (min-width: 768px) and (max-width: 895px) {
    body.simulator_result .resultblock > .rslt-lst .rslt-cnt input {
        height: 70px;
    }

    body.simulator_result .resultblock .tax-note {
        margin-right: 0;
    }
}

@media screen and (max-width: 767px) {
    body.simulator_result .resultblock .tax-note {
        font-size: 15px;
    }
}

@media screen and (min-width: 768px) {
    body.simulator_result .resultblock .result-area {
        margin: 20px auto 50px;
        padding: 0 26px 20px;
        background-color: #fff;
        font-size: 20px;
        line-height: 30px;
    }

    body.simulator_result .resultblock .result-area h3 {
        display: inline-block;
        width: 100%;
        margin: 20px 0;
        font-size: 24px;
        text-align: center;
    }

    body.simulator_result .resultblock #result-list {
        display: block;
        margin: 0;
        padding: 0;
        font-size: 18px;
        list-style-type: none;
    }

    body.simulator_result .resultblock #result-list li {
        display: inline-block;
        margin-bottom: 6px;
    }

    body.simulator_result .resultblock #result-list .cnfm_head {
        margin-right: 0.5em;
        color: #77ad22;
    }

    body.simulator_result .resultblock #result-list .cnfm_body {
        margin-right: 20px;
    }
}

@media screen and (min-width: 768px) {
    body.simulator_result .resultblock .result-intro > h2 {
        font-size: 26px;
        font-weight: normal;
    }

    body.simulator_result .resultblock .result-intro-lead,
    body.simulator_result .resultblock .result-intro-copy p {
        font-size: 17px;
        line-height: 2;
    }

    body.simulator_result .resultblock .result-intro-copy h3 {
        font-size: 18px;
        line-height: 1.6;
    }
}

body.simulator_result .resultblock .result-intro-copy h3 {
    font-size: 24px;
    font-weight: normal;
    text-align: center;
}

@media screen and (min-width: 768px) {
    body.simulator_result .resultblock .result-intro-copy {
        align-self: center;
    }
}

@media screen and (max-width: 767px) {
    body.simulator_result .resultblock .result-intro-copy h3 {
        font-size: 17px;
    }
}

@media screen and (min-width: 768px) {
    body.simulator_result .resultblock .result-intro-grid {
        grid-template-columns: minmax(0, 605px) minmax(0, 1fr);
    }

    body.simulator_result .resultblock .result-photo {
        max-width: 605px;
    }

    body.simulator_result .resultblock .result-intro-copy {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-self: stretch;
    }
}

/* column css */

.column-guide {
    --column-guide-orange: #f39800;
    --column-guide-green: #77ad22;
    --column-guide-ink: #38352f;
    --column-guide-line: #e8e2d8;
    --column-guide-cream: #fffaf1;
    max-width: none;
    margin: 0 auto;
    color: var(--column-guide-ink);
    font-size: 16px;
    line-height: 1.95;
}

.column-guide p {
    margin: 0 0 1.25em;
}

.column-guide a {
    color: #527d18;
    text-decoration: underline;
    text-underline-offset: 0.18em;
}

.column-guide a:hover,
.column-guide a:focus {
    color: #395d0c;
    text-decoration-thickness: 2px;
}

.column-guide__intro {
    margin-bottom: 2em;
    font-size: 1.05em;
}

.column-guide__answer {
    margin: 0 0 2.5em;
    padding: 1.5em 1.6em 1.25em;
    border: 1px solid #f1d7ad;
    border-left: 5px solid var(--column-guide-orange);
    border-radius: 6px;
    background: var(--column-guide-cream);
}

.column-guide__answer-title {
    margin: 0 0 0.65em !important;
    color: #76500f;
    font-size: 1.12em;
    font-weight: 700;
}

.column-guide__answer p:last-child {
    margin-bottom: 0;
}

.column-guide__deadline-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 1.2em 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.column-guide__deadline-list li {
    margin: 0 !important;
    padding: 0.9em 0.8em;
    border: 1px solid var(--column-guide-line);
    border-radius: 5px;
    background: #fff;
    text-align: center;
}

.column-guide__deadline-list strong {
    display: block;
    color: #a96100;
    font-size: 1.25em;
}

.column-guide__toc {
    margin: 0 0 3em;
    padding: 1.35em 1.5em;
    border: 1px solid var(--column-guide-line);
    border-radius: 6px;
    background: #fbfaf7;
}

.column-guide__toc-title {
    margin: 0 0 0.65em !important;
    color: #4c6f22;
    font-size: 1.08em;
    font-weight: 700;
}

.column-guide__toc ol {
    margin: 0 !important;
    padding-left: 1.5em !important;
}

.column-guide__toc li {
    margin: 0.28em 0 !important;
    padding-left: 0.15em;
}

.column-guide__section {
    margin: 0 0 3em;
    scroll-margin-top: 1em;
}

.column-guide__section > h2 {
    margin: 0 0 1em !important;
    padding: 0.65em 0.85em;
    border-left: 5px solid var(--column-guide-orange);
    border-bottom: 1px solid #f1d7ad;
    background: var(--column-guide-cream);
    color: #4a4237;
    font-size: 1.42em;
    line-height: 1.55;
}

.column-guide__section > h3 {
    margin: 1.8em 0 0.7em !important;
    padding-bottom: 0.35em;
    border-bottom: 2px solid #dfe9d2;
    color: #587b2b;
    font-size: 1.15em;
    line-height: 1.6;
}

.column-guide__section > h3:first-child {
    margin-top: 0 !important;
}

.column-guide__list {
    margin: 0 0 1.4em !important;
    padding-left: 1.5em !important;
}

.column-guide__list li {
    margin: 0 0 0.55em !important;
    padding-left: 0.15em;
}

.column-guide__table-wrap {
    width: 100%;
    margin: 1.3em 0 1.6em;
    overflow-x: auto;
    border: 1px solid var(--column-guide-line);
    border-radius: 5px;
    -webkit-overflow-scrolling: touch;
}

.column-guide__table {
    width: 100%;
    min-width: 460px;
    margin: 0 !important;
    border: 0 !important;
    border-collapse: collapse;
    background: #fff;
}

.column-guide__table caption {
    padding: 0.8em 1em;
    background: #f7f4ed;
    color: #4a4237;
    font-weight: 700;
    text-align: left;
}

.column-guide__table th,
.column-guide__table td {
    padding: 0.8em 1em;
    border: 0 !important;
    border-top: 1px solid var(--column-guide-line) !important;
    text-align: left;
    vertical-align: top;
}

.column-guide__table th {
    width: 7em;
    background: #fbfaf7;
    color: #4a4237;
    font-weight: 700;
}

.column-guide__note {
    margin: 1.4em 0 !important;
    padding: 1em 1.2em;
    border-radius: 4px;
    background: #f5f8ef;
}

.column-guide__note strong {
    color: #527d18;
}

.column-guide__area {
    padding: 1.25em 1.4em;
    border: 1px solid #dfe9d2;
    border-radius: 6px;
    background: #f8fbf4;
}

.column-guide__area > h3:first-child {
    margin-top: 0 !important;
}

.column-guide__closing {
    margin-top: 2.5em;
    padding: 1.4em 1.5em;
    border-top: 3px solid var(--column-guide-green);
    background: #f8fbf4;
}

.column-guide__closing > h2 {
    margin: 0 0 0.7em !important;
    color: #587b2b;
    font-size: 1.3em;
    line-height: 1.55;
}

.column-guide__closing > p:last-child {
    margin-bottom: 0;
}

@media screen and (max-width: 575px) {
    .column-guide {
        font-size: 15px;
        line-height: 1.9;
    }

    .column-guide__answer,
    .column-guide__toc {
        padding: 1.1em;
    }

    .column-guide__deadline-list {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .column-guide__deadline-list li {
        display: flex;
        align-items: baseline;
        justify-content: space-between;
        padding: 0.6em 0.85em;
        text-align: left;
    }

    .column-guide__deadline-list strong {
        font-size: 1.1em;
    }

    .column-guide__section > h2 {
        font-size: 1.23em;
    }

    .column-guide__area,
    .column-guide__closing {
        padding: 1em;
    }
}


/* column css END */