@charset "utf-8";
/* company css */

.bg_imgbox {
background: url("../img/company/title_bg.jpg");
background-size: cover;
}

@media all and (max-width : 767px ){
.bg_imgbox {
background: url("../img/company/title_bg_sp.jpg");
background-size: cover;
}
}

.g_navi .gnavi02 a::before {
opacity: 1;
top: -18px;
}


/*-------------------------------------------------
パンくず調整
-------------------------------------------------*/

#page_company .pankuzu {
padding: 0px 20px 50px 0;
margin-top: -20px;
}

@media all and (max-width : 1270px ){
#page_company .pankuzu {
padding: 35px 20px 30px 0;
}
}



/*-------------------------------------------------
sec_message
-------------------------------------------------*/

.sec_message {
margin-bottom: 100px;
overflow: hidden;
}
.sec_title {
margin-bottom: 40px;
position: relative;
padding-top: 60px;
}
.sec_title::before {
content: "";
display: block;
background: #EB6700;
width: 40px;
height: 1px;
position: absolute;
top: 0;
left: 0;
}
.sec_title dt {
font-family: "Outfit", sans-serif;
font-weight: 100;
font-size: 5.0rem;
color: #EB5505;
letter-spacing: 0.02em;
line-height: 1;
margin-bottom: 10px;
}


@media all and (max-width : 1024px ){
.sec_title dt {
font-size: 4.5rem;
}
}

@media all and (max-width : 820px ){
.sec_title dt {
font-size: 3.5rem;
}
}

.sec_title dd {
font-size: 1.4rem;
font-weight: 400;
margin-left: 5px;
}
.name_box {
font-weight: 300;
margin-bottom: 30px;
margin-left: 5px;
}
.name_box dt {
font-size: 1.5rem;
letter-spacing: 0.15em;
line-height: 1;
margin-bottom: 10px;
}
.name_box dd {
font-size: 2.4rem;
letter-spacing: 0.2em;
}
.message_box {
position: relative;
background: #fff;
padding: 40px 50px;
}

@media all and (max-width : 900px ){
.message_box {
padding: 20px 35px 35px 0;
}
}

@media all and (max-width : 820px ){
.message_box {
padding: 40px;
}
}

.message_copy {
font-size: 2.4rem;
font-weight: 400;
letter-spacing: 0.2em;
margin-bottom: 25px;
}
.message_txt {
font-size: 1.6rem;
font-weight: 400;
line-height: 200%;
}
.message_box_wrap {
grid-column: 1 / 2;
grid-row: 1;
position: relative;
z-index: 2;
margin-right: -22%;
}
.message_imgbox {
grid-column: 2 / 3;
grid-row: 1;
position: relative;
z-index: 1;
margin-left: 0;
}
.message_imgbox img {
width: 100%;
display: block;
}
.message_box_row {
position: relative;
display: grid;
grid-template-columns: 46% 54%;
align-items: center;
}

@media all and (max-width : 1260px ){
.message_copy {
font-size: 2.2rem;
}
.message_txt {
font-size: 1.5rem;
}
}

@media all and (max-width : 1024px ){
.message_copy {
font-size: 2.0rem;
}
}

@media all and (max-width : 900px ){
.message_box_row {
grid-template-columns: 44% 56%;
}
}

@media all and (max-width : 820px ){
.message_copy {
font-size: 2.2rem;
}
.message_box_row {
display: block;
}
.message_box_wrap {
margin-right: 0;
}
}

@media all and (max-width : 767px ){
.sec_message {
margin-bottom: 50px;
}
.sec_title {
padding-top: 25px;
margin-bottom: 30px;
}
.sec_title::before {
width: 30px;
height: 1px;
}
.sec_title dt {
font-size: 2.6rem;
margin-bottom: 5px;
}
.sec_title dd {
font-size: 1.0rem;
margin-left: 2px;
}
.name_box {
margin-bottom: 10px;
}
.name_box dt {
font-size: 1.2rem;
margin-bottom: 5px;
}
.name_box dd {
font-size: 1.8rem;
}
.message_box {
padding: 25px 20px 30px 25px;
}
.message_copy {
font-size: 1.6rem;
letter-spacing: 0.1em;
line-height: 1.7;
margin-bottom: 20px;
}
.message_copy span {
font-size: 1.8rem;
}
.message_txt {
font-size: 1.4rem;
line-height: 180%;
}
}


/*-------------------------------------------------
sec_staff
-------------------------------------------------*/

