﻿@import url('https://fonts.googleapis.com/css2?family=Patrick+Hand&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Kiwi+Maru:wght@300;400;500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Potta+One&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Homemade+Apple&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Homemade+Apple&display=swap');
/*html, body{overflow: auto}*/
/*.pp-section{position: static}*/

.working {
    font-family: 'Homemade Apple', cursive;
}
figure.shadow {
    box-shadow: none;
}
.cms_wrap figure {
    border-radius: 30px;
}
#page08 .tel_box .txt_color1 {
    color: #fd9800;
}
.cms_link {
    top: 120px;
    right: 20px;
    z-index: 8;
    display: flex;
    /*align-items: center;*/
}
.cms_link div a {
    width: 80px;
    padding-right: 50px;
    font-size: 21px;
    border-radius: 10px;
    padding: 16px;
    display: block;
    box-sizing: border-box;
    display: flex;
    align-items: center;
}
.cms_link_box {
    transform: translateX(0);
	transition-duration: 0.3s
}
.cms_link_box:hover{
    transform: translateY(-5px);
	transition:transform 0.3s ease,opacity 0.3s ease; 
}

#footer_nav li {
font-size: calc(1rem + 2px);
}
#page_title {
    margin-bottom: 0;
}
.under_page {
    position: relative;
    max-width: inherit;
    padding-top: 50px;
}
.under_page:before {
    content: "";
    display: block;
    position: absolute;
    top: -57px;
    left: 0px;
    width: 100%;
    height: 59px;
    background-image: url(Dup/img/wave2.png);
    background-position: 50% 0;
    background-repeat: repeat-x;
    background-size: 100% 100%;
}
.under_page > * {
    max-width: 1280px;
    margin: 0 auto;
}
 #contents2 .fade_box {
    opacity: 0;
    transform: scale(0.85);
    transition: 0.5s;
    transition-timing-function: cubic-bezier(.175,.885,.32,1.275);
    transition-property: transform;
}
 #contents2 .fade_box.active {
    opacity: 1;
    transform: scale(1);
}
 #contents2 a.fade_box.active:hover {

 transform: scale(0.85);
}
main {
    padding-bottom: 100px;
}
/*#contents2:before {*/
/*    background: -webkit-repeating-linear-gradient(-45deg,transparent 0,transparent 10px,#fff 10px,#fff 20px);*/
/*    background: -o-repeating-linear-gradient(-45deg,transparent 0,transparent 10px,#fff 10px,#fff 20px);*/
/*    background: repeating-linear-gradient(-45deg,transparent 0,transparent 6px,#fff 6px,#fff 8px);*/
/*    content: '';*/
/*    width: 100%;*/
/*    height: 100%;*/
/*    position: absolute;*/
/*    top: 0;*/
/*}*/
.working {
    top: -27px;
    font-size: 49px;
    transform: rotate(-13deg);
    right: 26px;
    color: #8ee1f7;
}

/*top page animation*/
/* ローディング後にじわっと出現 */
.load-blurTrigger{
    opacity: 0;
}
.load-blur{
  animation-name:load-blurAnime;
  animation-duration:2.3s;
  animation-fill-mode:forwards;
}

@keyframes load-blurAnime{
  from {
  filter: blur(10px);
  transform: scale(1.05);
  opacity: 0;
  }

  to {
  filter: blur(0);
  transform: scale(1);
  opacity: 1;
  }
}




#logo {
    animation: purun 6s linear 0s infinite;
}

@keyframes purun {
 0% {
    transform: scale(1, 1) translate(0%, 0%);
}   
  4% {
    transform: scale(0.98, 1.02) translate(0%, 5%);
}  
  8% {
    transform: scale(1.02, 0.93) translate(0%, 10%);
} 
12% {
    transform: scale(0.96, 1.02) translate(0%, -10%);
}
16% {
    transform: scale(1.02, 0.95) translate(0%, 5%);
}
20% {
    transform: scale(1, 1) translate(0%, 0%);
}
100% {
    transform: scale(1, 1) translate(0%, 0%);
}
}












