﻿/********** font **********/

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Infant:wght@500&family=Shippori+Mincho+B1:wght@500&display=swap');

:root{
    --font-jp: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif;
    --font-jp2: 'Shippori Mincho B1', "游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";
    --font-en: 'Cormorant Infant', 'Shippori Mincho B1', "游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";
}
body, .font_com, .font_sans-serif{
    font-family: var(--font-jp);
}
.font_jp{
    font-family: var(--font-jp2);
}
.font_en, a[href^="tel:"]{
    font-family: var(--font-en);
}

/********** color **********/

:root{
    --color1: #eaa3a0;
    --color2: #f7f7f7;
    --color3: #eab371;
    --color3s: #c1a634;
    --color4: #e4e4e4;
    --black: #222;
}

/********** all **********/

#loader .loader_top, #loader .loader_bottom{
    background-color: var(--color2);
}

h2, h3, h4, h5, h6{
    line-height: 1.5;
}

#pc_nav li .jp, #pc_nav_fix .jp{
    font-family: var(--font-en);
}

#logo{
    width: 150px;
}

/********** top **********/

.index header{
    height: 100vh;
    min-height: 700px;
    background-image: url('./Dup/img/bg_img.png');
    background-size: 2400px;
    background-repeat: repeat-x;
    background-position-x: 0;
    background-position-y: 50%;
    animation: conveyer1 30s linear infinite;
}

@keyframes conveyer1 {
    0% {
        background-position-x: 0;
    }
    100% {
        background-position-x: -2400px;
    }
}

#head_logo{
    position: absolute;
    top: 30px;
    left: 30px;
    width: 150px;
}

.main_img_wrap{
    position: relative;
    padding: 5% 15% 5% 0;
    box-sizing: border-box;
}
.main_img_wrap::before{
    position: absolute;
    content: "";
    width: 40%;
    height: 50%;
    background-image: url(./Dup/img/bg_img.jpg);
    background-size: cover;
    background-position: center;
    right: 20%;
    bottom: 3%;
    z-index: -1;
}

#main_img{
    min-height: inherit!important;
    height: 100%!important;
    margin-left: auto;
    filter: drop-shadow(10px 20px 20px rgba(0,0,0,0.2));
}
#main_img .swiper-container{
    clip-path: polygon(50px 0%, 100% 0, 100% 100%, 0 100%, 0 50px);
}
#main_img .scroll_bar{
    display: none;
}

#intro .intro_item {
    z-index: 2;
    top: 65px;
    right: 0;
    pointer-events: none;
    width: 400px!important;
}
#intro .intro_txt_wrap{
    background-image: url('./Dup/img/bg_img2.jpg');
    background-size: cover;
    background-position: center;
    clip-path: polygon(30px 0%, 100% 0, 100% 100%, 0 100%, 0 30px);
}
#intro .intro_title {
    font-family: var(--font-jp2);
    color: #fff;
    font-size: 34px;
}
#intro .intro_sub_title {
    color: #fff;
    margin-top: 10px;
    font-family: var(--font-en);
    font-size: 20px;
}
#intro .intro_txt{
    color: #fff;
}

