﻿/*　スクショ用　*/
/*html, body{overflow: auto!important}
.pp-section{position: static!important}*/
/*----------------------------------*/

/* ---------- font ---------- */

@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@350&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@400;600&display=swap');

:root{
    --font-jp: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif;
    --font-en: 'Josefin Sans', "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif;
	--font-title: "Zen Old Mincho","游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";
}

body, .font_sans-serif, .font_serif{
    font-family: var(--font-jp);
     font-weight: 350;
}
.font_en,a[href^="tel:"], #header, .font_un, .more_btn, .top_cms_title h2, .date, #sf h3, .sf_copy, #page_title h2, .pager, .cate_label, #page10, #footer_nav, #page_top, .s_footer_copy, .qa_type1 .cate_box .open_bt .box_title1::before{
    font-family: var(--font-en);
}
h2,h3,h4,h5,.main_img_txt{
    font-family: var(--font-title);
}


/* ---------- color ---------- */

.linkStyle{color: #819e91;transition: opacity .3s;text-decoration: underline;word-break: break-all;}
.linkStyle:hover{opacity: 0.7}

:root {
    --normal_color: #4d4d4d;
    --color1: #819e91; /* メインカラー */
    --color2: #f5f7f6; /* サブカラー */
    --color3: #a79489; /* アクセントカラー1*/
    --color4: #f3eee8; /* アクセントカラー2*/
}
body,.txt_color_nomal{
	color: var(--normal_color);
}


/* ---------- all ---------- */
html {
    font-size: 14px;
}
/*.normal_img img, .rectangle_img, .square_img {
    border-radius: 20px 0 20px 0;
}*/
#logo{
    max-width: 120px;
}
.width_1280-max {
    width: 90%;
    max-width: 1600px;
}


/* ---------- top ---------- */
#main_img .swiper-wrapper::before{
    background: none;
}
.fv_txt{
    width: min(46%, 500px);
    right: 7vw;
    bottom: 20%;
    z-index: 3;
}

.intro_img div, .intro_img a::before{
    display: none;
}
.intro_box h2 {
    line-height: 1.5;
}
#s_content1 .title1 {
    left: -9px;
    top: 15%;
    z-index: 1;
    width: min(29%, 592px) !important;
}
#s_content1-1 .title2 {
    right: -18px;
    top: 37px;
    z-index: 1;
    max-width: 346px;
}
.intro_img a span{
    border-radius: 50% 50% 50% 70% / 50% 50% 70% 60%;
    top: -6%;
    left: -10%;
    width: 85%;
    height: 85%;
    transform: rotate(-30deg);
    background-color: var(--color2);
}
#s_content1-1 .intro_img a span{
    display: none;
    /*right: -10%;
    left: auto;
    width: 121%;
    height: 121%;
    left: auto;*/
}

#s_content1-1, #s_content1 {
    background-image: url(../img/bg1.jpg);
    background-size: cover;
}

.blog_wrap {
    width: 100%;
    max-width: 1280px;
}
.pp-scrollable {
    /*background-color: var(--color2);*/
}
.scrollpage_box{
    padding: 10px 0;
}
.blog_wrap {
    width: 100%;
    max-width: 1280px;
    margin: auto;
    padding: 0 50px;
    box-sizing: border-box;
}
.cms_box .top_cms_title {
    padding: 70px 0 100px;
    margin-bottom: 50px;
    background-color: var(--color2);
    background-image: url(../img/bg_img1.png);
    background-position: left 0 bottom -1px;
    background-repeat: no-repeat;
    background-size: 100% 100px;
}
.cms_box .cms_wrap{
    padding-left: 20px;
    padding-right: 20px;
}
.cms_box .cms_box_bg{
    display: none;
}
.cms_box .top_cms_title h2{
    font-size: 34px;
}
.cms_box .more_btn{
    margin-top: 50px;
    padding-bottom: 50px;
}

.more_btn a, .more_btn > span, .h_box_mail a, .sf_contact .sf_contact_mail a {
    border-radius: 50px;
}
.more_btn .more_line{
    left: -7px;
    width: 107%;
}
.more_btn > span, .more_btn a{
    padding-top: 14px;
}

.cms_box .cms_wrap {
    max-width: 1280px;
    width: 100%
}


/* ---------- under ---------- */
#page_title::before{
    background: rgb(255 255 255 / 20%);
}
.h_bnr{
    width: min(98%, 355px);
    margin-bottom: 30px;
}



/* ---------- tablet ---------- */
@media screen and (max-width: 768px){
#main_img{
    height: 60vh!important;
}
.fv_txt{
    right: -1vw;
    bottom: 13%;
}
#s_content1{
    padding-top: 50px;
}
#s_content1 .title1 {
    left: 10%;
    top: 5%;
    width: min(42%, 592px) !important;
}
#s_content1-1 .title2 {
    right: 48px;
    top: 37px;
    width: 42% !important;
}
}

/* ---------- mobile ---------- */
@media screen and (max-width: 667px){
#main_img{
    height: 330px!important;
}
.fv_txt {
    width: 26%;
    right: 6vw;
    bottom: 0%;
}
.fv_subtxt_sp {
    padding-top: 20px;
    padding-left: 12px;
    font-size: 18px;
    color: var(--color1);
    font-family: var(--font-title);
    font-weight: bold;
    line-height: 1.6;
}
.font_6up_sp {
    font-size: -webkit-calc(1rem + 5px);
    font-size: calc(1rem + 5px);
}
.cms_box .more_btn {
    padding-bottom: 0;
}
#logo2{text-align: center;}
#logo2 img{
    max-width: 120px;
}
#logo {
    max-width: 91px;
}

#s_content1{
    padding-top: 0;
}
#s_content1 .title1 {
    top: 10%;
}
#s_content1-1 .title2 {
    right: 0%;
    top: 37px;
}
.scrollpage_box {
    padding: 0;
}

.overlay nav {
    top: 45.5%!important;
}
.overlay .menu-box .menu_list > li:not(:nth-of-type(11)) a {
    padding-bottom: 2px!important;
}
}







