@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Sawarabi+Mincho&display=swap');

/*--------------------------------------------------------------*/
/* general */
* {
    font-weight: 100;
    outline: none !important;
    border-radius: 0 !important;
	line-height: 1.8;
}
.sp {
    display: none;
}

.span {
	font-family: 'Noto Sans JP', sans-serif;
}

.bnr-text {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    transform: translate(-50%, -50%);
    z-index: 2;
	font-size: 30px;
    text-shadow: -2px 2px 0 #fff, 2px 2px 0 #fff, -2px -2px 0 #fff, 2px -2px 0 #fff, 0 2px 0 #fff, 2px 0 0 #fff, 0 -2px 0 #fff, -2px 0 0 #ffff;
    text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
/*    font-family: 'Sawarabi Mincho', serif;*/
	font-style: normal;
  	font-weight: 700;
	padding: 0 0 0 10px;
}

.fc-red {
	color:red;
	font-weight:bold;
}

/*--------------------------------------------------------------*/
/* common */
table.base {
    width: 100%;
    max-width: 100%;
}
table.base>tbody>tr>th {
    width: 30%;
    max-width: 250px;
    background-color: #f7f4ee;
    border: 1px solid #FFF;
    font-size: 13px;
    font-weight: bold;
    white-space: nowrap;
    padding: 20px 70px 20px 25px;
}
table.base>tbody>tr>th>.label {
    transform: translateX(120%);
}
table.base>tbody>tr>td {
    background-color: #233a97;
    border: 1px solid #FFF;
    font-size: 13px;
    padding: 20px 25px 20px 25px;
}
table.base>tbody>tr>td[colspan] {
    text-align: center;
}
.input-group-addon,
.form-control {
    box-shadow: none;
    border-color: #E6E6E6;
    height: 28px;
    padding-top: 3px;
    padding-bottom: 3px;
}
form {
    max-width: 100%;
}
form .label-black {
    float: right;
    display: inline-block;
    width: 44px;
    height: 20px;
    line-height: 17px;
    background-color: #233a97;
    color: #FFF;
    font-size: 10px;
    font-weight: normal;
    text-align: center;
    margin: 0 0 0 10px;
}
form textarea.form-control {
    width: 100% !important;
}
form table td label>input[type=radio] {
    margin-top: 1.5px;
}
/*--------------------------------------------------------------*/
/* header */
/*--------------------------------------------------------------*/
/* .contents */
body:not(#top) header+.contents {
    margin-top: 65px;
}
#message .content_wrap>.container>div>h4 {
    margin: 0 0 1.5em 0;
}
#message .content_wrap>.container>div>div>p+p {
    margin: 1.5em 0 0 0;
}
#message .content_wrap>.container>div>img {
    width: 100%;
}
#privacy_policy .content_wrap>.container>div>h4 {
    border-bottom: 1px solid #DDD;
    margin: 42px 0 18px 0;
    padding: 0 0 19px 0;
}
#privacy_policy .content_wrap>.container>div>p {
    line-height: 24px;
    margin: 0 !important;
}
#asset_management .content_wrap>.container>div {
    text-align: center;
}
#asset_management .content_wrap>.container>div>p,
#asset_management .content_wrap>.container>div>div>p {
    line-height: 25px;
    text-align: left;
    margin: 0 !important;
}
#asset_management .content_wrap>.container>div>img {
    max-width: 100%;
    margin: 30px 0;
}
#works p.btn-block {
    background-color: #a6937c;
    color: #FFF;
    border-radius: 6px !important;
    margin: 0;
    padding: 10px;
}
#works>.contents>.content_wrap>.container>div>p {
    line-height: 24px;
    margin: 0 !important;
}
#works .link-box>[class^=col-] {
    position: relative;
    margin-top: 38px;
    margin-bottom: 0;
}
#works .link-box>[class^=col-]>p {
    position: absolute;
    bottom: 0;
    left: 15px;
    width: calc(100% - 30px);
    background-color: rgba(0, 0, 0, 0.4);
}
#works .link-box>[class^=col-]>p>a {
    display: block;
    color: #FFF;
    text-align: center;
    padding: 10px 0;
}
#company_profile #organization_unit img {
    width: 100%;
    max-width: 600px;
}
#flow>.contents>.content_wrap>.container>div>.text-center>img {
    width: 100%;
    max-width: 500px;
    margin: 52px 0 30px 0;
}
#flow .content_wrap>.container>div>p,
#flow .content_wrap>.container>div>div>p {
    line-height: 25px;
    text-align: left;
    margin: 0 !important;
}
#flow #condition_table {
    margin: 0;
}
#flow #condition_table>thead>tr>th {
    width: 33%;
    background-color: #e2ecfa;
    border-right: 1px solid #FFF;
    font-weight: bold;
    text-align: center;
    padding: 23px 0 21px 0;
}
#flow #condition_table>thead>tr>th:nth-child(3) {
    background-color: #ffecee;
}
#flow #condition_table>tbody>tr>td {
    text-align: center;
}
#message .content_wrap>.container>div>div>p {
    line-height: 25px;
}
#recruit>.contents>.content_wrap>.container>div>.row>[class^=col-]>p {
    line-height: 24px;
}
/*--------------------------------------------------------------*/