.sec_staff {
margin-bottom: 80px;
}
.staff_box_wrap {
display: flex;
justify-content: center;
flex-wrap: wrap;
gap: 80px;
}
.staff_box {
width: 40%;
}

@media all and (max-width : 1024px ){
.staff_box_wrap {
gap: 40px;
}
.staff_box {
width: 45%;
}
}

.staff_imgbox {
position: relative;
margin-bottom: 25px;
}
.staff_img {
position: relative;
}
.staff_img img {
width: 100%;
}
.profile_box {
display: inline-block;
background: #fff;
padding: 15px 20px 15px 20px;
border-bottom: solid 2px #EB5505;
position: absolute;
bottom: 0;
left: 0;
}
.profile_box dt {
font-size: 1.2rem;
letter-spacing: 0.15em;
line-height: 1;
margin-bottom: 5px;
}
.profile_box dd {
font-size: 2.0rem;
letter-spacing: 0.2em;
}
.profile_txt {
font-size: 1.5rem;
line-height: 1.8;
}

@media all and (max-width : 767px ){
.sec_staff {
margin-bottom: 40px;
}
.staff_box_wrap {
display: flex;
flex-direction: column;
justify-content: center;
flex-wrap: wrap;
gap: 0px;
}
.staff_box {
width: 100%;
margin-bottom: 20px;
}
.staff_imgbox {
margin-bottom: 15px;
}
.profile_box {
padding: 15px 20px 10px 20px;
}
.profile_box dt {
font-size: 1.0rem;
letter-spacing: 0.1em;
margin-bottom: 3px;
}
.profile_box dd {
font-size: 1.6rem;
letter-spacing: 0.2em;
}
.profile_txt {
font-size: 1.3rem;
}
}

/*-------------------------------------------------
sec_overview
-------------------------------------------------*/

.sec_overview {
margin-bottom: 100px;
}
.overview_box {
width: 100%;
font-size: 1.5rem;
padding: 30px 10px 30px 25px;
border-bottom: solid 1px #E5D6CB;
display: flex;
justify-content: flex-start;
align-items: center;
letter-spacing: 0.2em;
}

@media all and (max-width : 820px ){
.overview_box {
font-size: 1.4rem;
}
}

.overview_box.top {
border-top: solid 1px #E5D6CB;
}
.overview_box dt {
width: 25%;
font-weight: 500;
display: block;
}
.overview_box dd {
width: 75%;
}

.overview_box dd a {
text-decoration: underline;
color: #EB6700;
}
.overview_box dd a:hover {
text-decoration: none;
}
.works_list li {
padding-left: 20px;
background-image: url("../img/common/icon_nakaguro.svg");
background-repeat: no-repeat;
background-position: left 1px;
margin-bottom: 10px;
display: block;
letter-spacing: 0.05em;
}


@media all and (max-width : 767px ){
.sec_overview {
margin-bottom: 50px;
}
.overview_box {
padding: 20px 10px 20px 15px;
display: flex;
flex-direction: column;
justify-content: flex-start;
align-items: flex-start;
}
.overview_box dt {
width: 100%;
letter-spacing: 0.15em;
font-size: 1.3rem;
margin-bottom: 10px;
}
.overview_box dd {
width: 100%;
font-size: 1.3rem;
}
.works_list li {
font-size: 1.3rem;
padding-left: 20px;
margin-bottom: 5px;
}
}

/*-------------------------------------------------
アクセスマップ
-------------------------------------------------*/

.gmap {
height: 0;
overflow: hidden;
padding-bottom: 35.32%;
position: relative;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}
.gmap_wrap {
padding: 2px;
border: solid 1px #ddd;
margin-bottom: 25px;
}
.access_method {
margin-left: 10px;
font-size: 1.5rem;
}
.access_method dt {
font-weight: 700;
letter-spacing: 0.2em;
margin-bottom: 10px;
}
.access_method dd {
font-size: 1.5rem;
}

@media all and (max-width : 820px ){
.access_method {
font-size: 1.4rem;
}
}


@media all and (max-width : 767px ){
.gmap {
padding-bottom: 55.32%;
}
.gmap_wrap {
margin-bottom: 10px;
}
.map_box {
width: 100%;
}
.access_method {
margin-bottom: 5px;
font-size: 1.2rem;
}
.access_method dt {
font-size: 1.3rem;
}
.access_method dd {
font-size: 1.3rem;
}
}