﻿.contact_tel.txt_center.en{
    margin-bottom: 20px;
}
.banner-wrap{
    justify-content: space-around;
    max-width: 800px;
    margin: auto;
}
.LINE{
    max-width:350px;
    margin-bottom: 20px;
}
.LINE img{
    transition: .3s;
}
.LINE a:hover img{
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    -webkit-animation: easeOutBounce .6s;
    animation: easeOutBounce .6s;
}
@media all and (-ms-high-contrast: none){
    #page8 .contact_tel a{
        padding:12px 40px 14px;
    }
}

a.pd_l-10px.pd_r-10px.txt_center.txt_color3.bg_color5.txt_white.d_inline_b.hvr_txt_white.hvr_bg_color1.motion03s{
    border:1px solid;
}
#fakeloader .fl{
    max-width:250px;
}
#c_icon img{
    width: 20px;
    position: relative;
    top: 7px;
    right: 6px;
}
span.no.bg_color2.txt_white.mg_r-10px.txt_center.d_inline_b {
    background: #ff8100;
}

h3.txt_color2.font_2up.font_bold.mg_b-10px {
    color: #ff8100;
}
.box.bg_color5.pd_40px.pd_clear_sp {
    background: #f7f7f7;
}

body{
    overflow:hidden;
}
#main_banner img:hover{
    transform:scale(1.05);
}
#main_banner img{
transition: all 0.3s ease-out;
}
#sp_nav{
    background:#fffac2;
}
.koumoku_title{
    border-bottom: 2px solid #ff8100;
    display: inline-block;
    padding: 0 20px;
    margin-bottom: 30px;
}
#cms_4-b .cate_box{
    margin:0;
}
.box_icon img{
    width:30px;
}
.pagetitle_img{
    mix-blend-mode:color;
    opacity:0.9;
    background-size: cover;
}
a.c-btn.txt_color_nomal.font_16.border_so2.border_color3 {
    color: #ff8101;
}
.pagetop{
    z-index: 99;
}
#banner:hover img{
    transform: scale(1.05);
}
#banner img{
     transition: all 0.3s ease-out;
}
#banner {
    position: fixed;
    bottom: 0;
    right: 0;
    padding: 10px;
    width: 300px;
    z-index: 99;
   
}
.menu_btn span {
    height: 3px;
    border-radius: 10px;
    background-color: #a91010;
}
.linkStyle {
    color: #ff8101;
}
.linkStyle:hover{
   opacity:0.6;
}
.f_contact_box.bg_white.posi_abs {
    background: #fffef3;
}
.footer_contact h4{
    line-height:1;
}
.logo2 a.width_200-max{
    max-width:180px;
}
footer .txt_white{
    color:#480000;
}

body, .txt_color_nomal {
    color:#480000;
}

span.txt_color2.font_15.pd_l-10px.font_10_tb {
    color: #9ee5b5;
}
section#topCms{
    margin-top:50px;
}

