@charset "UTF-8";

/*==========================================
SP共通
===========================================*/
body {
    width: 100%;
    margin: 0 auto;
    font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
    color: #333;
    line-height: 1.8;
    text-align: center;
    letter-spacing: .03em;
    font-size: 3.9766vw;
    word-break: normal;
}

/*==========================================
サイトの標準横幅と内部余白
===========================================*/
.inbox {
    padding: 0 4%;
    margin: 0 auto;
}

.com-pd {
    padding: 16% 0;
}

.com-pt {
    padding-top: 16%;
}

.com-pb {
    padding-bottom: 16%;
}

.com-mb {
    margin-bottom: 16%;
}

/*==========================================
SP非表示
===========================================*/
.sp-none {
    display: none !important;
}

/*==========================================
パンくずリスト
===========================================*/
div .bread {
    display: none;
}

/*==========================================
header
===========================================*/
#header {
    padding: 2.6666%;
    background: #fff;
}

#header h1 {
    width: 50%;
}

#header .hd-right {
    width: 33.0985%;
}

#header .hd-info {
    gap: 5% 8.3334%;
}

#header .hd-info li {
    width: 45.8333%;
}

#header .tel-attention {
    width: 55%;
    margin-left: auto;
}

/*共通
------------------------------*/
.com-tel-wrp {
    width: 71.6811%;
    margin: 0 auto;
    line-height: 1.4;
}

.com-tel-wrp .phone-num {
    font-family: 'Zen Maru Gothic', serif;
    font-weight: 700;
    font-size: 8.088vw;
    color: #179d2a;
    line-height: 1;
    letter-spacing: .04em;
}

.com-tel-wrp .phone-num small {
    line-height: 1;
    display: inline-block;
    font-size: 4.044vw;
}

.com-tel-wrp .tel-attention {
    width: 76%;
    display: block;
    margin: 0 auto;
}

.com-mail-btn {
    width: 71.6811%;
    margin: 0 auto;
    font-family: 'Zen Maru Gothic', serif;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    padding: 0 2% 0 8%;
    box-sizing: border-box;
    background: url(../img/common/contact-btn_icon.png) left 8% center/8% no-repeat, #f2975a;
    height: 16vw;
    border-radius: 10px;
}

.worktime {
    font-size: 2.696vw;
}

.worktime span {
    padding: 0 2px;
    display: inline-block;
    vertical-align: baseline;
    background: #e9f4d8;
    border-radius: 6px;
}

/*==========================================
エントランスページ
===========================================*/
/* #entrance {
    display: block;
}

#entrance .ent-wrp a {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
}

#entrance .ent-wrp a:before {
    width: 100%;
    height: 100%;
    position: absolute;
    content: '';
    z-index: -1;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}

#entrance .ent-cont {
    background: rgba(255, 255, 255, 0.9);
    border-radius: 10px;
    margin: 0 auto;
    width: 85%;
    padding: 5% 4%;
    box-sizing: border-box;
}

#entrance .ent-cont h2 {
    font-size: 5.84133vw;
}

#entrance .ent-cont h2 span {
    display: block;
}

#entrance .ofc-site {
    height: 90vw;
}

#entrance .ofc-site a:before {
    background: url(../img/entrance/ofc-site_bg.jpg) center/cover no-repeat;
}

#entrance .ofc-site h2 span {
    background: url(../img/entrance/ofc-site_arr.png) left 3% bottom 2vw/7% no-repeat;
}

#entrance .ofc-site p span {
    font-weight: 700;
    background: #008c69;
    color: #fff;
    padding: 0 10px;
    font-size: 4.044vw;
}

#entrance .ofc-site p em {
    font-size: 4.49333vw;
}

#entrance .sp-site {
    height: 47vw;
}

#entrance .sp-site a:before {
    background: url(../img/entrance/sp-site_bg.jpg) center/cover no-repeat;
}

#entrance .sp-site h2 .markup {
    font-size: 4.044vw;
    color: #fff;
    width: 100%;
    margin: 0 auto 10px auto;
    border-radius: 8px;
    background: #f4a673;
    position: relative;
}

#entrance .sp-site h2 .markup:before {
    position: absolute;
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 9px 0 9px;
    border-color: #f4a673 transparent transparent transparent;
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: -12px;
}

#entrance .sp-site h2 .site-type {
    background: url(../img/entrance/sp-site_arr.png) left 5% top 1.5vw/7% no-repeat;
    color: #179d2a;
    line-height: 1.5;
    padding-left: 10vw;
}

#entrance .column-site {
    height: 47vw;
}

#entrance .column-site a:before {
    background: url(../img/entrance/column-site_bg.jpg) center/cover no-repeat;
}

#entrance .column-site h2 .markup {
    font-size: 4.044vw;
    position: relative;
    display: inline-block;
}

#entrance .column-site h2 .markup:before,
#entrance .column-site h2 .markup:after {
    width: 2px;
    height: 23px;
    position: absolute;
    content: '';
    background: #333;
    bottom: 0;
    top: 0;
    margin: auto 0;
}

#entrance .column-site h2 .markup:before {
    left: -20px;
    transform: rotate(-25deg);
}

#entrance .column-site h2 .markup:after {
    right: -20px;
    transform: rotate(25deg);
}

#entrance .column-site h2 .site-type {
    background: url(../img/entrance/column-site_arr.png) left 10% center/7% no-repeat;
    color: #3f955b;
    padding-left: 10vw;
} */
#header.ent-hd h1 {
    width: 50%;
}

#entrance {
    height: auto;
    display: block;
}

#entrance .ent-left,
#entrance .ent-right {
    width: 100%;
}

#entrance .ent-wrp {
    width: 100%;
    height: auto;
}

#entrance .ent-cont {
    min-height: inherit;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 10px;
    margin: 0 auto;
    width: clamp(340px, 60%, 520px);
    padding: 4vw;
}

#entrance .ent-cont h2 {
    font-size: clamp(2rem, 2vw, 3.6rem);
}

#entrance .ent-cont h2 span {
    line-height: 1.5;
    display: block;
}

#entrance .ent-wrp {
    position: relative;
    z-index: 1;
}

#entrance .ent-wrp a {
    height: 100%;
    position: relative;
    z-index: 1;
    padding: 10vw 0;
}

#entrance .ent-wrp a:before {
    width: 100%;
    height: 100%;
    position: absolute;
    content: '';
    z-index: -1;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}

#entrance .ofc-site a:before {
    background: url(../img/entrance/ofc-site_bg.jpg) center/cover no-repeat;
}

#entrance .ofc-site h2 .site-type {
    font-size: clamp(1.5rem, 1.26vw, 2.4rem);
}

#entrance .ofc-site h2 .site-type {
    background: url(../img/entrance/ofc-site_arr.png) left bottom 0.7vw/7% no-repeat;
}

#entrance .ofc-site p em {
    font-size: clamp(1.4rem, 1.49vw, 2.8rem);
}

#entrance .ofc-site p span {
    font-weight: 600;
    background: #008c69;
    color: #fff;
    padding: 0 10px;
    font-size: clamp(1.6rem, 1.26vw, 2.4rem);
}