/* Style function and raku-------------- */
#hs_create_file_html {
    position: fixed;
    left: 0;
    top: 200px;
    z-index: 9999999;
    font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
    width: 220px;
    text-align: left;
    border: 1px #ccc solid;
    background: #fff;
    padding: 10px;
}
.title-func-st1 {
    text-align: center;
    font-size: 20px;
    line-height: normal;
    margin-bottom: 20px;
}
.btn-func-st1 {
    width: 100%;
    float: left;
    margin-bottom: 10px;
    text-align: left;
}
#formAdmin {
    display: none;
}

._edEdit .data-wrap{
    height:auto !important;
    width:inherit !important;
    left:0;
}
._edEdit .data-wrap img{
    max-width: 100% !important;
    position:relative;
    left:0 !important;
    width:100% !important;
    height:auto !important;
    max-height: 100% !important;
}
/* End style function and raku-------------- */

/* Banner */
.banner_ct {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    text-align: center;
    margin-top: 74px;
}
.overlay_banner {
    background: rgba(0, 0, 0, 0.6);
    padding: 56px 0 52px 0;
}
.banner_ct h2 {
    color: #FFF;
    font-size: 22px;
    margin: 0;
}
.banner_ct_en {
    display: inline-block;
    min-width: 200px;
    border-top: 1px solid #fff;
    color: #FFF;
    font-size: 10px;
    font-weight: normal;
    margin: 10px 0 0 0;
    padding: 12px 0 0 0;
    text-transform: uppercase;
}
/* End banner */

.br-sp {
	display:none;
}

.f-28-pc-f-16-sp {
	font-size:28px;
	font-weight: 700;
}

.f-45-pc-f-18-sp {
	font-size:45px;
	font-weight: 700;
}
.f-30-pc-f-17-sp {
	font-size:30px;
	font-weight: 700;
}

