﻿/*===========================================================*/
/* 個別 */
/*===========================================================*/

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500&family=Noto+Sans+JP:wght@500&display=swap');
@font-face {
    font-family: 'crayon_1-1';
    font-style: normal;
    font-weight: 900;
    src: url('../Dup/img/crayon_1-1.woff') format('woff'),url('../Dup/img/crayon_1-1.ttf')  format('ttf');
    font-display: swap;
}
#top_contents1 h2,#top_contents2 h2,#top_cms h2,.cms_6-a h3,#top_info h2,.catch,#top_contact_box h2,#page_title h2,.cate_title{
    font-family: crayon_1-1;
    color: #ffb6c1;
}
#top_contact_box h2{color: #fff;}
.font_Quick{
        font-family: 'Montserrat',"Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif!important;
        font-weight: 500;
}
#wrap{background-color: #FBF6F3;}
.border_rad40{border-radius: 40px;}
.cms_6-a .cate_box{background-color: #fff;}
.cms_6-a .cate_box:first-of-type {
    flex-direction: row-reverse;
}
.cms_6-a .cate_box a{transition: 0.7s;}
.cms_6-a .cate_box a:hover{background-color: #ffb6c1;transition: 0.7s;}
.more a,.more_btn a{
    border-radius: 40px;
        border-radius: 40px;
    background-color: #86ACAD;
    color: #fff;
    border: none;
    transition: 0.7s;
}
.more a:hover,.more_btn a:hover{transform: translateY(-5px);background-color: #c4c4c4;opacity: 0.7;}
#top_contact_box .btn_wrap .btn_box{margin-bottom: 0;}
#top_contact_box a.box{transition: 0.7s;}
#top_contact_box a.box:hover,#top_contact_box .tel_bt:hover{background-color: #ffb6c1;}
#top_contact_box .tel_bt:hover{border-color: #ffb6c1;}
.bg_section{
    height: 500px;
    width: 90%;
    margin-bottom: 50px;
}

.dec{
    max-width: 350px;
    width: 20%;
}
.dec01{
    bottom: -5%;
    right: 20px;
    z-index: 1;
}
.dec02{
    bottom: -10%;
    left: 0;
}
#top_contents1 .num img{max-width: 150px;}
#top_contents2 .num img{max-width: 120px;}
#main_img{max-height: 100%;}
#header{
    display: flex;
    justify-content: space-between;
    padding-top: 25px;
    background-color: #fff;
}
#logo{
    position: static;
    width: auto;
    height: auto;
}
#logo h1{
    max-width: 300px;
    position: static;
    top: inherit;
    left: inherit;
    transform: none;
    width: 100%!important;
}
.more a:hover, .more_btn a:hover{background-color: #ffb6c1;}
#top_contact_box .tel_bt{border: none;padding: 10px 10px;}
#logo2{
    width: 50%!important;
    max-width: 350px;
}
/*===========================================================*/
/* loading-top */
/*===========================================================*/
#loading_logo{max-width: 800px;}
#loading_heart{
    z-index: 4;
    max-width: 900px;
    width: 70%;
    opacity: 0;
    top: 48%;
    left: 51%;
    transition: opacity 7s;
}
#loading_heart.start{opacity: 1;}

/*===========================================================*/
/* loading-下層ページ */
/*===========================================================*/
#loader_wrap{
	width: 100%;
	height: 100vh;
	/*min-height: 800px;*/
	position: fixed;
	background-color: #fff;
	background-position: center center;
	background-attachment: fixed;
	background-size: cover;
	z-index: 9999;
}
#loader_wrap #book1,#loader_wrap #book2{
	width: 10%;
	height: auto;
}
#loader_wrap #book2{width: 14%;}
#loader_wrap figure img,#loader_wrap #book_bg{
	width: 100%;
	height: auto;
}
#loader_wrap #book1{
	z-index: 5;
}
#loader_wrap #book2{
	opacity: 0;
	z-index: 4;
}
#loader_wrap #book_bg{
	width: 100%;
	z-index: 2;
	opacity: 0;
	transition: opacity 2s;
}
#loader_wrap #welcome img{
	width: 100%;
	height: auto;
}
#wrap{
	overflow: hidden;
}