body {
    background-color: #fffef7;
    background-image: url("Dup/img/back-pattern.png");
    overflow: hidden;
}
#video #sns_links {
    z-index: 7;
    top: 50%;
    position: fixed;
    background: #ffac33;
    width: 49px;
    border-radius: 0 10px 10px 0;
    padding: 16px 0;
    transform: translateY(-50%);
    margin-top: 0;
    border: 1px solid #f8c25a;
    border-left: 0;
    /*display: none;*/
}
#video .sns_title {
    display: none;
}
#pc_nav li a {
    position: relative;
    text-align: left;
}
#pc_nav li a:before {
    background-image: url(Dup/img/arrow.png);
    content: "";
    display: block;
    width: 11px;
    height: 11px;
    right: 0;
    top: 50%;
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    margin-top: -5px;
}
#pc_nav li.tel_bt a:before {
    display: none;
}
header .nav_bg.trans {
    background-image: url("Dup/img/blizzard.png");
    background-size: 17px;
}
#intro {
  background-color: #fffef7;
    background-image: url("Dup/img/back-pattern.png");
}
h2.con_title, .intro_right {
    position: relative;
}
.con_no {
    font-family: 'Homemade Apple', cursive;
}
.cms_title h3, .intro_wrap .font_bar {
   font-family: 'Patrick Hand', cursive;
   letter-spacing: 3px;
       font-family: 'Potta One', cursive;
}
.qa_type3 .cate_box .box_title1, #pc_nav li, .cate_title, .intro_title, h2.con_title, h3, .footer_right {
    font-family: 'Kiwi Maru', serif;
    font-weight: normal;
}
.tel_bt, #page_title .title_wrap span, .more a {
    font-family: 'Potta One', cursive;
    font-weight: normal;
}
.more a {
    border: 3px solid #ffffff;
    border-radius: 50px;

}
#logo {
    max-width: 223px;
    margin-bottom: 0;
}
#logo2 {
    width: 245px;
}
.contents_eng {
    font-size: 50px;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
    top: 11%;
    color: #e5e5e5;
    transform: rotate(-9deg);
    z-index: -1;
    font-family: 'Homemade Apple', cursive;
}
#contents .con_bg {
    background-image: url("Dup/img/bg_jpg.jpg");
    background-size: cover;
}
#contents2 .con_bg {
    right: 0;
    width: 100%!important;
    background-color: #ffe8e8;
    background-image: url(Dup/img/maru_1.png);
    background-size: 1100px;
     animation: bgiLoop 86s infinite linear;
}
@keyframes bgiLoop {
    0% {background-position: top 0 left 0;}
	100% {background-position: top -1100px left 1100px;}
}
#contents2 .con_img {
    z-index: 1;
}
#pp-nav li a, .pp-slidesNav li a {
    color: #e70d1e;
}
.intro_right::before {
    content: "";
    position: absolute;
    top: 12px;
    left: 12px;
    width: calc(100% - 24px);
    height: calc(100% - 24px);
    border: 1px solid #fff;
}

#contents .con_img {
    z-index: 1;
    border-radius: 0 30px 30px 0;
}

#pc_nav li {
    font-size: 19px;
    border-bottom: 4px dotted #ffae1a;
}
#pc_nav li:not(:last-child) {
    background-image: url(Dup/img/hana.png);
    background-size: auto 35px;
    background-repeat: no-repeat;
    padding-left: 53px;
    background-position: 0 50%;
}

h2.con_title {
    font-size: 35px;
    line-height: 1;
    padding: 7px;
    /* text-shadow: 1px 1px 1px #f5c84a, -1px 1px 1px #f5c84a, 1px -1px 1px #f5c84a, -1px -1px 1px #f5c84a, 1px 0px 1px #f5c84a, 0px 1px 1px #f5c84a, -1px 0px 1px #f5c84a, 0px -1px 1px #f5c84a; */
    text-align: center;

}
#contents2 h2.con_title {
    
    font-size: 38px;
     color: #009f05;
     text-shadow: 4px 1px 0px #ffffff;
}
#contents .con_no {
    max-width: 80px;
    position: absolute;
    top: -33px;
    left: -71px;
    color: #917a5a;
    transform: rotate(-7deg);
    z-index: 0;
}
.intro_wrap {
    position: relative;
}
.intro_wrap .font_bar {
    font-size: 42px;
    line-height: 1;
    position: absolute;
    left: 0;
    right: 0;
    top: -15px;
    margin: auto;
    z-index: -1;
    color: #ffdcdc;
}
.intro_left {
    padding-top: 50px;
    padding-bottom: 30px;
}
.cms_title {
    background-image: url(Dup/img/hana2.png);
    background-size: auto 72px;
    background-repeat: no-repeat;
    background-position: 0% 50%;
    padding-bottom: 53px;
    margin-bottom: 62px;
    border-top: 0;
    padding-left: 102px;
}
.cms_title h3 {
    color: #ff9802;
font-size: 17px;
}
.cms_title p {
    font-size: 46px;
    line-height: 1;
    font-family: 'Kiwi Maru', serif;
}
#cms_2-c .box_txt1 {
    margin-bottom: 12px;
    border-bottom: 3px dotted;
    padding-bottom: 2px;
}
.cms_1-a figure {
    border: 4px solid #ffffff;
    border-radius: 10px;
}