#con3 p.txt.txt_left.font_15.mg_t-20px.mg_b-30px_sp{
    margin-top:0px;
}
#con3 h4{
    display: inline-block;
    position: relative;
    z-index: 1;
    font-size: 20px;
    color: white;
    bottom:30px;
    transform: rotate(-4deg);
 
    
}
#con3 .box:nth-child(1) h4::before{
    width: 320px;
    height: 100px;
    top: -25px;
    left: -48px;
    content: "";
    position: absolute;
    background-image: url(Dup/img/label2.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: -1;
    transform: rotate(4deg);
}
#con3 .box:nth-child(2) h4::before{
    width: 320px;
    height: 100px;
    top: -25px;
    left: -80px;
    content: "";
    position: absolute;
    background-image: url(Dup/img/label2.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: -1;
    transform: rotate(4deg);
}
#con3 .box:nth-child(3) h4::before{
    width: 320px;
    height: 100px;
    top: -25px;
    left: -95px;
    content: "";
    position: absolute;
    background-image: url(Dup/img/label2.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: -1;
    transform: rotate(4deg);
}
.icon{
    display:none;
}
#con3 .title .en::before{
   width: 200px;
    height: 145px;
    background-image: url(Dup/img/hito.png);
    content: "";
    top: -50px;
    left: 195px;
    position: absolute;
    background-repeat: no-repeat;
    z-index: -1;
    background-size: contain;
}
#con3 .title .en::after {
    width: 70px;
    height: 65px;
    background-image: url(Dup/img/hoshi.png);
    content: "";
    top: -40px;
    right: -20px;
    position: absolute;
    background-repeat: no-repeat;
    z-index: -1;
    background-size: contain;
}
#con3 .title .en{
    font-size: 40px;
    font-weight: bold;
    letter-spacing: 10px;
    position:relative;
    z-index:1;
    display:inline-block;
    
}
#con2 figure{
    position:relative;
}
#con2 figure:after{
    position: absolute;
  top: 15px;
  left:15px;
  border-radius:20px;
  width: 100%;
  height:100%;
  content: '';
  background-image: -webkit-repeating-linear-gradient(135deg, #000, #000 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, #ffeb00, #efff00 1px, transparent 2px, transparent 5px);
  background-size: 7px 7px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index:-1;
}
#con3 h3 span{
    display:none;
}
section#con2 {
    padding-top: 150px;
    padding-bottom: 150px;
    background: url(Dup/img/con2.png);
    background-position: center bottom 1vw;
    background-size: 100%;
    background-repeat: no-repeat;
}
.con1_squ.posi_abs.d_flex.flex_center-center.width_100per{
    display:none;
}
section#con2{
    padding-top:150px;
    padding-bottom:150px;
}
section#con1,section#con3{
    padding-top:50px;
    padding-bottom:50px;
}
section#con1::before,section#con3::before {
    width: 100%;
    height: 65px;
    background-image: url(Dup/img/top.png);
    content: "";
    top: -65px;
    left: 0;
    position: absolute;
    background-repeat: no-repeat;
    background-size:100%;
    background-position: bottom;
}
section#con1::after,section#con3::after{
    width: 100%;
    height: 95px;
    background-image: url(Dup/img/bottom.png);
    content: "";
    bottom: -91px;
    left: 0;
    position: absolute;
    background-repeat: no-repeat;
    background-size: 100%;
    background-position:top;
    z-index:1;
}
#con2 p.font_15{
    position:relative;
    z-index:1;
}
#con2 p.font_22.font_20_sp.txt_color2{
    display: inline-block;
    position: relative;
    z-index: 1;
    padding-left: 25px;
    font-size: 30px;
    color: white;
    bottom:10px;
    transform: rotate(-4deg);
    text-shadow: 2px 2px 1px #767676;
}
#con2 p.font_22.font_20_sp.txt_color2::before{
    width: 400px;
    height: 100px;
    top: -23px;
    left: -20px;
    content: "";
    position: absolute;
    background-image: url(Dup/img/label.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: -1;
    transform: rotate(4deg);
}


.con1_inner h2::before {
    width: 70px;
    height: 70px;
    top: -20px;
    left: -50px;
    content: "";
    position: absolute;
    background-image: url(Dup/img/icon1.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: -1;
}
.con1_inner h2:after{
    position: absolute;
  bottom: 20px;
  left:-8px;
  width: 100%;
  height: 12px;
  content: '';
  background-image: -webkit-repeating-linear-gradient(135deg, #000, #000 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, #ffeb00, #efff00 1px, transparent 2px, transparent 5px);
  background-size: 7px 7px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index:-1;
}
.con1_inner h2 {
      letter-spacing: 8px;
    font-size: 45px;
    font-weight: bold;
    color: #ff8101;
    position: relative;
    display: inline-block;
    z-index: 1;
}
span.topTxt1.font_18.txt_center.bg_color1.txt_white.font_bold.posi_rel::before {
    opacity:0.7;
    width: 100px;
    height: 100px;
    top: -26px;
    left: 275px;
    content: "";
    position: absolute;
    background-image: url(Dup/img/intro.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index:-1;
    animation:rotation 5s linear;
    animation-iteration-count: infinite;
}
@keyframes rotation{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(360deg); }
}

span.topTxt1.font_18.txt_center.bg_color1.txt_white.font_bold.posi_rel {
    
    background: none;
    color: #740707;
    z-index: 1;
    position: relative;
    font-size:24px;
}
.topTxt1 .arrow{
    display:none;
}
.logo1{
    max-width:160px;
}
#main_b{
    position: absolute;
    text-align: center;
    width: 100%;
    z-index:1;
    top: 12.5vw;
}
#main_b img{
    max-width:770px;
    width:44vw;
    position: relative;
    left:60px;
}
p.font_18.txt_center.txt_left_tb.font_16_tb.font_14_sp{
    max-width: 850px;
    text-align: left;
    margin: auto;
    font-size:16px;
        background: white;
    padding: 5%;
    border-radius: 55px;
}
div#main_img {
    padding-top: 0px;
    max-height:100vh;
}
body{
    font-family: 'Kosugi Maru', sans-serif;
}
.animated{
  animation: poyoyon 0.5s cubic-bezier(0.12, 0, 0.39, 0) forwards;
  opacity:1;
}
.animated2{
  animation: poyoyon2 0.5s cubic-bezier(0.12, 0, 0.39, 0) forwards;
  opacity:1;
}
.con1_inner h2,.con3_title{
    opacity:0;
}
 
@keyframes poyoyon {
  0% {
    transform: translateY(140px);
    opacity: 0;
  }
  50% {
    transform: translateY(0) ;
  }
  70%{
        transform:scale(1.1);
  }
  100% {
    transform: translateY(0) scale(1);
  }
  20%,100% {
    opacity: 1;
  }
}
.anim-box.poyoyon.is-animated {
  animation: poyoyon 0.5s cubic-bezier(0.12, 0, 0.39, 0) 1 forwards;
}
 