.bnr-txt-pc {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 50%;
    display: block;
    z-index: 2;
    transform: translate(-50%, -50%);
}
.bnr-txt-sp {
   display:none;
}
/* footer */
/* XS : W < 768px */
@media screen and (max-width: 992px) {
	.bnr-txt-pc {
		width: 80%;
	}
}
@media screen and (max-width: 767px) {
	.bnr-txt-sp {
		position: absolute;
		top: 50%;
		left: 50%;
		width: 100%;
		display: block;
		z-index: 2;
		transform: translate(-50%, -50%);
	}
	.bnr-txt-pc {
		display:none;
	}
	.font01 {
		font-size: 34px!important;
	}
	.f-28-pc-f-16-sp {
		display: block;
		font-size: 4vw;
		margin: 0 0 8px;
	}
	.f-45-pc-f-18-sp {
		display: block;
		font-size: 5.5vw;
		margin: 0 0 10px;
	}
	.f-30-pc-f-17-sp {
		display: block;
		font-size: 4vw;
		line-height: 1.8;
	}
	.br-sp {
		display:block;
	}
    table.base_block>tbody>tr>th {
        display: block;
        width: 100%;
        max-width: none;
        min-width: none !important;
        border-bottom: none;
        padding: 10px 25px;
    }
    table.base_block>tbody>tr>th>.label {
        float: left;
        transform: none;
        margin: 0 10px 0 0;
    }
    table.base_block>tbody>tr>td {
        display: block;
        width: 100%;
        border-top: none;
        border-bottom: 10px solid #FFF;
        padding: 10px 25px 10px 25px;
    }
    table.base_block>tbody>tr>td>.form-control {
        width: 100% !important;
    }
    .table-responsive {
        position: relative;
    }
    .table-responsive>.left,
    .table-responsive>.right {
        content: "";
        position: fixed;
        bottom: 0;
        left: 0;
        display: block;
        width: 30px;
        height: 810px;
        font-size: 16px;
        text-align: center;
        cursor: pointer;
        margin-left: -15px;
        margin-bottom: 203px;
    }
    .table-responsive>.right {
        left: auto;
        right: 0;
        margin-left: 0;
        margin-right: -15px;
    }
    .table-responsive>.left::after,
    .table-responsive>.right::after {
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        background-image: url(../img/pankuzu_arrow.png);
        background-repeat: no-repeat;
        background-position: center center;
        background-size: 50%;
    }
    .table-responsive>.left::after {
        transform: scaleX(-1);
    }
    .table-responsive>table.base>tbody>tr>th {
        white-space: nowrap;
        padding: 10px;
    }
    .table-responsive>table.base>tbody>tr>td {
        white-space: nowrap;
        padding: 10px;
    }
}
/*--------------------------------------------------------------*/



/* PNH Custom */

