/* @import url(../other/fonts.googleapis.com_33966b); */
.under #main {
    margin-bottom: 120px
}
.under #main * {
    box-sizing: border-box;
    color: #404040;
    outline: none;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400
}
.under #main img {
    max-width: 100%
}
.under #main .bold {
    font-weight: bold;
    font-size: 18px;
}
.under #main .bold02 {
    font-size: 24px;
}
.under #main .inner {
    width: 1200px;
    margin: 0 auto 120px
}
.under #main p, .under #main dt, .under #main dd, .under #main td, .under #main th, .under #main li {
    line-height: 2em;
    font-size: 16px;
    letter-spacing: 0.05em
}
.under #main p {
    margin-bottom: 30px
}
.under #main p.mb0 {
    margin-bottom: 0;
}
.under #main p.mb10 {
    margin-bottom: 10px;
}
.under #main a, .under #main a.hover_no, .under #main a.hover_no:hover {
    color: #6ac6c2;
    text-decoration: underline
}
.under #main a:hover {
    text-decoration: none
}
.under #main .image_l {
    float: left;
    margin: 0 90px 90px 0;
}
.under #main .image_r {
    float: right;
    margin: 0 0 90px 90px;
}
.under #main .image_l.mb15, .under #main .image_r.mb15 {
    margin-bottom: 15px
}
.under #main .image_l.mb50, .under #main .image_r.mb50 {
    margin-bottom: 50px
}
.under #main .img_center img {
    max-width: 800px;
    margin: 0 auto 30px;
    max-height: 600px;
}
/*.under #main .img_center img{max-height: 100%;}*/
.under #main sup {
    vertical-align: super;
    font-size: smaller;
    font-size: 8px;
}
.under #main .txt_sm {
    font-size: 80%;
}
.under #main .section {
    padding: 0 0px 160px 0;
    margin-bottom: 0
}
.under #main .section:last-child {
    padding-bottom: 0px;
}
.under #main .gg_map {
    width: 100%;
    height: 400px
}
.under #main .gg_map iframe {
    width: 100%;
    height: 100%
}
.under #main h2, .under #main h3, .under #main h3 span, .under #main h4, .under #main h5, .under #main h6 {
    line-height: 1.65em;
    letter-spacing: 0.05em;
    font-weight: 500;
    margin-bottom: 30px;
}
.under #main h2 {
    text-align: center;
    font-size: 36px;
    color: #fff;
    margin-bottom: 0;
    font-weight: 700
}
.under #main h3 {
    text-align: center;
    position: relative;
    z-index: 1;
    font-size: 40px;
    color: #6ac6c2;
    margin-bottom: 90px
}
.under #main h4 {
    font-size: 28px;
    border-bottom: 1px solid #404040;
    letter-spacing: 0.1em;
    padding-bottom: 10px
}
.under #main h5 {
    font-size: 24px;
    border-left: 5px solid #6ac6c2;
    padding-left: 20px;
}
.under #main h5.right {
    display: table;
    margin-left: auto;
}
.under #main h6 {
    font-size: 20px;
}
.under #main h6::first-letter {
    color: #6ac6c2
}
/* TOP INFO */
.under #main #top_info {
    background: url(../images/top_info_bg.jpg) center /cover no-repeat;
}
.under #main #top_info .inner {
    height: 320px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-top: 70px
}
/* TOPIC PATH */
.under #main #topic_path {
    margin-bottom: 55px;
}
.under #main #topic_path ul {
    display: flex;
    padding: 15px 0;
    flex-wrap: wrap;
}
.under #main #topic_path li {
    display: inline-block;
    letter-spacing: 0
}
.under #main #topic_path li a {
    text-decoration: none;
    color: #404040;
}
.under #main #topic_path li a:hover {
    color: #6ac6c2;
}
/* BUTTON */
.under #main .btn_u {}
.under #main .btn_u a {
    border: 1px solid #00561f;
    width: 420px;
    height: 50px;
    color: #00561f;
    display: flex;
    text-decoration: none;
    align-items: center;
    justify-content: center;
    position: relative;
    margin: 0 auto;
    padding: 0 45px;
    border-radius: 50px;
    font-size: 18px;
    font-weight: 500;
    transition: all ease 0.3s;
}
.under #main .btn_u a::before {
    content: "";
    width: 30px;
    height: 8px;
    background: url(../images/ic_btn.png) center /cover no-repeat;
    position: absolute;
    right: 10px;
    top: calc(50% - 4px);
    transition: all ease 0.3s
}
.under #main .btn_u.active a, #works #main .list_anchor li.btn_u:nth-child(1) a, #event #main .list_anchor li.btn_u:nth-child(1) a, #news #main .list_anchor li.btn_u:nth-child(1) a,
#works:not(#works-taxonomy) #main .list_anchor li.btn_u:nth-child(3) a{
    background: #00561f;
    color: #fff;
}
.under #main .btn_u.active a:before {
    background: url(../images/ic_btn_w.png) center /cover no-repeat;
}
#works:not(#works-taxonomy) #main .btn_u a:before {
	background: url(../images/ic_btn_w.png) center /cover no-repeat;
}
/* TABLE */
.under #main table {
    margin-bottom: 50px;
}
.under #main table th {
    background: #ddf2f1;
    border: none;
    border-top: 20px #fff solid;
    border-bottom: 20px #fff solid;
    padding: 10px 15px;
    font-weight: 500;
    
}
/*.under #main table.mailform th, .under #main table th {
    font-size: 18px;
    padding: 10px 15px;
    border: none;
    position: relative;
    z-index: 0
}
.under #main table th::before {
    background: #ddf2f1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    content: '';
    position: absolute;
}
.under #main table.tb_block th::before {
    height: calc(100% - 20px);
    top: 10px;
}*/
.under #main table th.bg2 {
    color: #fff;
}
.under #main table th.bg2::before {
    background: #00561f
}
.under #main table td {
    border: none;
    background: none;
    padding: 10px 30px;
    border-bottom: 1px solid #a0a0a0
}
.under #main table.tb_fix {
    table-layout: fixed;
}
.under #main table.td_top td {
    vertical-align: top
}
.under #main table.tb_block th.box_pc {
    display: table-cell
}
/* LIST STYLE */
.under #main .list01 {
    margin-bottom: 50px;
}
.under #main .list01 li {
    display: block;
    padding-left: 30px;
    font-weight: 500;
    position: relative;
    margin-bottom: 5px;
}
.under #main .list01 li::before {
    width: 12px;
    height: 3px;
    background: #6ac6c2;
    position: absolute;
    top: 14px;
    left: 0;
    content: '';
}
.under #main .list02 {
    margin-bottom: 50px
}
.under #main .list02 li {
    display: block;
    padding-left: 10px;
    font-weight: 400;
    position: relative;
    margin-bottom: 20px;
    border-left: 3px solid #6ac6c2;
    line-height: 1em;
}
.under #main .list02 li span {
    font-weight: 700;
    color: #6ac6c2;
    margin-right: 30px;
    width: 35px;
    flex-shrink: 0
}
/* FRAME 01 */
.under #main .frame_pickup {
    background: #faf5e9;
    padding: 50px 0 80px;
    margin-bottom: 120px
}
.under #main .frame_pickup .title_pickup {
    position: relative;
    padding-left: 220px;
    margin-bottom: 40px
}
.under #main .frame_pickup .title_pickup span {
    width: 225px;
    height: 225px;
    font-size: 36px;
    font-weight: 700;
    color: #fff;
    background: #6ac6c2;
    position: absolute;
    top: -50px;
    left: -40px;
    padding: 60px 0 0 40px;
    line-height: 1em;
}
.under #main .frame_pickup .title_pickup .big {
    font-size: 28px;
    font-weight: bold;
    margin-bottom: 0;
}
.under #main .frame_pickup .content_pickup {
    position: relative;
    z-index: 2;
    background: #fff;
    border-radius: 30px;
    padding: 70px 200px 80px
}
/* STEP LIST */
.under #main .step_list {}
.under #main .step_list dl {
    margin-bottom: 120px;
    position: relative;
    border: 2px solid #404040;
    padding: 11px;
    display: flex;
}
.under #main .step_list dl::before {
    border: 1px solid #404040;
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    top: 10px;
    left: 10px;
    content: '';
    z-index: 0;
    position: absolute;
    box-sizing: border-box;
}
.under #main .step_list dl::after {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 33px 45px 0 45px;
    border-color: #6ac6c2 transparent transparent transparent;
    position: absolute;
    bottom: -75px;
    left: calc(50% - 45px);
    content: ''
}
.under #main .step_list dl:last-child::after {
    display: none;
}
.under #main .step_list dt {
    position: relative;
    z-index: 1;
    width: 600px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
}
.under #main .step_list dt p {
    margin-bottom: 0
}
.under #main .step_list dt .name {
    width: 85px;
    background: #6ac6c2;
    color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 20px;
    line-height: 1.6em;
    font-weight: 500;
    flex-shrink: 0;
    height: 100%;
}
.under #main .step_list dt .name span {
    font-size: 42px;
    font-weight: 700;
    color: #fff;
}
.under #main .step_list dt .title {
    font-size: 28px;
    font-weight: 700;
    width: calc(100% - 85px);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: left;
    padding-right: 15px
}
.under #main .step_list dd {
    position: relative;
    z-index: 2;
    padding: 60px 60px 60px 0
}
/* ANCHOR LINK */
.under #main .list_anchor {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 50px
}
.under #main .list_anchor li {
    margin: 0px 20px 15px;
}
.under #main .list_anchor.list_3btn li {
    width: 30%;
    margin: 0 1% 15px
}
.under #main .list_anchor.list_3btn li a {
    width: 100%;
}
.under #main .list_anchor.list_4btn li {
    width: 23%;
    margin: 0 1% 15px
}
.under #main .list_anchor.list_4btn li a {
    width: 100%;
}
/*  FAQ LIST */
.under #main .qa_list {
    width: 1000px;
    max-width: 100%;
    margin: 0 auto 120px;
}
.under #main .qa_list dl {
    box-sizing: border-box;
    box-shadow: 0px 0px 10px 4px rgba(0, 0, 0, 0.1);
    margin-bottom: 30px;
}
.under #main .qa_list dt {
    position: relative;
    background: #6ac6c2;
    padding: 10px 65px 10px 40px;
    display: flex;
    font-size: 20px;
    font-weight: 500;
    color: #fff;
    cursor: pointer;
}
.under #main .qa_list dt::before {
    width: 30px;
    height: 16px;
    background: url(../images/ic_qa.png) center /cover no-repeat;
    position: absolute;
    top: calc(50% - 8px);
    right: 35px;
    content: '';
    transition: all ease 0.3s;
}
.under #main .qa_list dd {
    position: relative;
    background: #faf5e9;
    display: flex;
    padding: 60px 65px 60px 40px
}
.under #main .qa_list dt span, .under #main .qa_list dd span {
    width: 42px;
    height: 42px;
    background: #fff;
    border-radius: 50%;
    font-size: 24px;
    color: #004ea2;
    font-weight: 700;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    flex-shrink: 0;
    margin-right: 40px;
}
.under #main .qa_list dd span {
    color: #eb6877;
}
.under #main .qa_list dd .qa_txt {}
.under #main .qa_list dt.active::before {
    transform: rotate(180deg)
}
/* BANNER */
.under #main .bnn_list.section {
    margin-bottom: 0px;
}
.under #main .bnn_list {
    margin-bottom: 50px
}
.under #main .bnn_list p {
    width: 100%;
    height: 200px;
    position: relative;
    background: #404040;
}
.under #main .bnn_list p a {
    font-size: 30px;
    font-weight: 700;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
    height: 100%;
    text-decoration: none;
    flex-wrap: wrap;
    line-height: 1em;
    position: relative;
    z-index: 1
}
.under #main .bnn_list p a::before {
    background: rgba(65, 103, 178, 0.7);
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    content: '';
    z-index: -1;
    transition: all ease 0.5s;
}
.under #main .bnn_list p a::after {
    border: 2px solid #fff;
    box-sizing: border-box;
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    position: absolute;
    top: 10px;
    left: 10px;
    content: '';
    z-index: -1
}
.under #main .bnn_list p a span {
    color: #fff;
    display: inline-block;
    position: relative;
    z-index: 2
}
.under #main .bnn_list .bg1 {
    background: url(../images/bnn_bg1.jpg) center /cover no-repeat;
}
.under #main .bnn_list .bg2 {
    background: url(../images/bnn_bg2.jpg) center /cover no-repeat;
}
.under #main .bnn_list .bg3 {
    background: url(../images/bnn_bg3.jpg) center /cover no-repeat;
}
.under #main .bnn_list .bg_tel {
    background: url(../images/bnn_tel.jpg) center /cover no-repeat;
}
.under #main .bnn_list .bg_tel a {
    font-size: 35px;
    flex-direction: column;
}
.under #main .bnn_list .bg_tel a span {
    font-size: 30px;
    margin-top: 15px
}
.under #main .bnn_list .bg_tel a::before {
    display: none;
}
/* ALL */
.under #main .inner:last-child, .under #main table:last-child, .under #main .list_anchor:last-child, .under #main .bnn_list:last-child, .under #main .list01:last-child, .under #main .list01 li:last-child, .under #main .list02:last-child, .under #main .list02 li:last-child, .under #main .qa_list:last-child, .under #main .qa_list dl:last-child, .under #main .step_list dl:last-child, .under #main .frame_pickup:last-child, .under #main p:last-child, .under #main .section p:last-child {
    margin-bottom: 0
}
/*==========================================================================*/
/*                                WORKS                                     */
/*==========================================================================*/
.under #main .work_list {
    display: flex;
    flex-wrap: wrap
}
.under #main .work_list dl {
    width: 32%;
    margin: 0 2% 50px 0;
    position: relative;
    padding-left: 34px;
}
/* .under #main .work_list dl:last-child, .under #main .work_list dl:nth-child(3n + 3) {
    margin-right: 0
} */
.under #main .work_list dt {
    flex-shrink: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-bottom: 15px;
}
.under #main .work_list dt a {
    text-decoration: none;
    color: #404040;
}
.under #main .work_list dd {
    width: 100%
}
.under #main .work_list dd a {
    width: 100%;
    height: 230px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: #efefef;
}
.under #main .work_list dd a img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    flex-shrink: 0;
}
/*==========================================================================*/
/*                                EVENT                                     */
/*==========================================================================*/
.under #main .event_list {}
.under #main .event_list dl {
    display: flex;
    justify-content: space-between;
    margin-bottom: 25px;
    padding-bottom: 25px;
    border-bottom: 1px dashed #ccc;
}
.under #main .event_list dt {
    width: 550px;
    display: flex;
    flex-direction: column;
}
.under #main .event_list dt h4 {
    width: 100%;
	font-size: 18px;
}
.under #main .event_list dt h4 a {
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #404040;
    text-decoration: none;
}
.under #main .event_list dt .btn_u {
    width: 200px;
    margin: 0;
    margin-top: auto;
}
.under #main .event_list dt .btn_u a {
    width: 100%;
    margin: 0
}
.under #main .event_list dd {
    width: 580px
}
.under #main .event_list dd a {
    width: 100%;
    height: 385px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.under #main .event_list dd a img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    flex-shrink: 0;
}
.under #main .event_list dt .list02 li, .under #main .event_post .list02 li {
    display: flex;
    line-height: 1.5em
}
/*==========================================================================*/
/*                                NEWS                                      */
/*==========================================================================*/
.under #main .news_list {}
.under #main .news_list dl {
    display: flex;
    justify-content: space-between;
    margin-bottom: 25px;
    padding-bottom: 25px;
    border-bottom: 1px dashed #ccc;
}
.under #main .news_list dt {
    width: 550px
}
.under #main .news_list dt .list02 {
    margin-bottom: 15px
}
.under #main .news_list dt h4 {
    width: 100%
}
.under #main .news_list dt h4 a {
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #404040;
    text-decoration: none;
}
.under #main .news_list dt .news_txt {
    text-overflow: ellipsis;
    overflow: hidden;
    max-height: 200px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}