#entrance .check-site a:before {
    background: url(../img/entrance/check-site_bg.jpg) center/cover no-repeat;
}

#entrance .check-site h2 .site-type {
    font-size: clamp(1.8rem, 1.8vw, 3.6rem);
    line-height: 1.5;
    color: #3f955b;
}


#entrance .sp-site a:before {
    background: url(../img/entrance/sp-site_bg.jpg) center/cover no-repeat;
}

#entrance .sp-site h2 .markup {
    font-size: clamp(1.4rem, 1.26vw, 2.4rem);
    color: #fff;
    width: 100%;
    margin: 0 auto 10px auto;
    border-radius: 4px;
    padding: 5px 2vw;
    background: #f4a673;
    position: relative;
}

#entrance .sp-site h2 .markup:before {
    position: absolute;
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 9px 0 9px;
    border-color: #f4a673 transparent transparent transparent;
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: -12px;
}

#entrance .sp-site h2 .site-type {
    background: url(../img/entrance/sp-site_arr.png) left center/7% no-repeat;
    color: #179d2a;
    line-height: 1.5;
    padding-left: 2vw;
}

#entrance .column-site a:before {
    background: url(../img/entrance/column-site_bg.jpg) center/cover no-repeat;
}

#entrance .column-site h2 .markup,
#entrance .check-site h2 .markup {
    font-size: clamp(1.4rem, 1.26vw, 2.4rem);
    line-height: 1.5;
    position: relative;
    display: inline-block;
}

#entrance .column-site h2 .markup:before,
#entrance .column-site h2 .markup:after,
#entrance .check-site h2 .markup:before,
#entrance .check-site h2 .markup:after {
    width: 2px;
    height: 23px;
    position: absolute;
    content: '';
    background: #333;
    bottom: 0;
    top: 0;
    margin: auto 0;
}

#entrance .column-site h2 .markup:before,
#entrance .check-site h2 .markup:before {
    left: -20px;
    transform: rotate(-25deg);
}

#entrance .column-site h2 .markup:after,
#entrance .check-site h2 .markup:after {
    right: -20px;
    transform: rotate(25deg);
}

#entrance .column-site h2 .site-type,
#entrance .check-site h2 .site-type {
    background: url(../img/entrance/column-site_arr.png) left center/7% no-repeat;
    color: #3f955b;
    padding-left: 6vw;
}

#entrance .ent-site h2 {
    font-size: clamp(2.4rem, 2vw, 3.6rem);
}

#entrance .column-site .ent-cont {
    position: relative;
    padding-top: 6.4vw;
}

#entrance .column-site .ent-cont::before {
    content: '';
    display: block;
    width: 232px;
    max-width: 33%;
    aspect-ratio: 232 / 160;
    background: url(../img/entrance/column-illust.png);
    background-size: 100%;
    position: absolute;
    left: 50%;
    bottom: 100%;
    transform: translate(-50%, 6vw);
    z-index: 1;
}

/*==========================================
メインビジュアル
===========================================*/
#mv {
    position: relative;
    margin-top: 26vw;
    height: 118vw;
    overflow: hidden;
    background: url(../img/top/mv/mv_sp.jpg) center/cover no-repeat;
}

#mv:before {
    width: 100%;
    height: 10vw;
    background: url(../img/top/mv/mv-frame_sp.png) bottom center/100% no-repeat;
    position: absolute;
    content: '';
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

#mv h2 {
    width: 100%;
    margin: 0 auto;
    position: absolute;
    right: 0;
    bottom: -5vw;
}

/*==========================================
共通ブロック・要素
===========================================*/
.com-txt {
    text-align: left;
}

.com-txt p {
    margin-bottom: 5%;
    line-height: 1.8;
}

.com-txt p:last-child {
    margin-bottom: 0;
}

#g-map h4 {
    font-size: 4.044vw;
    font-weight: 700;
    margin-bottom: 2%;
}

#g-map h4 span {
    padding-left: 5%;
}

#g-map .map {
    position: relative;
    width: 100%;
    padding: calc(315 / 560 * 100%) 0 0;
}

#g-map .map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.com-btn {
    width: 81.1594%;
    display: block;
    color: #fff;
    border-radius: 12.5px;
    padding: 3.815% 2%;
    box-sizing: border-box;
    background: #ed8016;
    box-shadow: 0 7px 0 #e66c00;
    font-family: 'Zen Maru Gothic', serif;
    font-size: 3.59467vw;
}

.com-btn span {
    padding-left: 6vw;
    background: url(../img/common/com-btn_arr.png) left center/4vw no-repeat;
}

.com-btn:hover {
    opacity: 1;
    text-shadow: none;
    transform: translateY(3px);
    box-shadow: 0 2px 0 #e66c00;
}

/*==========================================
テーブルレイアウト
===========================================*/
.com-dl {
    text-align: left;
}

.com-dl>dl>dt {
    background: #179d2a;
    color: #fff;
    padding: 2% 3%;
}

.com-dl>dl>dd {
    padding: 3%;
}

.com-dl>dl>dd a[href^="tel:"],
.com-dl>dl>dd a[href^="mailto:"] {
    text-decoration: underline;
}

.com-dl>dl:first-child>dt {
    border-radius: 8px 0 0 0;
}

.com-dl>dl:last-child>dt {
    border-radius: 0 0 0 8px;
}

/*==========================================
nav
===========================================*/
#sp-fixed-nav {
    position: fixed;
    width: 100%;
    background: #fff;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1005;
    box-sizing: border-box;
}

#sp-fixed-nav .sp-fixed-nav-list>li {
    width: 23%;
    font-weight: 700;
}

#sp-fixed-nav .sp-fixed-nav-list>li>a {
    padding: 3vw 0 1vw 0;
    display: block;
}

#sp-fixed-nav .sp-fixed-nav-list>li .icon {
    width: 55%;
    margin: 0 auto 9% auto;
    display: flex;
    align-items: center;
    justify-content: center;
    height: auto;
}

#sp-fixed-nav .sp-fixed-nav-list>li .txt {
    font-weight: 700;
    line-height: 1.1;
    font-size: 3vw;
}

#sp-fixed-nav .sp-fixed-nav-list>li:last-child {
    width: 70px;
}

#sp-fixed-nav .sp-fixed-nav-list .business-nav .icon {
    width: 39%;
}

#sp-fixed-nav .sp-fixed-nav-list .price-nav .icon {
    width: 29%;
}

#sp-fixed-nav .sp-fixed-nav-list .faq-nav .icon {
    width: 41%;
}

#sp-fixed-nav .sp-fixed-nav-list .greeting-nav .icon {
    width: 44%;
}

#sp-fixed-nav .sp-fixed-nav-list li a {
    height: auto;
}

/*==============================================
ドロワーメニュー
==============================================*/
/*drawer btn 上下左右で設定可能
------------------------------------ */
.sp-menu-btn-wrp {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    position: relative;
    background: #60b957;
    width: 55px;
    margin-left: auto;
    border-radius: 5px 0 0 5px;
}

.sp-menu-btn-wrp .sp-menu-btn {
    width: 45px;
    height: 45px;
    margin: 0 auto;
}