@keyframes poyoyon2 {
  0% {
    transform: translateY(80px);
    opacity: 0;
  }
  50% {
    transform: translateY(0);
  }
  65% {
    transform: translateY(30px);
  }
  100% {
    transform: translateY(0);
  }
  20%,100% {
    opacity: 1;
  }
}
#main_banner{
    margin-top:3vw;
    opacity:0;
    width:100%;
}
#main_banner img{
    width: 30vw;
    position: relative;
    left: -6px;
    transform: rotate(-6deg);
}

/*--------------------------タブレット-------------------------------------*/
@media screen and (max-width:768px){
    .LINE {
    max-width: 315px;
    }
    section#con3{
        padding-top: 80px;
    padding-bottom: 0;
    }
    #con3 h4{
        bottom:10px;
        margin-bottom:20px;
    }
    #con3 .box .img{
        border-radius:100px;
    }
    section#con2{
        background-size:150%;
    }
    #con2 p.font_22.font_20_sp.txt_color2{
        margin-bottom: 20px;
    }
    .box_wrap.width_1280-max.width_90per.d_flex.flex_space-between.flex_top{
        flex-direction:column;
        align-items:center;
    }
    .box.width_30per.txt_center.width_100per_sp{
        width:70% !important;
        margin-bottom:80px;
    }
    section#con2{
        padding-top:100px;
        padding-bottom:100px;
    }
    #con2 .width_40per.width_100per_tb.mg_b-20px_tb{
        text-align:center;
    }
    #con2 .width_40per.width_100per_tb.mg_b-20px_tb p.font_15{
        text-align:left;
    }
    .con1_inner h2::before{
        width:50px;
        height:50px;
        left:-30px;
    }
    .con1_inner h2{
        font-size:30px;
    }
    .con1_inner h2:after{
        bottom:10px;
    }
    #main_b {
    position: absolute;
    text-align: center;
    width: 100%;
    z-index: 1;
    top: 8.5vw;
}
    #main_b img {
    max-width: 770px;
    width: 53vw;
    position: relative;
    left: 55px;
}
    #main_banner img {
    width: 40vw;
    position: relative;
    left: 20px;
    transform: rotate(-6deg);
}
#main_banner {
    margin-top:3vw;
    opacity: 0;
    width: 100%;
}
#con3 .title .en {
    font-size: 30px;
    margin-bottom: 20px;
}
#banner{
    width:270px;
}
.copy.bg_color5.txt_center.pd_t-30px.pd_b-30px.letter_2.pd_l-20px.pd_r-20px{
    padding-bottom:120px;
}
section#con1::before{
    top:-60px;
}
}
/*------------------------------ここまで------------------------------------*/
/*--------------------------スマホ-------------------------------------*/
@media screen and (max-width:667px){
.LINE {
    max-width: 235px;
}
.logo1 {
    max-width: 120px;
    padding-left:0;
}
    #con3 .title .en::before {
    width: 150px;
    left: 105px;
    }
    #con3 .title .en {
    font-size: 22px;
    margin-bottom: 20px;
    letter-spacing: 6px;
}
    section#con2 {
    padding-top: 80px;
    padding-bottom: 80px;
}
    .con1_inner h2::before {
    width: 40px;

    height: 40px;
    left: -18px;
}
    .con1_inner h2 {
    font-size: 24px;
    line-height: 40px;
    padding: 5px;
}
.con1_inner h2::after {
    display:none;
}
    span.topTxt1.font_18.txt_center.bg_color1.txt_white.font_bold.posi_rel{
      display: inline-block;
    text-align: left;
    font-size: 20px;
    padding: 5px;
    }
    span.topTxt1.font_18.txt_center.bg_color1.txt_white.font_bold.posi_rel::before{
        top:-6px;
        left:125px;
    }
    section#con1::before{
        display:none;
    }
div#main_img {
    padding-top: 100px;
}
#main_b img{
    width:83vw;
    left:30px;
}
#main_b{
    top:26.5vw;
}
#main_banner img{
    width:60vw;
    left:0;
    transform:none;
    
}
#con3 .title .en::after {
    width: 50px;
    height: 45px;
    background-image: url(Dup/img/hoshi.png);
    content: "";
    top: -30px;
    right: -15px;
}
.box.width_30per.txt_center.width_100per_sp{
    width:100% !important;
    margin-bottom:40px;
}
#banner {
    width: 190px;
}
#pagetop{
    right: 14px;
}
h4.font_50.txt_center.linehight_h.en {
    font-size: 38px;
}
.copy.bg_color5.txt_center.pd_t-30px.pd_b-30px.letter_2.pd_l-20px.pd_r-20px {
    padding-bottom: 90px;
}
.box_icon img {

    transform: rotate(90deg);
}
}