.under #main .news_list dd {
    width: 580px
}
.under #main .news_list dd a {
    width: 100%;
    height: 385px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.under #main .news_list dd a img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    flex-shrink: 0;
}
/* PAGINATION */
.under #main .pagination {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    text-align: center;
    margin: 0 auto
}
.under #main .pagination li {
    margin: 0 10px 10px
}
.under #main .pagination li a {
    width: 40px;
    height: 40px;
    text-align: center;
    border: 1px solid #6ac6c2;
    background: #fff;
    display: flex;
    text-decoration: none;
    color: #6ac6c2;
    text-decoration: none;
    justify-content: center;
    align-items: center;
    transition: all ease 0.3s;
}
.under #main .pagination li:hover a, .under #main .pagination li.active a {
    background: #6ac6c2;
    color: #fff;
}
.under #main .pagination li.disabled {
    display: none
}
/* SNS FORM */
.under #main .sns_form {
    margin-bottom: 50px;
}
.under #main .sns_form p {
    text-align: center;
}
.under #main .sns_form p a {
    font-size: 9px;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 80px;
    height: 30px;
    text-decoration: none;
    margin-left: 10px
}
.under #main .sns_form p a img {
    margin-right: 5px
}
.under #main .sns_form p .tw {
    background: #1da1f2;
    margin: 0px 0 0 20px;
}
.under #main .sns_form p .fb {
    background: #4167b2;
    margin: 0px;
}
.under #main .sns_form p .pin {
    background: #bd081c;
    margin-left: 0;
}
.under #main .sns_form p .ins {
    background: #f05161;
    margin-left: 0;
}
/* BACK PREV DETAIL POST */
.under #main .next_prev ul {
    position: relative;
    display: flex;
    justify-content: center;
}
.under #main .next_prev li {
    width: 30%;
}
.under #main .next_prev li a {
    width: 100%;
}
.under #main .prevPage {
    position: absolute;
    top: 0;
    left: 0
}
.under #main .prevPage a::before {
    right: inherit;
    left: 15px;
    background: url(../images/ic_btn_re.png) center /cover no-repeat;
}

