@charset "utf-8";


/*------------------------------------

------------------------------------*/ 
#mainVisual.index_mainVisual {
    position: relative;
    z-index: 10;
}
#mainVisual.index_mainVisual .wrapper {}
#mainVisual.index_mainVisual .wrapper .main {
    position: relative;
}
#mainVisual.index_mainVisual .wrapper .main img {
    position: relative;
    z-index: 1;
    display: block;
}
#mainVisual.index_mainVisual .wrapper .main img:not(.animate__animated) {
    opacity: 0;
}
#mainVisual.index_mainVisual .wrapper .main img + img {
    position: absolute;
    left: 0;
    right: 0;
    padding-right: 100%;
    top: 0;
    bottom: 0;
    z-index: 0;
    height: 100%;
    object-fit: cover;
    object-position: left;
}
#mainVisual.index_mainVisual .wrapper .main img + img.set_up {
    padding-right: 0;
    -webkit-transition-delay: 1s;
    transition-delay: 1s;
}
#mainVisual.index_mainVisual .wrapper .btn_block > .index_btn_link {
    position: relative;
    z-index: 10;
}
#mainVisual.index_mainVisual .wrapper .btn_block > .index_btn_link > a {
    text-decoration: none;
    font-weight: 600;
    letter-spacing: 0.25em;
    position: relative;
    overflow: hidden;
    z-index: 1000;
    background: rgb(137,0,11,1);
    background: linear-gradient(175deg, rgba(255,255,255,1) 0%, rgba(137,0,11,1) 0%, rgba(137,0,11,1) 13%, rgba(174,79,87,1) 100%);
    -webkit-box-shadow: 0 0 10px rgba(0,0,0,0.35);
    box-shadow: 0 0 10px rgba(0,0,0,0.35);
}
#mainVisual.index_mainVisual .wrapper .btn_block > .index_btn_link > a:after {
    content: "";
    position: absolute;
    left:0;
    right: 0;
    top: 0;
    -webkit-transform: skewY(-6.0deg);
    transform: skewY(-6.0deg);
    transform-origin: left;
    z-index: -1;
    width:100%;
    min-height:80%;
    display: block;
    background-color: #89000b;
}
#mainVisual.index_mainVisual .wrapper .btn_block > .index_btn_link > a > .link {
    position: relative;
    z-index: 1;
}
@-webkit-keyframes shine {
  100% {
    left: 125%;
  }
}
@keyframes shine {
  100% {
    left: 125%;
  }
}

@media only screen and (max-width: 767px) {
#mainVisual.index_mainVisual .wrapper .btn_block > .index_btn_link > a {
    -webkit-transform: translateY(50%);
    transform: translateY(50%);
}
}
@media only screen and (max-width: 575px) {}
@media print, screen and (min-width: 768px) {
#mainVisual.index_mainVisual .wrapper {
    padding-top: clamp( calc( ((14.5px * 1.25 ) + ( 1.5rem * 1.5 ) + ( 1.5rem * 1.5 )) / 1 ), calc((100vw - 360px) * ((20 - 14.5) / (1200 - 360)) + 14.5px), calc( ((20px * 1.25 ) + ( 1.5rem * 1.5 ) + ( 1.5rem * 1.5 )) / 1 ));
    padding-bottom: clamp( calc( ((14.5px * 1.25 ) + ( 1.5rem * 2 ) + ( 1.5rem * 2 )) / 1 ), calc((100vw - 360px) * ((20 - 14.5) / (1200 - 360)) + 14.5px), calc( ((20px * 1.25 ) + ( 1.5rem * 2 ) + ( 1.5rem * 2 )) / 1 ));
}
#mainVisual.index_mainVisual .wrapper .main  {
    margin-bottom: clamp( calc( ((14.5px * 1.25 ) + ( 1.5rem * 0.35 ) + ( 1.5rem * 0.35 )) / 1 ), calc((100vw - 360px) * ((20 - 14.5) / (1200 - 360)) + 14.5px), calc( ((20px * 1.25 ) + ( 1.5rem * 0.35 ) + ( 1.5rem * 0.35 )) / 1 ));
}
#mainVisual.index_mainVisual .wrapper .container:not(.h-100) {
    height: 0;
}
#mainVisual.index_mainVisual .wrapper .btn_block > .index_btn_link > a {
    -webkit-transform: translateY(50%);
    transform: translateY(50%);
}


}
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {

#mainVisual.index_mainVisual .wrapper .btn_block > .index_btn_link > a.set_up {
    -webkit-transition: .25s;
    transition: .25s;
}
#mainVisual.index_mainVisual .wrapper .btn_block > .index_btn_link > a.set_up:hover {
    -webkit-transform: translateY(50%) scale(1.1);
    transform: translateY(50%) scale(1.1);
    -webkit-box-shadow: 0 0 10px white, 0 0 40px white, 0 0 80px white;
    box-shadow: 0 0 10px white, 0 0 40px white, 0 0 80px white;
}
#mainVisual.index_mainVisual .wrapper .btn_block > .index_btn_link > a.set_up::before {
    content: '';
    position: absolute;
    top: 0;
    left: -75%;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
    transform: skewX(-25deg);
}
#mainVisual.index_mainVisual .wrapper .btn_block > .index_btn_link > a.set_up:hover::before {
    -webkit-animation: shine ease 0.7s forwards ;
    animation: shine ease 0.7s forwards ;
    -webkit-animation-delay: .3s;
    animation-delay: .3s;
}
}
@media print, screen and (min-width: 992px) {
#mainVisual.index_mainVisual .wrapper {
}
}
@media print, screen and (min-width: 1200px) {}