/*===========================================================*/
/* animation */
/*===========================================================*/
.slide {
    animation: slide 3s infinite ease-in-out .8s alternate;
    display: inline-block;
    transition: 2s ease-in-out;
}
@keyframes slide{
    0% {
    transform: translate(0, -5px);
}
100% {
    transform: translate(0, 5px);
}
}
.catch{
    font-size: 4rem;
    z-index: 2;
    letter-spacing: 3px;
    bottom: 10vw;
    left: 5vw;
    color: #fff;
    text-shadow: 2px 3px 10px #86acad;
}
.main_fade1.fadetrans,.fadein.fadetrans{
    opacity: 1;
    transform: none;
    transition: 0.7s;
}
.main_fade1 {
    opacity: 0;
    transform: translateX(-20px);
}
.fadein {
    opacity: 0;
    transform: translateY(10px);
    transition-property: opacity,transform;
}

/*===========================================================*/
/* 下層 */
/*===========================================================*/
#page_title .title_box{background-color: #fbf6f3;}
#page_title::before{background: none;}
#page_title .page_title_inner {
    padding: 200px 20px;
}
#cms_6-a .cate_title{background-color: #ffb6c1;color: #fff;}
#cms_5-a .cate .cate_title{
    background-color: #ffb6c1;
    background-image: url(Dup/img/heart03.png);
    background-size: 50px;
    background-repeat: no-repeat;
    background-position: center left 50px;
    color: #fff;
}
#contact_tel a,#contact_mail a{color: #ffb6c1;}
#page_title h2{font-size: calc(1rem + 16px);}
#fakeloader{background-color: #ffb6c1;}
/*===========================================================*/
/* タブレット */
/*===========================================================*/
@media screen and (max-width: 768px){
.catch{font-size: 3rem;}
.catch_txt .fadein{opacity: 1; transform: none;}
#loader_wrap #book1, #loader_wrap #book2{width: 20%;}
#loader_wrap #book2{width: 24%;}
#loading_heart{top: 49%;}
#header{padding-top: 15px;}
#logo h1.logo{
    top: inherit;
    left: inherit;
    transform: none;
    max-width: 300px;
}
#page_title h2{font-size: calc(1rem + 4px);}


}



/*===========================================================*/
/* スマホ */
/*===========================================================*/
@media screen and (max-width: 667px){
.catch {
    font-size: 20px;
}
.dec02{bottom: 0;}
.bg_section{height: 200px;}
#page_title .page_title_inner {
    padding: 80px 20px;
}
#loader_wrap #book_bg{width: 130%;}
#loading_logo{width: 50%;}
#logo h1.logo img{width: 100%!important;}
#logo2 {
    width: 80%!important;
}
}


/*===========================================================*/
/* IE */
/*===========================================================*/
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none){
#top_cms .more a{padding: 12px 15px 12px!important;}
#top_contact_box a i{top: 65%!important;}
#cms_2-a .cate .cate_title,#cms_6-a .cate .cate_title{padding-top: 10px!important;}
.font_Quick .cate_list li a{padding: 9px 10px 9px!important;}
#page9 a{padding-top: 5px!important;}
#cms_5-a .cate .cate_title span:last-of-type{padding-top: 0!important;}
.cms_6-a .cate_box{align-items: center!important;}



}


/*2023_0406_修正*/
#logo h1,#logo2 {
    max-width: 450px;
}
@media screen and (max-width: 768px){
    #logo h1.logo {
    max-width: 400px;
}
#logo{width: 90%!important;}
}

@media screen and (max-width: 667px){
#logo{width: 90%!important;}
    
}