.under #main .nextPage {
    position: absolute;
    top: 0;
    right: 0
}
.under #main .next_prev .btn_back a::before {
    display: none;
}
.under #main .wp-pagenavi {
    text-align: center;
    padding: 0px 0 0 0;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.under #main .wp-pagenavi a, .under #main .wp-pagenavi span {
    margin: 5px;
}
.under #main .wp-pagenavi a, .under #main .wp-pagenavi span {
    padding: 1px 8px 3px;
    text-decoration: none;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #000;
    background: #f0f0f0;
    width: 40px;
    height: 40px;
    box-sizing: border-box;
    font-size: 16px;
    border: none;
}
.under #main .wp-pagenavi a.last, .under #main .wp-pagenavi a.first {
    width: auto;
}
.under #main .wp-pagenavi a.nextpostslink, .under #main .wp-pagenavi a.previouspostslink {
    font-size: 22px;
    line-height: 0;
}
.under #main .wp-pagenavi .current, .under #main .wp-pagenavi .current:hover {
    background: #6ac6c2;
    color: #fff;
    cursor: pointer;
    border: none;
    text-decoration: none;
    font-weight: normal;
}
.under #main .wp-pagenavi a:hover {
    background: #6ac6c2;
    color: #fff;
    cursor: pointer;
}