.sp-menu-btn-wrp .sp-menu-btn span {
    width: 20px;
    height: 2px;
    background: #fff;
}

.sp-menu-btn-wrp .sp-menu-btn .top {
    top: 15px;
}

.sp-menu-btn-wrp .sp-menu-btn .middle {
    top: 0;
    bottom: 0;
}

.sp-menu-btn-wrp .sp-menu-btn .bottom {
    top: 29px;
}

.sp-menu-btn-wrp .sp-menu-btn-txt {
    color: #fff;
}

/*  drawer inbox
------------------------------------ */
#drawer-nav {
    padding: 5% 6% 5%;
    background: #fbfff2;
}

#drawer-nav .drawer-logo {
    width: 53%;
    margin: 0 auto 4% auto;
}

#drawer-nav nav {
    margin-bottom: 6%;
}

#drawer-nav nav .drawer-link {
    padding: 3% 0;
    border-bottom: 1px solid #179d2a;
    font-size: 3.81933vw;
    color: #179d2a;
}

#drawer-nav nav .drawer-dropdown {
    padding: 3% 12% 3% 0;
}

#drawer-nav nav .drawer-dropdown span {
    display: block;
}

#drawer-nav nav .drawer-dropdown span:before,
#drawer-nav nav .drawer-dropdown span:after {
    background: #000;
}

#drawer-nav nav .current {
    padding-left: 7%;
    position: relative;
}

#drawer-nav nav .current:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: '';
    vertical-align: middle;
    width: 1.5vw;
    height: 1.5vw;
    border-top: 2px solid #179d2a;
    border-right: 2px solid #179d2a;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

#drawer-nav nav .current span:after {
    opacity: 0 !important;
}

#drawer-nav nav .drawer-dropdown-bx {
    margin: 3% 0;
    padding-left: 4%;
    box-sizing: border-box;
}

#drawer-nav nav .drawer-dropdown-bx>li>.drawer-link:before {
    border-left: 1px solid #000;
    border-bottom: 1px solid #000;
}

#drawer-nav nav .drawer-dropdown-bx>li>.drawer-link span {
    padding: 0 0 0 5%;
}

#drawer-nav .com-mail-btn {
    width: 75.3623%;
    margin: 0 auto 3% auto;
    height: 16vw !important;
}

#drawer-nav .com-tel-wrp {
    margin-bottom: 3%;
}

#drawer-nav address {
    font-size: 2.92067vw;
}

/*==========================================
トップページ
===========================================*/
/* #top-intro
--------------------------*/
#top-intro {
    padding: 4.6666% 0 6.666% 0;
    background: url(../img/top/intro-top_bg_pc.png) top center/100% no-repeat, url(../img/top/intro-btm_bg_pc.png) bottom center/100% no-repeat, #e9f4d8;
}

#top-intro h3 {
    width: 92%;
    margin: 0 auto 6.666% auto;
}

#top-intro p {
    text-align: left;
    margin-bottom: 9.4202%;
}

#top-intro p span {
    font-weight: 700;
    color: #179d2a;
}

#top-intro .about-support {
    display: block;
    width: 100;
    margin: 7.2463% auto 0 auto;
}

/* #top-menu
--------------------------*/
#top-menu {
    padding: 16.666% 0 15.3333% 0;
    background: url(../img/top/price-step_bg.jpg) center/cover no-repeat;
}

#top-menu .tab-list {
    border-bottom: 5px solid #179d2a;
    gap: 25px;
}

#top-menu .tab-list li {
    width: 50%;
    background: #e7f3d8;
    color: #179d2a;
    font-weight: 700;
    padding: 2.5%;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
    cursor: pointer;
    border-radius: 10px 10px 0 0;
    font-size: 4.49333vw;
}

#top-menu .tab-list li:last-child {
    margin-right: 0;
}

#top-menu .tab-list li:hover {
    background: #179d2a;
    color: #fff;
}

#top-menu .tab-list li:hover span {
    background: url(../img/top/price-step_tab_arr_on.png) left center/4vw no-repeat;
}

#top-menu .tab-list li span {
    padding-left: 6vw;
    background: url(../img/top/price-step_tab_arr_off.png) left center/4vw no-repeat;
}

#top-menu .tab-list li.current {
    color: #fff;
    background: #179d2a;
}

#top-menu .tab-list li.current span {
    background: url(../img/top/price-step_tab_arr_on.png) left center/4vw no-repeat;
}

#top-menu .tab_list {
    background: #fff;
    padding: 5.0724% 5.0724% 9.4202% 5.0724%;
    border-radius: 0 0 10px 10px;
}

#top-menu .tab_list .com-tab-detail {
    text-align: left;
    margin-bottom: 5.7971%;
    padding-bottom: 5.7971%;
    border-bottom: 1px solid #179d2a;
}

#top-menu .tab_list .com-tab-detail:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

#top-menu .tab_list .com-tab-detail h3 {
    font-size: 5.61667vw;
    color: #179d2a;
    border-left: 4px solid;
    margin-bottom: 2.5%;
    padding-left: 2.5%;
    line-height: 1.5;
}

#top-menu .tab_list .com-tab-detail .price-inner {
    margin-bottom: 4.3478%;
}

#top-menu .tab_list .com-tab-detail .price-inner:last-child {
    margin-bottom: 0;
}

#top-menu .tab_list .com-tab-detail .price-inner dt {
    background: #e9f4d8;
    text-align: left;
    padding: 1% 2%;
    color: #179d2a;
    font-weight: 700;
    margin-bottom: 5px;
}

#top-menu .tab_list .com-tab-detail .price-inner dd .tax {
    font-size: 2.696vw;
}

#top-menu .com-btn {
    width: 81.1594%;
    margin: 11.5942% auto 0 auto;
}

#top-menu .step-list .step-list-item {
    padding: 6.557% 0;
    border-bottom: 1px solid #179d2a;
}

#top-menu .step-list .step-list-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

#top-menu .step-list .step-icon {
    width: 26.2295%;
}

#top-menu .step-list .step-content {
    width: 68.8524%;
    text-align: left;
}

#top-menu .step-list .step-content dt {
    border-left: 8px solid #179d2a;
    color: #179d2a;
    font-size: 4.94267vw;
    padding-left: 2.5%;
    margin-bottom: 2.3809%;
}

/* #top-other
--------------------------*/
#top-other {
    padding: 13.3333% 0;
    background: url(../img/top/faq-greeting_bg.jpg) center/cover no-repeat;
}

#top-other .other-wrp {
    gap: 7% 4.34784%;
}

#top-other .other-wrp a {
    width: 47.82608%;
    height: 42vw;
    position: relative;
    border-radius: 10px;
}

#top-other .other-wrp p {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(96, 185, 87, 0.8);
    color: #fff;
    padding: 2% 0;
    font-size: 4.94267vw;
    border-radius: 0 0 8px 8px;
}

#top-other .other-wrp p:before {
    width: 100%;
    height: 3vw;
    background: url(../img/top/faq-greeting_frame_sp.png) center/100% no-repeat;
    position: absolute;
    content: '';
    left: 0;
    right: 0;
    top: -3vw;
}

