﻿/*--------color start----------*/
.bg_color1 {
    background-color: #003893;
}

.bg_color3 {
    background-color: #ed1e79;
}

.bg_color2 {
    background-color: #dddddd;
}

.txt_color3 {
    color: #ed1e79;
}

/*--------color end----------*/

.linkStyle{color: #003893;}

#loader img {
    width: 230px;
}

#contents > div{
    border:none;
}

#wrap{
    overflow: hidden;
}

#mail_contact{
    display: none;
}

#page_title p{
         color: #ed1e79;
}

#page_title h3{
    position: relative;
    z-index: 2;
}

.cate_no{
    color: gray;
}

#loader:after, .sm-slider:after, #main_img h2:before, #menu_wrap:after, #tel_contact, #page10 .box a::after {
    /*background: rgb(0, 56, 147);
    background: -moz-linear-gradient(left, rgb(0, 56, 147) 0%, rgb(237, 30, 121) 100%);
    background: -webkit-linear-gradient(left, rgb(0, 56, 147) 0%,rgb(237, 30, 121) 100%);*/
    background: #a7a7a7 !important;
}

#loader:after{
        background: #efefef !important;
}

#page_title:before{
    background:rgba(0, 56, 147, 0.8) !important;
}


#intro #intro_box #intro_txt h3 span {
    font-size: 30px;
    color: #fcd700;
}


#intro{
    position: relative;
}


#loader:before{
    content: "";
    display: block;
    width: 60%;
    height: 60%;
    position: absolute;
    top: 50%;
    left: 50%;
    max-width: 320px;
    background-image: url(./Dup/img/en2.png);
    background-position: center;
    background-repeat: no-repeat;
    -webkit-transform: translate(-50% , -50%) rotate(0deg) scale(2.5);
    transform: translate(-50% , -50%) rotate(0deg) scale(2.5);
    background-size: contain;
    pointer-events: none;
    z-index: 3;
    /*animation: rotate 20s linear infinite;*/
    animation: r1 1s ease forwards;
        transform-origin: center;
        opacity: 0.5;
}

@keyframes r1 {
  0%   { transform: translate(-50% , -50%) rotate(0deg) scale(2.5) ;
  opacity:0.5;}
  100% { transform: translate(-50% , -50%) rotate(360deg) scale(1) ;
  opacity: 1;}
}

#loader span.te{
    content: "";
    display: block;
    width: 60%;
    height: 60%;
    position: absolute;
    top: 50%;
    left: 50%;
    max-width: 320px;
    background-image: url(./Dup/img/te2.png);
    background-position: center;
    background-repeat: no-repeat;
    -webkit-transform: translate(-50% , -50%) rotate(0deg);
    transform: translate(-50% , -50%) rotate(0deg);
    background-size: contain;
    pointer-events: none;
    z-index: 2;
}

#intro:before{
    content: "";
    display: block;
    width: 500px;
    height: 500px;
    position: absolute;
    top: 80%;
    left: 7%;
    background-image: url(./Dup/img/en.png);
    background-position: center;
    background-repeat: no-repeat;
    -webkit-transform: translate(-50% , -50%) rotate(0deg);
    transform: translate(-50% , -50%) rotate(0deg);
    background-size: contain;
    pointer-events: none;
    z-index: 3;
    animation: rotate 20s linear infinite;
}



@keyframes rotate {
    0% { -webkit-transform: translate(-50% , -50%) rotate(0deg);
    transform: translate(-50% , -50%) rotate(0deg);}
  100% { -webkit-transform: translate(-50% , -50%) rotate(360deg);
    transform: translate(-50% , -50%) rotate(360deg);}
}




#intro:after{
    content: "";
    display: block;
    width: 500px;
    height: 500px;
    position: absolute;
    top: 80%;
    left: 7%;
    background-image: url(./Dup/img/te.png);
    background-position: center;
    background-repeat: no-repeat;
    -webkit-transform: translate(-50% , -50%);
    transform: translate(-50% , -50%);
    background-size: contain;
    pointer-events: none;
    z-index: 3;
}


.ore{
    margin-left:30%;
    margin-top:100px;
}

#intro > h3{
    font-size:50px;
    line-height:1.2em;
        padding-top: 100px;
    padding-bottom: 100px;
}


#intro #intro_box #intro_img {
    border: 2px solid #ed1e79;
}

#contents .ore_contents{
    content: "";
    display: block;
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    position: absolute;
    top: 50%;
    left: 50%;
    border:2px solid white;
    -webkit-transform: translate(-50% , -50%);
    transform: translate(-50% , -50%);
    pointer-events: none;
    z-index: 2;
}

#contents div h4{
    color: #fcd700;
}

/*-------css-------*/

#video{
    position: fixed;
    top: 0;
    left: 0;
    z-index: -2;
width:100%;
}

main {
    z-index: 1;
}

