@charset "utf-8";


/*------------------------------------

------------------------------------*/ 
#mainVisual.index_mainVisual {}
#mainVisual.index_mainVisual .wrapper {
    position: relative;
    overflow: hidden;
    background: url("../images/top/maineVisual.jpg") no-repeat center;
    background-size: cover;
}
#mainVisual.index_mainVisual .wrapper:before,
#mainVisual.index_mainVisual .wrapper:after {
    content: "";
    position: absolute;
    width: 100vw;
    bottom: 0;
    top: 0;
    background: white;
}
#mainVisual.index_mainVisual .wrapper:before {
    right: 50%;
    -webkit-clip-path: polygon(180% 0%, 100% 0%, 100% 100%, 0 100%);
    clip-path: polygon(180% 0%, 100% 0%, 100% 100%, 0 100%);
    -webkit-transform: rotateY(-180deg);
    transform: rotateY(-180deg);
}
#mainVisual.index_mainVisual .wrapper:after {
    left: 50%;
    -webkit-clip-path: polygon(180% 0%, 100% 0%, 100% 100%, 0 100%);
    clip-path: polygon(180% 0%, 100% 0%, 100% 100%, 0 100%);
}
#mainVisual.index_mainVisual .wrapper ul > li {
    display: flex;
    display:-webkit-flex;
    align-items:center;
    flex-wrap: nowrap;
    justify-content: center;
}
#mainVisual.index_mainVisual .wrapper ul > li + li:before {
    content: "";
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 500 500"><path fill="%23ffffff" d="M497.5,477.857L269.639,250,497.5,22.144,477.853,2.5,250,230.358,22.926,2.5,2.5,22.93,230.354,250,2.5,477.857,22.14,497.5,250,269.643,477.853,497.5Z"/></svg>');
    background-size: cover;
    background-repeat: no-repeat;
    display: block;
    width: 2.0em;
    height: 2.0em;
    margin: 0 2.2em;
}
#mainVisual.index_mainVisual .wrapper .headline .title,
#mainVisual.index_mainVisual .wrapper .headline .sub_title {
    text-shadow: 0 0 2.1rem rgba(0,82,117,0.84), 0 0 2.1rem rgba(0,82,117,0.84), 0 0 2.1rem rgba(0,82,117,0.84);
    z-index: 10;
    position: relative;
}
@media only screen and (max-width: 767px) {

#mainVisual.index_mainVisual .wrapper {
    height: 67.5rem;
    padding-top: var(--header_height);
    padding-bottom: var(--header_height);
}
#mainVisual.index_mainVisual .wrapper ul > li {
    flex-direction: column;
    width: 100%;
}
#mainVisual.index_mainVisual .wrapper ul > li img {
    height: 3.0em;
}
#mainVisual.index_mainVisual .wrapper ul > li + li:before {
    margin: 1.0rem 0;
}
#mainVisual.index_mainVisual .wrapper .headline .sub_title {
    padding-left: 10rem;
    padding-right: 10rem;
    display: block;
}




}
@media only screen and (max-width: 575px) {

}
@media print, screen and (min-width: 768px) {
#mainVisual.index_mainVisual .wrapper {
    height: 67.5rem;
    padding-top: var(--header_height);
    background-attachment: fixed;
}
#mainVisual.index_mainVisual .wrapper ul > li {
    flex-direction: row;
}
#mainVisual.index_mainVisual .wrapper ul > li + li:before {
    margin: 0 2.2em;
}

}
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {

}
@media print, screen and (min-width: 992px) {
}
@media print, screen and (min-width: 1200px) {
}





/*------------------------------------

------------------------------------*/ 

.list-business {}
.list-business-items {
    counter-increment: chapter;
}
.list-business-items > * {
    position: relative;
    overflow: hidden;
}
.list-business-items > *:before {
    font-size: clamp( 33.6px, calc( ( 100vw - 360px ) * ( ( 64 - 33.6 )  / ( 1200 - 360 ) ) + 33.60px ), 64px );
	/*	font-size: 64px;	*/
    font-family: Bahnschrift, din-2014, 'DIN Alternate', 'Franklin Gothic Medium', 'Nimbus Sans Narrow', sans-serif-condensed, sans-serif;
    content: "0"counter(chapter);
    color: white;
    z-index: 100;
    position: absolute;
    left: -.1em;;
    top: -.1em;;
    font-weight: bold;
    line-height: 1em;
}
.list-business-items:nth-child(n+10) > *:before {
    content: counter(chapter);
}
.list-business-items > * .thumbnail {
    aspect-ratio: 479 / 226;
    object-fit: cover;
    object-position: center;
    overflow: hidden;
    background-color: black;
}
.list-business-items > * .thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.list-business-items > * .headline {
    position: relative;
    z-index: 1000;
}
.list-business-items > * .headline:before {
    content: "";
    position: absolute;
    right: 0.75em;
    width: 1.0em;
    height: 1.0em;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    top:50%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 500 500"><path fill="%23916c31" d="M160.958,2.594L91.5,72.017,269.587,250.006,91.5,428.018l69.459,69.4L408.5,250.006Z"/></svg>');
}
.list-business-items > * .headline a {}
.list-business-items > * .headline a:after {
    content: "";
    width: 100vw;
    height: 100vw;
    position: absolute;
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    left:50%;
    top:50%;
    z-index: 1000;
}