#top-other .other-wrp p span {
    padding-left: 7vw;
    background: url(../img/top/faq-greeting_arr.png) left center/5vw no-repeat;
}

#top-other .other-wrp .faq-cont {
    background: url(../img/top/faq-img_sp.png) center/cover no-repeat;
}

#top-other .other-wrp .greeting-cont {
    background: url(../img/top/greeting-img_sp.png) center/cover no-repeat;
}

/* #top-news
--------------------------*/
#top-news {
    background: url(../img/top/news-bg.jpg) center/cover no-repeat;
    padding: 9.333% 0 16.6666% 0;
}

#top-news .news-ttl-wrp {
    margin-bottom: 0;
    border-bottom: none;
}

#top-news .news-ttl {
    font-size: 6.74vw;
    font-weight: 500;
    color: #179d2a;
    padding-left: 14%;
    background: url(../img/top/news-ttl_illust.png) left center/15% no-repeat;
}

#top-news .top-news-btn {
    width: 40.5797%;
    background: url(../img/common/com-btn_arr.png) left 8% center/14% no-repeat, #ed8016;
    font-weight: 700;
    font-size: 3.37vw;
    color: #fff;
    border-radius: 20px;
    padding: 2% 2% 2% 7%;
}

#top-news .top-news-bx {
    border-radius: 10px;
}

#top-news .top-news-post {
    background: #fff;
}

#top-news .top-news-post article {
    text-align: left;
    border-bottom: 1px solid #e6e6e6;
}

#top-news .top-news-post time {
    text-align: left;
    font-size: 3.37vw;
    color: #cbcbcb;
    display: block;
    margin-bottom: 2%;
    color: #ed8016;
}

#top-news .top-news-post .category-label {
    margin-bottom: 2%;
    gap: 1.5vw 1vw;
}

#top-news .top-news-post .category-label li {
    background: #f4a673;
    color: #fff;
    font-size: 2.92067vw;
    border-radius: 12.5px;
    padding: .75vw 1.5vw;
}

#top-news .top-news-post h4 {
    font-size: 4.044vw;
    color: #179d2a;
    font-weight: 700;
}

/* #top-company
--------------------------*/
#top-company {
    padding: 10.666% 0 18% 0;
    background: url(../img/top/access-bg.png) top center/100% no-repeat;
}

#top-company h3 {
    font-size: 7.18933vw;
    color: #179d2a;
    margin-bottom: 5.7971%;
}

#top-company h3 span {
    padding-left: 9vw;
    background: url(../img/top/access-ttl_icon.png) left center/15% no-repeat;
}

#top-company .company-tbl dl {
    display: flex;
    width: 100%;
}

#top-company .company-tbl dt {
    width: 28.9855%;
}

#top-company .company-tbl dd {
    width: 71.0145%;
}

#top-company .company-tbl dd .tel-attention {
    display: block;
    width: 200px;
    line-height: 1.2;
}

#top-company #g-map {
    margin-bottom: 5.0724%;
}

#top-company #g-map .map {
    border-radius: 8px;
}

#top-company #g-map .map iframe {
    border-radius: 8px;
}

#top-company .com-btn {
    margin: 8.6956% auto 0 auto;
}

/* #top-contact
--------------------------*/
#top-contact {
    padding: 7.333% 0 16% 0;
    background: url(../img/top/contact-bg.jpg) center/cover no-repeat;
}

#top-contact h3 {
    width: 78.26086%;
    margin: 0 auto 3.6231% auto;
    position: relative;
    font-size: 7.18933vw;
    color: #179d2a;
}

#top-contact h3:before,
#top-contact h3:after {
    width: 14%;
    height: 12vw;
    background: url(../img/top/contact-ttl_deco.png) center/100% no-repeat;
    position: absolute;
    content: '';
    top: 0;
    bottom: 0;
    margin: auto 0;
}

#top-contact h3:before {
    left: 0;
}

#top-contact h3:after {
    transform: scale(-1, 1);
    right: 0;
}

#top-contact .contact-wrp {
    background: rgba(255, 255, 255, 0.9);
    border-radius: 10px;
    padding: 5.7971% 2.8985%;
}

#top-contact .contact-wrp .contact-wrp-inner {
    display: block;
}

#top-contact .contact-wrp .com-mail-btn {
    margin-bottom: 3.6231%;
}

#top-contact .contact-wrp .com-tel-wrp {
    margin-bottom: 4.3478%;
}

#top-contact .contact-wrp .worktime {
    background: #fefce2;
    border-radius: 10px;
    padding: 2.3076%;
}

#top-contact .contact-wrp .worktime p {
    margin-bottom: 3.8461%;
}

#top-contact .contact-wrp .worktime p:last-child {
    margin-bottom: 0;
}

#top-contact .contact-wrp .worktime p .time {
    background: #179d2a;
    color: #fff;
}

#top-contact .contact-wrp .worktime p .worktime-attention {
    display: block;
    background: none;
}

/*==========================================
footer
===========================================*/
#footer {
    background: #f5fce2;
    border-top: none;
}

#footer .inbox {
    padding: 10% 0 7.333% 0;
}

#footer .ft-logo {
    display: block;
    width: 79%;
    margin: 0 auto 4.6666% auto;
}

#footer .com-mail-btn {
    margin: 0 auto 1.333% auto;
    padding: 0 2% 0 11%;
}

#footer .com-tel-wrp {
    margin: 0 auto 3.333% auto;
}

#footer address {
    font-size: 2.696vw;
    font-weight: 500;
    margin-bottom: 8%;
}

#footer .ft-ent {
    display: block;
    width: 74.6666%;
    margin: 0 auto;
}

#copyright {
    font-size: 2.47133vw;
    word-break: normal;
    background: #60b957;
    color: #fff;
    padding: 2% 0 20vw 0;
}

#copyright a {
    color: #fff;
    text-decoration: underline;
}

.ent-ft #copyright {
    padding: 2% 0;
    background: #008c69;
}

/*==========================================
サブビジュアル
===========================================*/
.lower-sv {
    height: 64vw;
    margin-top: 26vw;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lower-sv h2 {
    width: 75%;
    margin: 0 auto;
    background: #fff;
    border-radius: 30px;
    font-size: 6.29067vw;
    color: #179d2a;
    font-family: 'Zen Maru Gothic', serif;
    font-weight: 700;
    padding: 7% 0;
    box-shadow: 0 0 8px rgba(96, 185, 87, 0.5);
    position: relative;
}

.lower-sv h2:before {
    width: 18%;
    height: 16vw;
    position: absolute;
    content: '';
    background: url(../img/sv/sv-ttl_deco.png) center/100% no-repeat;
    right: 2%;
    bottom: -2vw;
}

#business-sv {
    background: url(../img/sv/sv-frame_pc.png) center bottom/100% no-repeat, url(../img/sv/business-sv_sp.jpg) center/cover no-repeat;
}

#price-sv {
    background: url(../img/sv/sv-frame_pc.png) center bottom/100% no-repeat, url(../img/sv/price-sv_sp.jpg) center/cover no-repeat;
}

#faq-sv {
    background: url(../img/sv/sv-frame_pc.png) center bottom/100% no-repeat, url(../img/sv/faq-sv_sp.jpg) center/cover no-repeat;
}

