@charset "utf-8";

/*******************
ページトップ
********************/
.lower-page-title{
    width: 100%;
    height: 320px;
    background-image: url(../images/lower/title/lower-page-title-bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
.lower-page-title-content{
    width: 90%;
    max-width: 1200px;
    height: 100%;
    margin: 0 auto;
    position: relative;
    display: flex;
}
.lower-page-title-content-img{
    display: flex;
    align-items: flex-end;
    position: absolute;
    bottom: 0;
    left: 0;
}
.lower-page-title-content-h1{
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 50px;
    font-weight: 600;
    padding: 0 20px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
	text-align: center;
}
.lower-page-title-content-h1-box{
    text-align: center;
}
.lower-page-title-content-h1 .small{
    font-size: 28px;
}

@media screen and (max-width: 1299px){
    .office-page-lower .lower-page-title-content-img{
        width: 28%;
    }
}
@media screen and (max-width: 1023px){
    .lower-page-title{
        height: 280px;
    }
    .lower-page-title-content-h1{
        font-size: 40px;
    }
    .lower-page-title-content-h1 .small{
        font-size: 22px;
    }
    .lower-page-title-content-img{
        width: 32.5%;
    }
    .column-page .lower-page-title-content-img{
        width: 22.5%;
    }
}
@media screen and (max-width: 767px){
    .lower-page-title {
        height: 40vw;
    }
    .lower-page-title-content-h1 {
        font-size: 5vw;
    }
    .lower-page-title-content-h1 .small{
        font-size: 3vw;
    }
}
@media screen and (max-width: 499px){
    .lower-page-title-content-h1 {
        font-size: 6vw;
    }
    .lower-page-title-content-h1 .small{
        font-size: 3.6vw;
    }
    .lower-page-title-content-img {
        width: 27.5%;
    }
}








h2{
    font-size: 38px;
    line-height: 1.8;
    position: relative;
    text-align: center;
    letter-spacing: 0.06em;
    padding-bottom: 15px;
    margin-bottom: 50px;
    border-bottom: 2px solid #f3f1ec;
	font-weight: 600;
}
h2::after{
    content: "";
    width: 220px;
    height: 2px;
    background-color: #134a49;
    position: absolute;
    bottom: -2px;
    left: 0;
}
h3{
    font-size: 30px;
    line-height: 1.3;
    position: relative;
    text-align: center;
    letter-spacing: 0.02em;
    padding-bottom: 20px;
    margin-bottom: 35px;
	font-weight: 600;
}
h3::after{
    content: "";
    width: 220px;
    height: 2px;
    background-color: #426e6d;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.url-box{
    width: 260px;
    height: 50px;
    border-radius: 100px;
    color: #fff;
    background-color: var(--green);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    font-size: 15px;
    font-weight: 300;
    letter-spacing: 0.08em;
    position: relative;
    padding-right: 20px;
}
.url-box::after{
    content: "";
    display: inline-block;
    background-image: url(../images/lower/icon-arrow01.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 35px;
    height: 35px;
    /*margin-left: 8px;*/
    position: absolute;
    top:50%;
    right: 0;
    transform: translateY(-50%);
    transition: 0.3s;
}
.ml-minus{
    margin-left: -25px;
    margin-right: -15px;
    display: inline-block;
}
.br{display: inline-block;}
.in-bk{display: inline-block;}

.fee-page h2{
    text-align: left;
}
.column-page-content img {
	object-fit: contain;
	width: 100%;
	height: 100%;
	margin-bottom: 1em;
}


@media screen and (max-width: 1365px){
    h2{
        font-size: 34px;
    }
    h3{
        font-size: 26px;
    }
}
@media screen and (max-width: 1023px){

}
@media screen and (max-width: 767px){
    h2{
        font-size: 4.6vw;
        margin-bottom: 30px;
        line-height: 1.5;
    }
    h2::after{
        width: 120px;
    }
    h3{
        font-size: 4vw;
        margin-bottom: 25px;
    }
    h3::after{
        width: 120px;
    }
    .url-box{
        width: 240px;
        height: 42px;
        font-size: 14px;
    }
    .url-box::after{
        width: 24px;
        height: 24px;
    }
    .ml-minus{
        margin-left: -1em;
        margin-right: -0.3em;
    }
}
@media screen and (max-width: 399px){
    h2{
        font-size: 5.5vw;
    }
    h3{
        font-size: 5vw;
    }

}



/* 私たちについて */
.about-page{
    margin-top: -20px;
}
.about-info{
    background-image: url(../images/lower/about/about-page-img01.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    padding: 60px;
    margin-bottom: 60px;
    border-radius: 20px;
}
.about-info-title{
    font-size: 18px;
    text-align: center;
    line-height: 1.5;
    font-weight: 300;
    margin: -10px 0 40px;
}
.about-number-flex{
    width: 100%;
    display: flex;
    justify-content: space-around;
}
.about-number-flex-box{
    width: 215px;
    height: 215px;
    background-color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 10px;
    font-size: 30px;
    line-height: 1;
    font-weight: 500;
}
.about-number-flex-box span{
    font-size: 54px;
    color: var(--red);
    font-weight: bold;
    position: relative;
    line-height: 1;
    display: block;
}
.about-number-flex-box span::after{
    content: "名";
    font-size: 26px;
    color: #000;
    position: absolute;
    bottom: 5px;
    right: -25px;
}
.about-number-flex-box div:last-child{
    /*font-size: 26px;*/
    font-size: 0;
}
.about-number-info{
    text-align: right;
    font-size: 14px;
    font-weight: 300;
    margin: 15px 0 -5px;
}
.about-lawyer{
    width: 100%;
    background-color: #f7f7f7;
    padding: 50px 60px 40px;
    margin-bottom: 80px;
}
.about-lawyer-title{
    font-size: 28px;
    text-align: center;
    line-height: 1.3;
}
.about-lawyer-list{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 20px 0 5px;
}
.about-lawyer-list li{
    width: 48%;
    max-width: 324px;
    background-color: #fff;
    margin-bottom: 20px;
    padding: 20px 30px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.about-lawyer-list-img{
    width: 86px;
    height: auto;
    display: inline-block;
}
.about-lawyer-list-content{
    max-width: 164px;
    width: 80%;
    font-weight: normal;
    line-height: 1.5;
    padding-left: 10px;
}
.about-lawyer-list-content .post{
    font-size: 15px;
}
.about-lawyer-list-content .name{
    font-size: 14px;
}
.about-lawyer-list-content .name .name-lawyer{
    font-size: 19px;
    margin-left: 8px;
}
.about-lawyer-list-content .belong{
    font-size: 13px;
}
.about-lawyer-list li.about-lawyer-list-dummy{
    display: none;
}

.office-info{
    font-size: 35px;
    text-align: center;
    font-weight: 500;
    line-height: 1.2;
}
.info_base_comm{
    font-size: 85px;
    color: var(--red);
    margin-right: 10px;
    margin-left: 5px;
}
.office-info-note{
    font-size: 14px;
    font-family: "NotoSansCJKjp", sans-serif;
    font-weight: 300;
    letter-spacing: 0.08em;
    display: block;
}
.about-office-list{
    margin: 40px auto 0;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 30px 40px;
    max-width: 680px;
}
.about-office-list li{
    max-width: 100px;
    width: 20%;
    text-align: center;
}
.about-office-list li .title{
    font-size: 14px;
    line-height: 1;
    margin-top: 12px;
    font-weight: 300;
    position: relative;
}
.about-office-list li .title::after{
    content: "";
    width: 24px;
    height: 24px;
    display: inline-block;
    background-image: url(../images/lower/icon-arrow03.svg);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    right: -28px;
    transform: translateY(-50%);
}
@media screen and (max-width: 1365px){
    .about-number-flex{
        justify-content: center;
        gap: 20px;
    }
    .about-lawyer-list{
        justify-content: center;
        gap: 20px;
        margin-bottom: 20px;
    }
    .about-lawyer-list li{
        margin-bottom: 0;
    }
    .about-lawyer-list li.about-lawyer-list-dummy{
        display: block;
        background-color: transparent;
        height: 0;
        padding: 0;
    }
}
@media screen and (max-width: 1023px){
    .about-info {
        padding: 60px 40px;
    }
    .about-info-title{
        font-size: 18px;
    }
    .about-number-flex-box{
        font-size: 26px;
        width: 200px;
        height: 200px;
    }
    .about-number-flex-box span{
        font-size: 60px;
    }
    .about-number-flex-box span::after{
        font-size: 20px;
    }
}
@media screen and (max-width: 767px){
    .about-info {
        padding: 40px 25px;
    }
    .about-info-title {
        font-size: 3.5vw;
        text-align: left;
    }
    .about-number-flex{
        flex-wrap: wrap;
        gap: 0 4vw;
    }
    .about-number-flex-box {
        font-size: 4vw;
        width: 32vw;
        height: 32vw;
    }
    .about-number-flex-box span {
        font-size: 8vw;
    }
    .about-number-flex-box span::after {
        font-size: 4.5vw;
        bottom: 0.5vw;
        right: -5vw;
    }
    .about-number-info{
        font-size: 12px;
    }
    .about-lawyer{
        padding: 40px 25px 30px;
    }
    .about-lawyer-title {
        font-size: 4.5vw;
    }
    .about-lawyer-list {
        gap: 2vw;
        margin-bottom: 20px;
        width: 104%;
        margin-left: -2%;
    }
    .about-lawyer-list li{
        padding: 15px 10px;
        box-sizing: border-box;
    }
    .about-lawyer-list-img {
        width: 14vw;
    }
    .about-lawyer-list-content{
        max-width: none;
    }
    .about-lawyer-list-content .post {
        font-size: 2.5vw;
    }
    .about-lawyer-list-content .name {
        font-size: 2.6vw;
    }
    .about-lawyer-list-content .name .name-lawyer {
        font-size: 3vw;
        margin-left: 0.5vw;
    }
    .about-lawyer-list-content .belong {
        font-size: 2vw;
    }
    .office-info {
        font-size: 5vw;
    }
    .info_base_comm{
        font-size: 12vw;
        margin-right: 8px;
        margin-left: 3px;
    }
    .office-info-note{
        font-size: 12px;
    }
}
@media screen and (max-width: 599px){
    .about-lawyer-list {
        width: 108%;
        margin-left: -4%;
    }
}
@media screen and (max-width: 520px){
    .about-lawyer-list {
        width: 100%;
        margin-left: 0;
    }
    .about-lawyer-list li{
        width: 100%;
        max-width: none;
        padding: 15px 10vw;
    }
    .about-lawyer-list-img {
        width: 18vw;
    }
    .about-lawyer-list-content {
        max-width: none;
        width: 60%;
        padding-left: 0;
    }
    .about-lawyer-list-content .post {
        font-size: 3.5vw;
    }
    .about-lawyer-list-content .name {
        font-size: 3.2vw;
    }
    .about-lawyer-list-content .name .name-lawyer {
        font-size: 4.5vw;
        margin-left: 0.5vw;
    }
    .about-lawyer-list-content .belong {
        font-size: 3vw;
    }
}
@media screen and (max-width: 399px){
    .about-info {
        padding: 40px 5vw;
    }
    .about-info-title{
        font-size: 4.2vw;
        margin-bottom: 20px;
    }
    .about-number-flex-box {
        font-size: 5vw;
        width: 36vw;
        height: 36vw;
    }
    .about-number-flex-box span::after {
        font-size: 5vw;
        bottom: 0.9vw;
    }
    .about-lawyer {
        padding: 40px 5vw 30px;
    }
    .about-lawyer-title {
        font-size: 4.8vw;
    }
    .office-info {
        font-size: 6vw;
    }
    .info_base_comm {
        font-size: 14vw;
    }
    .about-office-list{
        margin: 30px auto 0;
        gap: 30px 6vw;
    }
    .about-office-list li{
        width: 28%;
    }
}

/* 弁護士費用 */
.fee-info-box{
    width: 100%;
    margin-bottom: 60px;
    border: 10px solid #edf7ed;
    padding: 35px 0;
    text-align: center;
}
.fee-info-title{
    width: 260px;
    height: 40px;
    font-weight: 500;
    background-color: #2e5c29;
    color: #fff;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    line-height: 1;
}
.fee-info-pr{
    font-size: 44px;
    color: #c11e1f;
    font-weight: 600;
    line-height: 1.2;
    margin-top: 5px;
}
.fee-info-note{
    font-size: 20px;
    font-weight: 300;
    line-height: 1.8;
    margin-top: 10px;
}
.fee-info-note .sub {
	font-size: 14px;
	display: block;
}
.fee-info-table{
    width: 100%;
    margin-bottom: 90px;
    font-size: 22px;
    border-collapse:collapse 
}
.fee-info-table .inbl{
    display: inline-block;
}
.fee-info-table .block{
    display: block;
}
.fee-info-table th,
.fee-info-table td{
    padding: 15px 20px;
    line-height: 1.8;
    font-weight: 300;
}
.fee-info-table th{
    font-size: 32px;
    border-bottom: 2px solid #fff;
    background-color: #362c2c;
    color: #fff;
    font-weight: 500;
}
.fee-info-table th.sub{
    font-size: 22px;
    background: #e8edf0;
    color: #134949;
}
.fee-info-table th.sub .small{
    display: block;
    font-size: 14px;
}
.fee-info-table td{
    padding: 20px 30px;
    border-bottom: 2px solid #f3f1ec;
    border-right: 2px solid #f3f1ec;
    border-left: 2px solid #f3f1ec;    
}
.fee-info-table td.title{
    width: 30%;
    background-color: #f7f7f7;
    padding: 20px 15px;
    border-bottom: 2px solid #fff;
    text-align: center;
}
.fee-info-table td.title .small{
    display: block;
    font-size: 14px;
}
.fee-info-table td p{
    font-size: 14px;
    line-height: 1.8;
}
.fee-info-table td p{
    margin-top: 0.8em;
}
.fee-info-table td p.mt0{
    margin-top: 0 !important;
}
.column-page h2{
    text-align: left;
}

@media screen and (max-width: 1365px){
    
}
@media screen and (max-width: 1023px){
    .fee-cost-box{
        font-size: 20px;
    }
    .fee-cost-title{
        font-size: 26px;
        height: 64px;
    }
    .fee-info-table th{
        font-size: 28px;
    }
}
@media screen and (max-width: 767px){
    .fee-info-box{
        margin-bottom: 40px;
        border: 8px solid #e8efeb;
        padding: 25px 0;
    }
    .fee-info-title{
        width: 200px;
        height: 32px;
        font-size: 18px;
    }
    .fee-info-pr{
        font-size: 36px;
    }
    .fee-info-note{
        font-size: 16px;
        margin-top: 8px;
    }
	.fee-info-note .sub {
		font-size: 12px;
	}
    .fee-info-table{
        font-size: 19px;
    }
    .fee-info-table th{
        font-size: 26px;
    }
    .fee-info-table th.sub{
        font-size: 20px;
    }
    .fee-info-table td.title{
        padding: 20px 15px;
    }
    .fee-info-table td p{
        font-size: 12px;
    }
}
@media screen and (max-width: 499px){
    .fee-info-box{
        padding: 20px 15px;
    }
    .fee-info-title {
        width: 160px;
        height: 30px;
        font-size: 17px;
    }
    .fee-info-pr{
        font-size: 32px;
    }
    .fee-info-note{
        font-size: 14px;
    }
    .fee-info-table{
        margin-bottom: 60px;
        font-size: 18px;
    }
    .fee-info-table th, .fee-info-table td{
        display: block !important;
        width: 100% !important;
        padding: 15px;
    }
    .fee-info-table th{
        font-size: 20px;
    }
    .fee-info-table th.sub{
        font-size: 18px;
    }
    .fee-info-table td.title{
        padding: 10px;
    }

}










/* オフィス一覧 */
.office-page{
    margin-top: 0;
}
.office-list li{
    margin-bottom: 40px;
    background-color: #f7f7f7;
    width: 100%;
    /*filter: drop-shadow(0 0 10px rgba(0,0,0,0.15));*/
    border-radius: 10px;
    padding: 50px 10px 50px 50px;
    position: relative;
    display: flex;
}
.office-list li .office-img{
    max-width: 300px;
}
.office-list .office-content{
    padding-left: 40px;
    letter-spacing: 0.08em;
    /*padding-bottom: 10px;*/
    margin-top: -3px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
/*.office-list li a{
    position: absolute;
    bottom: 0;
    right: 0;
    color: #fff;
    font-size: 22px;
    width: 250px;
    height: 60px;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100px 0 10px 0;
    padding-left: 15px;
}*/
.office-list li a.url-box{
    font-size: 22px;
    /*margin: 20px 0 0 0;*/
    margin: 0;
}
.office-list li .office-name{
    font-size: 30px;
    font-weight: 500;
    line-height: 1.2;
    /*margin-bottom: 15px;*/
    display: block;
}
.office-list li .office-zip{
    font-size: 18px;
    line-height: 1.6;
    font-weight: 300;
    display: block;
}
.office-list li.bangkok-office .office-name{
    font-size: 17px;
}
.office-list li.bangkok-office .office-name .small{
    display: inline-block;
    margin-top: 5px;
}
.office-list li.bangkok-office .office-zip{
    font-size: 17px;
    letter-spacing: 0.04em;
}
@media screen and (max-width: 1365px){

}
@media screen and (max-width: 819px){
    .office-list li .office-img{
        max-width: 200px;
    }
    .office-list li .office-name{
        margin-bottom: 15px;
    }
    .office-list li a.url-box{
        margin-top: 15px;
    }
}
@media screen and (max-width: 767px){
    .office-list .office-content{
        padding-left: 25px;
        padding-bottom: 15px;
    }
    .office-list li{
        padding: 40px 10px 40px 25px;
    }
    .office-list li .office-name{
        font-size: 24px;
        margin-bottom: 20px
    }
    .office-list li .office-zip{
        font-size: 16px;
    }
    .office-list li a{
        font-size: 18px;
        width: 200px;
        height: 48px;
        padding-left: 12px;
    }
    .office-list li.bangkok-office .office-name{
        font-size: 18px;
    }
    .office-list li.bangkok-office .office-name .small{
        font-size: 15px;
    }
    .office-list li.bangkok-office .office-zip{
        font-size: 14px;
    }
}
@media screen and (max-width: 599px){
    .office-list li{
        display: block;
        padding: 40px 40px;
    }
    .office-list .office-content {
        padding-left: 0;
        padding-bottom: 25px;
        display: block;
        margin-top: 20px;
    }
    .office-list li a.url-box{
        width: 100%;
    }
}
@media screen and (max-width: 449px){
    .office-list li{
        padding: 40px 5vw;
    }
    .office-list li .office-name{
        font-size: 20px;
        margin-bottom: 20px
    }
    .office-list li .office-zip{
        font-size: 14px;
    }
    .office-list li.bangkok-office .office-name{
        font-size: 18px;
    }
    .office-list li.bangkok-office .office-name .small{
        font-size: 13px;
    }
    .office-list li.bangkok-office .office-zip{
        font-size: 13px;
    }
}

/* オフィス個別ページ */
.office-top-imgbox{
    width: 100%;
    margin-bottom: 110px;
}
h2.office-title{
    font-size: 26px;
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: 20px;
    text-align: left;
    border-bottom: none;
}
h2.office-title::after{
    display: none;
}
h2.office-title .small{
    font-size: 19px;
    display: block;
}
ul.office-data-list{
    border-top: 2px solid #f3f1ec;
    position: relative;
    margin-bottom: 110px;
}
.gradation-green {
    background: rgb(1, 166, 122);
    background: linear-gradient(90deg, rgba(1, 166, 122, 1) 0%, rgba(11, 58, 56, 1) 100%);
}
ul.office-data-list::before{
    content: "";
    width: 220px;
    height: 2px;
    background-color: #134a49;
    position: absolute;
    top:-2px;
    left: 0;
}
ul.office-data-list li{
    border-bottom: 2px solid #f3f1ec;
    position: relative;
    padding: 30px 20px;
    display: flex;
    font-size: 16px;
    letter-spacing: 0.08em;
}
ul.office-data-list li::before{
    content: "";
    width: 220px;
    height: 2px;
    background-color: #134a49;
    position: absolute;
    bottom:-2px;
    left: 0;
}
ul.office-data-list li .data-th{
    max-width: 200px;
    width: 26%;
    display: flex;
    align-items: center;
}
ul.office-data-list li .data-td{
    padding-left: 20px;
}
.map_btn{
    color: #fff;
    width: 124px;
    height: 30px;
    border-radius: 100px;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: bold;
    margin-top: 5px;
}
.gmap {
    position: relative;
    width: 100%;
}
.gmap iframe {
    width: 100%;
    height: 400px;
}
.fv.lower-fv .fv__text-title .small.bangkok{
    margin-bottom: 0;
    margin-top: 10px;
}
@media screen and (max-width: 1365px){

}
@media screen and (max-width: 767px){
    .office-top-imgbox{
        margin-bottom: 80px;
    }
    h2.office-title{
        font-size: 22px;
    }
    h2.office-title .small {
        font-size: 18px;
    }
    ul.office-data-list{
        margin-bottom: 80px;
    }
    ul.office-data-list::before{
        width: 160px;
    }
    ul.office-data-list li{
        padding: 25px 15px;
        font-size: 16px;
    }
    ul.office-data-list li::before{
        width: 160px;
    }
    ul.office-data-list li .data-th{
        max-width: 160px;
        width: 26%;
    }
    ul.office-data-list li .data-td{
        padding-left: 15px;
    }
    .map_btn{
        width: 110px;
        height: 26px;
        font-size: 12px;
    }
    .gmap iframe {
        height: 300px;
    }
}
@media screen and (max-width: 699px){
    ul.office-data-list li{
        display: block;
        padding: 20px 15px
    }
    ul.office-data-list li .data-th{
        max-width: none;
        width: 100%;
        margin-bottom: 10px;
    }
    ul.office-data-list li .data-td {
        padding-left: 0;
        line-height: 1.8;
    }
}
@media screen and (max-width: 399px){
    ul.office-data-list li{
        font-size: 14px;
    }
    .gmap iframe {
        height: 240px;
    }
}

/* コラム一覧 */
.column-page-list{
    margin-top: 10px;
}
.column-page-list .column-page-list-box + .column-page-list-box{
    margin-top: 60px;
}
.column-page-list-box a{
    background-color: #f6f6f7;
    display: flex;
    justify-content: space-between;
    gap: 0 20px;
    border-radius: 10px;
    padding: 45px 30px 45px 45px;
}
.column-page-list-box-img{
    max-width: 300px;
    width: calc(100% - 400px);
    position: relative;
}
.column-page-list-box-img-tag{
    position: absolute;
    top:0;
    left: 0;
    background-color: var(--red);
    color: #fff;
    font-size: 18px;
    padding: 5px 35px;
}
.column-page-list-box-content{
    width: 380px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 15px 0;
}
.column-page-list-box-content-top-time{
    display: block;
    font-size: 16px;
    margin-bottom: 15px;
    line-height: 1;
}
.column-page-list-box-content-top-txt{
    font-size: 22px;
    text-align: justify;
}
.column-page-list-box-content-tag{
    display: flex;
    flex-wrap: wrap;
    gap: 8px 20px;
}
.column-page-list-box-content-tag-name{
    font-size: 16px;
    color: #2e5b29;
    line-height: 1;
    font-weight: 300;
    position: relative;
}
.column-page-list-box-content-tag-name::before{
    content: "#";
}

.category-box,
.tag-box{
    margin-top: 100px;
}
.category-box-title,
.tag-box-title{
    font-size: 28px;
    color: #0c3a38;
    margin-bottom: 30px;
}
.category-box-list,
.tag-box-list{
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}
.tag-box-list{
    gap: 15px 45px;
}
.category-box-list a{
    height: 58px;
    min-width: 200px;
    border-radius: 100px;
    border: 1px solid var(--red);
    background-color: #fff;
    color: var(--red);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 300;
    position: relative;
}
.category-box-list a:hover{
    color: #fff;
    background-color: var(--red);
    opacity: 1;
}
.category-box-list a span{
    position: relative;
    display: inline-block;
}
.category-box-list a span::before{
    content: "";
    background-image: url(../images/common/url-arw02.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 18px;
    height: 18px;
    position: absolute;
    top:50%;
    right: -25px;
    transform: translateY(-50%);
}
.category-box-list a:hover span:before{
    background-image: url(../images/common/url-arw01.png);
    background-size: contain;
    background-repeat: no-repeat;
}
.tag-box-list a{
    font-size: 16px;
    color: #2d5b29;
    font-weight: 300;
    line-height: 1.2;
    position: relative;
}
.tag-box-list a::before{
    content: "#";
}

@media screen and (max-width: 1365px){
    .column-page-list-box-content{
        width: 100%;
    }
}
@media screen and (max-width: 1024px){
    .column-page-list-box-content {
        width: 80%;
    }
    .column-page-list-box-content-top-txt{
        font-size: 20px;
    }
    .column-page-list-box-img-tag{
        font-size: 16px;
    }

}
@media screen and (max-width: 767px){
    .column-page-list .column-page-list-box + .column-page-list-box {
        margin-top: 40px;
    }
    .column-page-list-box a{
        padding: 35px 20px;
    }
    .column-page-list-box-img{
        width: 37%;
    }
    .column-page-list-box-content {
        width: 60%;
    }
    .column-page-list-box-img-tag {
        font-size: 14px;
        padding: 3px 20px;
    }
    .column-page-list-box-content-top-txt{
        font-size: 16px;
    }
    .column-page-list-box-content-top-time,
    .column-page-list-box-content-tag-name {
        font-size: 14px;
    }
    .category-box, .tag-box {
        margin-top: 60px;
    }
    .category-box-title, .tag-box-title {
        font-size: 20px;
        margin-bottom: 20px;
    }
    .category-box-list a {
        height: 48px;
        min-width: 160px;
        font-size: 16px;
    }
    .category-box-list a span::before {
        width: 16px;
        height: 16px;
        right: -20px;
    }
    .tag-box-list {
        gap: 15px 30px;
    }

}
@media screen and (max-width: 499px){
    .column-page-list-box a{
        display: block;
        padding: 35px 5%;
    }
    .column-page-list-box-img {
        width: 100%;
        display: block;
        margin: 0 auto 20px;
    }
    .column-page-list-box-content{
        width: 100%;
    }
    .category-box-list a{
        min-width: 140px;
    }
    .column-page-list-box-img-tag {
        font-size: 16px;
    }
}

/* コラム一覧 ページャー */
.holder {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin-top: 80px;
}
.holder a {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 1px solid #2e5c29;
    color: #2e5c29;
    font-size: 16px;
    display: inline-flex;
    /* align-items: center; */
    justify-content: center;
    line-height: 24px;
    position: relative;
}
.holder a.jp-current {
    background-color: #2e5c29;
    color: #fff;
}
.holder a.jp-disabled {
    display: none;
}
.holder a.jp-previous, .holder a.jp-next {
    font-size: 0;
}
.jp-hidden {
    display: none !important;
}
.holder a.jp-previous::before, .holder a.jp-next::before {
    content: "";
    width: 9px;
    height: 9px;
    border-right: 2px solid #2e5c29;
    border-bottom: 2px solid #2e5c29;
    position: absolute;
    top: 50%;
    left: 55%;
    transform: translateX(-50%) translateY(-50%) rotate(135deg);
}
.holder a.jp-next::before {
    left: 45%;
    transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}
@media screen and (max-width: 1024px){

}
@media screen and (max-width: 767px){
    .holder{
        margin-top: 60px;
    }
}
@media screen and (max-width: 499px){
    .holder{
        gap: 15px;
    }
    .holder a{
        width: 24px;
        height: 24px;
        font-size: 14px;
        line-height: 22px;
    }
}

/* コラム個別 */
/* .column-page-content p.text {
    line-height: 1.8;
    margin-bottom: 1.5rem!important;
    padding: 0!important;
    letter-spacing: 0.05em;
} */
.column-page-content p.text_mb0 {
	line-height: 1.8;
	margin-bottom: 0 !important;
	padding: 0!important;
}

.column-page-content{
    background-color: #fff;
    border-radius: 10px;
    filter: drop-shadow(0 0 10px rgba(0,0,0,0.1));
    padding: 80px 50px;
    margin-top: 10px;
}
.column-page-content-time{
    font-size: 18px;
    font-weight: 300;
    margin-bottom: 30px;
    letter-spacing: 0.06em;
    display: block;
}
.column-page-content .column-page-content-pagetitle{
    font-size: 36px;
    line-height: 1.3;
    font-weight: 500;
    margin-bottom: 30px;
    border-bottom:none;
    background-color: #fff;
    color: #000;
    padding: 0;
}
.column-page-content-pagetitle::after{
    display: none;
}
.column-page-content-categoryflex{
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 50px;
}
.column-page-content-categoryflex-category{
    display: inline-flex;
    flex-wrap: wrap;
    gap: 10px;
    /* margin-bottom: 50px; */
    list-style-type: none !important;
}
.column-page-content-categoryflex-category a{
    min-width: 124px;
    height: 36px;
    border-radius: 100px;
    background-color: var(--red);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 300;
}
.column-page-content-categoryflex-tag{
    display: inline-flex;
    flex-wrap: wrap;
    gap: 0 10px;
    margin-top: 5px;
    list-style-type: none !important;
}
.column-page-content-categoryflex-tag li{
    margin: 0 !important;
}
.column-page-content-categoryflex-tag a{
    font-size: 16px;
    font-weight: 300;
    color: #2e5c29;
    position: relative;
}
.column-page-content-categoryflex-tag a::before{
    content: "#";
}
.column-page-content-imgbox{
    width: 100%;
    margin: 0 auto 40px;
}
.column-page-content-supervising-attorney{
    background-color: #e9efeb;
    border-radius: 10px;
    padding: 10px 10px 10px 35px;
    position: relative;
    display: flex;
    margin-bottom: 40px;
    color: #000;
}
.column-page-content-supervising-attorney .img-box {
    width: 50px;
    height: 50px;
    margin-right: 15px;
    display: block;
}
.column-page-content-supervising-attorney .content-box {
    line-height: 1;
    font-size: 16px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 8px;
    font-weight: normal;
}
.column-page-content-supervising-attorney::after {
    content: "";
    background-image: url(../images/common/url-arw03.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 22px;
    height: 22px;
    z-index: 1;
    transition: 0.3s;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}
.column-page-content-supervising-attorney .content-box .name {
    display: block;
}
.column-page-content-supervising-attorney .content-box .name .kansyu {
    background-color: #0c3a38;
    color: #fff;
    font-size: 16px;
    display: inline-block;
    padding: 2px 4px;
    border-radius: 4px;
    margin-right: 5px;
}
.column-page-content-supervising-attorney .content-box .post {
    display: block;
    line-height: 1.3;
}
.column-page-case p{
    font-size: 18px;
    font-weight: 400;
    line-height: 1.9;
    margin-bottom: 30px;
    text-align: justify;
	letter-spacing: 0.08em;
}

.column-page-content p {
    line-height: 1.8;
    margin-bottom: 1.5rem!important;
    padding: 0!important;
    letter-spacing: 0.05em;
}
.column-page-case .text_red{
    color: var(--red);
    font-weight: 500;
}
.article-content-wrap #toc_container {
    background-color: #f7f7f7;
    padding: 35px 50px;
    width: 100% !important;
    display: block;
    margin-top: 60px;
    margin-bottom: 80px;
    box-sizing: border-box;
}
.article-content-wrap .toc_title {
    font-size: 0;
    position: relative;
    font-weight: bold;
    text-align: center;
    margin-bottom: 10px;
}
.article-content-wrap .toc_title::before {
    content: "この記事の目次 ";
    font-size: 18px;
}
.article-content-wrap .toc_title .toc_toggle {
    font-size: 18px;
}
.article-content-wrap .toc_list {
    font-size: 18px;
    margin-top: 10px;
}
.article-content-wrap .toc_list li {
    display: block;
    line-height: 1.8;
}
.article-content-wrap .toc_list li a {
    color: #000;
    font-weight: 600;
}
.article-content-wrap .toc_number {
    font-weight: bold;
    color: var(--red);
}
.article-content-wrap .toc_number.toc_depth_2 {
    padding-left: 1em;
}
.article-content-wrap .toc_number.toc_depth_3 {
    padding-left: 2em;
}
.article-content-wrap .toc_number.toc_depth_4 {
    padding-left: 3em;
}
.article-content-wrap .toc_number.toc_depth_5 {
    padding-left: 4em;
}

.column-page-content section + section{
    margin-top: 60px;
}
.column-page-content h2{
    font-size: 26px;
    background-color: var(--green);
    color: #fff;
    border-bottom: none;
    border-radius: 6px;
    margin: 2em 0 1.5em;
    padding: 15px 30px;
}
.column-page-content h2::after{
    display: none;
}
.column-page-content blockquote {
    margin: 30px 0 60px;
    background-color: #f7f7f7;
    padding: 2em 2em 2em 2.5em;
    letter-spacing: 0.05em;
    font-size: 18px;
}
.column-page-content ul{
    list-style-type: disc;
}
.column-page-content ol{
    counter-reset: number;/* カウンターを初期化 */
    margin-left: -1em;
}
.column-page-content ol li{
    position: relative;
}
.column-page-content ol li::before{
    content: counter(number);
    counter-increment: number;
    padding: 0 0.2em;
    margin-right: 8px;
    font-size: 0.9em;
}
/*.column-page-content ol li::after {
    content: '';
    position: absolute;
    display: block;
    top: 0.3em;
    left: -0.13em;*/
    /*transform: translateY(-50%);*/
/*    width: 1.2em;
    height: 1.2em;
    border: 1px solid #000;
    border-radius: 50%;
}*/

/* .column-page-content ul li,
.column-page-content ol li{
    font-size: 18px;
} */
.column-page-content ul li + li,
.column-page-content ol li + li{
    margin-top: 5px;
}
.column-cv ul li{
    margin-top: 5px;
}

ul.column-page-content-categoryflex-category li{
    margin-top: 0 !important;
}

.column-page-content h3{
    font-size: 24px;
    font-weight: 600;
    background-color: #fffee9;
    border-left: 4px solid var(--green);
    padding: 12px 30px;
    text-align: left;
    margin: 40px 0 30px;
}
.column-page-content h3::after{
    display: none;
}
.column-page-content h4{
    font-size: 22px;
    font-weight: 600;
    padding-bottom: 10px;
    border-bottom: 3px solid #eeede9;
    position: relative;
    margin: 40px 0 30px;
}
.column-page-content h4::after{
    content: "";
    width: 160px;
    height: 3px;
    background-color: var(--green);
    position: absolute;
    bottom: -3px;
    left: 0;
}
.column-page-content .url-box{
    background-color: var(--red);
    max-width: 400px;
    width: 100%;
    min-height: 50px;
    height: auto;
    padding: 10px 20px;
    font-size: 18px;
    font-weight: 600;
    padding-right: 0;
    margin: 60px auto;
}
.column-page-content .url-box::after{
    display: none;
}

.supervising-attorney-bottom {
    margin-top: 90px;
    padding: 30px 50px;
    background-color: #f7f7f7;
    /*box-shadow: 0 0 20px 10px rgb(0, 0, 0, 10%);*/
    position: relative;
    justify-content: space-between;
    border-radius: 10px;
}
.supervising-attorney-bottom .flex {
    margin-bottom: 10px;
    display: flex;
    justify-content: space-between;
}
.supervising-attorney-bottom .img-box {
    width: 22%;
    padding-right: 5%;
}
.supervising-attorney-bottom .txtarea {
    width: 78%;
}
.supervising-attorney-bottom .name {
    margin-bottom: 0.5em;
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.6;
    text-align: left;
}
.supervising-attorney-bottom .qua {
    font-size: 16px;
    letter-spacing: 0.04em;
    font-weight: 500;
    margin: 20px 0;
    text-align: left;
}
.supervising-attorney-bottom .sikaku {
    margin-bottom: 5px;
    background-color: var(--green);
    color: #fff;
    border-radius: 6px;
    padding: 6px 12px;
    margin-right: 15px;
    display: inline-block;
    font-weight: 600;
    line-height: 1;
    font-size: 16px;
}
.supervising-attorney-bottom .info{
    margin-bottom: 0;
}
.supervising-attorney-bottom .intro_txt_comm{
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
    display: block;
}
.supervising-attorney-bottom .url-box{
    margin: 0 0 0 auto ;
    font-weight: 600;
    font-size: 16px;
    width: 250px;
    height: 30px;
}
.supervising-attorney-bottom .url-box::after{
    background-image: url(../images/common/url-arw04.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 16px;
    right: 10px;
}
.supervising-attorney-bottom .name.name-sp{
    display: none;
}

.column-page-content blockquote ol li,
.column-page-content blockquote ul li{
    /* margin-top: 1.5em; */
	line-height: 1.8;
	letter-spacing: 0.05em;
}

.column-page-content blockquote ol li:not(:first-of-type),
.column-page-content blockquote ul li:not(:first-of-type){
    margin-top: 1.2em;
}

@media screen and (max-width:767px){
    .column-page-content blockquote ol li:not(:first-of-type),
    .column-page-content blockquote ul li:not(:first-of-type){
        margin-top: 1em;
    }

    .column-page-content-categoryflex{
        margin-bottom: 30px;
    }
}


/*-----  コラムページ装飾追加  -----*/
.new_line_br {
    display: block;
}

.column-page-content .red{
    font-weight: bold;
    color: var(--red);
}

.column-page-content .underline{
    text-decoration: underline;
    text-underline-offset: 0.2em;
}

.column-page-content .marker{
    background: linear-gradient(transparent 60%, #fff69a 60%);
    font-weight: bold;
}

.column-page-content .bold,
.column-page-content .column_point ul.bold li,
.column-page-content .column_point ol.bold li{
    font-weight: bold;
}

.column-page-content .inbl{
    display: inline-block;
}

.column-page-content .br{
    display: block;
}

.column-page-content .txt_large{
    font-size: 1.8em;
}

.column-page-content .column_important {
    display: block;
    padding: 5px 5px 5px 15px;
    border-left: 5px solid #f28b1f;
    line-height: 1.4;
    margin: 20px 0 15px;
}

.column-page-content span.column_important:first-child {
    margin: 0 0 15px;
}

.column-page-content .check-heading {
    display: block;
    position: relative;
    padding: 0.4em 0 0.4em 2em;
	font-weight: 600;
}

.column-page-content .check-heading::before {
    font-family: FontAwesome;
    font-weight: 900;
    font-size: 25px;
    color: #2e5c29;
    left: 0;
    top: 0;
    content: "\f14a";
    position: absolute;
}

.column-page-content .check-heading-red {
    display: block;
    position: relative;
    padding: 0.4em 0 0.4em 2em;
}

.column-page-content .check-heading-red::before {
    font-family: FontAwesome;
    font-weight: 900;
    font-size: 25px;
    color: #990000;
    left: 0;
    top: 0;
    content:"\f14a";
    position: absolute;
}

.column-page-content .seolink{
    text-decoration: underline;
    color: #00b0e5;
}

.column-page-content .link_check{
	margin-bottom: 40px;
	margin-top: 40px;
}
.column-page-content .link_check a{
	margin-bottom: 40px;
	padding: 1.6em 6em 1.6em 6em;
	background: url("../images/lower/column/icon_check.svg") no-repeat 1.6em center,linear-gradient(to bottom, #fdecdb, #fff);
	border-radius: 4px;
	border: 1px solid #f28b1f;
	color: #653400;
	font-size: 18px;
	font-weight: bold;
	display: block;
	position: relative;
	line-height: 1.4;
	text-align: center;
}
.column-page-content .link_check a:after{
	content: "";
	background: url("../images/lower/column/icon_arw02.svg") no-repeat;
	background-size: contain;
	width: 10px;
	height: 20px;
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 4%;
	transform: translateY(-50%);
}
.column-page-content .link_check a:not(:last-child){
	margin-bottom: 20px;
}
.column-page-content .link_check a .sp_bl{
	display: inline-block;
}
.column-page-content a.link-area {
    background-color: #f2fcf0;
    padding: 2%;
    border-bottom: 2px solid #6b8f67;
    display: block;
    max-width: 600px;
    margin: 0 auto 1rem;
    border-radius: 5px;
    text-align: center;
    font-weight: bold;
    line-height: 1.3;
    position: relative;
    z-index: 2;
}

.column-page-content .external-link-btn {
	text-align: center;
}

.column-page-content .external-link-btn a {
    position: relative;
    display: inline-block;
    background: var(--green);
    border: none;
    border-radius: 5px;
    font-size: 1em;
    font-weight: bold;
    color: #ffffff;
    text-decoration: none;
    padding: 0.5em 1.8em 0.5em 2em;
    transition: 0.5s;
    margin-bottom: 40px;
}
.column-page-content .external-link-btn a .inbl {
	display: inline-block;
}

/*記事リンク（アイキャッチ付き）*/
.column-page-content .column_link_wrap{
	margin-top: 50px;
	padding: 40px 20px 20px;
	border: 1px solid #ccc;
	position: relative;
}
.column-page-content .column_link_wrap.mb{
    margin-bottom: 3em;
}
.column-page-content .column_link_wrap .title{
	display: inline-block;
	padding: 10px 20px !important;
	background: var(--green);
	border-radius: 100px;
	color: #fff;
	font-weight: 600;
	line-height: 1;
	font-size: 18px;
	position: absolute;
	top:0;
	left: 20px;
	transform: translateY(-50%);
    margin-bottom: 0 !important;
}
.column-page-content .column_link_wrap .link_a{
    margin-bottom: 0;
    list-style: none;
}
.column-page-content .column_link_wrap .link_a li a{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.column-page-content .column_link_wrap .link_a li:not(:last-child){
	margin-bottom: 20px;
}
.column-page-content .column_link_wrap .link_a li .catch_img{
    width: 20%;
    margin-right: 3%;
}
.column-page-content .column_link_wrap .link_a li .catch_img img{
    width: 100%;
    margin: 0;
}
.column-page-content .column_link_wrap .link_a li a .txt{
    width: 77%;
    padding-right: 4%;
    margin: 0;
	font-size: 18px;
	font-weight: bold;
	color: var(--green);
    line-height: 1.5;
    position: relative;
}
.column-page-content .column_link_wrap .link_a li a .txt:after{
    position: absolute;
    content: "";
    right: 0;
    top: 50%;
    margin: auto;
    width: 8px;
    height: 8px;
    border-top: solid 3px var(--green);
    border-right: solid 3px var(--green);
    -webkit-transform: rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
}

/*記事リンク（アイキャッチなし）*/
.link_box{
	border-radius: 100px;
	margin-top: 40px;
    background: linear-gradient(90deg, #3a610e 0%, #5c9816 100%);
    display: block;
    padding: 1.5em;
    display: flex;
    justify-content: center;
    gap: 0.6em;
    align-items: center;
    position: relative;
	color: #fff;
    font-size: 14px;	
}
.link_box::before, .link_box::after {
    position: absolute;
    top: 1px;
    bottom: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.link_box::before {
    width: 19px;
    height: 19px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    border: 1px solid var(--blue);
    right: 33px;
    transition: 0.3s;
}
.link_box::after {
	right: 16px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: 0.3s;
}
.link_box span {
    color: #fff;
    line-height: 1;
    padding: 0.4em;
	font-size: 16px;
	font-weight: bold;
	white-space: nowrap;
}
.link_box p{
    font-weight: 700;
    margin-top: 0;
    letter-spacing: 0.07em;
}

@media screen and (max-width: 767px){
	.link_box {
        display: flex;
        flex-flow: column;
        border-radius: 20px;
        padding-right: 2em;
    }
}

@media screen and (max-width:600px){
    .column-page-content .column_link_wrap .link_a li a .txt{
        font-size: 16px;
    }
}
@media screen and (max-width:550px){
    .column-page-content .column_link_wrap{
        padding: 40px 15px 20px;
    }
	.column-page-content .column_link_wrap .title{
		font-size: 16px;
        left: 10px;
	}
	.column-page-content .column_link_wrap .link_a li:not(:last-child){
		margin-bottom: 20px;
	}
    .column-page-content .column_link_wrap .link_a li .catch_img{
        width: 40%;
    }
	.column-page-content .column_link_wrap .link_a li a .txt{
        width: 54%;
        padding: 0;
		font-size: 14px;
	}
    .column-page-content .column_link_wrap .link_a li a .txt:after{
        content: none;
    }
}

@media screen and (max-width: 480px){
    .column-page-content a.link-area {
        padding: 6% 0;
    }
}


.column-page-content .column_point{
	background: #fffee9;
	padding:2em 1.5em;
	margin-bottom: 2em;
	/*margin-top: 2em;*/
	border: 1px solid #2e5c29;
    line-height: 1.8;
}

@media screen and (max-width: 499px){
    .column-page-content .column_point{
        padding: 2em 1.2em 2em 0.8em;
    }
}

.column-page-content .column_point.--green{
    background-color:#edf7f1;
    padding: 1.5em;
    display:block;
    margin-bottom: 2.5em;
    border: none;
}
.column-page-content .article_qa .column_point.--green{
    margin-bottom: 0;
}
.column-page-content .column_point p.lastline,
.column-page-content p.lastline {
	margin-bottom: 0!important;
}

.column-page-content ul.lastline {
	margin-bottom: 0 !important;
}

.column-page-content ul li .lastline {
	margin-bottom: 0 !important;
}

.column-page-content .lastline {
	margin-bottom: 0 !important;
}

.column-page-content .column_point ul{
	margin-bottom: 0!important;
    padding-left: 20px;
}
/*
.column-page-content  ul.number01 {
    list-style-type: decimal;
    padding-left: 20px;
}
*/
.column-page-content  ul.number02 {
    list-style-type: decimal;
	padding: 1em 0 20px;
}
.column-page-content .column_point li{
	/* font-size: 18px; */
    line-height: 1.8;
	font-weight: 400;
}
.column-page-content .column_point ol{
	list-style-type: decimal;
}
.column-page-content .column_point ol li{
    margin-left: 2%;
}
.column-page-content .column_point ol li:last-child {
    margin-bottom: 0;
}
/*丸に数字*/
.column-page-content  ul.number01,
.column-page-content .column_point ol.circle_number{
	counter-reset: my-counter;
	list-style: none;
	padding: 0;
	margin: 0;
}

.column-page-content  ul.number01 li,
.column-page-content .column_point ol.circle_number li{
	line-height: 1.5;
	padding-left: 30px;
	position: relative;
}

.column-page-content  ul.number01 li:before,
.column-page-content .column_point ol.circle_number li:before{
	content: counter(my-counter);
	counter-increment: my-counter;
	background-color: #2e5c29;
	border: 1px solid;
	border-radius: 50%;
	box-sizing: border-box;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 24px;
	width: 24px;
	color: #f4eef0;
	font-size: 84%;
	line-height: 0;
	position: absolute;
	top: 0;
	left: 0;
}

.column-page-content  ul.number01 li:not(:last-child),
.column-page-content .column_point ol.circle_number li:not(:last-child) {
	margin-bottom: 0.5em;
}

.column-page-content  ul.number01 li:last-child,
.column-page-content .column_point ol.circle_number li:last-child{
	margin-bottom: 0;
}

.column-page-content p.column_point_headline {
    background-color: #216c9c;
    border: 1px solid #216c9c;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    color: #fff;
    font-weight: bold;
    margin: 1.5em 0 0;
    padding: 0.8em 2em 0.6em;
}
.column-page-content p.column_point_headline span {
    line-height: 1.5;
}
.column-page-content span.column_important{
	display:block;
	padding:5px 5px 5px 15px;
	border-left:5px solid #f28b1f;
	line-height: 1.4;
	margin: 20px 0 15px;
}
.column-page-content span.column_important:first-child{
	margin: 0 0 15px;
}
.column-page-content ul li .small{
	font-size: clamp(15px,0.9em,16px);
	display:block;
	margin: 5px 0 15px;
	font-weight: normal!important;
}
.column-page-content ul li .small.mb{
	margin: 10px 0 0;
}
.column-page-content ul li .small02{
	font-size: 0.9em;
	display:block;	
	margin: 5px 0 15px;
	font-weight: normal!important;
}
.column-page-content ul li .small02.mb{
	margin: 5px 0 0;	
}
.column-page-content .ast{
	font-size:12px;
	display: inline;
	vertical-align: super;
}
.column-page-content .ast_bottom{
	margin-top:-2em;
	font-size:12px;
	line-height:1.2;
	display:block;
}
.column-page-content .br{
	display: inline-block!important;
}

.column-page-content .flow_list {
	margin-bottom: 2em;
}

.column-page-content .flow_list ul li {
	position: relative;
	background: #edf7f1;
	padding: 1rem 1.6rem 1rem 1.6rem;
	/*text-indent: -1.2rem;*/
	font-weight: bold;
	margin-bottom: 2.4rem;
    list-style: none;
}
.column-page-content .flow_list ul li p {
	margin-bottom: 0!important;
}
.column-page-content .flow_list ul li:last-of-type {
	margin-bottom: 0;
}
.column-page-content .flow_list ul li:after {
/*	content: "↓";*/
	content: "▼";
	display: block;
	text-align: center;
	position: absolute;
	bottom: -2rem;
	left: 0;
	right: 0;
	margin: 0 auto;
	color: #046772;
}
.column-page-content .flow_list ul li:last-of-type:after {
	display: none;
}
.column-page-content .flow_list ul li p {
	line-height: 1.6!important;
}
.column-page-content .flow_list ul li p span {
	line-height: 1.6!important;
}
.column-page-content .external-link-btn {
	text-align: center;
}
.column-page-content .external-link-btn a {
    position: relative;
    display: inline-block;
    background: #f28b1f;
    border: 0px solid #f28b1f;
    border-radius: 5px;
    font-size: 1em;
    font-weight: bold;
    color: #ffffff;
    text-decoration: none;
    padding: 0.5em 1.8em 0.5em 2em;
    transition: 0.5s;
    margin-bottom: 40px;
}
.column-page-content .external-link-btn a .inbl {
	display: inline-block;
}

/*テーブル*/
.column-page-content table {
    border: 1px solid #9a9a9a;
    width: 100%;
    margin: 5% auto;
    border-collapse: collapse;
    border-spacing: 0;
    font-size: 100%;
    table-layout: auto;
}

.column-page-content table tr, .column-page-content table th,  .column-page-content table td {
    border: 1px solid #9a9a9a!important;
}
.column-page-content table tr th {
	background-color: #2e5c29;
    color: #fff;
}
.column-page-content table.tuuin-table tr th {
	background-color: #2e5c29;
	font-size: 18px;
	line-height: 1.3;
	table-layout: fixed;
	padding: 1.5% !important;
}
@media screen and (max-width: 767px){
    .column-page-content table.tuuin-table tr th {
        font-size: 16px;
    }
}
.column-page-content table.tuuin-table tr th.zebra {
	padding: 4.5% 1.5% 1.5% !important;
}
.column-page-content table.tuuin-table tr td {
	font-size: 16px;
	padding: 1.5% !important;
}
.column-page-content table.tuuin-table tr td span {
	display: inline-block;
}
.column-page-content table.tuuin-table tr td span.marker {
	display: inline;
}

table.column{
    border-collapse: collapse;
    margin:3em auto 0;
	width: 100%;
	table-layout: fixed;
}
.js-scrollable{
    margin-bottom:20px;
    position: relative;
    overflow: auto;
}
table.column.m_t{
    margin-top:0;
}
/* table.column caption{
    text-align: center;
    font-size: 22px;
    font-weight: 400;
    line-height: 1;
    padding:40px 0;
    background: #102240;
    color:#fff;
} */
table.column th{
    font-size:16px;
    text-align: center;
    border: 1px solid #d7d7d7;
    padding: 15px 10px;
    line-height: 1.4;
    color:#000;
    vertical-align: middle;
    width: 18%;
    font-weight: 500;
}
table.column th.th01{
	width: 28%;
}
table.column th.th02{
	width: 72%;
}
table.column th.th03_01{
	width: 20%;
}
table.column th.th03_02{
	width: 60%;
}
table.column th.th03_03{
	width: 20%;
}
table.column th.th04{
    width: 50%;
}
table.column .inbl{
    display: inline-block;
}
table.column td{
    background: #fff;
    border: 1px solid #d7d7d7;
    font-size:16px;
    vertical-align: middle;
    padding:15px 10px;
    line-height:1.4;
    text-align: center;
}
table.column.left td{
    text-align: left;
	font-weight: 400;
}
table.column th span{
    display:inline-block;
}
table.column ul li{
    position:relative;
    margin-left:1.5em;
    margin-bottom:0.5em;
	text-align: left;
}
table.column ul li:last-child{
    margin-bottom:0;
}
table.column ul li:before {
    content: '';
    display: inline-block;
    position: absolute;
    left: -1em;
    top: 0.5em;
    border-radius: 100px;
    background: #000;
}
table.column_100{
	margin-bottom: 1.3em;
}
table.column02{
    border-collapse: collapse;
    margin:3em auto 0;
	width: 100%;
	table-layout: fixed;
}
table.column02 th{
    font-size:16px;
    text-align: center;
    background:#680b23;
    border: 1px solid #d7d7d7;
    padding: 15px 10px;
    line-height: 1.4;
    color:#fff;
    vertical-align: middle;
    width: 18%;
    font-weight: 500;
}
table.column02 td{
    background: #fff;
    border: 1px solid #d7d7d7;
    font-size:16px;
    vertical-align: middle;
    padding:15px 10px;
    line-height:1.2;
    text-align: center;
}
.column-page-content table.tuuin-table tr td ul li {
	text-align: left;
	margin-left: 1em;
}
@media screen and (max-width:1250px) {
	/* table.column caption{
		font-size: 22px;
		padding:40px 0;
	} */
	table.column th{
		font-size:16px;
		padding: 15px 10px;
	}
	table.column td{
		font-size:15px;
		padding:15px 10px;
	}
}
@media screen and (max-width:1023px) {
    table.column{
        width:130%;
    }
    table.column.sp_block{
        width:100%;
    }
    table.column.pad_block{
        width:100%;
    }
    table.column.pad_block tr{
        border: 1px solid #9a9a9a;
    }
    table.column.pad_block th,
    table.column.pad_block td{
        width:100%;
        display: block;
        border: none;
    }
	table.column td{
		padding:15px 5px;
	}
	table.column_100{
        width:100% !important;
		margin-bottom: 1.2em;
    }
	table.column.sp_small02{
		width: 100%;
	}
	table.column.sp_small03{
		width: 100%;
	}
}
@media screen and (max-width:768px) {
    table.column{
        width:180%;
    }
	/* table.column caption{
		font-size: 20px;
		padding:30px 0;
	} */
	table.column th{
		font-size:16px;
		padding: 10px;
	}
	table.column td{
		font-size:16px;
		padding: 10px;
	}
	table.column02 th,table.column02 td{
		font-size: 14px;
	}
}
@media screen and (max-width:600px) {
    table.column{
        width:220%;
    }
	table.column.sp_small{
		width: 140%;
	}
	table.column.sp_small03{
		width: 120%;
	}
    table.column.sp_block th,table.column.sp_block td{
        width:100%;
        display: block;
        border: none;
    }
	table.column th{
		font-size:14px;
	}
	table.column td{
		font-size:14px;
	}
	table.column td ul li{
		font-size:14px;
	}
}

/* 記事ページのテーブル */
#traffic .article_content .inbl {
	display: inline-block;
}
.column-page-content table {
    border: 1px solid #9a9a9a;
    width: 100%;
    margin: 5% auto;
    border-collapse: collapse;
    border-spacing: 0;
    font-size: 100%;
    table-layout: auto;
}
.column-page-content table td {
    font-weight: 400;
}
.column-page-content table tr,.column-page-content table th,.column-page-content table td {
    border: 0.5px solid #9a9a9a;
/*    padding: 2.5%;*/
    padding: 0.6em;
    text-align: center;
    vertical-align: middle;
}
.column-page-content table.table_style2 th {
    width: 25%;
    padding: 1rem;
}
.column-page-content table.table_style2 td {
    text-align: left;
    padding: 1rem;
}
.column-page-content table.table_style2 td ul{
	margin-bottom: 0;
}
.column-page-content table.table_style3 th span, .column-page-content table.table_style3 td span {
    display: inline-block;
}
.column-page-content table.table_style4 td {
    text-align: left;
}
.column-page-content table.table_style2 td ul{
	margin-bottom: 0;
}
.column-page-content table.doc-table td {
    padding: 1.5em 1em 1.5em 0.5em;
}

.column-page-content table.align_left th, .column-page-content table.align_left td {
    text-align: left;
}
.column-page-content table.align_left th span, .column-page-content table.align_left td span {
    display: inline-block;
}
.column-page-content table.table_style8 {
    width: 100%;
    table-layout: fixed;
    border: none;
}
.column-page-content table.table_style8.sp {
	display: none;
}
.column-page-content table.table_style8.pc {
	display: table;
}
.column-page-content table.table_style8 td {
	text-align: left;
	width: 50%;
	padding: 2% 2% 2% 2.5%;
	vertical-align: top;
}

.column-page-content .Table_Type_2 tr,.column-page-content .Table_Type_2 th,.column-page-content .Table_Type_2 td {
    border: 0.5px solid #9a9a9a;
    padding: 0;
    text-align: center;
    vertical-align: middle;
}
.column-page-content .Table_Type_2 td{
	padding:5px;
}
.column-page-content .Table_Type_2 .bgblue {
    padding: 5px;
}
.column-page-content table caption {
	font-weight: 700;
    text-align: left;
}
@media screen and (max-width:320px) {
.column-page-content table caption {
	font-size: 15px;
}
}

.Table_Type_2 th, .Table_Type_2 td {
    padding: 2px;
    font-size: 0.7rem;
    width: auto;
    height: 25px;
    vertical-align: middle;
}
.Table_Type_2 th {
    background-color: #eee;
}
table.Table_Type_2 {
    margin-bottom: 1em;
    width: 100%;
}
.column-page-content table.table_style5 th {
    width: 50%;
    padding: 1rem;
    text-align: center;
}
.column-page-content table.table_style5 td {
    padding: 1rem;
     text-align: center;
}
.column-page-content table.table_style6 th {
    width: 20%;
    padding: 1rem;
    text-align: center;
}
.column-page-content table.table_style6 td {
    padding: 1rem;
     text-align: left;
}
.column-page-content table.table_style6 th {
    padding: 1rem;
    text-align: center;
}
.column-page-content table.table_style7{
    padding: 1rem;
    table-layout: fixed;
}
.column-page-content table.table_style7 caption {
    font-weight: bold;
}
td.Redbook_ab {
    padding: 5px 0 !important;
    font-size: 13px;
    text-align: center;
    position: relative;
}
span.Rab1 {
    color: #990000;
    display: block;
    position: absolute;
    right: 2px;
    top: 2px;
    font-size: 0.8rem;
}
span.Rab2 {
    bottom: 2px;
    left: 2px;
    position: absolute;
    font-size: 0.8rem;
}
@media screen and (max-width:768px) {
    .column-page-content table.table_style2 th, .column-page-content table.table_style2 td {
        width: 100%;
        display: block;
        box-sizing: border-box;
        border: none;
        font-size: 16px;
        padding: 5px 10px;
    }
    .column-page-content table.table_style2 th {
        width: 100%;
        display: block;
        box-sizing: border-box;
        border-top: none!important;
        border-left: none!important;
        border-right: none!important;
    }
    .column-page-content table.table_style2 td {
        border: none!important;
    }
    .column-page-content table.doc-table td {
        padding: 1em 1em;
    }
    .column-page-content table.table_style5 tr, 
    .column-page-content table.table_style6 tr{
        border: none!important;
    }
    .column-page-content table.table_style5 th {
        width: 100%;
        display: block;
        box-sizing: border-box;
        border: none!important;
        border-bottom: 1px solid #9a9a9a!important;
        font-size: 16px!important;
    }
    .column-page-content table.table_style5 td {
        width: 100%;
        display: block;
        box-sizing: border-box;
        border: none!important;
        border-bottom: 1px solid #9a9a9a!important;
        font-size: 16px;
    }
    .column-page-content table.table_style5,
    .column-page-content table.table_style6{
        border-bottom: none!important;
    }
    .column-page-content table.table_style6 th {
        width: 100%;
        display: block;
        box-sizing: border-box;
        border: none!important;
        border-bottom: 1px solid #9a9a9a!important;
        font-size: 16px;
    }
    .column-page-content table.table_style6 td {
        width: 100%;
        display: block;
        box-sizing: border-box;
        border: none!important;
        border-bottom: 1px solid #9a9a9a!important;
        font-size: 16px;
    }
    .column-page-content table.table_style7{
        font-size: 16px;
    }
    .column-page-content table.table_style7.sp-td-textLeft td{
        text-align: left;
    }
	.column-page-content table.table_style8 td {
		padding: 2% 2%  2% 4%;
		font-size: 16px;
	}
}
@media screen and (max-width:600px) {
	.column-page-content table.table_style4 {
			min-width: 600px;
	}
}

@media screen and (max-width:480px) {
    .column-page-content table {
        font-size: 14px;
        /*font-size: 120%;*/
    }
    .column-page-content table.table_style2 th, .column-page-content table.table_style2 td {
        font-size: 14px;
    }
	.column-page-content table.table_style8.sp {
		display: block;
	}
	.column-page-content table.table_style8.pc {
		display: none;
	}
	.column-page-content table.table_style8 td {
		font-size: 15px;
		padding: 2% 2% 2% 2.5%;
	}
	.column-page-content table.table_style8 td li {
		margin-bottom: 1.5%;
	}
	.column-page-content table.table_style8 td li:last-of-type {
		margin-bottom: 0;
	}
}

@media screen and (max-width: 1024px){
    .column-page-content .column-page-content-pagetitle {
        font-size: 32px;
    }
    .column-page-content h2 {
        font-size: 22px;
        margin-bottom: 30px;
        padding: 12px 25px;
    }
    .column-page-content h3 {
        font-size: 20px;
    }
    .column-page-content h4{
        font-size: 18px;
    }
}
@media screen and (max-width: 767px){
    .column-page-content{
        padding: 60px 5%;
    }
    .column-page-content-time {
        font-size: 16px;
        margin-bottom: 20px;
    }
    .column-page-content .column-page-content-pagetitle {
        font-size: 28px;
    }
    .column-page-content-supervising-attorney{
        padding: 10px;
        margin-bottom: 30px;
    }
    .column-page-content-supervising-attorney .img-box{
        margin-right: 10px;
    }
    .column-page-case p{
        font-size: 16px;
    }
    .article-content-wrap #toc_container{
        padding: 25px 5%;
        margin-top: 40px;
        margin-bottom: 60px;
    }
    .article-content-wrap #toc_container{
        padding: 25px 5%;
        margin-top: 40px;
        margin-bottom: 60px;
    }
    .column-page-content ul li, .column-page-content ol li {
        font-size: 16px;
    }
    .article-content-wrap .toc_title::before,
    .article-content-wrap .toc_title .toc_toggle{
        font-size: 16px;
    }
    .column-page-content-supervising-attorney .content-box{
        padding-right: 20px;
    }
    .column-page-content-supervising-attorney::after{
        right: 10px;
    }
    .column-page-content h2 {
        font-size: 20px;
        padding: 12px 20px;
    }
    .column-page-content h3 {
        font-size: 18px;
        padding: 10px 20px;
        margin: 30px 0 30px;
    }
    .column-page-content .url-box{
        font-size: 16px;
        padding: 6px 15px;
        min-height: 40px;
        margin: 40px auto;
    }

    .supervising-attorney-bottom{
        margin-top: 60px;
        padding: 20px 30px;
    }
    .supervising-attorney-bottom .name{
        font-size: 16px;
    }
    .supervising-attorney-bottom .qua{
        font-size: 14px;
    }
    .supervising-attorney-bottom .sikaku{
        font-size: 14px;
    }

    /*------ コラム装飾追加 -----*/

    .column-page-content span.sp_bl{
        display: block;
    }
}
@media screen and (max-width: 499px){
    .column-page-content .column-page-content-pagetitle{
        font-size: 22px;
    }
    .column-page-content-supervising-attorney .content-box {
        padding-right: 15px;
        width: 95%;
        font-size: 14px;
    }
    .column-page-content blockquote{
        padding: 1.5em 1.5em 1.5em 2em;
    }
    .supervising-attorney-bottom .name{
        display: none;
    }
    .supervising-attorney-bottom .name.name-sp{
        display: block;
        margin-top: 20px;
    }
    .supervising-attorney-bottom .name.name-sp .br{
        display: block;
    }
    .supervising-attorney-bottom {
        padding: 20px 5%;
    }
    .supervising-attorney-bottom .flex{
        display: block;
    }
    .supervising-attorney-bottom .img-box {
        width: 40%;
        padding-right: 0%;
        margin: 0 auto;
    }
    .supervising-attorney-bottom .txtarea{
        width: 100%;
    }
    .supervising-attorney-bottom .url-box{
        margin: 0 auto;
    }
}

/*記事内QA*/
.column-page-content .article_qa {
    margin-bottom: 60px;
    border-radius: 6px;
}
.column-page-content .article_qa h3, .column-page-content .article_qa h4 {
    background: #edf7f1;
    margin: 0;
    padding: 30px 30px 30px 90px;
    border: none;
    color: #000;
    border-radius: 20px 20px 0 0;
    position: relative;
    font-size: 20px;
    line-height: 1.6;
	border-left: none!important;
}
.column-page-content .article_qa h3:before, .column-page-content .article_qa h4:before {
    content: "Q";
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    display: inline-block;
    width: 48px;
    height: 48px;
    margin: auto;
    background-color: #2e5c29;
    font-size: 18px;
    color: #ffffff;
    line-height: 48px;
    border-radius: 100px;
    text-align: center;
    vertical-align: middle;
    margin-right: 20px;
}
.column-page-content .article_qa .txtarea {
    padding: 30px 30px 30px 90px;
    border: 2px solid #edf7f1;
    border-radius: 0 0 20px 20px;
    position: relative;
}
.column-page-content .article_qa .txtarea:before {
    content: "A";
    position: absolute;
    left: 17px;
    top: 33px;
    display: inline-block;
    width: 48px;
    height: 48px;
    margin: auto;
    background-color: #761414;
    font-size: 18px;
    color: #ffffff;
    line-height: 48px;
    border-radius: 100px;
    text-align: center;
    vertical-align: middle;
    margin-right: 20px;
    font-weight: bold;
}
@media screen and (max-width: 1024px) {
    .column-page-content .article_qa h3, .column-page-content .article_qa h4 {
        padding: 20px 10px 20px 70px;
        font-size: 18px;
	}
    .column-page-content .article_qa h3:before, .column-page-content .article_qa h4:before {
        width: 40px;
        height: 40px;
        line-height: 40px;
    }
    .column-page-content .article_qa .txtarea {
        padding: 30px 30px 30px 70px;
    }
    .column-page-content .article_qa .txtarea:before {
        width: 40px;
        height: 40px;
        line-height: 40px;
    }
}

@media screen and (max-width: 550px) {
    .column-page-content .article_qa {
        margin-bottom: 40px;
    }
    .column-page-content .article_qa h3, .column-page-content .article_qa h4 {
        padding: 20px 16px 20px 60px;
    }
    .column-page-content .article_qa h3:before, .column-page-content .article_qa h4:before {
        left: 15px;
        width: 30px;
        height: 30px;
        line-height: 30px;
        font-size: 15px;
    }
    .column-page-content .article_qa .txtarea {
        padding: 20px 20px 20px 60px;
    }
    .column-page-content .article_qa .txtarea:before {
        left: 13px;
        top: 25px;
        width: 30px;
        height: 30px;
        line-height: 30px;
        font-size: 16px;
    }
}
@media screen and (max-width: 425px) {
    .column-page-content .article_qa h3, .column-page-content .article_qa h4 {
        font-size: 16px;
    }
}

/*記事内事例*/
.column-page-content .article_jirei {
    margin-bottom: 60px;
    margin-top: 60px;
}
.column-page-content .article_jirei h4,.column-page-content .article_jirei h3, .column-page-content .article_jirei h2 {
    background: #2e5c29;
    color: #fff;
    line-height: 1.6;
    margin: 0;
    border-left: none;
    padding: 20px 30px 15px;
    border-radius: 20px 20px 0 0;
}
.column-page-content .article_jirei .txtarea {
    padding: 30px;
    border: 2px solid #2e5c29;
    border-radius: 0 0 20px 20px;
}
.column-page-content .article_jirei .txtarea p {
    padding: 0;
    margin-bottom: 8px;
}
@media screen and (max-width: 768px) {
    .column-page-content .article_jirei h4,.column-page-content .article_jirei h3, .column-page-content .article_jirei h2 {
        font-size: 18px;
    }
    .column-page-content .article_jirei .txtarea p {
        margin-bottom: 8px!important;
    }
}
@media screen and (max-width: 550px) {
    .column-page-content .article_jirei {
        margin-bottom: 40px;
        margin-top: 40px;
    }
    .column-page-content .article_jirei h4,.column-page-content .article_jirei h3, .column-page-content .article_jirei h2 {
        padding: 5% 5% 4%;
    }
    .column-page-content .article_jirei .txtarea {
        padding: 8% 5%;
    }
}
@media screen and (max-width: 480px) {
    .column-page-content .article_jirei .txtarea p {
        padding: 0!important;
    }
}
@media screen and (max-width: 480px) {
    .articlcolumn-page-contente_wrap .article_jirei h4,.column-page-content .article_jirei h3, .column-page-content .article_jirei h2 {
        font-size: 16px;
    }
}


/* コラムCV */
.column-cv{
    margin-top: 80px;
	margin-bottom: 80px;
    background-color: #eff8f3;
    padding: 25px 20px;
    border-radius: 10px;
}
.column-cv .column-cv-title{
    font-size: 42px;
    font-weight: 600;
    color: var(--green);
    text-align: center;
    line-height: 1;
    margin-bottom: 0;
}
.column-cv .column-cv-info{
    font-size: 20px;
    text-align: center;
    font-weight: 300;
    margin: 10px 0 20px;
}
.column-cv-flex{
    background-color: #fff;
    border-radius: 10px;
    padding: 20px 25px;
    display: flex;
    justify-content: space-between;
    gap: 0 10px;
}
.column-cv-flex-telbox{
    width: 365px;
    border-right: 1px solid #b6bcc6;
    margin-right: -1px;
}
.column-cv-flex-telbox-tel{
    font-size: 31px;
    font-weight: 900;
    position: relative;
    color: #1f1f1f;
    line-height: 1;
    white-space: nowrap;
    max-width: 320px;
    width: 100%;
    display: block;
    text-align: center;
}
.column-cv-flex-telbox-tel .small {
    font-size: 28px;
}
.column-cv-flex-telbox-tel::before{
    content: "";
    background-image: url(../images/common/icon-tel.svg);
    background-repeat: no-repeat;
    background-position: center;
    width: 0.9em;
    height: 0.9em;
    display: inline-block;
    position: relative;
    top: 0.1em;
}
.column-cv-flex-list{
    display: flex;
    justify-content: space-between;
    max-width: 320px;
    margin-top: 10px;
}
.column-cv-flex-list li, .column-cv ul li {
    background-color: #515151;
    color: #fff;
    font-size: 10px;
    font-weight: 400;
   /* max-width: 100px;*/
    width: 32%;
    padding: 2px 5px 3px 5px;
    text-align: center;
}
.column-cv-flex-mailbox{
    width: calc(100% - 365px);
}
.column-cv-flex-mailbox-mail{
    height: 60px;
    max-width: 310px;
    width: 100%;
    background-color: var(--red);
    color: #fff;
    border-radius: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    margin-left: auto;
    font-size: 18px;
    font-weight: 500;
}
.column-cv-flex-mailbox-mail::before{
    content: "";
    background-image: url(../images/common/icon-mail--large.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 0.9em;
    height: 0.9em;
    display: inline-block;
    margin-right: 0.1em;
}
.column-cv .column-cv-note{
    font-size: 12px;
    text-align: center;
    font-weight: 400;
    margin: 20px 0 0;
}
.column-cv-note-box{
    line-height: 1.3;
    display: inline-block;
}
.column-cv ul li {
	list-style-type: none;
	
}

@media screen and (max-width: 1365px){
    .column-cv-flex{
        /*text-align: center;*/
        max-width: 760px;
        margin: 0 auto;
    }
}
@media screen and (max-width: 1024px){


}
@media screen and (max-width: 767px){
    .column-cv-flex{
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
        padding: 20px 3%;
    }
    .column-cv-flex-telbox {
        /*width: 365px;*/
		width: 100%;
        border-right: none;
        margin-right: 0;
        text-align: center;
        margin-bottom: 20px;
    }
    .column-cv-flex-telbox-tel,
    .column-cv-flex-list{
        margin: 10px auto 0;
    }
    .column-cv-flex-mailbox{
        width: 100%;
    }
    .column-cv-flex-mailbox-mail{
        width: 310px;
        margin: 0 auto;
    }
    .column-cv .column-cv-title{
        font-size: 32px;
    }
    .column-cv .column-cv-info {
        font-size: 18px;
        margin: 10px 0 15px;
        line-height: 1.3;
    }
    .column-cv-flex-telbox-tel{
        font-size: 31px;
        max-width: none;
    }
	.column-cv-flex-telbox-tel .small {
		font-size: 30px;
	}
}
@media screen and (max-width: 499px){
    .column-cv{
        margin-top: 60px;
        padding: 20px 3%;
    }
    .column-cv .column-cv-title {
        font-size: 28px;
    }
    .column-cv-flex-telbox-tel{
        font-size: 7vw;
    }
    .column-cv-flex-telbox-tel .small {
        font-size: 6.4vw;
    }
    .column-cv-flex-list{
        justify-content: center;
        gap: 0 2vw;
    }
    .column-cv-flex-list li, .column-cv ul li{
        width: auto;
        padding: 2px 4vw 3px 4vw;
        white-space: nowrap;
    }
    .column-cv-flex-telbox{
        width: 100%;
    }

    .column-cv-flex-mailbox-mail {
        width: 100%;
        height: 42px;
        font-size: 16px;
    }

}

.column-page-content div.img-box {
    margin: 2em auto;
}
.column-page-content div.img-box.w70 {
    width: 70%;
}
.column-page-content div.img-box img {
    height: 100% !important;
}

@media screen and (max-width: 767px){
	.column-page-content div.img-box.w70 {
    	width: 100%;
	}
}
