@charset "utf-8";
#wrap-outer_2nd{
    background: url("/contents/images/top/bl_circle_bg.jpg") repeat-y top -200px center;
}

#wrap2:has(#contents-inner-reserve){width: 100% !important; }
#contents:has(#contents-inner-reserve){width: 100%; margin:0 auto 0 auto; float:none;}

#scrollUp{bottom: 0;width: 60px;height: 60px;}

#contents-inner-reserve{font-size: 18px; line-height: 1.8em; letter-spacing: 0.03em; margin-bottom: 0;}
#contents-inner-reserve .inn {width:1200px; margin:0 auto 0 auto; padding:0; position:relative;}

#contents-inner-reserve .reserve > p.bold{font-weight: bold; text-align: center;}
	
.sp{ display: none;}
	

h2.reserve_h{ padding: 70px 0 0 0; margin-bottom: 57px;}

/* ポイント */
#contents-inner-reserve .reserve .point_bl{margin-top: 90px;}
#contents-inner-reserve .reserve .point_bl .box{ background: #eefafa; display: flex; flex-direction: row-reverse; flex-wrap: nowrap; justify-content: space-between;position: relative; margin-top: 80px;}
#contents-inner-reserve .reserve .point_bl .box.point02{flex-direction: row;}
	
#contents-inner-reserve .reserve .point_bl .box > .txt{ box-sizing: border-box; padding: 100px 50px 0 50px;}
#contents-inner-reserve .reserve .point_bl .h{font-size: 32px; font-weight: bold; color: #3d3d3d; -webkit-text-stroke-width: 0.3px !important; line-height: 1.8em; margin-bottom: 30px;}
#contents-inner-reserve .reserve .point_bl .h > .num{background:url(../images/reserve/point_ribon.png) no-repeat; width: 295px; height: 77px; display: block; box-sizing: border-box; position: absolute; top:-27px; left:0; right:0; margin: auto; font-size: 21px; font-weight: bold; color: #ffffff; text-align: center; padding-top: 13.5px; -webkit-text-stroke-width: 0px !important; line-height: 1.6em;}
#contents-inner-reserve .reserve .point_bl .h > .num em{ font-style: normal; font-size: 44px; display: inline-block; margin-left: 10px; font-family: Futura, 'Century Gothic', sans-serif; vertical-align: middle; margin-bottom: 6px;}	

	
/* ご来店の流れ */
#contents-inner-reserve .reserve .flow_bl{ background: rgb(81,198,208); background: linear-gradient(90deg, rgba(81,198,208,1) 0%, rgba(74,200,202,1) 100%); padding: 65px 0 80px 0; margin-top: 90px;}
#contents-inner-reserve .reserve .flow_bl .h{ text-align: center; margin-bottom: 45px;}
#contents-inner-reserve .reserve .flow_bl .h + p{ text-align: center; color: #ffffff; margin-bottom: 50px;}
#contents-inner-reserve .reserve .flow_bl .list{ display: flex; justify-content: space-between; flex-wrap: nowrap;}
#contents-inner-reserve .reserve .flow_bl .list > li{width: 260px; position: relative; font-size: 17px; line-height: 1.8em;}	
#contents-inner-reserve .reserve .flow_bl .list > li + li:before{display: block; content: ""; background:url(../images/reserve/flow_indent.png) no-repeat; width: 23px; height: 37px; position: absolute; top:50%; margin-top: -18.5px; left:-37px;}
#contents-inner-reserve .reserve .flow_bl .list > li .box{ height: 410px; position: relative; overflow: hidden; z-index: 0; box-sizing: border-box;  padding: 100px 25px 0 25px;}
#contents-inner-reserve .reserve .flow_bl .list > li .box:after{ display: block; content: ""; background: #ffffff; width: 100%; height: calc(100% - 33px); position: absolute; top:33px; left:0; right:0; z-index: -1;}	
	
#contents-inner-reserve .reserve .flow_bl .list .sub_h{font-size: 30px; color: #269ea8; font-weight: bold; text-align: center; -webkit-text-stroke-width: 0.3px !important; line-height: 1.8em; margin-bottom: 29px; margin-top: 5px;}
#contents-inner-reserve .reserve .flow_bl .list li:last-child .sub_h{ font-size: 24px; line-height: 1.6em; margin-bottom: 15px; margin-top: -7px;}
#contents-inner-reserve .reserve .flow_bl .list .sub_h > .num{-webkit-text-stroke-width: 0px !important; font-size: 43px; letter-spacing: 0.06em; font-family: Futura, 'Century Gothic', sans-serif; color: #ffffff; width: 190px; height: 67px; background: #269ea8; position: absolute; top:0; left:0; right:0; margin: auto; z-index: 2; box-sizing: border-box; padding-top: 5.5px; line-height:normal;}
#contents-inner-reserve .reserve .flow_bl .list .sub_h > .num:after{ display: block; content: ""; width: 0; height: 0; border-style: solid; border-width: 33px 0 0 16px; border-color: transparent transparent transparent #09585f; position: absolute; top:0; right:-16px;}
	
#contents-inner-reserve .reserve .flow_bl .list .icon{ position: absolute; bottom:0; left:-30px; z-index: 1;}

	
/* 当協会のご紹介 */
#contents-inner-reserve .reserve .info_bl{ background: #dbf2f4; padding: 65px 0 80px 0;}
#contents-inner-reserve .reserve .info_bl .inn{ display: flex; flex-wrap: wrap; justify-content: space-between;}
#contents-inner-reserve .reserve .info_bl .inn > .h{width: 100%; text-align: center; margin-bottom: 115px;}