#top_contents .con_box .contents_no {
    top: -30px;
    left: 10px;
    font-size: 50px;
    padding-left: 50px;
}
#top_contents .con_box .contents_no span{
    background-color: currentColor;
    width: 50px;
    height: 1px;
    transform: rotate(-45deg);
    left: 0px;
    top: 0;
    bottom: 0px;
}
#top_contents .con_box .box_img{
    clip-path: polygon(calc(100% - 30px) 0, 100% 30px, 100% 100%, 0 100%, 0 0);
}
#top_contents .con_box .box_img span{
    font-family: var(--font-en);
}
#top_contents::before {
    width: 30%;
    height: 300px;
    background-image: url(./Dup/img/bg_img.jpg);
    background-size: cover;
    background-position: center;
    right: 0;
    top: 0;
}
#top_contents::after {
    position: absolute;
    content: "";
    width: 15%;
    height: 500px;
    background-image: url(./Dup/img/bg_img.jpg);
    background-size: cover;
    background-position: center;
    left: 0;
    bottom: 50px;
    z-index: -1;
}
#top_contents .con_title{
    font-size: 26px;
    display: block;
    margin-top: 0;
    position: relative;
    font-family: var(--font-jp2);
}
#top_contents .con_txt_wrap{
    display: inline-block;
    padding: 20px 30px;
    background-color: #fff;
    margin-top: -30px;
    margin-left: -30px;
    position: relative;
}
#top_contents .con_sub_title{
    font-size: 20px;
    opacity: 1;
    color: var(--color3s);
}
.con_open .intro_title{
    font-family: var(--font-jp2);
}
#top_contents .con_box .contents_no, #top_contents .con_sub_title, .con_open .contents_no, .con_open .intro_sub_title {
    font-family: var(--font-en);
}
#top_contents .con_open .close_bt{
    width: 70px;
}

#top_cms .cms_title span, #top_info .info_txt_wrap span{
    background-color: var(--black);
}
#top_cms .cms_title h3{
    font-family: var(--font-jp2);
    color: var(--black);
}
#top_cms .cms_title p, #top_info .info_sub_title{
    font-family: var(--font-en);
    font-size: 20px;
    opacity: 1;
    color: var(--color3s);
}

.cms_1-g .box_img1{
    clip-path: polygon(20px 0%, 100% 0, 100% 100%, 0 100%, 0 20px);
}

.more, .date, .pager{
    font-family: var(--font-en);
}

#top_contact .contact_title {
    font-family: var(--font-jp2);
    color: var(--black);
}

#top_info .info_title{
    font-family: var(--font-jp2);
    color: var(--black);
}

#top_contact .contact_box{
    clip-path: polygon(30px 0%, 100% 0, 100% 100%, 0 100%, 0 30px);
}

/********** under_page **********/

.cate_title, .box_title1, .box_title2{
    font-family: var(--font-jp2);
}
.date_box{
    font-family: var(--font-en);
}

#page_title h2{
    font-family: var(--font-jp2);
    color: var(--black);
}
#page_title p{
    font-family: var(--font-en);
    font-size: 18px;
    color: var(--color3s);
}

#cms_3-b .cate_box{
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
}


/********** tablet 780 **********/
@media screen and (max-width: 768px){
.index header{
    height: 80vw;
    min-height: inherit;
}
.main_img_wrap {
    padding: 5% 10% 5% 0;
}
.main_img_wrap::before {
    width: 50%;
    height: 50%;
    right: 0;
    bottom: 0;
}
.index main{
    padding-top: 0;
}
#intro {
    padding-left: 50px;
    padding-right: 50px;
    padding-bottom: calc(60vw - 20px);
}
#intro .intro_item {
    right: 50px;
    width: 400px!important;
}
#intro .intro_txt_wrap{
    width: 100%!important;
}
#intro .intro_img {
    width: 100%!important;
    height: 60vw;
    top: auto;
    bottom: 0;
    clip-path: none
}
#top_contents::before {
    height: 200px;
    left: auto;
}
#top_contents::after {
    height: 200px;
    width: 30%;
}
#top_contents .con_txt_wrap{
    padding: 10px 20px;
}
#top_contents .con_title{
    font-size: 24px;
}
}

/********** mobile 750 **********/
@media screen and (max-width: 667px){
.index header {
    height: 500px;
}
.main_img_wrap{
    padding: 10% 15%;
}
#logo{
    width: 120px;
}
#intro {
    padding-left: 20px;
    padding-right: 20px;
}
#intro .intro_item {
    top: 26px;
    right: 20px;
    width: 250px!important;
}
#intro .intro_title{
    font-size: 28px;
}
#top_contents .con_txt_wrap{
    margin-left: 0;
}
#top_contents::before {
    top: -50px;
}
#top_contents::after {
    width: 30%;
    height: 200px;
    bottom: 0;
}
}