.lp90-point {
	padding: 70px 60px;
	background-image: url(/company/lp/lp90/img/point_bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.lp90-point h2 {
	margin: 0;
	text-align: center;
}

.lp90-point h2 img {
	width: 340px;
	height: 68px;
}

.lp90-point .lead {
	padding: 16px 30px;
	margin: 30px 0;
	font-size: 20px;
	text-align: center;
	letter-spacing: 2px;
	line-height: 34px;
	color: #0f334f;
	background-color: rgba(255, 255, 255, 0.7);
	border: 1px solid #fff;
}

.lp90-point .lead p {
	margin: 0;
}

.lp90-point .point-num {
	margin: 21px 0 0;
	font-family: 'メイリオ', 'Meiryo', 'Osaka-Mono','Osaka－等幅', 'ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
}

.lp90-point h3 {
	margin: 25px 0 20px;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
}

.lp90-point h3 span {
	display: block;
	font-size: 20px;
}

.lp90-point .point-row {
	position: relative;
	min-height: 540px;
}

.lp90-point .point-col {
	position: absolute;
}

.lp90-point .point-col:nth-child(1) {
	top: 0;
	left: 0;
}

.lp90-point .point-col:nth-child(2) {
	left: 0;
	right: 0;
	bottom: 0;
	width: 387px;
	margin: auto;
}

.lp90-point .point-col:nth-child(3) {
	top: 0;
	right: 0;
}

.lp90-point .point-item {
	display: block;
	position: relative;
	text-align: center;
	color: #1199ff;
}

.lp90-point .point-item::after {
	content: "";
	display: block;
	position: absolute;
	z-index: 30;
	left: 0;
	right: 0;
	bottom: 23px;
	width: 71px;
	height: 20px;
	margin: auto;
	background-image: url(/company/lp/lp90/img/point_arrow.png);
	background-repeat: no-repeat;
	background-size: contain;
	-webkit-transition: all .5s;
	transition: all .5s;
}

.lp90-point .point-item:hover::after {
	bottom: 13px;
}

.lp90-point .point-inner {
	position: absolute;
	z-index: 25;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	margin: auto;
}

.lp90-point .point-icon-1,
.lp90-point .point-icon-2,
.lp90-point .point-icon-3 {
	width: 100px;
}

.lp90-article {
	position: relative;
	background-repeat: no-repeat;
	background-size: 50%;
}

.lp90-article::after {
	content: "";
	display: block;
	width: 100%;
	height: 23px;
	background-image: url(https://kabu.com/company/lp/lp90/img/article_bd.jpg);
	background-repeat: repeat;
}

.lp90-article.point-article1 {
	background-color: #f1f9ff;
	background-image: url(../images/service/service01.jpg);
	background-position: right 0;
}

.lp90-article.point-article1 .article-col {
	padding-right: 14px;
	background-color: #f1f9ff;
}

.lp90-article.point-article1 .article-col::after {
	right: -38px;
	background-color: #f1f9ff;
	-webkit-transform: rotate(7deg);
	transform: rotate(7deg);
}

.lp90-article.point-article2 {
	background-color: #fff;
	background-image: url(../images/service/service02.jpg);
	background-position: 0;
}

.lp90-article.point-article4 {
	background-color: #fff;
	background-image: url(../images/service/service04.jpg);
	background-position: 0;
}

.lp90-article.point-article2 .article-row {
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.lp90-article.point-article2 .article-col {
	padding-left: 14px;
	background-color: #fff;
}

.lp90-article.point-article2 .article-col::after {
	left: -38px;
	background-color: #fff;
	-webkit-transform: rotate(-7deg);
	transform: rotate(-7deg);
}

.lp90-article.point-article3 {
	background-color: #f1f9ff;
	background-image: url(../images/service/service03.jpg);
	background-position: right 0;
}

.lp90-article.point-article3 .article-col {
	padding-right: 14px;
	background-color: #f1f9ff;
}

.lp90-article.point-article3 .article-col::after {
	right: -38px;
	background-color: #f1f9ff;
	-webkit-transform: rotate(7deg);
	transform: rotate(7deg);
}

.lp90-article .point-num {
	margin: 0;
	font-family: 'メイリオ', 'Meiryo', 'Osaka-Mono','Osaka－等幅', 'ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
	font-size: 28px;
	font-weight: bold;
	line-height: 1;
	color: #1199ff;
    margin: 18px 0 30px;
}

.lp90-article .article-ttl {
	
	font-size: 24px;
	color: #1199ff;
}

.lp90-article .article-text {
	margin: 0;
	font-size: 18px;
	line-height: 1.8;
}

.lp90-article .article-row {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	overflow: hidden;
}

.lp90-article .article-col {
	position: relative;
	z-index: 10;
	width: 50%;
	padding: 80px 0 80px 20px;
}

.lp90-article .article-col::after {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	top: -7px;
	width: 80px;
	height: 110%;
}

@media only screen and (max-width: 1024px) {

    .br-tab {
        display: inline;
    }
    
    .show-pc {
        display: none;
    }
    
    .lp90-point {
        padding: 70px 20px;
    }
    
    .lp90-article .article-col {
        width: 60%;
        padding: 30px 0 30px 20px;
    }

    .lp90-article .article-ttl {
        margin: 10px 0 20px;
    }
}


@media only screen and (max-width: 768px) {

    
    .lp90-point .point-num {
        margin: 15px 0 0;
        font-size: 18px;
    }
    
    .lp90-point h3 {
        margin: 10px 0;
        font-size: 18px;
    }
    
    .lp90-point h3 span {
        font-size: 18px;
    }
    
    .lp90-point .point-row {
        min-height: 360px;
    }
    
    .lp90-point .point-col:nth-child(2) {
        width: 245px;
    }
    
    .lp90-point .point-icon-1,
    .lp90-point .point-icon-2,
    .lp90-point .point-icon-3 {
        width: 70px;
    }
    
    
    }
    
    @media only screen and (max-width: 640px) {
    
    .lp90-point {
        padding: 50px 0;
    }
    
    .lp90-point h2 img {
        width: 170px;
        height: 34px;
    }
    
    .lp90-point .lead {
        padding: 12px;
        font-size: 15px;
        text-align: justify;
        line-height: 24px;
    }
    
    .lp90-point .point-num {
        font-size: 20px;
    }
    
    .lp90-point h3 {
        margin: 15px 0;
        font-size: 20px;
    }
    
    .lp90-point .point-col {
        position: static;
    }
    
    .lp90-point .point-col + .point-col {
        margin: 20px auto 0;
    }
    
    .lp90-point .point-col:nth-child(2) {
        width: 335px;
    }
    
    .lp90-point .point-icon-1,
    .lp90-point .point-icon-2,
    .lp90-point .point-icon-3 {
        width: 100px;
    }
    
    .lp90-article {
        background-image: none !important;
    }
    
    .lp90-article .point-num {
        font-size: 32px;
    }
    
    .lp90-article .article-ttl {
        margin: 18px 0 20px;
        font-size: 20px;
    }
    
    .lp90-article .article-text {
        font-size: 15px;
    }
    
    .lp90-article .article-col {
        width: 100%;
        padding: 40px 15px;
    }
    
    }
    

#service {
    background-color: #f3f3f3;
    margin-bottom: -60px;
    padding: 50px 0 65px;
}

#about2 {
    padding: 50px 0 60px;
    clear: both;
    display: block;
    background-color: #f3f3f3;
}

.about2-cont {
    clear: both;
    padding-top: 65px;
    margin-bottom: 5px;
}

.content-policy .txt-policy {
    height: 175px;
    overflow-y: scroll;
    clear: both;
    background-color: #f6f6f6;
    padding: 10px;

}

.content-policy strong {
    text-align: center;
    display: block;
    font-size: 14px;
    line-height: 1.8;

}

.txt-policy {
    white-space: unset !important;
    font-size: 16px;
    line-height: 1.8; 
}

.contact-form-st1 tr.content-policy td:first-child {
    white-space: unset !important;
}

.checkbox-inline, .radio-inline {
    font-size: 16px;
}


.tr_btn .div-button {
    display: flex;
    justify-content: center;
}

.contact-form-st1 tr.agree_check td {
    padding-top: 0;
    margin-top: -10px;
}


.checkbox input[type=checkbox], .checkbox-inline input[type=checkbox], .radio input[type=radio], .radio-inline input[type=radio] {
    position: absolute;
    margin-top: 0;
    margin-left: -20px;
    top: 48%;
    transform: translateY(-50%);
}

input[type=checkbox] {
    display: block !important; 
}

div.wpcf7 .ajax-loader {
    visibility: hidden;
    display: inline-block;
    width: 16px;
    height: 16px;
    border: none;
    padding: 0 !important;
    margin: 0 0 0 4px;
    vertical-align: middle;
}

@media screen and (max-width: 1000px) {
    #strength01, #strength02, #strength03 {
        width: 100%;
    }
    #strength {
        padding-bottom: 30px;
    }
}

