@charset "UTF-8";

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


/* footerのtopあきを削除 */
.footer{
margin-top: 0;
}

/*
.p_menu{
}
.p_menu .content{
position:relative;
}
.p_menu .content .p_menu-list{
position: absolute;
z-index: 2;
}
*/

/*-----------------------------------------------------*/
/*------------------OP--------------------*/
/*-----------------------------------------------------*/
.about-op{
margin-top: 100px;
position: relative;
}
@media screen and (max-width: 1000px) {
.about-op{
margin-top: 50px;
}
}

.about-op-content .content{
position: relative;
}
.about-op-content .wrap{
width: 40%;
}
@media screen and (max-width: 1000px) {
.about-op-content .wrap{
width: 100%;
}
}

.about-op-content .img{
position:absolute;
top:-7vw;
right: 0;
width: 55%;
height: min(27vw, 400px);
background-image: url(../img/about_op_img.webp);
background-size: cover;
z-index: -1;
}
@media screen and (max-width: 1000px) {
.about-op-content .img{
position:initial;
width: 100%;
margin-top: 0;
height: 35vw;
}
}

.about-op .txt-en{
color: var(--color-gray-light);
font-size: var(--s150);
font-weight: 600;
position: absolute;
top:-5vw;
z-index: -2;
}
@media screen and (max-width: 768px) {
.about-op .txt-en{
font-size: var(--s60);
top:-7vw;
}
}

@media screen and (max-width: 1000px) {
.about-op-content p br{
display: none;
}
}


/*-----------------------------------------------------*/
/*------------------about-message--------------------*/
/*-----------------------------------------------------*/
.about-message{
margin-top: 150px;
}
.about-message-content{
display: grid;
grid-template-columns:45% 1fr;
column-gap: 40px;
}
@media screen and (max-width: 768px) {
.about-message-content{
display:block;
}
}

.about-message-content .position{
display: flex;
flex-wrap: wrap;
margin: 20px 0 20px -5px;
}
.about-message-content .position .item{
padding: 3px 10px;
margin: 5px 5px;
color: var(--color-white);
}
.about-message-content .position .item:first-child{
background-color: var(--color-blue-rich);
}
.about-message-content .position .item:nth-child(2),
.about-message-content .position .item:nth-child(3){
background-color: var(--color-blue-light);
}
.about-message-content .name{
font-size: var(--s30);
}
.about-message-content .name .txt-en{
color: var(--color-blue);
font-size: var(--s14);
margin-left: 10px;
}

@media screen and (max-width: 768px) {
.about-message-content .img{
margin-bottom: 30px;
}
}



/*-----------------------------------------------------*/
/*------------------about-company--------------------*/
/*-----------------------------------------------------*/

.about-company{
margin-top: 100px;
}
.about-company .table02 th{
width: 20%;
}

.about-company-map{
display: grid;
grid-template-columns: 55% 1fr;
column-gap: 40px;
margin-top: 40px;
}
@media screen and (max-width: 768px) {
.about-company-map{
display:block;
}
}

.about-company-map .wrap iframe{
width: 100%;
height: 400px;
margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
.about-company-map .wrap iframe{
height: 300px;
margin-bottom: 10px;
}
}

@media screen and (max-width: 768px) {
.about-company-map .img{
margin-top: 40px;
}
}




/*-----------------------------------------------------*/
/*------------------history--------------------*/
/*-----------------------------------------------------*/

.history{
background-color: var(--color-blue-thin);
margin-top: 100px;
padding: 50px 0 100px 0;
}

.history-wrap {
display: grid;
grid-template-columns: 1fr 1fr;
column-gap: 40px;
}
@media screen and (max-width: 768px) {
.history-wrap {
display:block;
}
}

.history-wrap .item{
display: grid;
grid-template-columns: 65px 15px 1fr;
}
.history-wrap .year{
color: var(--color-blue-murky);
font-size: var(--s22);
}
.history-wrap .line{
position: relative;
}
.history-wrap .line img{
position: absolute;
z-index: 2;
top:3px;
}
.history-wrap .line::before{
content: "";
display: block;
width: 1px;
height: 100%;
background-color: var(--color-blue-murky);
position: absolute;
top:0;
left: 0;
right: 0;
margin: 0 auto;
z-index: 1;
}
.history-wrap .list_template{
margin-left: 10px;
margin-bottom: 30px;
}
.history-wrap .item:last-child .list_template{
margin-bottom: 0;
}