/*contact*/
.under #main .tb_contact th {
    text-align: left;
     padding: 20px 15px;
   
}
.under #main .tb_contact  tr:last-child  td {
    border-bottom: none;
}
.under #main .input_text01 {
    width: 350px;
    height: 38px;
    padding: 5px;
    box-sizing: border-box;
}
.under #main .tb_contact .d-flex-day .input_text01{
    width: auto;
    max-width: 150px;
}
.under #main .tb_contact .d-flex-day .wpcf7-form-control-wrap{
    margin-right: 10px;
}
.under #main .txt_info {
    color: #009900;
    font-size: 80%;
}
.under #main .must {
    background: #ed6862;
    color: #fff;
    font-size: 10px;
    font-weight: normal;
    padding: 0px 5px 2px;
    border-radius: 3px;
    line-height: 1.7;
    position: relative;
    right: 10px;
    top: 7px;
    float: right;
    height: 100%;
}
.under #main .must_line .must {
    top:-4px;
}
.mwform-radio-field, .mwform-checkbox-field {
    border: dashed 1px #CCCCCC;
    padding: 5px;
    margin: 5px;
}
.mwform-radio-field label, .mwform-checkbox-field label {
    display: flex;
    align-items: center;
}
.mwform-radio-field-text {
    display: block;
}
.textarea_text01 {
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
}
.under #main .btn_contact, .under #main .back-btn {
    width: 220px;
    height: 56px;
    box-sizing: border-box;
    background: #6ac6c2;
    color: #fff;
    border: none;
    font-weight: bold;
    font-size: 18px;
    margin: 0 auto;
    cursor: pointer;
    transition: all 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
     appearance: none;
    -moz-appearance: none;