#greeting-sv {
    background: url(../img/sv/sv-frame_pc.png) center bottom/100% no-repeat, url(../img/sv/greeting-sv_sp.jpg) center/cover no-repeat;
}

#company-sv {
    background: url(../img/sv/sv-frame_pc.png) center bottom/100% no-repeat, url(../img/sv/company-sv_sp.jpg) center/cover no-repeat;
}

#news-sv {
    background: url(../img/sv/sv-frame_pc.png) center bottom/100% no-repeat, url(../img/sv/news-sv_sp.jpg) center/cover no-repeat;
}

#contact-sv {
    background: url(../img/sv/sv-frame_pc.png) center bottom/100% no-repeat, url(../img/sv/contact-sv_sp.jpg) center/cover no-repeat;
}

#complete-sv {
    background: url(../img/sv/sv-frame_pc.png) center bottom/100% no-repeat, url(../img/sv/complete-sv_sp.jpg) center/cover no-repeat;
}

#privacy-sv {
    background: url(../img/sv/sv-frame_pc.png) center bottom/100% no-repeat, url(../img/sv/privacy-sv_sp.jpg) center/cover no-repeat;
}

#site-sv {
    background: url(../img/sv/sv-frame_pc.png) center bottom/100% no-repeat, url(../img/sv/site-sv_sp.jpg) center/cover no-repeat;
}

#e404-sv {
    background: url(../img/sv/sv-frame_pc.png) center bottom/100% no-repeat, url(../img/sv/e404-sv_sp.jpg) center/cover no-repeat;
}

/*==========================================
共通タイトル
===========================================*/
.ttl01 {
    font-size: 6.29067vw;
    letter-spacing: .04em;
    border-bottom: 5px solid #179d2a;
    margin-bottom: 7%;
    font-family: 'Zen Maru Gothic', serif;
    font-weight: 700;
    color: #179d2a;
}

.ttl02 {
    font-family: 'Zen Maru Gothic', serif;
    text-align: left;
    font-size: 4.718vw;
    color: #179d2a;
    border-left: 4px solid #179d2a;
    padding-left: 2.5%;
    margin-bottom: 3%;
    font-weight: 700;
}

/*==========================================
事業内容
===========================================*/
/* #business-worry
---------------------------------*/
#business-worry h3 {
    font-size: 5.61667vw;
    font-weight: 700;
    color: #179d2a;
    padding-bottom: 2%;
}

#business-worry .worry-wrp {
    background: #e9f4d8;
    position: relative;
    padding: 12% 0 11% 0;
}

#business-worry .worry-wrp:before {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5.5vw 6vw 0 6vw;
    border-color: #fff transparent transparent transparent;
    margin: 0 auto;
    left: 0;
    right: 0;
    top: 0;
    position: absolute;
    content: '';
}

#business-worry .worry-wrp .inbox {
    position: relative;
}

#business-worry .worry-wrp .worry-list {
    background: #fff;
    border-radius: 10px;
    padding: 5%;
    box-sizing: border-box;
    position: relative;
}

#business-worry .worry-wrp .worry-list:before {
    width: 72px;
    height: 60px;
    position: absolute;
    content: '';
    background: url(../img/business/worry-markup.png) center/100% no-repeat;
    right: -87px;
    top: 127px;
}

#business-worry .worry-wrp .worry-list li {
    text-align: left;
    font-size: 3.707vw;
    border-bottom: 1px solid #e6e6e6;
    padding: 2% 0 2% 7%;
    letter-spacing: 0;
    background: url(../img/business/worry-check_icon.png) left 1% center/5% no-repeat;
}

#business-worry .worry-wrp .worry-list li span {
    color: #ed8016;
}

#business-worry .worry-wrp .worry-list li:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

#business-worry .worry-wrp .worry-img {
    position: absolute;
    right: -2%;
    top: -7vw;
    width: 28%;
}

/* #business-intro
---------------------------------*/
#business-intro {
    padding: 8% 0 11% 0;
    background: url(../img/business/intro-bg.png) top center/cover no-repeat;
}

#business-intro h3 {
    margin-bottom: 6%;
}

#business-intro .lead-txt {
    text-align: left;
    margin-bottom: 20%;
}

#business-intro .lead-txt span {
    font-weight: 700;
    color: #179d2a;
}

#business-intro .intro-wrp {
    background: #fefce2;
    border-radius: 10px;
    padding: 7% 5% 5% 3%;
    position: relative;
}

#business-intro .intro-wrp h4 {
    width: 60%;
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    top: -30px;
    font-size: 3.81933vw;
    color: #fff;
    background: #ed8016;
    border-radius: 10px;
    padding: 2.5% 0;
}

#business-intro .intro-wrp h4:before {
    width: 25%;
    height: 6vw;
    position: absolute;
    content: '';
    left: 0;
    right: 0;
    margin: 0 auto;
    top: -8vw;
    background: url(../img/business/intro-subttl_frame.png) center/100% no-repeat;
}

#business-intro .intro-wrp .intro-inner {
    display: block;
}

#business-intro .intro-wrp .intro-img {
    width: 88%;
    margin: 0 auto 5% auto;
}

#business-intro .intro-wrp .intro-content .com-txt {
    box-shadow: 4px 4px rgba(23, 157, 42, 0.1);
    background: #fff;
    padding: 5% 4%;
    border-radius: 10px;
    position: relative;
    margin-bottom: 5%;
}

#business-intro .intro-wrp .intro-content .com-txt:before {
    width: 28%;
    height: 17vw;
    position: absolute;
    content: '';
    background: url(../img/business/intro-material_deco.png) center/100% no-repeat;
    right: -6%;
    bottom: -3vw;
}

#business-intro .intro-wrp .intro-content .com-txt:after {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 4vw 3.5vw 4vw;
    border-color: transparent transparent #fff transparent;
    position: absolute;
    content: '';
    left: 0;
    top: -3.5vw;
    right: 0;
    margin: 0 auto;
}

#business-intro .intro-wrp .intro-content .com-txt p {
    font-size: 4.49333vw;
    color: #179d2a;
}

#business-intro .intro-wrp .intro-content .com-txt p span {
    background: url(../img/business/intro-material_present_bdr.png) bottom center/100% no-repeat;
    padding-bottom: 2%;
}

#business-intro .intro-wrp .intro-content .book-list {
    text-align: left;
    font-size: 4.044vw;
    color: #179d2a;
    letter-spacing: 0;
}

#business-intro .intro-wrp .intro-content .book-list li {
    margin-bottom: 2%;
    border-left: 4px solid #179d2a;
    padding-left: 2%;
    line-height: 1.4;
}

#business-intro .intro-wrp .intro-content .book-list li:last-child {
    margin-bottom: 0;
}

#business-intro .intro-wrp .intro-content .intro-content-txt {
    text-align: left;
}

/* #disability-pension
---------------------------------*/
#disability-pension .ttl01 {
    margin-bottom: 4%;
}

#disability-pension .disability-pension-wrp {
    display: block;
}

#disability-pension .disability-pension-illust {
    width: 65%;
    margin: 0 auto 3% auto;
}