/*------------------------------------
なぜ当協会を選ぶ方が多いのか
------------------------------------*/
#why {}
#why .wrapper.bg-bgc_01 + .wrapper:before {
    content: "";
    display: block;
    aspect-ratio: 2 / 1;
    background-color: var(--bgc_01);
    width: 4.4em;
    height: auto;
    margin: 0 auto;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
}
#why .wrapper.bg-bgc_01 + .wrapper.animation_go:before {
    -webkit-transform: translateY( -2.2em);
    transform: translateY( -2.2em);
    -webkit-transition: .5s;
    transition: .5s;
    -webkit-transition-delay: .25s;
    transition-delay: .25s;
}
#why .wrapper.bg-bgc_01 + .wrapper.animation_gogo:before {
    -webkit-transform: translateY( 0em);
    transform: translateY( 0em);
}
#why .wrapper.bg-bgc_01 + .wrapper:not(.animation_gogo) .under_line.animation_go.animation_gogo {
    background-size: 0 30%;
}
@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) {}

/*------------------------------------

------------------------------------*/
.list-pran_items {
    position: relative;
    overflow: hidden;
    object-fit: cover;
    object-position: center;
}
.list-pran_items:after{
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    background: #000000;
    background: linear-gradient(0deg,rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0) 60%, rgba(0, 0, 0, 0) 100%);
}
.list-pran_items .thumbnail > img {
    object-fit: cover;
    object-position: center;
}
.list-pran_items .headline {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
}
.list-pran_items .headline .title {
    position: relative;
    padding-left: 2.5rem;
    padding-right: 2.5rem;
}
.list-pran_items .headline .title:after {
    content: "";
    position: absolute;
    font-size: clamp( 10px, calc( ( 100vw - 360px ) * ( ( 12 - 10 )  / ( 1200 - 360 ) ) + 10px ), 12px );
	/*	font-size: 12px;	*/
    width: 1em;
    height: 1em;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 314.438 490.781"><path fill="%23ffffff" d="M161.682,4.586l-68.9,68.849L269.426,249.97,92.787,426.532l68.9,68.849L407.208,249.97Z" transform="translate(-92.781 -4.594)"/></svg>');
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    top:50%;
    right: 0;
}
.list-pran_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%;
}
@media only screen and (max-width: 767px) {
.list-pran_items,
.list-pran_items .thumbnail > img {
    aspect-ratio: 1.5 / 1;
}
}
@media only screen and (max-width: 575px) {}
@media print, screen and (min-width: 768px) {
.list-pran_items,
.list-pran_items .thumbnail > img {
    aspect-ratio: 768 / 375;
}
}
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {
.list-pran_items:hover .thumbnail > img.set_up {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}
.list-pran_items:hover .headline.set_up {
    bottom: 50%;
    -webkit-transform: translateY(50%);
    transform: translateY(50%);
}
.list-pran_items:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    background: rgba(0,0,0,0);
    z-index: 1;
}
.list-pran_items.set_up:before,
.list-pran_items .headline .title:after {
    -webkit-transition: .5s;
    transition: .5s;
}
.list-pran_items.set_up:hover:before{
    background: rgba(0,0,0,0.35);
    -webkit-backdrop-filter: blur(.5rem);
    backdrop-filter: blur(.5rem);
}
.list-pran_items.set_up:hover .headline .title:after {
    opacity: 0
}
    }
@media print, screen and (min-width: 992px) {}
@media print, screen and (min-width: 1200px) {}



/*------------------------------------

------------------------------------*/ 
#about .wrapper:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.55);    
}
#about .wrapper > * {
    position: relative;
    z-index: 10;
}
@media only screen and (max-width: 767px) {}
@media only screen and (max-width: 575px) {}
@media print, screen and (min-width: 768px) {
#about .wrapper {
    background-attachment: fixed;
}
#google_map_iframe iframe {
    height: 100%;
}
}
@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) {
}

