@charset "UTF-8";

/*==============================

	STYLE for 墓石相場net

	==============================*/
/* ====================

	base

	基礎、共通

==================== */
/* --------------------
	basic-tags
-------------------- */
html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

*,
*:before,
*:after {
    -webkit-box-sizing: inherit;
    box-sizing: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
figure {
    margin: 0;
}

html,
body {
    font-family: "ヒラギノ角ゴシック", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 18px;
    color: #000;
    line-height: 1.55556;
}

address {
    font-style: normal;
}

/* --------------------
	basic-classes
-------------------- */
.page-container {
    width: 100%;
    margin: 0 auto;
}

.container {
    width: 980px;
    margin: 0 auto;
}

.sr-only {
    display: none;
}

/*============================== 墓石相場net

	header.site-header

	==============================*/
.site-header {
    height: 116px;
}

.site-header .header-upper {
    height: 80px;
    overflow: hidden;
}

.site-header .site-title {
    width: 50%;
    height: 100%;
    float: left;
}

.site-header .site-title>a {
    width: 100%;
    height: 100%;
    display: block;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    background: url(../img/common/header-logo.png) 10px 19px no-repeat;
}

.site-header .site-tel {
    width: 440px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    float: right;
    margin-top: 12px;
}

.site-btn {
    margin-right: auto;
}

.site-btn a {
    display: block;
    padding: 0.25em 0.5em;
    font-size: 14px;
    color: white;
    line-height: 1.2;
    text-decoration: none;
    border: 2px solid #437f20;
    border-radius: 0.25em;
    background-color: #437f20;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
}

.site-btn a:hover {
    color: #437f20;
    background-color: white;
}

.site-header .businesshour {
    font-size: 0.77778em;
    color: #333;
}

.site-header .businesshour em {
    font-size: 1.14286em;
    color: #599a32;
    font-style: normal;
}

.site-header .telnumber {
    font-size: 1.88889em;
    line-height: 1.0;
}

.site-header .telnumber a {
    font-family: Verdana, Roboto, "Droid Sans", Geneva, sans-serif;
    font-weight: bold;
    color: gray;
    letter-spacing: -0.07em;
    text-decoration: none;
}

.site-header .telnumber a:hover {
    text-decoration: underline;
}

.site-header .telnumber .freedial-icon {
    width: 52px;
    height: 29px;
    display: inline-block;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    background: url(../img/common/header-freedial-logo.png) no-repeat;
}

.site-header .site-catch {
    font-weight: normal;
    font-size: 1.33333em;
    color: white;
    line-height: 36px;
    text-align: center;
    background-color: #599a32;
}

/*============================== 墓石相場net

	header.site-footer

	==============================*/
.site-footer {
    padding: 30px 0 105px;
    font-size: 0.88889em;
    color: white;
    line-height: 1.75;
    letter-spacing: 0.05em;
    text-align: center;
    background-color: #599a32;

    -webkit-font-smoothing: antialiased;
}

.site-footer .company-info {
    margin-bottom: 1.25em;
}



.site-footer .info-label {
    opacity: 0.50;
}

.site-footer a {
    color: inherit;
    text-decoration: none;
    text-decoration: underline;
}

.site-footer a:hover {
    text-decoration: underline;
}

.site-footer .agreement-link {
    margin-bottom: 1.25em;
}

/*============================== 墓石相場net

	index (for index.html)

	==============================*/
.page-index {
    /*========== .section-intro ==========*/
    /*========== .section-entry ==========*/
    /* 共通: entry-btn */
    /* 共通: section-entry */
    /* section-entry.top */
    /* section-entry.bottom */
    /*========== 共通: .sect-title.checker ==========*/
    /*========== .section-feature ==========*/
    /*========== .section-points ==========*/
    /*========== .section-find ==========*/
    /*========== .section-steps ==========*/
}

.page-index .section-intro {
    height: 540px;
    background: url(../img/index/catch-bg.jpg) center top;
}

.page-index .section-intro .sect-content {
    height: 100%;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    background-image: url(../img/index/catch-left.png), url(../img/index/catch-right.png);
    background-repeat: no-repeat, no-repeat;
    background-position: 30px 75px, right 12px bottom;
}

.page-index .entry-btn a {
    width: 870px;
    height: 121px;
    display: block;
    overflow: hidden;
    margin: 0 auto;
    text-indent: 100%;
    white-space: nowrap;
    background: url(../img/index/entry-btn.png) center top no-repeat;
}

.page-index .entry-btn a:hover {
    background-position: center bottom;
}

.page-index .entry-btn-mini {
    margin-top: 25px;
}

.page-index .entry-btn-mini a {
    width: 406px;
    height: 65px;
    display: block;
    overflow: hidden;
    margin: 0 auto;
    text-indent: 100%;
    white-space: nowrap;
    background: url(../img/index/pnt-entry-btn.png) center top no-repeat;
}

.page-index .entry-btn-mini a:hover {
    background-position: center bottom;
}

.page-index .section-entry .sect-content {
    background-repeat: no-repeat;
    background-position: 77px top;
}

.page-index .section-entry .sect-desc {
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    background-image: url(../img/index/entry-title.png);
    background-repeat: no-repeat;
}

.page-index .section-entry.top {
    padding: 19px 0 52px;
}

.page-index .section-entry.top .sect-content {
    background-image: url(../img/index/entry-top-fig.jpg);
}

.page-index .section-entry.top .sect-desc {
    height: 160px;
    background-position: 293px 46px;
}

.page-index .section-entry.bottom {
    padding: 45px 0 52px;
}

.page-index .section-entry.bottom .sect-content {
    background-image: url(../img/index/entry-bottom-fig.jpg);
}

.page-index .section-entry.bottom .sect-desc {
    height: 170px;
    background-position: 320px 56px;
}

.page-index .sect-title.checker {
    padding-top: 25px;
    font-weight: normal;
    font-size: 2.11111em;
    color: white;
    line-height: 1.26316;
    text-align: center;
    text-shadow: 2px 3px 0px #360;
    background: #599a32 url(../img/index/sect-title-tile.png);
}

.page-index .section-feature {
    margin-bottom: 80px;
}

.page-index .section-feature .sect-title.checker {
    height: 140px;
}

.page-index .section-feature .sect-intro {
    width: 100%;
    height: 333px;
    background: url(../img/index/feat-intro-img.jpg) -19px 30px no-repeat;
}

.page-index .section-feature .intro-title {
    width: 100%;
    height: 100%;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    background: url(../img/index/feat-intro-txt.png) 300px 49px no-repeat;
}

.page-index .section-feature .sect-desc1 {
    margin: 0 -20px;
    padding: 0 20px 30px;
    border-radius: 10px;
    background: #599a32;
}

.page-index .section-feature .sect-desc1 .desc-title {
    width: 100%;
    height: 155px;
    overflow: hidden;
    margin-bottom: 1px;
    text-indent: 100%;
    white-space: nowrap;
    background: url(../img/index/feat-desc1-title.png) 20px top no-repeat;
}

.page-index .section-feature .sect-desc1 .examples {
    overflow: hidden;
    padding-bottom: 5px;
}

.page-index .section-feature .sect-desc1 .example {
    width: 485px;
    float: left;
    background: white;
    -webkit-box-shadow: 0 5px 0 #00561f;
    box-shadow: 0 5px 0 #00561f;
}

.page-index .section-feature .sect-desc1 .example .header {
    overflow: hidden;
    padding: 10px;
    background: url(../img/index/feat-desc1-case-title-tile.png);
}

.page-index .section-feature .sect-desc1 .example .header .tn {
    width: 140px;
    height: 100px;
    float: left;
}

.page-index .section-feature .sect-desc1 .example .header .tn>img {
    display: block;
}

.page-index .section-feature .sect-desc1 .example .header .title {
    margin-top: 16px;
    font-weight: normal;
    font-size: 1.33333em;
    line-height: 1.41667;
}

.page-index .section-feature .sect-desc1 .example .header .title em {
    color: #c33;
    font-style: normal;
}

.page-index .section-feature .sect-desc1 .example .header .title strong {
    display: inline-block;
    font-weight: normal;
    font-size: 1.41667em;
    line-height: 1.17647;
}

.page-index .section-feature .sect-desc1 .example .content {
    padding: 30px 0;
}

.page-index .section-feature .sect-desc1 .example .content .data-table {
    width: 425px;
    margin: 0 auto;
    border: 1px solid #7d7d7d;
    border-spacing: 0;
    border-collapse: collapse;
}

.page-index .section-feature .sect-desc1 .example .content .data-table th,
.page-index .section-feature .sect-desc1 .example .content .data-table td {
    line-height: 1.0;
}

.page-index .section-feature .sect-desc1 .example .content .data-table th {
    font-weight: normal;
}

.page-index .section-feature .sect-desc1 .example .content .data-table td {
    font-size: 1.55556em;
    text-align: center;
}

.page-index .section-feature .sect-desc1 .example .content .data-table .self th {
    font-size: 0.88889em;
    background-color: #eee;
}

.page-index .section-feature .sect-desc1 .example .content .data-table .self td {
    padding: 15px 0;
    border-left: 1px solid #7d7d7d;
}

.page-index .section-feature .sect-desc1 .example .content .data-table .bsn th {
    font-size: 1.33333em;
    color: white;
    text-shadow: 1px 2px 0px #630;
    border: 8px solid #c00;
    border-right: none;
    background-color: #f39800;
}

.page-index .section-feature .sect-desc1 .example .content .data-table .bsn td {
    padding: 11px 0;
    border: 8px solid #c00;
    border-left: 1px solid #7d7d7d;
}

.page-index .section-feature .sect-desc1 .example .content .data:after {
    content: "";
    width: 100%;
    height: 31px;
    display: block;
    margin: 0 auto;
    background: url(../img/index/feat-desc1-case-arrow.png) center top no-repeat;
}

.page-index .section-feature .sect-desc1 .example .content .summary {
    width: 425px;
    margin: 0 auto;
    color: #6a3906;
    border: 4px solid #fada43;
    border-radius: 4px;
    background-color: #faedaf;
}

.page-index .section-feature .sect-desc1 .example .content .summary .title {
    width: 405px;
    margin: 0 auto;
    padding-top: 8px;
    font-weight: normal;
    font-size: 1.0em;
    text-align: center;
    border-bottom: 4px solid #ddb602;
}

.page-index .section-feature .sect-desc1 .example .content .summary .title strong {
    font-weight: normal;
    font-size: 1.72222em;
    color: #c00;
}

.page-index .section-feature .sect-desc1 .example .content .summary .desc {
    padding: 16px 26px;
    line-height: 1.33333;
    text-align: justify;
}

.page-index .section-feature .sect-desc1 .example+.example {
    margin-left: 10px;
}

.page-index .section-feature .sect-desc2 .arrow {
    width: 100%;
    height: 104px;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    background: url(../img/index/feat-desc2-dakara.png) center top no-repeat;
}

.page-index .section-feature .sect-desc2 .worries-list {
    width: 920px;
    list-style: none;
    margin: 0 auto;
    padding: 0;
    padding: 23px 0 23px 41px;
    color: #6a3906;
    border: 4px solid #fada43;
    border-radius: 10px;
    background-color: #faedaf;
}

.page-index .section-feature .sect-desc2 .worries-list .item {
    font-size: 2.11111em;
    line-height: 1.73684;
    letter-spacing: -0.04em;
}

.page-index .section-feature .sect-desc2 .worries-list .item:before {
    content: "";
    width: 48px;
    height: 48px;
    display: inline-block;
    vertical-align: top;
    background: url(../img/index/feat-desc2-worry-icon.png) no-repeat;
    position: relative;
    top: 5px;
}

.page-index .section-feature .sect-desc2 .desc-title {
    height: 197px;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    background: url(../img/index/feat-desc2-conclusion.png) center center no-repeat;
}

.page-index .section-points {
    /* intro */
    /* point 共通 */
    /* .point.pt1 */
    /* .point.pt2 */
    /* .point.pt3 */
    /* .point.pt4 */
}

.page-index .section-points .sect-title.checker {
    height: 100px;
}

.page-index .section-points .sect-intro {
    margin-bottom: 60px;
    background: url(../img/index/pnt-intro-bg.jpg) right top no-repeat;
}

.page-index .section-points .intro-title {
    height: 313px;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    background: url(../img/index/pnt-intro-title.png) 6px 60px no-repeat;
}

.page-index .section-points .intro-desc {
    width: 920px;
    margin: 0 auto;
    padding: 17px 21px;
    font-size: 1.33333em;
    line-height: 1.41667;
    letter-spacing: -0.025em;
    border: 4px solid #fada43;
    border-radius: 10px;
    background-color: #faedaf;
}

.page-index .section-points .point {
    width: 940px;
    margin: 0 auto 60px;
    padding-bottom: 20px;
    border-radius: 10px;
    background: #360 url(../img/index/pnt-pnt-bg.jpg) left top no-repeat;
}

.page-index .section-points .point-header {
    height: 160px;
    position: relative;
}

.page-index .section-points .point-lead {
    width: 194px;
    height: 194px;
    position: absolute;
    top: -42px;
    left: 18px;
}

.page-index .section-points .point-title {
    width: 100%;
    height: 100%;
    background-position: 210px 32px;
}

.page-index .section-points .point-lead,
.page-index .section-points .point-title {
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    background-repeat: no-repeat;
}

.page-index .section-points .point-content {
    width: 900px;
    margin: 0 auto;
    padding: 25px 30px 32px;
    background-color: white;
}

.page-index .section-points .cont-title {
    margin-bottom: 0.65em;
    font-weight: normal;
    font-size: 1.38889em;
    color: #c33;
    line-height: 1.28;
    letter-spacing: -0.025em;
}

.page-index .section-points .desc {
    letter-spacing: -0.025em;
    text-align: justify;
}

.page-index .section-points strong.text-underline {
    font-weight: normal;
    color: #c33;
    text-decoration: underline;
}

.page-index .section-points .figures {
    overflow: hidden;
    margin: 30px auto;
}

.page-index .section-points .col-left {
    float: left;
}

.page-index .section-points .fig-box {
    overflow: hidden;
    padding: 0 10px 8px;
    background-repeat: no-repeat;
}

.page-index .section-points .fig-box.size1 {
    width: 273px;
    height: 310px;
    background-image: url(../img/index/pnt-col-bg-273x310.jpg);
}

.page-index .section-points .fig-box.size2 {
    width: 415px;
    height: 240px;
    background-image: url(../img/index/pnt-col-bg-415x240.jpg);
}

.page-index .section-points .fig-box.size3 {
    width: 415px;
    height: 490px;
    background-image: url(../img/index/pnt-col-bg-415x490.jpg);
}

.page-index .section-points .fig-box.size4 {
    width: 840px;
    height: 240px;
    background-image: url(../img/index/pnt-col-bg-840x240.jpg);
}

.page-index .section-points .fig-title {
    height: 52px;
    padding-top: 18px;
    font-weight: normal;
    font-size: 1.11111em;
    color: white;
    line-height: 1.2;
    letter-spacing: -0.025em;
    text-align: center;
}

.page-index .section-points .fig-content {
    overflow: hidden;
    border: 2px solid #cfa972;
    border-radius: 10px;
    background-color: white;
}

.page-index .section-points .point.pt1 .point-lead {
    background-image: url(../img/index/pnt1-circle.png);
}

.page-index .section-points .point.pt1 .point-title {
    background-image: url(../img/index/pnt1-title.png);
}

.page-index .section-points .point.pt1 .figures.one {
    /* 右側のコラム専用 */
}

.page-index .section-points .point.pt1 .figures.one .fig-content .col-left>img {
    display: block;
    margin: 0 auto;
}

.page-index .section-points .point.pt1 .figures.one .fig-content .col-left:nth-of-type(1) {
    padding: 8px 0 8px 8px;
}

.page-index .section-points .point.pt1 .figures.one .fig-content .col-left:nth-of-type(2) {
    width: 136px;
    padding-top: 5px;
    padding-left: 12px;
}

.page-index .section-points .point.pt1 .figures.one .fig-content .desc {
    margin-top: 2px;
    font-size: 0.83333em;
    line-height: 1.26667;
}

.page-index .section-points .point.pt1 .figures.one>.col-left+.col-left {
    margin-left: 10px;
}

.page-index .section-points .point.pt1 .figures.one>.col-left+.col-left .fig-content .col-left:nth-of-type(2) {
    padding-top: 10px;
}

.page-index .section-points .point.pt1 .figures.two .fig-content {
    padding: 3px;
}

.page-index .section-points .point.pt1 .figures.two .img-base {
    border-radius: 5px;
    background-color: #d2efff;
}

.page-index .section-points .point.pt1 .figures.two .img-base>img {
    display: block;
    margin: 0 auto;
}

.page-index .section-points .point.pt2 .point-lead {
    background-image: url(../img/index/pnt2-circle.png);
}

.page-index .section-points .point.pt2 .point-title {
    background-image: url(../img/index/pnt2-title.png);
}

.page-index .section-points .point.pt2 .figures>.col-left+.col-left {
    margin-left: 10px;
}

.page-index .section-points .point.pt2 .box1 .fig-content {
    padding: 8px;
}

.page-index .section-points .point.pt2 .box1 .fig-content img {
    display: block;
    margin-bottom: 23px;
}

.page-index .section-points .point.pt2 .box1 .fig-content .desc {
    height: 147px;
    font-size: 0.83333em;
    line-height: 1.26667;
    text-align: center;
}

.page-index .section-points .point.pt2 .box1 .fig-content .orange,
.page-index .section-points .point.pt2 .box1 .fig-content .green {
    display: inline-block;
    font-size: 1.86667em;
    color: white;
    line-height: 40px;
    text-align: center;
}

.page-index .section-points .point.pt2 .box1 .fig-content .orange {
    width: 80px;
    margin-bottom: 8px;
    font-weight: normal;
    background-color: #f39800;
}

.page-index .section-points .point.pt2 .box1 .fig-content .orange+.orange {
    margin-left: 5px;
}

.page-index .section-points .point.pt2 .box1 .fig-content .green {
    margin-top: 6px;
    padding: 0 14px;
    border-radius: 4px;
    background-color: #89bf1d;
}

.page-index .section-points .point.pt2 .box2 {
    margin-bottom: 10px;
}

.page-index .section-points .point.pt2 .box2 .fig-content,
.page-index .section-points .point.pt2 .box3 .fig-content {
    height: 180px;
}

.page-index .section-points .point.pt2 .box2 .fig-content>img,
.page-index .section-points .point.pt2 .box3 .fig-content>img {
    display: block;
}

.page-index .section-points .point.pt2 .box2 .fig-content>img {
    margin: 8px 0 0 6px;
}

.page-index .section-points .point.pt2 .box3 .fig-content>img {
    margin: 6px 0 0 6px;
}

.page-index .section-points .point.pt3 .point-lead {
    background-image: url(../img/index/pnt3-circle.png);
}

.page-index .section-points .point.pt3 .point-title {
    background-image: url(../img/index/pnt3-title.png);
}

.page-index .section-points .point.pt3 .col2 {
    margin-left: 10px;
}

.page-index .section-points .point.pt3 .fig-content {
    height: 180px;
}

.page-index .section-points .point.pt3 .fig-content>img {
    display: block;
    margin: 7px 0 0 6px;
}

.page-index .section-points .point.pt4 .point-lead {
    background-image: url(../img/index/pnt4-circle.png);
}

.page-index .section-points .point.pt4 .point-title {
    background-image: url(../img/index/pnt4-title.png);
}

.page-index .section-points .point.pt4 .figures {
    width: 850px;
    margin-left: -5px;
}

.page-index .section-points .point.pt4 .col2,
.page-index .section-points .point.pt4 .col3 {
    margin-left: 15px;
}

.page-index .section-points .point.pt4 .fig-content {
    height: 250px;
}

.page-index .section-points .point.pt4 .fig-content>img {
    display: block;
    margin: 27px auto;
}

.page-index .section-points .point.pt4 .fig-content>.desc {
    padding: 0 14px;
    font-size: 0.88889em;
    color: #6a3906;
    line-height: 1.25;
}

.page-index .section-find {
    margin-bottom: 80px;
    /* intro */
    /* .myths */
}

.page-index .section-find .sect-title.checker {
    height: 100px;
}

.page-index .section-find .sect-intro {
    height: 294px;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    background: url(../img/index/find-intro-title.png) center 62px no-repeat;
}

.page-index .section-find .myths {
    width: 920px;
    margin: 0 auto;
    padding-bottom: 8px;
    border-radius: 10px;
    background: #ac6a00 url(../img/index/find-col1-bg.jpg) no-repeat;
}

.page-index .section-find .myths-title {
    height: 52px;
    padding: 16px 0 0 40px;
    font-weight: normal;
    font-size: 1.11111em;
    color: white;
    line-height: 1.2;
}

.page-index .section-find .myths-content {
    width: 900px;
    margin: 0 auto;
    padding-top: 26px;
    padding-bottom: 32px;
    border: 2px solid #cfa972;
    border-radius: 10px;
    background-color: white;
}

.page-index .section-find .cont-title {
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    background-repeat: no-repeat;
}

.page-index .section-find .title1,
.page-index .section-find .title2 {
    height: 54px;
    background-position: 44px 0;
}

.page-index .section-find .title1 {
    background-image: url(../img/index/find-col1-head1.png);
}

.page-index .section-find .title2 {
    background-image: url(../img/index/find-col1-head2.png);
}

.page-index .section-find .title3 {
    height: 65px;
    background-image: url(../img/index/find-col1-head3.png);
}

.page-index .section-find .desc {
    margin-bottom: 25px;
    padding: 0 50px;
}

.page-index .section-find .checkpoints {
    width: 840px;
    margin: 0 auto;
    padding: 15px 0 38px;
    border: 5px solid #fada43;
    border-radius: 10px;
    background-color: #faedaf;
}

.page-index .section-find .point-list {
    width: 100%;
    list-style: none;
    overflow: hidden;
    margin: 0;
    padding: 0 1em;
}

.page-index .section-find .point-list li {
    width: 50%;
    float: left;
}

.page-index .section-find .point-list li:before {
    content: "• ";
}

.page-index .section-steps {
    /* intro */
    /* steps-block */
    /* headers */
}

.page-index .section-steps .sect-title.checker {
    height: 100px;
}

.page-index .section-steps .sect-intro {
    margin-bottom: 60px;
    background: url(../img/index/step-intro-img.jpg) right top no-repeat;
}

.page-index .section-steps .intro-title {
    height: 212px;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    background: url(../img/index/step-intro-title.png) 35px 38px no-repeat;
}

.page-index .section-steps .intro-desc {
    width: 920px;
    margin: 0 auto;
    padding: 17px 21px;
    font-size: 1.33333em;
    line-height: 1.41667;
    letter-spacing: -0.025em;
    border: 4px solid #fada43;
    border-radius: 10px;
    background-color: #faedaf;
}

.page-index .section-steps .row {
    overflow: hidden;
}

.page-index .section-steps .size1 {
    float: left;
    overflow: hidden;
}

.page-index .section-steps .size1 .step-container,
.page-index .section-steps .size2 .step-header-container {
    width: 300px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    background: #360 url(../img/index/step-st-title-bg.jpg) no-repeat;
    -webkit-background-clip: padding-box;
    -moz-background-clip: padding;
    background-clip: padding-box;
}

.page-index .section-steps .size1 .step-container {
    height: 420px;
    float: left;
}

.page-index .section-steps .size2 .step-header-container {
    height: 40px;
}

.page-index .section-steps .step1:after,
.page-index .section-steps .step2:after {
    content: "";
    width: 40px;
    height: 420px;
    display: block;
    float: left;
    background: url(../img/index/step-st-arrow.png) left center no-repeat;
}

.page-index .section-steps .step-header {
    height: 40px;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    background-repeat: no-repeat;
    background-position: 19px 5px;
}

.page-index .section-steps .step1 .step-header {
    background-image: url(../img/index/step-st1-title.png);
}

.page-index .section-steps .step2 .step-header {
    background-image: url(../img/index/step-st2-title.png);
}

.page-index .section-steps .step3 .step-header {
    background-image: url(../img/index/step-st3-title.png);
}

.page-index .section-steps .step4 .step-header {
    background-image: url(../img/index/step-st4-title.png);
}

.page-index .section-steps .step-content {
    background-color: #fff8d5;
}

.page-index .section-steps .size1 .step-content {
    width: 290px;
    height: 370px;
    margin: 5px auto 0;
    padding-top: 20px;
}

.page-index .section-steps .step-content>img {
    display: block;
    margin: 0 auto 12px;
}

.page-index .section-steps .step-title {
    margin-bottom: 8px;
    font-weight: normal;
    font-size: 1.55556em;
    color: #eb5100;
    line-height: 1.28571;
}

.page-index .section-steps .size1 .step-title {
    padding: 0 0.3em;
    text-align: center;
}

.page-index .section-steps .step-desc {
    line-height: 1.66667;
}

.page-index .section-steps .size1 .step-desc {
    text-align: center;
}

.page-index .section-steps .step4 {
    margin-top: 30px;
}

.page-index .section-steps .size2 .step-content-container {
    padding: 5px;
    background-color: #360;
}

.page-index .section-steps .size2 .step-content {
    padding: 15px;
}

/*==================== chumon-jhp (Jun.2017)

	contact

	====================*/
.page-estimate {
    /*=== form-intro ===*/
    /* エラーメッセージ */
}

.page-estimate .page-main {
    width: 980px;
    margin: 0 auto;
    padding: 39px 0 51px;
}

.page-estimate .main-container {
    border: 10px solid #aacf94;
    border-radius: 10px;
    background-color: white;
}

.page-estimate .main-container a {
    color: #f66;
}

.page-estimate .form-intro {
    height: 280px;
    padding: 13px 0 0 30px;
    border-bottom: 5px solid #aacf94;
    background: url(../img/estimate/est-header-img.jpg) right bottom no-repeat;
}

.page-estimate .intro-title {
    margin-bottom: 24px;
    font-weight: normal;
    font-size: 2.44444em;
    line-height: 50px;
}

.page-estimate .intro-title small {
    font-size: 0.63636em;
    color: #390;
}

.page-estimate .intro-desc {
    width: 610px;
    padding: 20px 33px;
    font-size: 1.22222em;
    color: #599a32;
    line-height: 1.45455;
    border-radius: 10px;
    background-color: #d3eaa3;
}

.page-estimate .form-container {
    padding-bottom: 67px;
}

.page-estimate .form-desc {
    padding: 50px 30px;
    font-weight: 300;
    font-size: 1.11111em;
    color: #333;
    line-height: 1.2;
}

.page-estimate .error-msg {
    margin: 0;
    font-size: 13px;
    color: #ec6941;
    line-height: 20px;
}

.page-estimate .error-msg:before {
    content: "!";
    width: 1.2em;
    height: 1.2em;
    display: inline-block;
    margin-right: 0.3em;
    font-family: "Times New Roman", Times, serif;
    font-weight: bold;
    font-size: 0.9em;
    color: white;
    line-height: 1.4;
    text-align: center;
    border-radius: 50%;
    background-color: #ec6941;
    position: relative;
    top: -1px;
}

.page-estimate .error-msg.hidden {
    visibility: hidden;
}

.page-estimate .error-msg.pref,
.page-estimate .error-msg.address {
    margin-left: 8.5em;
}

.page-estimate p.note {
    width: auto;
    margin: 50px auto 25px;
    font-size: 0.88889em;
    text-align: center;
}

.page-estimate .submit-btn-container {
    width: 280px;
    height: 68px;
    margin: 0 auto;
    position: relative;
}

.page-estimate .disabled-catcher {
    width: 100%;
    height: 100%;
    display: none;
    cursor: pointer;
    position: absolute;
    top: 0;
    left: 0;
}

.page-estimate .disabled-catcher.active {
    display: block;
}

.page-estimate button.form-submit {
    width: 100%;
    display: block;
    margin: 0 auto;
    padding: 0;
    font-family: inherit;
    font-size: 28px;
    color: white;
    line-height: 68px;
    border: none;
    border-radius: 10px;
    background: -webkit-gradient(linear, left top, left bottom, from(#f7b700), to(#ef7a00));
    background: linear-gradient(to bottom, #f7b700, #ef7a00);
    cursor: pointer;
}

.page-estimate button.form-submit:hover {
    background: -webkit-gradient(linear, left top, left bottom, from(#f9b26e), to(#df2013));
    background: linear-gradient(to bottom, #f9b26e, #df2013);
}


.page-estimate button.form-submit:disabled {
    background: -webkit-gradient(linear, left top, left bottom, from(#fef3d6), to(#f6c387));
    background: linear-gradient(to bottom, #fef3d6, #f6c387);
}

.page-estimate .disabled-catcher.active {
    pointer-events: none;
}

.page-estimate .disabled-catcher {
    pointer-events: auto;
}

.form-table {
    width: 100%;
    font-size: 20px;
    border-collapse: collapse;
    border-top: 1px solid #dcdcdc;
    /*::: テーブル要素 */
    /* 必須フォーム行 */
    /*::: フォーム要素 */
}

.form-table td,
.form-table th {
    border-bottom: 1px solid #dcdcdc;
}

.form-table th {
    width: 243px;
    vertical-align: top;
    padding: 27px 20px 0 0;
    font-weight: normal;
    text-align: right;
    border-right: 1px solid #dcdcdc;
    background-color: #eff7dd;
}

.form-table td {
    padding: 1.2em 19px;
}

.form-table tr.req-form>td {
    padding-top: 0.2em;
}

.form-table .req-label {
    display: inline-block;
    padding: 0 10px;
    font-weight: normal;
    font-size: 0.8em;
    color: white;
    line-height: 26px;
    background-color: #ec6941;
}

.form-table .req-label.plan {
    padding: 3px 6px;
    font-size: 12px;
    color: #093;
    line-height: 1.0;
    border: 1px solid #093;
    background: transparent;
}

.form-table input:not([type=radio]),
.form-table select,
.form-table option,
.form-table textarea {
    width: 358px;
    padding: 0.4em;
    font-family: inherit;
    font-size: 1.0em;
    color: inherit;
    line-height: inherit;
    border: 1px solid #bbb;
    border-radius: 5px;
}

.form-table select {
    width: auto;
    min-width: 12em;
    height: 2.0em;
    padding: 0 0.4em;
}

.form-table input:not([type=radio]),
.form-table textarea {
    -webkit-box-shadow: inset 0px 2px 4px rgba(0, 0, 0, 0.2);
    box-shadow: inset 0px 2px 4px rgba(0, 0, 0, 0.2);
}

.form-table tr.req-form input,
.form-table tr.req-form select {
    border-color: #fca6af;
}

.form-table tr.req-form input.error,
.form-table tr.req-form select.error {
    border-width: 2px;
    border-color: #ec6941;
}

.form-table .form-set label {
    width: 6em;
    display: inline-block;
    margin-right: 0.8em;
    font-size: 0.8em;
    text-align: right;
}

.form-table .form-set+.form-set {
    margin-top: 0.5em;
}

.form-table input[type="text"],
.form-table textarea {
    font-size: 0.85em;
}

.form-table input[type="text"] {
    width: 100%;
}

.form-table input[name="cf_address"],
.form-table input[name="cf_plan_address"] {
    width: 500px;
}

.form-table textarea {
    width: 100%;
    line-height: 1.5;
}

.form-table input:not([type=radio]):invalid,
.form-table select:invalid {
    outline-color: red;
    border: 2px solid red;
}

.form-table .radio-list {
    font-size: 0;
}

.form-table .radio-list li {
    width: 50%;
    height: 36px;
    display: inline-block;
    vertical-align: middle;
    font-size: 20px;
    line-height: 36px;
}

.form-table .radio-list input[type=radio] {
    display: none;
}

.form-table .radio-list label {
    vertical-align: middle;
    line-height: 36px;
    cursor: pointer;
}

.form-table .radio-list label:before {
    content: "";
    width: 36px;
    height: 36px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 0.4em;
    color: #ec6941;
    text-align: center;
    border: 1px solid #ccc;
    border-radius: 5px;
    -webkit-box-shadow: inset 0px 2px 4px rgba(0, 0, 0, 0.2);
    box-shadow: inset 0px 2px 4px rgba(0, 0, 0, 0.2);
}

.form-table .radio-list input:checked+label:before {
    content: "●";
}

.form-table input[checked=checked]+.bigradio:before {
    content: "●";
}

.page-contact p.thanks {
    margin: 15em 0 15em;
    line-height: 2.0;
    text-align: left;
}

.page-agreement .page-main {
    width: 980px;
    margin: 2em auto 4em;
}

/********** 2022-08-30 **********/
.my1em {
    margin: 1em 0;
}

.list-number {
    list-style: none;
    margin: 1em 0;
    padding: 0;
}

.list-number>li,
.list-number>li .text {
    font-size: 0.9em;
}

.list-number>li {
    padding-left: 3em;
    position: relative;
}

.list-number>li+li {
    margin-top: 0.5em;
}

.list-number>li .list-number-num {
    position: absolute;
    top: 0;
    left: 0;
}

.list-circle-num {
    list-style: none;
    padding: 0;
}

.list-circle-num>li {
    padding-left: 1.2em;
    position: relative;
}

.list-circle-num>li .num {
    position: absolute;
    top: 0;
    left: 0;
}

.privacy {
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
    padding: 2em;
}

.privacy .box h2 {
    margin-bottom: 1em;
    padding: 0.2em 0.5em;
    font-weight: bold;
    font-size: 1.2em;
    color: #599a32;
    line-height: 1.6;
    border-bottom: 3px solid #599a32;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(115, 153, 91, 1)), to(rgba(125, 185, 232, 0)));
    background: linear-gradient(to bottom, rgba(115, 153, 91, 1) 0%, rgba(125, 185, 232, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#73995b', endColorstr='#007db9e8', GradientType=0);
}

.privacy .sentence {
    margin-bottom: 30px;
    font-size: 0.8em;
}

.privacy-box-title {
    margin-bottom: 0.5em;
    font-size: 1.1em;
}

.border-box {
    margin: 0.5em 0;
    padding: 1em;
    border: 1px solid black;
}

.list-dot {
    list-style-position: inside;
    list-style-type: disc;
    padding-left: 1em;
}

.list-dot li {
    list-style: initial;
}

.list-order {
    margin: 0.5em 0;
    padding: 0;
}

.list-order>li {
    list-style: none;
}

.list-order>li+li {
    margin-top: 1em;
}

.list-order-02 {
    margin-left: 1em;
}

.table-privacy {
    width: 100%;
    margin: 0.5em 0;
    border: 1px solid black;
    border-collapse: collapse;
}

.table-privacy tr+tr {
    border-top: 1px solid black;
}

.table-privacy tr th,
.table-privacy tr td {
    width: 50%;
    padding: 1em;
}

.table-privacy tr th+td {
    border-left: 1px solid black;
}

.sign {
    margin: 1em 0;
    font-size: initial;
}

@media (max-width: 599px) {

    .table-privacy tr th,
    .table-privacy tr td {
        padding: 1em 0.5em;
        font-size: 14px;
    }
}






/*2025/10/21作業*/
.site-footer .company-info a {
    padding: .1em .5em;
    border-right: 1px solid #fff;
}

.site-footer .company-info a:last-child {
    border-right: none;
}


.all-linked a {
    pointer-events: none !important;
}


@media(Max-width:1024px) {
    .all-linked .sp-br {
        display: block;
    }

    .all-linked .container {
        max-width: 100%;
    }

    .all-linked .site-header .site-title {
        width: 100%;
        max-width: 300px;
    }

    .all-linked .site-header .site-tel {
        display: none;
    }

    .all-linked .site-header .header-upper {
        height: 50px;
        overflow: hidden;
    }

    .all-linked .site-header .site-title>a {
        background-size: contain;
        background-position: center;
    }

    .all-linked .site-header .site-catch {
        font-size: 16px;
        line-height: 1.5em;
    }

    .all-linked .site-header {
        height: auto;
    }

    .all-linked .page-main {
        max-width: 100%;
        padding: 0 2%;
        font-size: 16px;
    }

    .all-linked .privacy {
        padding: 0;
    }

    .all-linked .privacy .box h2 {
        margin-bottom: 1em;
        padding: 0;
        font-weight: bold;
        font-size: 18px;
        background: none;
        text-align: center;
        letter-spacing: -.05em
    }


}