#disability-pension .disability-pension-content {
    text-align: left;
}

#disability-pension .disability-pension-txt {
    margin-bottom: 5%;
}

#disability-pension .disability-pension-txt span {
    color: #179d2a;
    font-weight: 700;
}

#disability-pension .requirements-wrp {
    border-radius: 10px;
    border: 3px solid #e9f4d8;
    padding: 5% 3%;
}

#disability-pension .requirements-wrp dt {
    font-size: 4.94267vw;
    color: #179d2a;
    border-left: 4px solid #179d2a;
    line-height: 1.3;
    padding-left: 2%;
    margin-bottom: 2%;
}

#disability-pension .requirements-wrp .requirements-list li {
    border-bottom: 1px solid #e6e6e6;
    padding: 2% 2% 2% 10%;
    position: relative;
    letter-spacing: 0;
    font-size: 4.49333vw;
}

#disability-pension .requirements-wrp .requirements-list li:first-child {
    border-top: 1px solid #e6e6e6;
}

#disability-pension .requirements-wrp .requirements-list li .requirements-num {
    width: 7vw;
    height: 7vw;
    color: #fff;
    font-size: 4.49333vw;
    border-radius: 50%;
    background: #179d2a;
    position: absolute;
    left: 0;
    top: 2.5vw;
    display: flex;
    align-items: center;
    justify-content: center;
}

#disability-pension .requirements-wrp .requirements-list li em {
    color: #179d2a;
}

/* #business-detail
---------------------------------*/
#business-detail .business-detail-subttl {
    width: 62%;
    margin: 0 auto 5% auto;
    color: #ed8016;
    font-size: 5.84133vw;
    position: relative;
}

#business-detail .business-detail-subttl:before,
#business-detail .business-detail-subttl:after {
    width: 6%;
    height: 11vw;
    position: absolute;
    content: '';
    background: url(../img/business/business-subttl_frame.png) center/100% no-repeat;
    top: 0;
    bottom: 0;
    margin: auto 0;
}

#business-detail .business-detail-subttl:before {
    left: 0;
}

#business-detail .business-detail-subttl:after {
    right: 0;
    transform: scale(-1, 1);
}

#business-detail .business-detail-subttl span {
    font-size: 6.29067vw;
    background: url(../img/business/business-subttl_free_bdr.png) bottom center/100% no-repeat;
}

#business-detail .business-list {
    background: #f5fce2;
    border-radius: 10px;
    padding: 5% 3%;
    margin-bottom: 8%;
}

#business-detail .business-list .business-list-item {
    background: #fff;
    padding: 5% 3%;
    text-align: left;
    margin-bottom: 5%;
    border-radius: 5px;
}

#business-detail .business-list .business-list-item:last-child {
    margin-bottom: 0;
}

#business-detail .business-list .business-list-item span {
    display: block;
    border-left: 4px solid #179d2a;
    font-size: 4.044vw;
    color: #179d2a;
    padding-left: 2%;
    margin-bottom: 2%;
}

#business-detail .business-area {
    background: #fefce2;
    border-radius: 10px;
    padding: 5% 4%;
}

#business-detail .business-area h4 {
    font-size: 6.066vw;
    color: #179d2a;
    margin-bottom: 4%;
}

#business-detail .business-area .area-wrp {
    display: block;
    margin-bottom: 5%;
}

#business-detail .business-area .area-list {
    display: flex;
    width: 100%;
    justify-content: space-between;
    box-sizing: border-box;
    flex-wrap: wrap;
    gap: 3vw 4%;
    margin-bottom: 5%;
}

#business-detail .business-area .area-list .area-list-item {
    width: 48%;
    background: #fff;
    border-radius: 10px;
    padding: 5% 2%;
    box-sizing: border-box;
}

#business-detail .business-area .area-list .ttl02 {
    font-size: 4.49333vw;
}

#business-detail .business-area .area-list .item-inner-list {
    gap: 2vw 2%;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}

#business-detail .business-area .area-list .item-inner-list li {
    font-size: 2.92067vw;
    text-align: left;
    width: 32%;
}

#business-detail .business-area .area-attention {
    border-top: 1px solid #179d2a;
    border-bottom: 1px solid #179d2a;
    color: #179d2a;
    font-size: 3.37vw;
    padding: 2.5% 0;
}

/* #strength
---------------------------------*/
#strength {
    background: url(../img/business/business-btm_shape.png) top center/100% no-repeat, #e9f4d8;
}

#strength .strength-list li {
    margin-bottom: 8%;
    position: relative;
}

#strength .strength-list li:last-child {
    margin-bottom: 0;
}

#strength .strength-list .strength-img {
    margin-bottom: 5%;
}

#strength .strength-list .strength-img img {
    border-radius: 10px;
}

#strength .strength-list .strength-content {
    background: #fff;
    border-radius: 10px;
    padding: 5% 4%;
    box-sizing: border-box;
    text-align: left;
    position: relative;
}

#strength .strength-list .strength-content:before {
    width: 35%;
    height: 20vw;
    position: absolute;
    content: '';
    right: 0;
    bottom: -6vw;
    background: url(../img/business/strength-item_deco.png) center/100% no-repeat;
}

#strength .strength-list .strength-content h4 {
    font-size: 5.84133vw;
    border-bottom: 4px dotted #e9f4d8;
    margin-bottom: 3%;
    color: #179d2a;
    position: relative;
}

#strength .strength-list .strength-content h4 .strength-num {
    width: 11vw;
    height: 12vw;
    margin-right: 2%;
    text-align: center;
    vertical-align: baseline;
    display: inline-block;
    background: url(../img/business/strength-num_bg.png) center/100% no-repeat;
    color: #fff;
}

#strength .strength-list .strength-content h4 em {
    color: #ed8016;
}

/*==========================================
料金
===========================================*/
.price-pagenav {
    gap: 2vw 4%;
    width: 88%;
    margin: 0 auto;
}

.price-pagenav li {
    width: 48%;
}

.price-pagenav li a {
    width: 100%;
}

/* #price
---------------------------------*/
#price .price-list-item {
    border: 3px solid #e9f4d8;
    border-radius: 10px;
    padding: 5% 3%;
    margin-bottom: 6%;
    text-align: left;
}

#price .price-list-item:last-child {
    margin-bottom: 0;
}

#price .price-list-item .ttl02 {
    font-size: 4.49333vw;
    margin-bottom: 3%;
}

#price .price-list-item .item-inner {
    margin-bottom: 4%;
}

#price .price-list-item .item-inner:last-child {
    margin-bottom: 0;
}

#price .price-list-item .item-inner dt {
    color: #179d2a;
    background: #e9f4d8;
    font-size: 4.26867vw;
    font-weight: 700;
    padding: 2% 3%;
    margin-bottom: 2%;
}

#price .price-list-item .item-inner dd .tax {
    font-size: 2.696vw;
}

/* #step
---------------------------------*/
#step .step-list-item {
    background: #f5fce2;
    margin-bottom: 8%;
    position: relative;
    border-radius: 10px;
    padding: 5% 4%;
}

#step .step-list-item:last-child {
    margin-bottom: 0;
}