-webkit-appearance: none;
}
.under #main .back-btn {
    background: #666;
}
.under #main .btn_contact_w {
    text-align: center;
    margin-top: 30px;
}
.list_check.list_check01 {
    display: flex;
    flex-direction: column;
}
#confirm .txt_info, #confirm .must, #confirm table td br, #confirm .btn_zipcode, #confirm .tb_none {
    display: none;
}
#confirm .btn_contact_w {
    display: flex;
    justify-content: center;
}
.under#confirm #main .btn_contact_w input {
    margin: 0 5px;
}
.under #main .btn_contact a {
    color: #fff;
    text-decoration: none;
}
.box_zipcode, .list_select01 {
    display: flex;
}
.list_select01_sub, .list_select01_sub > span {
    margin-right: 20px;
}
.list_select01 select {
    width: 200px;
    border: solid 1px #404040;
    height: 40px;
}
.btn_zipcode {
    width: 130px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    margin-left: 10px;
    cursor: pointer;
    box-sizing: border-box;
}
.under #main .btn_zipcode {
    background: #404040;
    color: #fff;
}
.clear_left {
    clear: left;
}
.list_check02 {
    display: flex;
    flex-wrap: wrap;
}
span.wpcf7-list-item label {
    padding: 5px;
    display: block;
}
.list_check span.wpcf7-list-item {
    width: 100%;
}
.list_check.list_check02 span.wpcf7-list-item {
    width: auto;
}
span.wpcf7-list-item {
    border: dashed 1px #CCCCCC;
    padding: 0;
}
span.wpcf7-list-item:hover {
    background: #FFEE7C;
}
span.wpcf7-list-item {
    margin-left: 0.5em;
}
.list_check span.wpcf7-list-item {
    display: inline-block;
    margin-left: 0.5em;
    margin-bottom: 10px;
    padding: 0;
}
.under #main .wpcf7-not-valid-tip  {
    color: #dc3232;
    font-size: 1em;
    font-weight: normal;
    display: block;
}
button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
/*17/12*/
.under #main .ct_bnr {
    display:flex;
    align-items: center;
    padding: 19px;
    background: #efefef;
    max-width: 600px;
    margin: 0 auto 25px;
}
.under #main .t3_01 {
    /* margin-bottom: 30px; */
}
.under #main .ct_bnr.mb_ct_bnr {
    margin-bottom: 70px;
}
.under #main .ct_bnr p {
    margin-bottom: 0px;
}
.under #main .ct_bnr .box_logo_img img {
    height: 30px;
    width:auto;
    max-width: initial;
}
.under #main .ct_bnr_txt {
    margin-left: 30px;
    font-size: 12px;
    line-height: 1.5;
}
.under #main .rad01 {
    margin-top: 20px;
}
button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: solid 1px;
}
.btn_qa {
	width: 53%;
	border: 2px solid #404040;
  padding: 11px;
	margin: 0 1% 15px;
}
.under #main .btn_qa a {
  border: 1px solid #404040;
  color: #404040;
  display: flex;
  text-decoration: none;
  align-items: center;
  justify-content: center;
  position: relative;
  margin: 0 auto;
  padding: 0 45px;
  font-weight: 500;
  transition: all ease 0.3s;
	font-size: 18px;
  padding: 0 40px 0 0px;
	width: 100%;
  height: 70px;
}
.under #main .btn_qa a:hover {
	opacity: 0.6;
}
 .btn_qa a::before {
  content: "";
  width: 30px;
  height: 8px;
  background: url(../images/ic_btn.png) center /cover no-repeat;
  position: absolute;
  right: 10px;
  top: calc(50% - 4px);
  transition: all ease 0.3s;
}
.under #main .btn_qa .txt_q {
  width: 85px;
  background: #6ac6c2;
  color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 20px;
  line-height: 1.6em;
  font-weight: 500;
  flex-shrink: 0;
  height: 100%;
	color: #fff;
	margin-right: 20px;
}
.under .list_anchor .comple_tour,
.under .list_anchor .finan_plan,
.under .list_anchor .land_consultation 
{
    display: none;
}
.under .day_select .wpcf7-form-control-wrap:not(:last-child){
    margin-bottom: 5px;
    display: inline-block;
}
.under .day_select .wpcf7-form-control-wrap{
    width: 100%;
}