#main_img{
width: 100%;
    height: 47vw;
    min-height: auto; 
    position: relative;
}

#main_img:before{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    background-image: url(./Dup/img/font.png);
    background-position: center;
    background-repeat: no-repeat;
    -webkit-transform: translate(-50% , -50%);
    transform: translate(-50% , -50%);
    background-size: 80%;
    pointer-events: none;
    z-index: 3;
}

.stop{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    background-image: url(./Dup/img/stop.png);
    background-position: bottom left;
    background-repeat: no-repeat;
    -webkit-transform: translate(-50% , -50%);
    transform: translate(-50% , -50%);
    background-size: 46%;
    pointer-events: none;
    z-index: 3;
}

#contents h3 {
    margin-bottom: 70px;
    text-align: center;
}

#contents_links .box_wrap .box{
    background-color: #003893;
}

#footer_bottom{
    position: relative;
    z-index: 1;
}


#page08 #tel_contact{
    position: relative;
}

#page08 #tel_contact:before{
    content: "";
    display: block;
    width: 250px;
    height: 250px;
    position: absolute;
    top: -170px;
    right: 20px;
    background-image: url(./Dup/img/con_sita.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    pointer-events: none;
    z-index: -1;
}

#page08 #tel_contact:after{
    content: "";
    display: block;
    width: 250px;
    height: 250px;
    position: absolute;
    top: -170px;
    right: 20px;
    background-image: url(./Dup/img/con_ue.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    pointer-events: none;
    z-index: 1;
}


.con2{
    background-image: url(./Dup/img/left.png), url(./Dup/img/right.png);
    background-position: top left, bottom right;
    background-size: 80px;
    background-repeat: no-repeat;
    padding:5%;
}


.con2 h4{
    text-align: center;
}


/*--20241024 correct start--*/

.sns_links img {
    width: 60px;
}

/*--20241024 correct end--*/

/*--20250318 correct start--*/

#main_img:before, #main_img:after{
    opacity: 0;
}

/*--20250318 correct end--*/

/*--20250430 correct start--*/

.stop{
    opacity: 0;
}

/*--20250430 correct end--*/

@media screen and (max-width: 1281px){
h1:after {
    border-width: 100px 200px 0 0;
}

#main_img {
    height: 57vw;
}

}


@media screen and (max-width: 1000px){
#intro.on #intro_box #intro_txt {
    transform: translate( 0px, 150px);
}

.ore{
    transform: translate( 0, 100px);
}

#intro.on #intro_box #intro_txt {
    width: 80%;
    margin-left:20%;
}

#contents div {
    width: 60%;
    margin-left: 35%;
}

.stop {
    background-size: 39%;
}

}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){

#contents div {
    width: 90%;
    margin-left: 5%;
}

#main_img h2 {
    margin-top: 0px !important;
}

#intro.on #intro_box #intro_txt, .ore {
    transform: translate( 0px, 0px);
}

.stop {
    background-size: 53%;
}

#contents {
    padding-bottom: 150px;
}

#page_title {
    padding-top: 200px;
    padding-bottom: 150px;
}

}


/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){

#main_img {
    padding-top: 42vh;
}

#main_img h2 {
    margin-top: -80px;
}

#intro > h3{
        font-size: 23px;
    padding-top: 60px;
    padding-bottom: 60px;
}

#intro.on #intro_box #intro_txt {
    width: 90%;
    margin-left: 0%;
    transform: none;
    margin: auto;
}

#intro:after, #intro:before {
    width: 300px;
    height: 300px;
    top:75%;
    left: 7%;
}

.ore{
    transform: none;
    margin-left: 10%;
    margin-top: 100px;
}

#main_img {
    padding-top: 65vw;
    height:65vw;
}

#intro #intro_box #intro_txt h3 span {
    font-size: 25px;
}

#main_img h2{
    display: none;
}

#intro #intro_box #intro_img {
    border: none;
}


#main_img:before {
    top: 62%;
}

#intro_txt p{
    width:100% !important;
}

#contents {
    padding-bottom: 150px;
}

.stop {
    background-size: 80%;
    background-position: bottom center;
}

#page_title {
    padding-top: 120px;
    padding-bottom: 100px;
}

#page08 #tel_contact:before, #page08 #tel_contact:after{
    width:170px;
    height: 170px;
    top: -120px;
}

#loader img {
    width: 180px;
}

#cms_5-b .cate_box .arrow, .cms_5-b .cate_box .arrow {
    left: 0px;
}

#cms_5-b .cate_box .open_bt .box_title1, .cms_5-b .cate_box .open_bt .box_title1 {
    margin-left: 90px;
}

.con2 {
    background-size: 40px;
}


/*--20250327 correct start--*/

.sm-slider, .sm-slider::before, .sm-slider::after {
    height: 70vw !important;
}

#main_img {
    padding-top: 70vw !important;
    height: 70vw !important;
}

/*--20250327 correct end--*/


}