﻿:root {
    --normal_color: #717171;
    --color1: #b9bdd4; /* 背景紫（薄） */
    --color2: #e5bebe; /* 背景ピンク（薄） */
    --color3: #e0adad; /* テキスト ピンク（濃）*/
    --color4: #b1b7d7; /* テキスト紫（濃）*/
    --color5: #efefef; /* テキスト紫（濃）*/
}
.bg_color1 {background-color: var(--color1);}
.bg_color3 {background-color: var(--color2);}
.bg_color4{background-color: var(--color1);}
.txt_color1 {color: var(--color4);}
.txt_color3 {color: var(--color3);}
.border_color1 {border-color:var(--color1);}
.border_color4 {border-color: var(--color5);}
.hvr_bg_color1:hover{background-color:var(--color1);}
.hvr_txt_color1:hover {color: var(--color1);}
.hvr_txt_color3:hover {color: #ee9393;}
/* ----------　all　---------- */
.linkStyle{
	color:var(--color3);
}
.linkStyle:hover{
	color:var(--color3);
	opacity: 0.7;
	transition: all 0.5s;
}
body, .txt_color_nomal {
    color: var(--normal_color);
}
body ,.loader_txt, .cms_title h2, #catch h2, #question h2, #contents h2, #contents .box h3, #top_cms .cms_title h2, #page_title h2{
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: normal!important;
}
.en_font {
    font-family: 'Caveat', cursive;
    font-family: 'Clicker Script', cursive;
    font-family: 'Dancing Script', cursive;
    font-family: 'Neonderthaw', cursive;
    font-family: 'Petit Formal Script', cursive;
    /* font-family: 'Sacramento', cursive; */
}
.font_bold {
    font-weight: normal;
}
.top_loader .logo {
    max-width: 300px;
}
.cms_link div a,.cms_link div a:hover{
    color: #fff;
}
footer .footer_con_box a.footer_con:hover {
    background-color: #fff;
}
/* ----------　TOP　---------- */
/* メインイメージ */
.menu {
    max-width: 450px;
}
.menu .catch{
    filter: drop-shadow(2px 4px 10px rgba(99 ,79 ,79 ,0.35));
    max-width: 370px;
    margin: auto;
}
.menu .logo ,.menu ul{
    background-color: transparent!important;
    filter: drop-shadow(1px 1px 10px #a18195);
    filter: drop-shadow(2px 4px 10px rgba(99 ,79 ,79 ,0.35));
}
.menu .logo img{
    width: 100%!important;
}
.menu ul li a{
    color: #fff;
    text-shadow: 1px 1px 10px #a18195;
    text-shadow: 2px 4px 10px rgba(99 ,79 ,79 ,0.35);
}
.menu .sns_link{
    justify-content: flex-start;
}
.main_dec{
    position: absolute;
    z-index: 1;
    height: 100%;
    opacity: 0.8;
}
.main_dec img{
    height: 100%;
    width: auto;
}
/* TOPお知らせ */
.top_cms_box_wrap .cms_title {
    background-color: #fff;
    color: #717171;
}
/* イントロ */
#catch{
    position: relative;
}
#catch figure{
    width: 50%;
    position: absolute;
    z-index: 1;
    bottom: -80px;
    max-width: 890px;
}
#catch .box {
    margin-right: 8%;
}
#catch .box .sub_title {
    font-size: -webkit-calc(1rem + 55px);
    font-size: calc(1rem + 40px);
    position: static;
    -webkit-transform: rotate(0deg);
    margin-left: -20px;
}
#catch .box .title {
    margin-left: -20px;
    font-size: -webkit-calc(1rem + 17px);
    font-size: calc(1rem + 17px);
}
/* お悩み */
#question .title_dec{
    border-bottom:none;
}
#question .sliceTxt6, #question .sliceTxt7, #question .sliceTxt8 {
    color: #717171;
    text-shadow: none;
}
#question:before {
    background-image: url(Dup/img/question_bg.jpg);
    background-size: cover;
    opacity: 0.6;
}
#question .box .box_item {
    background-color: rgba(255, 255, 255 ,0.55);
    border-radius: 0;
    position: relative;
}
#question .box .box_item:before {
    content: "";
    position: absolute;
    width: 50%;
    height: 100%;
    background-color: rgba(255, 255, 255 ,0.55);
    right: -50%;
}
#question .box .box_item:after {
    content: "check";
    transform: rotateZ(90deg);
    position: absolute;
    left: -185px;
    height: 100px;
    font-family: 'Petit Formal Script', cursive;
    color: #b9bdd4;
    color: rgba(255 ,255 ,255 ,0.55);
    font-size: -webkit-calc(1rem + 75px);
    font-size: calc(1rem + 75px);
    letter-spacing: 10px;
}
#question .txt {
    box-sizing: border-box;
    padding: 10px 0 10px 60px;
}
#question .txt:before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    display: inline-block;
    width: 40px;
    height: 40px;
    z-index: 1;
    padding-right: 20px;
    background-image: url(Dup/img/check.png);
    background-size: contain;
    background-repeat: no-repeat;
}
/* コンテンツ */
#contents {
    padding-top: 200px;
    position: relative;
}
#contents:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url(Dup/img/content_bg.jpg);
    background-size: cover;
    top: 0;
    left: 0;
    opacity: 0.4;
}
#contents .contents_wrap{
    max-width: 1500px;
}
#contents .box {
    display: flex;
}
#contents .box:nth-child(odd){
    flex-direction: row-reverse;
}
#contents .box figure {
    width: 50%!important;
    box-shadow: 2px 2px 50px rgba(229 ,190 ,190 ,0.3);
}
#contents .box:nth-child(even) figure {
    margin-left: 0%;
    box-shadow: 2px 2px 50px rgba(185 ,189 ,212 0.3);
}
#contents .box .box_item {
    background-color: transparent;
    margin-top: 0px;
    width: 45%!important;
    margin-left: 5%;
}
#contents .box:nth-child(odd) .box_item {
    margin-left: 0%;
    margin-right: 5%;
}
#contents .box .box_item:before {
    width: 200%;
    height: 50%;
    border: none;
    top: 100px;
    left: 120px;
    background: linear-gradient(45deg, var(--color1), var(--color2));
    opacity: 0.2;
    z-index: -1;
}
#contents .box:nth-child(odd) .box_item:before {
    left: auto;
    right: 120px;
}
#contents .box .box_item .sub_title {
    font-size: -webkit-calc(1rem + 45px);
    font-size: calc(1rem + 45px);
}
#contents .box .box_item h3{
    font-size: -webkit-calc(1rem + 10px);
    font-size: calc(1rem + 10px);
}
.marker {
    background: none;
}
/* ----------　下層ページ　---------- */
#page_title{
    background-position: top -100px center;
}
/* 初めての方へ */
#cms_3-g .cate_item, .cms_3-g .box_wrap {
    box-shadow: none;
    border: 1px solid var(--color5);
}
/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */

