﻿@font-face {
    font-family: 'Mplus1p';
    font-style: normal;
    font-weight: 400;
    src: url('../Dup/img/Mplus1p-r.woff') format('woff'),  url('../Dup/img/Mplus1p-r.eot')  format('eot');
    font-display: swap;
}
@font-face {
    font-family: 'Mplus1p';
    font-style: normal;
    font-weight: 700;
    src: url('../Dup/img/Mplus1p-bold.woff') format('woff'),  url('../Dup/img/Mplus1p-bold.eot')  format('eot');
    font-display: swap;
}
@font-face {
    font-family: 'Mplus1p';
    font-style: normal;
    font-weight: 900;
    src: url('../Dup/img/Mplus1p-black.woff') format('woff'),  url('../Dup/img/Mplus1p-black.eot')  format('eot');
    font-display: swap;
}
@font-face {
    font-family: 'Montserra';
    font-style: normal;
    font-weight: 900;
    src: url('../Dup/img/Montserrat-Medium.woff') format('woff'),   url('../Dup/img/Montserrat-Medium.eot')  format('eot');
    font-display: swap;
}
.linkStyle{color: #212121; text-decoration: underline;}

#fakeloader{background-color: #ffffdd;}
.spinner7 > div { background-color:rgba(242,115,113,0.4);}
#contents1 h2,#contents2 h2,#contents3 h3,#top_cms .cms_title h2,#page_title h2,.pc_box .contact_bt a,#footer_menu ul li a{font-family: 'Mplus1p', "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif!important;}
.fa-envelope:before { content: "\f095";}

body{overflow-x: hidden;}
#main_menu{    margin-top: 30px;}
#contents1{text-align: center;}
#contents1 h2{
color: #fff;
border-radius: 12px;
font-size: calc(1rem + 20px);
font-weight: 700;
background-color: #f27371;
padding: 5px 0px;
}
#contents1 p{font-size: calc(1rem + 2px);width: 70%; margin: 40px auto;}

#main_menu ul li a{font-size: calc(1rem + 2px); color: #333;}
.pc_box .contact_bt a{font-size: calc(1rem + 2px);color: #333; }
.pc_box .contact_bt a:hover{color: #fff; }
#contents2 h2{
background-color: #f27371;
color: #fff;
text-align:
center;font-size: calc(1rem + 12px);
border-radius: 8px;
}
#contents3 h3{
background-color: #f27371;
    color: #fff;
    text-align: center;
    font-size: calc(1rem + 9px);
    border-radius: 8px;
}
.ban_line{margin:20px auto;}
.ban_reserve{margin:0px auto;}


/*--------PCのみ--------*/
@media screen and (min-width: 769px){
header{background-color: #fac7c6!important;padding-top: 90px!important;}
.head_box{max-width: 80%;}

.head_box:before {
    content: "";
    display: block;
    background-image: url(./Dup/img/back_head.png);
    /* background-size: 160px; */
    background-repeat: repeat-y;
    width: 160px;
    height: 100%;
    position: absolute;
    right: -106px;
    top: 0;
    z-index: 1000;
}

.pc_box{ max-width: 85%;}
.main_box{width: 73%!important;    margin-left: 27%;}
#contents2 {position: relative;}
#contents2::before{
   position: absolute;
   content: '';
   border-radius: 100%
}
#contents2::before {
    top: -1em;
    left: 58em;
    z-index: -1;
    width: 39em;
    height: 111%;
    background: rgba(242,115,113,0.2);
}
#contents2 .d_flex{    align-items: flex-end;}
#contents2 figure{width: 47%!important;}

