@charset "UTF-8";

section{
	max-width: 1100px;
    margin: 0 auto 160px}
/* ページ内リンクの固定ヘッダー分調整 */
.scroll_pt {padding-top:130px}
@media only screen and (max-width: 767px) {
    section{margin-bottom: 0}
    .scroll_pt {padding-top:80px}
}

/*----------------------- ABOUT US タイトル ---------------------------*/
.title_block{
    text-align: center;
    background: url("../img/aboutus/title_block_bg.png");
    background-size: cover;
    padding-bottom: 130px}
.title_img{
    position: static;
    width:94.5%;
	max-width: 1040px;
    margin: 0 auto}
.title_img img{
    position:static;
    margin-bottom:110px}

.bg_gray{
	position: relative;
    z-index: -1;
	background: #f2f2f2;
	padding:0 0 60px}
.title_block h2{
	display: inline-block;
	font-size: 48px;
	line-height: 1.4;
	webkit-font-smoothing: antialiased; /* フォントを細めに */
    -moz-osx-font-smoothing: grayscale; /* フォントを細めに */
	border-bottom: 1px solid #000
}
.about_head{
    text-align: center;
    width: 90%;
    max-width: 1040px;
    margin: 78px auto 110px
}
h3{
    margin-bottom: 80px;
    font-size: 24px}
.about_head h3{
    margin-bottom: 40px;
}
.about_head .txt{font-size: 14px}
@media only screen and (max-width: 767px) {
    .title_block{padding-bottom:40px}
    .title_img{width:90%}
    .title_img img{margin-bottom:40px}
    .title_block h2{font-size: 28px}
    .about_head{
        width:90%;
        margin:50px auto 0}
    h3{
        font-size: 24px;
        font-feature-settings: "palt";}
    .about_head .txt{
        text-align: justify;
        font-size: 16px}
}


/*----------------------- FLOW ---------------------------*/
#flow{position: static;z-index: -1}
/*  flow chart  Hear  PC only*/
.flowchart p{
    position: static;z-index: -1;
	box-sizing: border-box;
	line-height: 1;
	float: left;
	height: 34px;
	padding:8px 10px;
	text-align: left;
	background: #fff;
	margin-bottom: 20px}
p.flowchart_free{
	width: 35%;
	text-align: right}