/*-------------------------------------------------------
			        1536px
-------------------------------------------------------*/
@media screen and (max-width: 1536px){
/* ----------　TOP　---------- */
/* メインイメージ */
#catch {
    padding-top: 0px;
}
#catch figure {
    bottom: -60px;
}
}

/*-------------------------------------------------------
			        1366px
-------------------------------------------------------*/
@media screen and (max-width: 1366px){
/* ----------　TOP　---------- */
/* お悩み */
#question .box .box_item:after {
    font-size: -webkit-calc(1rem + 55px);
    font-size: calc(1rem + 55px);
    left: -160px;
}
}

/*-------------------------------------------------------
			          タブレット
-------------------------------------------------------*/
@media screen and (max-width: 768px){
/* ----------　all　---------- */

/* ----------　TOP　---------- */
/* メインイメージ */
.catch_sp{
    position: absolute;
    z-index: 2;
    width: 80%;
    max-width: 450px;
    left: 20px;
    /* top: 50%; */
    /* transform: translateY(-50%); */
    /* top: 20%; */
    bottom: 10%;
    filter: drop-shadow(2px 4px 10px rgba(99 ,79 ,79 ,0.35));
}
/* イントロ */
#catch figure {
        position: relative;
    width: 80%;
    bottom: 0px;
}
#catch .box {
    margin-right: 5%;
}
/* お悩み */
#question{
    padding-top: 70px;
}
#question h2{
    margin-bottom: 80px;
}
#question .box .box_item:after {
    font-size: -webkit-calc(1rem + 45px);
    font-size: calc(1rem + 45px);
    left: 0px;
    top: -69px;
    transform: rotateZ(0deg);
}
#question .txt {
    width: 100%;
    margin-right: 0%;
    margin-bottom: 40px;
}
#question .txt:last-child{
    margin-bottom: 0px;
}

/* コンテンツ */
#contents {
    position: relative;
    padding-top: 120px;
    padding-bottom: 50px;
}
#contents .box ,#contents .box:nth-child(odd){
    flex-direction: column;
    margin-top: 80px;
}
#contents .box figure {
    width: 100%!important;
}
#contents .box .box_item {
    width: 100%!important;
    margin-left: 0%;
}
/* ----------　下層ページ　---------- */
/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */

}



/*-------------------------------------------------------
		            	スマホ
-------------------------------------------------------*/
@media screen and (max-width: 667px){
/* ----------　all　---------- */
.top_loader .loader_txt {
    font-size: -webkit-calc(1rem + 4px);
    font-size: calc(1rem + 4px);
}
/* ----------　TOP　---------- */
/* メインイメージ */
.main_img {
    height: 35vh;
}
.main_dec img {
    width: 100%;
}
.vegas-slide-inner{
    background-position: center right!important;
}
.main_dec {
    opacity: 0.68;
}
.top_cms_box.cms1 {
    margin-bottom: 70px;
}
/* イントロ */
#catch figure {
    margin: auto;
}
#catch .box {
    padding: 30px 20px;
}
#catch .box .sub_title {
    font-size: -webkit-calc(1rem + 13px);
    font-size: calc(1rem + 13px);
    margin-left: 0px;
}
#catch .box .title {
    font-size: -webkit-calc(1rem + 10px);
    font-size: calc(1rem + 10px);
    padding: 20px 0px;
    margin-left: 0px;
    margin-bottom: 10px;
}
/* お悩み */
#question h2 {
    margin-bottom: 60px;
}
#question .box .box_item:after {
    font-size: -webkit-calc(1rem + 25px);
    font-size: calc(1rem + 25px);
    top: -46px;
    letter-spacing: 5px;
}
/* コンテンツ */
#contents {
    padding-top: 10px;
    padding-bottom: 20px;
}
#contents .box .box_item {
    padding: 50px 20px;
}
#contents .box .box_item h3 {
    font-size: -webkit-calc(1rem + 6px);
    font-size: calc(1rem + 6px);
}
#contents .box .box_item .sub_title {
    font-size: -webkit-calc(1rem + 20px);
    font-size: calc(1rem + 20px);
    top: -10px;
    left: 0px;
}
/* ----------　下層ページ　---------- */
/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */
}