@media screen and (max-width: 768px) {
    .service_item_p {
        clear: both;
    }

    .service_btn_p {
        padding-bottom: 40px;
    }

    .service_item_p:last-child .service_btn_p {
        padding-bottom: 0;
    }


    .txt-policy {
         font-size: 14px;
        line-height: 1.6;
    }

    .row-title .f-24 {
        font-size: 16px;
    }

    p {
        font-size: 14px;
        line-height: 1.8;
    }


    #strength01 .layout-column-txt, #strength02 .layout-column-txt {
        padding-bottom: 30px;
    }

    #service {
        padding: 30px 0;
        margin-bottom: -30px;
    }

    .lp90-article .article-text {
        font-size: 14px;
        line-height: 1.6;
    }

    .lp90-article .article-ttl {
        font-size: 20px;
    }

    .lp90-article .point-num {
        font-size: 24px;
    }

    


}

.f_name input {
    position: relative;
    z-index: 10;
}

span.wpcf7-list-item:first-child {
    margin-left: 0 !important;
}

.checkbox-inline {
    padding-left: 0;
}

.agree_check {
    background-color: #f7f4ee;
    position: relative;
}

.agree_check:after {
    content: "";
    width: 100%;
    height: 3px;
    top: -2px;
    background-color: #f7f4ee;
    position: absolute;
    left: 0;

}