p.flowchart_paid{
	width: 65%;
	background: #000;
	color: #fff;}

/*  flow chart  List  PC only**/
.flowchart_list{
	margin-bottom: 70px;
	display: -webkit-flex; 
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between}
.flowchart_list li{
	width: 26px;
	font-size: 22px;
	text-align:center;
	line-height: 1}
.flowchart_list li span{
	display: inline-block;
	margin-left: -3px;
	padding-top:10px ;
	writing-mode: vertical-rl}
@media all and (-ms-high-contrast: none) { /* IE10以降 */
	.flowchart_list li span{writing-mode:tb-rl;}
    .flow_sp_svg{width: 90%;margin: 0 auto 10px}
}


/*  FLOW flow */
.flow{
    z-index: -1;
    position: static;
	display: -webkit-flex; 
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between}
.flow_mb{margin:-10px auto 50px}
.flow_pay{
	width:36px;
    text-align: center;
	background: #fff;
	position: relative}
.flow_pay.paid{
	background: #000;
	color:#fff;
    display: table-cell;
	vertical-align: top;
    padding-top:10px}
.flow_pay p{
	writing-mode: vertical-rl}

.flow_pay.free p{
	margin:0 0 20px;
	position: absolute;
    left:0;
	bottom:0;
    padding-left:2px}
.flow_pay.paid p{padding-left:2px}


@supports (-ms-ime-align: auto) { /* Edge */
    .flow_pay.paid p{display: inline;paddging-left:10px}
}
@media all and (-ms-high-contrast: none) { /* IE10以降 */
    .flow_pay p{padding:0 10px;}
    .flow_pay.paid{display:block}
}
@media only screen and (max-width: 767px) { /* スマホ */
    .flow_pay.free p{padding:4px 8px 4px 0}
    .flow_pay.paid p{padding:8px 5px}
}
.flow_list{
	width: 90%;
	max-width: 960px;
	text-align: left}
.flow_list li{
	position: relative;
    margin-bottom: 40px}
.flow_list li.list_last{
    margin-bottom: 0}
.flow_list h4{
	line-height: 1.2;
	position: absolute;
	top:-12px;left:30px;
	font-size: 24px;}
.flow_list h4 span{padding-right:10px}
.flow_list li div{
	box-sizing: border-box;
	background: #fff;
	line-height: 1.6;
	margin:15px 0 0;
	padding:30px 10px 20px 30px
}

.flow_list .flow_tell{
	font-size: 18px;
	margin-top:10px}

.sp_ten{display: block}
@media only screen and (max-width: 767px) {
    .w1040,
    .flow_list{width: 90%}
	.flow{display: block}
	.flow_list{width: 100%}

	.flow_list h4{
		letter-spacing: 0;
		font-size: 20px;
		left:15px;}
	.flow_list h4 .spbr{
		display: block;
		padding-left:33px}
    .flow_list .list_10 h4 .spbr{padding-left:24px}
	.flow_list li div{
        width: 100%;
        height: auto;
        word-wrap:break-all;
        padding:30px 10px 20px 15px}
	.flow_list li div.pt40{padding-top:50px}
    /* フロー追加 */
    .flow_flex{
    display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
        justify-content: space-between}
    .flow_list{width: calc(100% - 42px)}
    .flow_pay{
        width: 25px;
        margin-top: 15px;
        letter-spacing: 0;
        line-height: 1;
        text-align: center;
        padding: 0 3px 20px 3px}
    .flow_pay.paid{margin-top:0}
    
    .sp_ten{ display: inline}
    .sp_ten:before{
        content: '、'
    }
	 
}
/*----------------------- COMPANY ---------------------------*/
#company h3,
.access h3{
    margin: 80px 0;
    text-align: center}
.company_data{
	width:90%;
	max-width: 840px;
	margin: 60px auto 100px;
	text-align: left;
    font-size: 15px;
    letter-spacing: 0.06em;
	border-top: 1px solid #eee}
.company_data dl{
	box-sizing: border-box;
	padding:30px 10px;
	border-bottom: 1px solid #eee;
	display: -webkit-flex; 
	display: flex;}
.company_data dt{width: 46%}
.company_data dd{width: 54%}
@media only screen and (max-width: 767px) {
    #company h3,
    .access h3{
        margin: 40px 0;
        font-size: 18px}
    .company_data{margin: 50px auto 80px}
	.company_data dl{
		font-size: 14px;
		line-height: 1.6;
		letter-spacing: 0}
	.company_data dt{width: 30%}
	.company_data dd{width: 70%}
}
@media only screen and (max-width: 400px) {
	.sp400{display: block}
}
/*----------------------- アクセス ---------------------------*/
section.access {
    width:90%;
	max-width: 1040px;
    margin: 0 auto
}
.access iframe{
    width:100%;
	margin: 0 auto
	}
@media only screen and (max-width: 767px) {
    section.access {
        width:90%;
        max-width:90%;
        margin: 0 auto 0 auto}
	.access iframe{
        width:100%;
        height: 250px;
        }
}


/*  add 202305 ページナビ追加 */
.page_link{width: 100%;text-align: center;margin:35px auto 10px;font-size:15px;line-height: 1}
.page_link a{
    width: 200px;padding:8px 0 20px;position: relative;display:inline-block;
    border-left:1px solid #000;font-family: 'Lora', serif;font-weight:600}
.page_link a:last-child{border-right: 1px solid #000}
.page_link a::before{
    content: '';width:7px;height:7px;
    border-top: solid 1px black;
    border-right: solid 1px black;
    transform: rotate(135deg);
    position: absolute;
    bottom:6px;left:48%}
/* コラム追加 */
.column_ttl{margin: 80px 0;text-align: center}
.column_list{display: flex;justify-content: space-between;font-size: 14px;line-height: 1.4; margin-bottom: 60px}
.column_list li{width: 29%}
.list_img{width:100%;position: relative;padding-bottom:14%;margin-bottom: 15px}
.list_img:after{
    content:" ";display: inline-block;position: absolute;bottom:0;right:0;
    width:84%;height:84%;background:#f2f2f2}
.list_img .pic {
	width:84%;height: 0;
	line-height: 0;
	overflow: hidden;
	padding-bottom:63%;
	position: relative}
.list_img .pic img {
	width: 100%;height: 100%;
	object-fit: cover;
	position: absolute;
	top: 50%;left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
    z-index:2;
	font-family:'object-fit:cover';}
.list_date{font-family: 'Lora bold';font-weight: 700;margin-bottom: 6px}
/* ボタン */
.bt_more{text-align: center}
.bt_more a{
    display: inline-block;position: relative;
    border: solid 1px #ccc;font-family: 'Lora', serif;font-weight:400;
    width:200px;height:62px;line-height:62px}
.bt_more a:hover{background:#fafafa}
.bt_more a:after{
    display: block;
    content: " ";
    position: absolute;
    top: 45%;
    right: 20px;
    width: 6px;
    height: 6px;
    border-top: solid 1px #232323;
    border-right: solid 1px #232323;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)}
@media only screen and (max-width: 767px) {
    .page_link{width: 90%;font-size:11px}
    .page_link a{width: 29%}
    .column_ttl{margin: 40px 0}
    .column_list{flex-direction: column;width: 90%;font-size: 12px;margin:0 auto 30px}
    .column_list li{width:100%}
    .column_list li a{display: flex;justify-content: space-between}
    .list_img{width:50%;padding-bottom:7%}
    .list_img .pic {width:86%}
    .list_img:after{width: 88%; height:76%}
    .list_txt{width:45%}
    .list_date{text-align: center;position: relative;padding-bottom:6px}
    .list_date:after{
        content:"";position: absolute;bottom:0;left:47%;
        width: 14px;height: 1px;background: #c3c3c3}
    .list_ttl{margin-top: 10px}
    .bt_more a{font-size: 14px;width:190px;height:60px}
}

/*  add 2024.06-12  */
img.company_data_logo{width:300px}
@media only screen and (max-width: 767px) {
    .sp_flex-column{flex-wrap: wrap}
    .company_data .sp_flex-column dt,
    .company_data .sp_flex-column dd{width:100%;margin:8px 0}
}