#contents3 { position: relative;}
#contents3::before,#contents3::after{
   position: absolute;
   content: '';
   border-radius: 100%
}
#contents3::before {
    top: -2em;
    left: 2em;
    z-index: -1;
    width: 12.5em;
    height: 26%;
    background: rgba(242,115,113,0.3);
}
#contents3::after {
    bottom: 4em;
    left: 45em;
    z-index: -1;
    width: 20em;
    height: 45%;
    background: rgba(242,115,113,0.15);
}
footer { position: relative;}
footer::before{
   position: absolute;
   content: '';
   border-radius: 100%
}
footer::before {
bottom: 4em;
    left: 32em;
    z-index: -1;
width: 66em;
    height: 114%;
    background: rgba(242,115,113,0.2);
}
}

#main_menu ul{padding: 20px 0px;}

footer .grid_5{margin-top: 0px;}
#page_title h2{text-shadow: none;}
.cate_list li a:hover ,.button2:hover{box-shadow: inset 0 0 0 40em rgba(96,56,19,1); color: #fff;}
#cms_2-b .cate_title{background-color: #f1a09d;}
.cms_5-b .cate_box .open_bt .box_title1::before,#cms_5-b .cate_box .open_bt .box_title1::before {    color: #424242!important;}


/*--------タブレット--------*/
@media screen and (max-width: 768px){
header{background-color: #fac7c6!important;padding-top: 14px!important;padding-bottom: 14px!important;}
#logo{max-width: 250px;}
#contents1 h2 {font-size: calc(1rem + 12px);}
#contents1 p { width: 80%;}
#contents2 .d_flex{display:block;}
#contents2 .grid_6{width: 90%!important;margin: 0 auto;}
#contents2 figure{padding-top: 40px;width: 80%!important;margin: 0 auto;}



#contents2 {position: relative;}
#contents2::before{
   position: absolute;
   content: '';
   border-radius: 100%
}
#contents2::before {
    bottom: 0em;
    left: 16em;
    z-index: -1;
    width: 37em;
    height: 58%;
    background: rgba(242,115,113,0.2);
}
footer { position: relative;}
footer::before{
   position: absolute;
   content: '';
   border-radius: 100%
}
footer::before {
    top: -9em;
    left: 0em;
    z-index: -1;
    width: 55em;
    height: 80%;
    background: rgba(242,115,113,0.2);
}
}


/*--------スマートフォン--------*/
@media screen and (max-width: 667px){
.hamburger { top: 6px;}
#main_img,#page_title{margin-top: -5px;}
#logo { max-width: 150px; }
#contents1 h2 {    font-size: 5.5vw;padding: 5px;}
#contents1 p {width: 95%; font-size: 4vw;}
.bnr_top_01{margin-right: 0px;}
.bnr_top_02{margin-left: 0px;}

#contents2 h2 {  font-size: 5vw;padding: 5px;}
#contents2::before {
    bottom: 0em;
    left: -4em;
    z-index: -1;
    width: 21em;
    height: 36%;
}
#contents2 .grid_6 { width: 100%!important;}
#contents3 h3 {font-size: 5vw;}
#contents3 { position: relative;}
#contents3::after{
   position: absolute;
   content: '';
   border-radius: 100%
}
#contents3::after {
bottom: -12em;
    right: 0em;
    z-index: -1;
    width: 18em;
    height: 25%;
    background: rgba(242,115,113,0.2);
}

footer{overflow:hidden;}
footer::before {
    top: 2em;
    width: 63em;
    height: 80%;
}
footer .grid_5 { margin-top: 20px;}
}

/*--------------------------------------------
IE
--------------------------------------------*/
@media all and (-ms-high-contrast:none){
.cate_list li a{padding:10px 0 10px;}
#cms_2-d .cate .cate_title{padding-top:10px!important;}
#cms_2-b .cate .cate_title{padding-top:12px!important;}
.pc_box .contact_bt a{padding:15px 0 15px;}
#page9 .box p a{padding:6px 5px 6px;}
#page10 ul li a{padding:15px 0 16px;}
.foot_tel_bt a{padding-top:13px;padding-bottom:17px;}
/*#contact_tel a {padding:37px 30px 30px}*/
}