@media only screen and (max-width: 767px) {

}
@media only screen and (max-width: 575px) {
.list-business-items > *:before {
    font-size: clamp(5.0rem, 25.0vw, 8.5rem);
}

}
@media print, screen and (min-width: 768px) {


}
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {

.list-business-items > * .headline.set_up:before {
    -webkit-transition: .5s;
    transition: .5s;
}
.list-business-items > * .thumbnail:has(.set_up) {
    position: relative;
}
.list-business-items > * .thumbnail:has(.set_up):before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: rgba(255,255,255,0);
    z-index: 10;
    -webkit-transition: .5s;
    transition: .5s;
}
.list-business-items:hover > * .thumbnail img.set_up {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}
.list-business-items:hover > * .thumbnail:has(.set_up):before {
    background-color: rgba(255,255,255,0.25);
}
.list-business-items:hover > * .headline.set_up:before {
    right: -2em;    
}

}
@media print, screen and (min-width: 992px) {}
@media print, screen and (min-width: 1200px) {}



/*------------------------------------

------------------------------------*/ 
.list-company {}
.list-company-items {
    position: relative;
    overflow: hidden;
}
.list-company-items .thumbnail {
    aspect-ratio: 1 / 1;
    object-fit: cover;
    object-position: center;
    overflow: hidden;
}
.list-company-items .thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.list-company-items .headline {
    position: relative;
    z-index: 1000;
    padding-left: 2.5rem;
    width: 100%;
}
.list-company-items .headline:before {
    content: "";
    position: absolute;
    right: -0.5em;
    width: 1.0em;
    height: 1.0em;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    top:50%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 500 500"><path fill="%23916c31" d="M160.958,2.594L91.5,72.017,269.587,250.006,91.5,428.018l69.459,69.4L408.5,250.006Z"/></svg>');
}
.list-company-items .headline .company_name {
    z-index: 1000;
}
.list-company-items .headline .company_name img {
    width: 2.5em;
    height: auto;
    margin-right: 1.05rem;
}
.list-company-items .headline .company_name a {}
.list-company-items .headline .company_name a:after {
    content: "";
    width: 200vw;
    height: 200vw;
    position: absolute;
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    left:50%;
    top:50%;
    z-index: 1000;
}
.name_group .headline img {
    height: 1.38em;
    width: auto;
}
#gmap_iframe {
    flex-grow: 1;
}
#gmap_iframe > iframe {
    display: block;
    margin: 0;
    height: 100%;
}


@media only screen and (max-width: 767px) {
.list-company-items .thumbnail {
    width: 7.0em;
    min-width: 7.0em;
}
#gmap_iframe > iframe {
    height: 450px;
}

}
@media only screen and (max-width: 575px) {

}
@media print, screen and (min-width: 768px) {

.list-company-items .thumbnail {
    width: 7.66666667em;
    min-width: 7.66666667em;
}

}
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {

.list-company-items {
    position: relative;
}
.list-company-items:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    border: 0 solid transparent;
}
.list-company-items.set_up:before {
    -webkit-transition: .25s;
    transition: .25s;
}
.list-company-items.set_up:hover:before {
    border-width: 5px;
    border-color: var(--color02);
}
.list-company-items .headline.set_up:before {
    -webkit-transition: .5s;
    transition: .5s;
}
.list-company-items .thumbnail:has(.set_up) {
    position: relative;
}
.list-company-items .thumbnail:has(.set_up):before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: rgba(255,255,255,0);
    z-index: 10;
    -webkit-transition: .5s;
    transition: .5s;
}
.list-company-items:hover .thumbnail img.set_up {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}
.list-company-items:hover .thumbnail:has(.set_up):before {
    background-color: rgba(255,255,255,0.25);
}
.list-company-items:hover .headline.set_up:before {
    right: -5em;    
}

}
@media print, screen and (min-width: 992px) {
}
@media print, screen and (min-width: 1200px) {
}





/*------------------------------------

------------------------------------*/ 

@media only screen and (max-width: 767px) {

}
@media only screen and (max-width: 575px) {

}
@media print, screen and (min-width: 768px) {


}
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {

}
@media print, screen and (min-width: 992px) {
}
@media print, screen and (min-width: 1200px) {
}





/*------------------------------------

------------------------------------*/ 

@media only screen and (max-width: 767px) {

}
@media only screen and (max-width: 575px) {

}
@media print, screen and (min-width: 768px) {


}
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {

}
@media print, screen and (min-width: 992px) {
}
@media print, screen and (min-width: 1200px) {
}





/*------------------------------------

------------------------------------*/ 

@media only screen and (max-width: 767px) {

}
@media only screen and (max-width: 575px) {

}
@media print, screen and (min-width: 768px) {


}
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {

}
@media print, screen and (min-width: 992px) {
}
@media print, screen and (min-width: 1200px) {
}





/*------------------------------------

------------------------------------*/ 

@media only screen and (max-width: 767px) {

}
@media only screen and (max-width: 575px) {

}
@media print, screen and (min-width: 768px) {


}
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {

}
@media print, screen and (min-width: 992px) {
}
@media print, screen and (min-width: 1200px) {
}





/*------------------------------------

------------------------------------*/ 

@media only screen and (max-width: 767px) {

}
@media only screen and (max-width: 575px) {

}
@media print, screen and (min-width: 768px) {


}
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {

}
@media print, screen and (min-width: 992px) {
}
@media print, screen and (min-width: 1200px) {
}





/*------------------------------------

------------------------------------*/ 

@media only screen and (max-width: 767px) {

}
@media only screen and (max-width: 575px) {

}
@media print, screen and (min-width: 768px) {


}
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {

}
@media print, screen and (min-width: 992px) {
}
@media print, screen and (min-width: 1200px) {
}





/*------------------------------------

------------------------------------*/ 

@media only screen and (max-width: 767px) {

}
@media only screen and (max-width: 575px) {

}
@media print, screen and (min-width: 768px) {


}
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {

}
@media print, screen and (min-width: 992px) {
}
@media print, screen and (min-width: 1200px) {
}