.mainv_logo {
    left: 11%;
    top: 13%;
    max-width: 500px;
    width: 31%;
}
.catch {
    width: 59%;
    max-width: 620px;
    z-index: 1;
}
.more {
        padding-bottom: 100px;
}
.bnr_contact {
    z-index: 1;
    width: 35%;
    max-width: 500px;
    right: 0%;
    bottom: 0%;
transition: all 0.4s;
}
.bnr_contact:hover {
    transform: translateY(-10px);
    opacity: 0.8;
}
.bnr_recruit {
    z-index: 1;
    max-width: 1200px;
    margin: 0 auto;
}
.bnr_recruit a {
    width: 300px;
    padding-top: 23px;
    display: block;
    margin: 0 0 auto auto;
    padding-bottom: 56px;
}
header .nav_bg, .banner a, .pager li a {
    border-radius: 10px;
    box-shadow: 1px 2px 10px rgba(40, 40, 40, 0.12);
}
.pager li a {
    background: #ff9802;
    color: #fff;
}
.pager li a:hover {
    background: #fff;
    color: #ff9802;
}

footer {
margin-top: 0px!important;
}
footer .footer_bg {
    background-image: url(/Dup/img/wave.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: auto 100%;
    background-color: #fff7e2;
}

#top_cms {
    background-color: #ffffff;
    background-image: url("Dup/img/little-pluses.png");
}

#top_cms .cms_box:nth-of-type(3) {
    background-image: url(Dup/img/kazari_l.png), url(Dup/img/kazari_r.png);
    background-size: auto 1000px;
    background-repeat: no-repeat;
    background-position: 0 0, 100% 0;
}
#top_cms .cms_box:nth-of-type(1), #top_cms .cms_box:nth-of-type(4) {
    background: #fff7e8;
    padding-top: 35px;
    margin-bottom: 0;
}

@media(min-width: 769px) {
    #video {
        height: 100%;
    }
video.width_100per {
    min-height: 100%;
    min-width: 100%;
    /*width: auto!important;*/
}
footer #sns_links li a {
    justify-content: flex-start;
    align-items: center;
}
footer #sns_links li a img {
width: 40px;
height: 40px;
}

footer #sns_links .sns_title {
    width: calc(100% - 40px);
}
}
@media(max-width: 768px) {
.cms_link {
    top: auto;
    left: 7px;
    bottom: 8px;
    width: 100%;
    display: block;
}
.cms_link_box{
	width: 50%;
}
.cms_link div a {
    padding: 12px 0%;
    padding-right: 10px;
    width: 100%;
    display: inline-block;
    font-size: 15px;
}
.cms_link div a .box1{
    padding: 0 10px;
}
#copyright{
	padding-bottom: 60px!important;
}
    #custom {
    height: auto!important;
    }
    #contents .con_img {
    border-radius: 0;
}
    #contents2 .d_flex {
        height: auto!important;
    }
   #contents2 .con_img {
    z-index: 1;
    margin-bottom: 37px;
}
.under_page:before {
    top: -26px;
    height: 27px;
}
    .catch {
    width: 38%;
}
#logo {
    margin-bottom: 33px;
}
#contents .con_no {
    max-width: 75px;
    top: -36px;
    left: -45px;
}
}



/* ------------------------------------------------------------------------------------------------*/