#step .step-list-item:last-child:after {
    border: none;
}

#step .step-list-item:after {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4vw 4.5vw 0 4.5vw;
    border-color: #179d2a transparent transparent transparent;
    left: 0;
    right: 0;
    bottom: -5.5vw;
    margin: 0 auto;
    position: absolute;
    content: '';
}

#step .step-list-item .step-icon {
    width: 21%;
}

#step .step-list-item .step-content {
    width: 77%;
    text-align: left;
}

#step .step-list-item .ttl02 {
    font-size: 4.49333vw;
}

/*==========================================
よくある質問
===========================================*/
#faq .faq-list-item {
    text-align: left;
    padding: 5% 0;
    border-bottom: 1px solid #179d2a;
}

#faq .faq-list-item dt {
    font-size: 4.49333vw;
    color: #179d2a;
    padding-left: 10%;
    margin-bottom: 2%;
    background: url(../img/faq/question_icon.png) left top/7% no-repeat;
}

#faq .faq-list-item dd {
    background: #f5fce2;
    border-radius: 10px;
    padding: 4%;
}

/*==========================================
代表挨拶
===========================================*/
#owner-greeting .greeting-wrp {
    display: block;
}

#owner-greeting .owner-img {
    margin-bottom: 4%;
}

#owner-greeting .greeting-content h4 {
    width: 51%;
    margin-bottom: 3%;
    border-bottom: 2px dashed #179d2a;
    font-size: 5.392vw;
    color: #179d2a;
    box-sizing: border-box;
    padding-left: 8%;
    background: url(../img/greeting/owner-name_deco.png) left center/14% no-repeat;
}

#owner-greeting .greeting-content h4 small {
    font-size: 4.044vw;
}

#owner-greeting .greeting-content .profile-wrp {
    background: #f5fce2;
    border-radius: 10px;
    padding: 4%;
    margin-bottom: 4%;
}

#owner-greeting .greeting-content .profile-wrp:last-child {
    margin-bottom: 0;
}

/*==========================================
アクセス
===========================================*/
#info .com-dl {
    margin-bottom: 7%;
}

#info .com-dl dl dt {
    border-radius: 0;
}

#info .com-dl dd .tel-attention {
    display: block;
    width: 58%;
}

#info #g-map iframe {
    border-radius: 10px;
}

/*==========================================
一覧ぺージ用カテゴリ(セレクトボックス)
===========================================*/
.category-select {
    overflow: hidden;
    width: 55%;
    margin: 0 0 16% auto;
    text-align: center;
    position: relative;
    border-radius: 2px;
    border: 2px solid #2e2e2e;
    background: #fff;
    font-size: 3.59467vw;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.category-select:before {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    /* Safari用 */
    transform: translateY(-50%);
    z-index: 10;
    right: .8em;
    width: 0;
    height: 0;
    padding: 0;
    content: '';
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #2e2e2e;
    pointer-events: none;
}

.category-select select {
    width: 100%;
    display: flex;
    align-items: center;
    padding-right: 1em;
    cursor: pointer;
    text-indent: .01px;
    text-overflow: ellipsis;
    border: none;
    outline: none;
    background: transparent;
    background-image: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 10px 38px 10px 8px;
    color: #2e2e2e;
    font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.category-select select::-ms-expand {
    display: none;
}

/*==========================================
お知らせ
===========================================*/
.post-wrap .column-lists>li {
    border-bottom: 1px solid #ccc;
}

.post-wrap .column-lists>li a {
    display: flex;
    width: 100%;
    justify-content: space-between;
    box-sizing: border-box;
    padding: 4% 0;
}

.post-wrap .column-lists>li:last-child {
    border-bottom: none;
}

.post-wrap .column-lists .post-area {
    width: 55%;
}

.post-wrap .column-lists .post-ttl {
    text-align: left;
    margin-bottom: 4%;
    display: flex;
    width: 100%;
    justify-content: space-between;
    box-sizing: border-box;
    flex-wrap: wrap;
}

.post-wrap .column-lists .post-ttl time {
    width: 38%;
    font-size: 2.47133vw;
    color: #ed8016;
    text-align: left;
    padding: 2px 0;
    letter-spacing: .05em;
}

.post-wrap .column-lists .post-ttl .category-label {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    width: 61%;
}

.post-wrap .column-lists .post-ttl .category-label li {
    box-sizing: border-box;
    border: 1px solid #ed8016;
    color: #fff;
    background: #ed8016;
    padding: 2px 5px;
    text-align: center;
    font-size: 2.55vw;
    margin: 0 2% 2% 0;
}

.post-wrap .column-lists .post-ttl .category-label li:last-child {
    margin-right: 0;
}

.post-wrap .column-lists .post-ttl .column-ttl {
    width: 100%;
    font-size: 4.044vw;
    display: block;
    margin-top: 3%;
    font-weight: 500;
}

.post-wrap .column-lists .post-body {
    text-align: left;
    margin-bottom: 4%;
}

.post-wrap .column-lists .more-btn {
    width: 45%;
    font-size: 3.2vw;
    margin: inherit;
    margin-left: auto;
    font-weight: bold;
    background: #ed8016;
    border: 1px solid #ed8016;
    box-sizing: border-box;
    padding: 3% 2%;
    display: block;
    color: #fff;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.post-wrap .column-lists .thumb {
    width: 40%;
    height: 33vw;
}

.post-wrap .post-content {
    padding: 0 3% 3% 3%;
    box-sizing: border-box;
    text-align: left;
}

/*----------------------------------
詳細ページのカテゴリー表示(タイトル下部)
----------------------------------*/
.single-meta {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 6%;
}

.single-meta time {
    font-size: 3vw;
    width: 24%;
    font-weight: normal;
    display: block;
    padding: 3px 0;
}

.single-meta .category-label {
    display: flex;
    width: 75%;
    flex-wrap: wrap;
    align-items: center;
}

.single-meta .category-label li {
    font-size: 2.47133vw;
    margin: 0 4% 2% 0;
}

.single-meta .category-label li:last-child {
    margin-right: 0;
}

.single-meta .category-label li a {
    border: 1px solid #ed8016;
    color: #ed8016;
    padding: 3px 5px;
    border-radius: 25px;
    display: block;
}

.single-meta .category-label li a:hover {
    opacity: 1;
    color: #fff;
    background: #ed8016;
}

/*----------------------------------
詳細ページのカテゴリー表示(テキストエリア下部)
----------------------------------*/
.single-category {
    max-width: 250px;
    min-width: 150px;
    margin-top: 10px;
    margin-left: auto;
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
    font-size: 2.55vw;
}

.single-category dt {
    width: 80px;
}

.single-category dt:after {
    content: ':';
    padding: 0 5px;
}

.single-category dd {
    max-width: 135px;
    line-height: 2;
    min-width: 60px;
}

.single-category ul {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.single-category ul li {
    margin-right: 5px;
}

.single-category ul li:last-child {
    margin-right: 0;
}

.single-category ul li a {
    display: block;
    padding-left: 8px;
    position: relative;
}

.single-category ul li a:before {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    /* Safari用 */
    transform: translateY(-50%);
    z-index: 10;
    left: 0;
    content: '#';
}

.single-category ul li a:hover {
    background: #ccc;
}

/*==========================================
お問い合わせ
===========================================*/
#contact {
    /* チェックボックス・ラジオボタン
  -------------------------------------------------- */
    /*==================================================
   日付選択フォーム
  ================================================== */
}

#contact .custom-text {
    font-size: calc((12 / 390) * 100vw);
    text-align: left;
}

#contact .contact-form {
    text-align: left;
    margin-bottom: 5%;
}

