﻿/*.bg_color2 {*/
/*    background-color: #87b3dd;*/
/*}*/

.bg_color2 {
    background-color: #479cd7;
        background-color: #50a9fd;
}

.bg_color5 {
    background-color: #f0f7fc;
}

.bg_color3 {
    background-color: #274fc1;
}

.txt_color3 {
    color: #274fc1;
}

#main_img{
    perspective: 1000px;
    background-color: white;
    overflow: hidden;
    position: relative;
    height: 100vh;
}

#main_img img{
        transform: rotateX(80deg) translateY(100%);
    max-width: 880px;
    margin: auto;
    display: block;
    transform-origin: bottom;
    transition: all 1s ease-out;
}

#main_img img.nasi{
        transform: translateY(55%);
    transition: all 1s ease-out;
}

#main_img:before{
     content: "";
    display: block;
    width: 100%;
    height: 60%;
    position: absolute;
    top: 40%;
    left: 50%;
    background-image: url(./Dup/img/1.png), url(./Dup/img/2.png), url(./Dup/img/3.png), url(./Dup/img/4.png), url(./Dup/img/left.png), url(./Dup/img/center.png), url(./Dup/img/right.png);
    background-position: top left, top right, bottom left, bottom right, 20% 45%, 50% 44%, 80% 44%;
    background-repeat: no-repeat;
    background-size: 16%, 16%,16%, 16%, 30%, 10%, 30%;
    -webkit-transform: translate(-50% , -50%);
    transform: translate(-50% , -50%);
    pointer-events: none;
}

#main_img:after{
     content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    background-image: url(./Dup/img/copy.png);
    background-position: 89% 66%;
    background-repeat: no-repeat;
    background-size: 110px;
    -webkit-transform: translate(-50% , -50%);
    transform: translate(-50% , -50%);
    pointer-events: none;
    z-index: 1;
}



.bg_color1 {
   background-color: #acd13f;
}

#con2 .topimg2 img, #con2 .topimg3 img {
    border-radius: 280px;
}

#fakeloader{
    background-color: white;
}

.txt_color2 {
    color: #abd335;
}

.border_color3 {
    border-color: #274fc1;
}

body{
    min-width: 1080px;
}

#con2 .topimg3 {
    width: 40%;
    margin: -100px 0px 0px auto;
    transform: translate(-90px, -50px);
}

#con2 .topimg2 {
    width: 50%;
        transform: translate(40px, 30px);
}

.sl{
    display: none;
}

#con3 h3.txt_color1{
        color: #274fc1;
}

#con3:before{
        content: "";
    display: block;
    width: 100%;
    height: 100px;
    position: absolute;
    top: -100px;
    left: 0%;
    background-image: url(./Dup/img/up.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    pointer-events: none;
    z-index: -1;
}

#con3:after{
        content: "";
    display: block;
    width: 100px;
    height: 100px;
    position: absolute;
    top: -100px;
    left: 90%;
    background-image: url(./Dup/img/mizu.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    pointer-events: none;
    z-index: 0;
}

.txt_color1 {
    color: #274fc1;
}

#con2{
        background-image: url(./Dup/img/goods.png);
    background-position: center right;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

#con2 p.font_22{
    font-size: 32px;
    margin-bottom: 3vw;
    font-weight: bold;
    color: #479bd6;
}

.con1_inner h2{
        font-size: 40px;
    color: #274fc1;
    font-weight: bold;
}

.f_contact_img {
    opacity: 0.3;
}

#con4{
    display: none;
}

#page1{
    overflow: hidden;
}

.pagetitle_img {
    mix-blend-mode: normal;
    background-position: center center;
    background-size: cover;
        opacity: 1;
}

.pagetitle > div{
    display: inline-block;
    /* background-color: white; */
    filter: drop-shadow(2px 2px 10px white) drop-shadow(0px 0px 2px white);
}

.linkStyle{
color: #29a9e0;
font-weight: bold;
}

span.txt_color1.arrow{
         color: #acd13f;
    transform: translateX(-50%);
    margin: 0;
}

.border_color1 {
    border-color: #d3d3d3;
}

.f_contact_btn a{
    display: none;
}

#con3 .title .en {
    font-weight: bold;
}

/*--20230420 correct start--*/

#page8 .contact_tel a {
        font-size: max(1.0vw, 22px);
    width: 75%;
    min-width: 290px;
    padding: 10px 20px;
    letter-spacing: 0.05em;
}

.contact__tel > div.d_flex div.grid_5 h3{
    font-size: 26px;
}

/*--20230420 correct end--*/


.banner2, .banner3{
      bottom: 25px;
    left: 0;
    text-align: right;
    z-index: 1;
    max-width: 300px;
}

/* ---------- カスタム ---------- */
@media screen and (max-width: 900px){
    .pc_nav li {
    padding-right: 13px;
}
}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){

body{
    min-width: 100%;
}

#main_img img.nasi {
    transform: translateY(77%) translateX(-15%);
}

#main_img:before {
    width: 95%;
    height: 30%;
    top: 26%;
    left: 50%;
    background-position: top left, top right, bottom left, bottom right, 5% 45%, 50% 44%, 95% 44%;
    background-size: 21%, 21%,21%, 21%, 40%, 10%, 40%;
}

#main_img:after {
    background-image: url(./Dup/img/copy.png);
    background-position: 95% 80%;
    z-index: 1;
}

.contact__tel > div.d_flex div.grid_5 h3 {
    font-size: 18px;
    margin-bottom: 10px;
}

#page8 .contact_tel a {
    font-size: max(1.0vw, 16px);
    width: 75%;
    min-width: 100%;
    padding: 10px 20px;
    letter-spacing: 0.05em;
    box-sizing: border-box;
}

.contact__tel .grid_5{
    margin-bottom: 50px;
}

}

/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){

#main_img:before {
        height: 47%;
    top: 35%;
    background-position: top left, top right, bottom left, bottom right, 50% 24%, 50% 54%, 50% 75%;
    background-size: 14vh, 14vh, 14vh, 14vh, 24vh, 7vh, 24vh;
    width: 85%;
}

#main_img img {
    transform: none;
    max-width: 350px;
    margin: auto;
    display: block;
    transform-origin: bottom;
    transition: all 1s ease-out;
    width: 100%;
    bottom: 5%;
    position: absolute;
    display: block;
    left: 0%;
}

#main_img img.nasi {
    transform: none;
}

#main_img {
    height: 100vh;
    box-sizing: border-box;
    height: 100vh;
height: 100dvh;
}

#main_img:after {
    background-position: 94% 95%;
    background-size: 70px;
}

.con1_inner h2 {
    font-size: 20px;
    margin-bottom: 40px;
    text-align: center;
    font-weight: bold;
    line-height: 1.4em;
    letter-spacing: 0.1em;
}

#con2 {
    background-position: 80% 100.5%;
    background-size: 60%;
}

#con2 .topimg3 {
       margin: -30px 0px 0px auto;
    transform: translate(-30px, -50px);
}

.f_contact_box h4{
        font-size: 37px;
    margin-bottom: 15px;
}

#con2 p.font_22 {
    font-size: 20px;
    margin-bottom: 3vw;
    font-weight: bold;
    color: #479bd6;
    margin: 50px auto;
    text-align: center;
}

.header-in {
    background-color: white;
}

.banner2, .banner3 {
    max-width: 200px;
}



}