.note-require {
    color: #233a97;
	font-family: 'Noto Sans JP', sans-serif;
}

.contact-form-st1 .note-require {
    font-size: 25px;
    line-height: 1;
    vertical-align: middle;
}

.checkbox-inline {
    position: relative;
}

.checkbox-inline .note-require {
    position: absolute;
    left: -33px;
    top: 35px;
}

.title {
    margin-top: 20px;
}

.head h1 {
    color: #000;
}

@media screen and (max-width: 768px) {
    span.wpcf7-list-item {
        display: block !important;
        margin: 0 !important;
    }

    .checkbox-inline input[type=checkbox] {
        transform: unset !important;
        top: unset;
        margin-top: 7px !important;
    }

    span.wpcf7-list-item-label {
        font-size: 14px;
    }

    .title-left {
        text-align: center;
    }

    #strength .container:first-of-type {
        padding-left: 0;
        padding-right: 0;
    }

    .content-policy .txt-policy {
        padding: 5px;
    }

    .content_wrap {
        width: 100%;
        overflow: hidden;
        height: 100%;
    }
}

.wpcf7-spinner {
    width: 10px !important;
    height: 10px !important;
    margin: 0 !important;
}

@media screen and (max-width: 768px) {
    .btn_reset {
        max-width: 150px !important;
        width: 100% !important;
    }
}

#strength01 .title-style39,
#strength02 .title-style39,
#strength03 .title-style39 {
    border-left: solid 50px #5c9ee7;  
    height: 51px;
    display: flex;
    align-items: center;
}

#strength01 .title-style39::before,
#strength02 .title-style39::before,
#strength03 .title-style39::before {
    left: -50px;
    top: 8px;
    -moz-transform: unset;
    -webkit-transform: unset;
    -ms-transform: unset;
    transform: unset;
    content: url(../images/service/service-icon.png);
}


.title-style16 {
    z-index: 1 !important;
}

#service .title-style16:before {
    border-left: solid 40px #f3f3f3 !important;
}

#strength01 .title-style39, #strength02 .title-style39, #strength03 .title-style39 {
    border-color: #fff;
}

.title-style39 {
    background: #fff;
}

span.title-style31 {
    display: block;
    width: 100%;
}

.lp90-article .point-num {
    color: #001b46;
}

@media screen and (max-width: 768px) {
    #strength01 .title-style39::before, #strength02 .title-style39::before, #strength03 .title-style39::before {
        transform: scale(0.9);
    }
}


.owl-nav button span {
    font-size: 100px;
    position: absolute;
    z-index: 12;
    
}

.owl-theme .owl-nav {
    position: absolute;
    width: 100%;
	bottom: 0;
}

.owl-theme .owl-nav .owl-next span {
    right: 15px;
}

.owl-theme .owl-nav .owl-prev span {
    left: 15px;
}


.owl-nav button span {
    font-size: 60px;
    position: absolute;
    z-index: 33;
    top: -45vh;
}

.owl-theme .owl-nav [class*=owl-]:hover {
    background: none;
}

.owl-theme .owl-dots {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 10px;


}


.owl-theme .owl-dots .owl-dot span {
    border-radius: 50% !important;
}

.mr-flows {
    width: 100%;
}

.mflow {
	border: solid #233a97;
	border-width: 2px 2px 2px 10px;
	margin: 0 0 40px 20px;
	position: relative;
}