#contents-inner-reserve .reserve .info_bl .box{ background: #ffffff; width: 570px; position: relative; padding-top: 240px;}
#contents-inner-reserve .reserve .info_bl .box div.img{ position: absolute; top:-40px; left:0; right:0; margin: auto; text-align: center;}
#contents-inner-reserve .reserve .info_bl .box .txt{ text-align: center; margin-bottom: 35px;}
#contents-inner-reserve .reserve .info_bl .box .txt > .h{ font-size: 24px; font-weight: bold; color: #313131; margin: 3px 0 25px 0;}
#contents-inner-reserve .reserve .info_bl .box .map{ width: 100%; height: 360px;}
#contents-inner-reserve .reserve .info_bl .map .map_fukidashi{padding-right: 25px;}
#contents-inner-reserve .reserve .info_bl .map .gm-style-iw-d:has(.map_fukidashi){margin-top: -32px;}


/* ご来店予約フォーム */
#contents-inner-reserve .reserve .form_btn{ position: fixed; bottom:60px; right:60px; width: 210px; height: 210px; border-radius: 50%; z-index: 100; transition: .3s;}
#contents-inner-reserve .reserve .form_btn a{ display: block; width: 100%; height: 100%; border-radius: 50%; box-shadow: 0 4px 0 #d7942e; transition: .3s; overflow: hidden;}
#contents-inner-reserve .reserve .form_btn a:hover{transform: translateY(2px); box-shadow: 0 0 0 #d7942e; opacity: .7;}

	
#contents-inner-reserve .reserve .raiten_bl{padding: 65px 0 0 0;}
#contents-inner-reserve .reserve .raiten_bl .h{ text-align: center; margin-bottom: 65px;}

/*#contents-inner-reserve .reserve .raiten_bl .tel{text-align: center; margin-top: 60px; margin-bottom: 85px;}
#contents-inner-reserve .reserve .raiten_bl .tel > a{display: inline-block; vertical-align: middle; font-family: 'Roboto', sans-serif; font-size: 65px; color: #000000; background:url(../images/reserve/tel_icon.png) no-repeat; padding:9px 0 0 70px; text-decoration: none; min-height: 50px;}
#contents-inner-reserve .reserve .raiten_bl .tel > a:hover{opacity: 1 !important; cursor: auto;}
#contents-inner-reserve .reserve .raiten_bl .tel > span{display: inline-block; vertical-align: middle; background: #e3f6f7; padding: 10px 35px 10px 35px; border-radius: 50px; margin: 0 0 6px 35px;}*/
	
#contents-inner-reserve h3{font-size: 26px; padding: 22px 20px 21px 30px; margin-bottom: 35px; background: url("/contents/images/top/gr_line_bg.jpg"); color: #ffffff;}

#contents-inner-member{ margin: 0 auto 0 auto; font-size: 16px; width: 1000px;}

#contents-inner-member .description1{text-align: center; margin: 0 0 55px 0; font-size: 18px;}
#contents-inner-member .description1 .raiten_flow{ display: inline-block; margin: 40px auto 0 auto;}
#contents-inner-member .description1 .supplement{font-size:15px; line-height: 1.7em; margin-top:10px;}

#contents-inner-member h4{border-bottom: none;border-top:3px solid #50c6d0;font-size: 22px;font-weight: bold;color: #50c6d0;padding: 20px 0 0 0;margin-bottom: 23px;}
#contents-inner-member table.form + h4{ margin-top: 60px;}
#contents-inner-member .raiten_bt{text-align: center;display: flex;justify-content: space-around;flex-wrap: nowrap;margin-top: 60px;}

/* with blogs*/
#contents-inner-blogs + #contents-inner-member{width: 820px;}
#contents-inner-blogs + #contents-inner-member th{width: 135px;}


/*==================================
TEL
==================================*/

#telephone.tel{text-align: center; margin-top: 60px; margin-bottom: 85px;}
#telephone.tel .telephone_inn{ display: flex; flex-wrap: nowrap; justify-content: space-around; align-items: flex-start; margin-top: 80px;}

#telephone.tel .telephone_inn .tel_box{ display: block;width: 48.5%;height: 265px; background: #ffffff; border: 1px solid #50c6d0; text-align: center;border-radius: 15px;color: #000000;font-weight: 500;font-size: 28px; padding: 93px 40px 0 40px;box-sizing: border-box;letter-spacing: 0.03em;position: relative; transition: .3s;}

#telephone.tel .telephone_inn .tel_box .shop_img{position: absolute;top: -45px;left:0;right:0;margin: auto;width: 120px;}

#telephone.tel .telephone_inn .tel_box p.h{color: #50c6d0; margin-bottom: 13px;}

#telephone.tel .telephone_inn .tel_box p.h + p a{font-size: 53px;color: #000000;font-weight: 500;display: block;line-height: 1.31; letter-spacing: 0.03em;font-family: 'Roboto', sans-serif;}
#telephone.tel .telephone_inn .tel_box p.h + p a:before{display: inline-block;content: "";background: url(../images/reserve/tel_icon.png) no-repeat; background-size: 100% auto; width: 43px;height: 43px;vertical-align: middle;margin-right: 6px;margin-bottom: 5px;}
#telephone.tel .telephone_inn .tel_box p.h + p small{display: block;font-size: 14px;font-weight: 300;opacity: .8;line-height: 1;letter-spacing: 0.09em; color: #000000;}



/*end-----------------------------------*/