#contact .contact-form dl dt {
    position: relative;
}

#contact .contact-form dl dt em {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    /* Safari用 */
    transform: translateY(-50%);
    z-index: 10;
    right: 10px;
    color: #f00;
    background: #fff;
    font-weight: 500;
    padding: 3px;
    font-size: 3vw;
}

#contact .contact-form dl dd {
    padding: 3% 0;
}

#contact .contact-form dl dd li {
    list-style: none;
}

#contact .contact-form dl dd textarea {
    height: 150px;
    line-height: 1.8;
}

#contact .contact-form .txtarea {
    width: 100%;
    border: 1px solid #ccc;
    background: #fff;
    padding: 3%;
    font-size: 3.59467vw;
    box-sizing: border-box;
    font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
    border-radius: 0;
}

#contact .contact-form select {
    padding: 5px;
    box-sizing: border-box;
    font-size: 3.37vw;
    font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
    color: #333;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 0;
}

#contact .contact-form #pc01,
#contact .contact-form #pc02 {
    width: 95px;
}

#contact .contact-form #date1,
#contact .contact-form #date2,
#contact .contact-form #date3 {
    width: 73%;
}

#contact .contact-form #address {
    margin-top: 15px;
}

#contact .contact-form .error-text {
    color: #ff0000;
    margin-bottom: 2%;
}

#contact .contact-form .upload-item-wrap #file01 {
    margin-bottom: 4%;
}

#contact .contact-form .upload-item-wrap .select-img-wrap {
    display: flex;
    width: 100%;
    justify-content: space-between;
    box-sizing: border-box;
}

#contact .contact-form .upload-item-wrap .thumb {
    width: 45%;
    margin-right: 25px;
}

#contact .contact-form .upload-item-wrap .ancion-btn-wrap {
    width: 50%;
}

#contact .contact-form .upload-item-wrap .ancion-btn-wrap .ancion-btn,
#contact .contact-form .upload-item-wrap .ancion-btn-wrap .upload-button {
    width: 100%;
    border-radius: 5px;
    color: #fff;
    font-size: 3.14533vw;
    text-align: center;
    padding: 5px;
    display: block;
    box-sizing: border-box;
    cursor: pointer;
    -webkit-transition: all .3s;
    transition: all .3s;
}

#contact .contact-form .upload-item-wrap .ancion-btn-wrap .ancion-btn:hover {
    filter: alpha(opacity=60);
    opacity: .6;
}

#contact .contact-form .upload-item-wrap .ancion-btn-wrap .upload-button {
    margin-bottom: 5px;
    background: #ed8016;
}

#contact .contact-form .upload-item-wrap .ancion-btn-wrap p {
    background: #179d2a;
}

#contact .contact-form .upload-item-wrap .ancion-btn-wrap #file01 {
    width: 100%;
}

#contact .contact-form .upload-item-wrap .ancion-btn-wrap input {
    display: none !important;
}

#contact .contact-submits-wrap {
    margin-top: 5%;
}

#contact .g-recaptcha div {
    margin: 0 auto;
    margin-bottom: 5%;
}

#contact input[type='button'][disabled],
#contact input[type='submit'][disabled] {
    opacity: .7;
    pointer-events: none;
}

#contact input[type='button'],
#contact input[type='submit'],
#contact .contact-submits-wrap button {
    font-size: 3.59467vw;
    font-weight: 500;
    color: #fff;
    background: #fff;
    padding: 4% 2%;
    box-sizing: border-box;
    font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
    -webkit-transition: all .3s;
    transition: all .3s;
    border: 1px solid #ed8016;
    color: #ed8016;
    border-radius: 0;
}

#contact input[type='button']:hover,
#contact input[type='submit']:hover,
#contact .contact-submits-wrap button:hover {
    background: #ed8016;
    cursor: pointer;
    color: #fff;
    filter: alpha(opacity=100);
    opacity: 1;
}

#contact .check-btn {
    width: 75%;
    margin: 0 auto;
    margin-top: 4%;
}

#contact .back-btn {
    width: 52%;
    margin: 0 auto;
}

#contact .send-btn {
    width: 40%;
    margin: 0 auto;
    margin-left: 4%;
}

#contact input[type="submit"],
#contact select {
    -webkit-appearance: none;
}

#contact .privacy-agree {
    text-decoration: underline;
}

#contact input[type=radio],
#contact input[type=checkbox] {
    display: inline-block;
    margin-right: 6px;
}

#contact input[type=radio]+label,
#contact input[type=checkbox]+label {
    position: relative;
    display: inline-block;
    margin-right: 12px;
    line-height: 30px;
    cursor: pointer;
}

#contact input[type=radio],
#contact input[type=checkbox] {
    display: none;
    margin: 0;
}

#contact input[type=radio]+label,
#contact input[type=checkbox]+label {
    margin-bottom: 5px;
    padding: 0 0 0 24px;
}

#contact input[type=radio]+label::before,
#contact input[type=checkbox]+label::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    width: 18px;
    height: 18px;
    margin-top: -9px;
    background: #FFF;
}

#contact input[type=radio]+label::before {
    border: 2px solid #ccc;
    border-radius: 30px;
}

#contact input[type=checkbox]+label::before {
    border: 2px solid #ccc;
}

#contact input[type=radio]:checked+label::after,
#contact input[type=checkbox]:checked+label::after {
    content: "";
    position: absolute;
    top: 50%;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
}

#contact input[type=radio]:checked+label::after {
    left: 5px;
    width: 8px;
    height: 8px;
    margin-top: -4px;
    background: #e74c3c;
    border-radius: 8px;
}

#contact input[type=checkbox]:checked+label::after {
    left: 3px;
    width: 16px;
    height: 8px;
    margin-top: -8px;
    border-left: 3px solid #e74c3c;
    border-bottom: 3px solid #e74c3c;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

#contact .date-list {
    padding-left: inherit;
}

#contact .date-list li {
    list-style: none;
    margin-bottom: 15px;
}

#contact .date-list li p {
    margin-bottom: 5px;
}

.complete-box p a {
    text-decoration: underline;
}

/*==========================================
プライバシーポリシー
===========================================*/
#privacy .privacy-box {
    margin-bottom: 6%;
    text-align: left;
}

#privacy .privacy-box:last-child {
    margin-bottom: 0;
}

#privacy .privacy-box p {
    margin-bottom: 5%;
}

#privacy .privacy-box p:last-child {
    margin-bottom: 0;
}

#privacy .privacy-box ul {
    margin-top: 5%;
}

/*==========================================
プライバシーポリシー(LPフレーム時)
===========================================*/
/*==========================================
404.php
===========================================*/
#err-cont .txt-blc a {
    text-decoration: underline;
}