.mflow::after {
    content: "▼";
    color: #87d8f5;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    font-size: 35px;
    bottom: -55px;
}

.mflow:last-child::after {
    content: unset;
}

.mflow-num {
    text-align: center;
    background-color: #87d8f5;
    color: #FFF;
    font-weight: bold;
    font-size: 24px;
    width: 45px;
    height: 45px;
    border-radius: 50% !important;
    position: absolute;
    top: 50%;
    left: -30px;
    transform: translateY(-50%);
}

.mflow-container {
	width: 100%;
}

.mflow-title {
/*    width: 100%;*/
    width: 98.3%;
    padding: 10px 10px 5px 30px;
    background-color: aliceblue;
	font-size : 20px;
    font-family: 'Sawarabi Mincho', serif!important;
    margin-left: 20px;
}

.mflow-content {
	width: 100%;
	padding: 10px 10px 10px 30px;
	line-height:1.8em;
	font-family: 'Noto Sans JP', sans-serif;
}

.indextitle {
    padding-top: 0px;
    text-align: center;
    font-size: 38px;
    font-weight: bold;
    margin-bottom: 30px;
}

.titleline {
    background-image: url(../../images/line_index01.png);
    background-repeat: no-repeat;
    background-position: center top;
    height: 10px;
    margin-top: 30px;
}

.indextitle span {
    padding-top: 0px;
    text-align: center;
    font-size: 16px;
    color: #868686;
    font-weight: normal;
    letter-spacing: 1px;
}

.clearfix {
	clear: both;
}

.mgt-30-sp{
	margin-top: unset;
}

.cont {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}

.blog-container {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    padding: 0 30px;
}

.blog-content {
    flex: 100%;
    max-width: 70%;
}

.blog-sidebar {
    flex: 100%;
    max-width: calc(30% - 40px);
    margin-left: 40px;
}

.blog-item {
    margin-bottom: 30px;
    padding: 20px 0px 25px 0px;
}

.blog-item-single {
    margin-bottom: 30px;
    padding: 15px;
}

.bl-item-title {
    font-size: 23px;
    font-weight: bold;
}

ul.wp-block-categories-list.wp-block-categories {
    padding-left: 20px;
    margin-top: 10px;
}

ul.wp-block-latest-posts__list.wp-block-latest-posts {
    padding-left: 20px;
    margin-top: 10px;
}

.wp-pagenavi {
	text-align: center;
	font-size: 24px;
	color: #FFF;
}

.wp-pagenavi span.current {
    font-weight: bold;
    padding: 10px;
    background-color: #87d8f5;
    border: unset;
}

.wp-block-categories li {
    list-style-type: none;
	font-family: 'Noto Sans JP', sans-serif;
}

.wp-block-categories li:before {
    content: "●";
    position: relative;
    left: -15px;
    top: 1px;
	color: #87d8f5;
}

.wp-block-latest-posts__list li {
	list-style-type: none;
}

.wp-block-latest-posts__list li:before {
	content: "●";
    position: relative;
    left: -15px;
    top: 1px;
	color: #87d8f5;
}

i.fa.fa-clock-o {
    color: #87d8f5;
}

i.fa.fa-user {
    color: #87d8f5;
}

.font01 {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif!important;
	font-weight: bold;
	font-size: 35px;
}

.title-style39::before {
    left: -34px;
    top: 48%;
}

.title-style39 {
    background: #ebf8fe;
	border-left: solid 2em #233a97;
	font-size: 22px!important;
    font-family: 'Sawarabi Mincho', serif!important;
}

.title-style39::before {
    content: "\f1fc";
}

.font-company {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif!important;
}

.top-bg-1 {
    background: url(../../images/bg01.png);
	padding: 65px 0!important;
}

/* #homepage {
	padding : 65px 0;
} */

.top-ser-p span.top-img-tt {
    display: block;
    font-style: 16px;
    font-weight: bold;
    text-align: center;
    color: #233a97;
    margin-top: 15px;
	letter-spacing: unset;
}