@media screen\0 {
    .list_check02 {
        width:700px;
    }

    
}
@media screen and (-webkit-min-device-pixel-ratio:0) {}
@supports (-ms-ime-align:auto) {}

.works-taxonomy.construction .ct_bnr.mb_ct_bnr,
.works-taxonomy.remode .ct_bnr.mb_ct_bnr{
	display: none !important;
}




.under #main .bnn_list .fix_rh.bg1 {
    background: url(../images/bnn_bg001.jpg) center /cover no-repeat;
}

.under #main .bnn_list .fix_rh.bg2 {
    background: url(../images/bnn_bg001.jpg) center /cover no-repeat;
}

#consulting{
	
}
#consulting .block-ttl{
	margin-bottom: 40px;
    padding: 0 20px;
}
#consulting.under #main h3.head-title{
	margin: 0 auto 40px;
    padding: 20px;
    max-width: 900px;
    border-bottom: 1px solid #bfbfbf;
    border-top: 1px solid #bfbfbf;
    font-size: 2.0rem;
    letter-spacing: 0.06em;
    line-height: 1.4;
    text-align: center;
    color: #122;
}
#consulting.under #main .subttl01{
	font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.6;
	text-align: center
}
#consulting.under #main .subttl02{
	font-size: 1.6rem;
    letter-spacing: 0.06em;
    line-height: 1.6;
	text-align: center
}
#consulting #main .label01{
	display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto 40px;
    padding: 20px;
    max-width: 710px;
    border-radius: 100px;
    border: 1px solid #112222;
}
#consulting #main .list_items{	
	width: calc(100% + 30px);
	display: flex;
	justify-content: center;
	margin: 0 -15px 50px
}
#consulting #main .list_items li{
	max-width: 180px;
	width: calc(100% / 4 - 30px);
    margin: 0 15px 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
}
#consulting #main .list_items li img{
	
}
#consulting #main .list_items li span{
	display: block;
	text-align: center
}
#consulting #main .flexbox{
	display: flex;
	justify-content: center;
	margin-bottom: 60px;
}
#consulting #main .flexbox.imgr{
	flex-direction: row-reverse
}
#consulting #main .stepbox{
	padding: 60px 0;
    border-top: 1px solid #9f9f9f;
}
#consulting #main .stepbox .flexbox{
	justify-content: space-between;
	align-items: center
}
#consulting #main .stepbox .img{
	width: 480px;
	margin-bottom: 0
}
#consulting #main .stepbox .col_txt{
	width: calc(100% - 520px);
}
#consulting #main .stepbox .col_txt .ttl{
	margin-bottom: 15px;
	letter-spacing: 0.06em;
}
#consulting #main .stepbox .col_txt .ttl span{
	display: block;
	font-size: 1.3rem;
	line-height: 1.8;
}
#consulting #main .stepbox .col_txt .ttl span.num{
	display: block;
	font-size: 1.0rem;
}
#consulting #main h4{
	border: none;
	font-size: 1.8rem;
	
}
#consulting #main .block_img{
	margin-bottom: 80px;
}
#consulting #main .block_linktoform a{
	margin-bottom: 80px;
	width: 100%;
	background: url(../images/consulting_img07.jpg) no-repeat right center;
	background-size: cover;
	height: 300px;
	display: block;
	text-decoration: none;
	transition: 0.2s ease;
}
#consulting #main .block_linktoform .box_txt{
	background: rgba(35, 35, 35, 0.9);
    padding: 30px;
    height: 100%;
    width: 480px;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