.catch {
    top: 14%;
    max-width: 600px;
    right: 13%;
}
.kazari_l {
    left: 0;
    z-index: 0;
    top: 0;
    height: 100%;
    width: auto;
    z-index: 1;
}
.kazari_l img, .kazari_r img {
    height: 100%;
    width: auto;
}
.kazari_r {
    right: 0;
    z-index: 0;
    top: 0;
    height: 100%;
    width: auto;z-index: 1;
}
.custom_wrap {
    border-radius: 60px;
    border: 25px solid #fff;
    overflow: hidden;
}
#video {
    max-height: 100vh;
}

.flow_type4 .box_description2{
	border-left: dotted 4px #1e2b38;
	background-color: rgba(204, 204, 204, .35);
}
.flow_type4 .box_txt1,
.flow_type4 .box_txt2{
	padding-left:20px;
}
.flow_type4 .box_wrap{
    position: relative;
    padding-left: 30px;
}
.flow_type4 .box_wrap:before{
    content: "";
    display: inline-block;
    height: calc(100% - 30px);
    border-left: 4px dotted #5c8cb7;
    position: absolute;
    top: 30px;
    left: 26px;
}
.flow_type4 .cate_box:last-of-type{
	padding-bottom: 0;
}
.flow_type4 .box_description2{
    position: relative;
    border-left: none;
    background-color: rgba(255, 255, 255, 0);
}
.flow_type4 .box_description2 span{
	position: absolute;
    display: inline-block;
    width: 68px;
    top: 5px;
    left: -38px;
}
.v_type3 .box_title1{color: #a67c52;}
/*--------タブレット--------*/
@media screen and (max-width: 768px){
.flow_type4 .cate_box{
	flex-direction: column-reverse;
}
.flow_type4 .box_description2 span {
	width: 61px;
	left: -34px;
}
}
/*--------スマートフォン--------*/
@media screen and (max-width: 667px){
.flow_type4 .box_wrap{
    padding-left: 23px;
}
.flow_type4 .box_wrap:before {
    left: 19px;
}
}




@media(max-width: 667px) {
.cms_link {
    width: 200px;
}
.cms_link_box {
width: 100%;
}
.cms_link div a {
    padding: 8px 0%;
    font-size: 14px;
}
#logo2 {
    width: 176px;
}
#logo img {
    width: 159px;
}
.custom_wrap {
    border-radius: 34px;
    border: 16px solid #fff;
}
.catch {
    width: 58%!important;
    right: 0%;
    top: 5%;
}
.under_page:before {
    top: -29px;
    width: 180%;
    height: 30px;
}
.working {
    top: inherit;
    bottom: -11px;
    font-size: 42px;
    right: 12px;
    color: #ffffff;
}
#contents2 h2.con_title {
    font-size: 7vw;
}
.cms_title {
    background-size: auto 54px;
    padding-bottom: 53px;
    margin-bottom: 62px;
    padding-left: 76px;
    padding-right: 31px;
}
#video video {
    width: 105%!important;
    vertical-align: bottom;
}
#video #sns_links {
    background: transparent;
    border: 0;
    display: none;
}
#contents .con_no {
    top: -12px;
    left: -13px;
    max-width: 56px;
}
.bnr_recruit {
     padding: 0; 
}
.bnr_recruit a {
    width: 70%;
    padding-top: 0;
    display: block;
    margin: 0 auto;
}
#pc_nav li {
    font-size: 15px;
}
#page_title .title_wrap p {
    font-size: 7vw;
}
.cms_title {
    margin-bottom: 10px;
}
#contents h2.con_title {
    font-size: 22px;
    line-height: 1.6;
    padding-left: 41px;
    text-align: left;
}
.cms_title p {
    font-size: 29px;
}
.more {
    margin-top: 30px;

}
#top_cms .cms_box {
    padding-top: 0;
    margin-bottom: 9px;
}
#contents .con_wrap {
    padding-top: 30px;
    padding-bottom: 30px;
}
.bnr_contact {
    width: 60%;
    right: inherit;
    bottom: 0%;
    position: fixed;
    left: 0;
    z-index: 5;
}
}


/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
.qa_type3 .box_q{
	padding-right: 0
}
.qa_type3 .box_a{
	padding-left: 0
}
.qa_type3 .con_no{
    top: 13px;
}
.qa_type3 .cate_box .box_title1 {
    font-size: 16px;
}
.qa_type3 .cate_box .box_txt1 {
}
}