.top-ser-p span.top-img-txt {
    display: block;
    font-size: 17px;
    text-align: center;
    color: #333;
    margin-top: 0px;
	letter-spacing: unset;
}

.f-24pc-f-22sp{
	font-size: 24px;
}

.br-pc {
	display: block;
}

.bl-item-text {
    margin-top: 5px;
}

.mgt-20-sp {
	margin-top: unset;
}

.txt-hdr-sp {
    font-weight: bold;
    font-size: 30px;
    font-family: 'Sawarabi Mincho', serif;
}

.txt-hdr-sp span.next-line {
    font-weight: bold;
    font-size: 16px;
}

.txt-sawarabi-mincho {
    font-family: 'Sawarabi Mincho', serif;
}

/* NEWS */

.row-news {
    height: auto;
    overflow: auto;
}

.news-item {
    font-size: 18px;
    width: 100%;
    float: left;
/*    background: url(assets/images/ico-right.png) left center no-repeat;*/
    padding: 10px 10px 10px 20px;
    border-bottom: 1px dotted #ccc;
    color: #000;
	font-family: 'Noto Sans JP', sans-serif;
}

.news-img {
/*    margin-right: 20px;*/
    width: 50%;
    display: block;
    margin-top: 10px;
    margin-bottom: 10px;
}

.news-img img {  
    max-height: 180px;
    width: 100%;
    object-fit: cover;
    border: 1px solid #eee;
}

.news-content {
    display: inline-block;
/*
    position: absolute;
    top: 50%;
*/
}

.news-date {
    font-weight: bold;
    padding-right: 15px;
    color: #000;    
}

.top-tt span {
    font-size: 24px;
    color: #233A97;
    font-weight: bold;
    margin-bottom: 20px;
    display: block;
}

.top-img img {
	width: 100%;
}

@media screen and (min-width: 769px) {
	
    .slide-sp {
        display: none !important;
    }

    .slide-slick img {
        object-fit: contain;
        object-position: center;
    }

    .slide-img {
        height: 80vh;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    }

    .slide {
        padding-bottom: 62px;
    }
}

@media screen and (max-width: 768px) {
	
	.mflow-title {
		font-size: 16px;
        margin-left: 0;
        width: 100%;
	}
	
	.mgt-20-sp {
		margin-top: 20px;
	}
	
	.top-ser-p span.top-img-txt {
	}
	
	.top-ser-p span.top-img-tt {
		letter-spacing: 0.1em;
	}
	
	.br-pc {
		display: none;
	}
	
	.title-style39::before {
		left: -38px;
	}
	
	.f-24pc-f-22sp{
		font-size: 22px;
	}
	
	.title-style39 {
		font-size: 24px!important;
	}
	
	.mflow {
		margin: 0 0 40px;
	}
	
	.txt-hdr-sp {
		font-size: 1.2em!important;
    	text-align: center!important;
	}
	
	.blog-sidebar {
		max-width: unset;
		margin-left: unset; 
	}
	
	.blog-content {
		max-width: 100%;
	}
	
	.mgt-30-sp {
		margin-top: 30px;
	}
	
    .slide-pc {
        display: none !important;
    }

    .slide-slick img {
        object-fit: contain;
        object-position: center;
    }

    .slide-img {
        height: 70vh;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    }
	
	.mr-flows {
		padding: 0 0 0 18px;
	}
	
	.wp-pagenavi {
		font-size: 18px;
		margin: 0 0 40px;
	}
	
	.mflow-content {
		min-height: 50px;
        font-size: 14px;
	}

}


@media screen and (max-width: 767px) {
    .news-img {
        margin-right: 0;
        width: 100%;
        display: block;
        margin-bottom: 10px;
    }
    
    .news-img img {  
        max-height: 235px;
        width: 100%;
        object-fit: cover;
        border: 1px solid #eee;
    }

    .news-content {
        display: block;
        position: relative;
        top: 0;
    }

}