#consulting #main .block_linktoform .ttl03{
	color: #fff;
	letter-spacing: 0.06em
}
#consulting #main .block_linktoform .ttl03 span.large{
	display: block;
    color: #fff;
	font-size: 1.45rem
}
#consulting #main .block_linktoform .ttl03 .sm{
	color: #fff;
	font-size: 1.0rem
}
#consulting #main .block_linktoform .button{
	width: 260px;
	height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	text-align: center;
	font-weight: bold;
	color: #fff;
	border: 1px solid #fff;
	border-radius: 20px;
	padding: 0 0 3px 0;
	position: relative;
	transition: 0.2s ease;
}
#consulting #main .block_linktoform .button span{
	color: #fff;
}
#consulting #main .block_linktoform .button::after{
	content: '';
    width: 20px;
    height: 5px;
    background: url(../images/arr01_w.png) no-repeat 0 0 / 100%;
    position: absolute;
    right: 10px;
    top: calc(50% - 3px);
}
#consulting #main .block_linktoform a:hover{
    opacity: 0.85
}
#consulting #main .block_linktoform a:hover .button{
    background: #fff;
}
#consulting #main .block_linktoform a:hover .button span{
    color: #111;
}
#consulting #main .block_linktoform a:hover .button::after{
    background: url(../images/arr_04.png) no-repeat 0 0 / 100%;
}
#consulting #main .staffbox{
	padding: 60px 0;
    border-top: 1px solid #9f9f9f;
}
#consulting #main .staffbox .flexbox{
	justify-content: space-between;
	align-items: center
}
#consulting #main .staffbox .flexbox .img{
	width: 48%;
	margin-bottom: 0;
	background: #f4f4f4
}
#consulting #main .staffbox .flexbox .img span{
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	flex-direction: column;
	font-weight: bold;
    line-height: 1.4;
    padding: 10px;
	min-height: 65px;
}
#consulting #main .contact_form{
	margin: 0 0 60px
}
.under#consulting #main table th {
	background: #f4f4f4;
}
.under#consulting #main .bnn_list p {
	height: 140px;
	margin-bottom: 0;
	margin-right: 20px;
}
#consulting .fixedbnr{
	position: fixed;
	right: 0;
	bottom: 110px;
	
   
}
#consulting .fixedbnr.show{
	opacity: 1;
    visibility: visible;
}
#consulting .fixedbnr div{
	width: 40px;
	height: 130px;
	margin-bottom: 10px;
}
#consulting .fixedbnr div a{
	width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: #00561f;
    text-align: center;
    align-items: center;
    text-decoration: none;
	transition: 0.2s ease
}
#consulting .fixedbnr div a::before{
	content:'';
	width: 16px;
    height: 16px;
    background: url(../images/icon_contact01.png) no-repeat 0 0 / 100%;
	display: block;
	margin-bottom: 5px;
}
#consulting .fixedbnr div.contact01 a::before{
	width: 18px;
    height: 18px;
}
#consulting .fixedbnr div.event a::before{
    background: url(../images/icon_cal.png) no-repeat 0 0 / 100%;
}
#consulting .fixedbnr div.contact02 a::before{
    background: url(../images/icon_contact02.png) no-repeat 0 0 / 100%;
}
#consulting .fixedbnr div a:hover{
	opacity: 0.85
}
#consulting .fixedbnr div a span{
	display: block;
	-webkit-writing-mode: vertical-rl;
	-moz-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-webkit-text-orientation: mixed;
	-moz-text-orientation: upright;
	-ms-text-orientation: upright;
	text-orientation: upright;
	font-size: 14px;
	color: #fff;
	letter-spacing: 0.08em
}
.under#consulting #main .btn_contact{
	background: #00561f;
}