@charset "UTF-8";

/* reset */

body, h1, h2, h3, h4, h5, h6, h7, div, p, dl, dt, dd, ol, ul, li, header, footer, table, th, td, fieldset, form, input[type="radio"], input[type="checkbox"] {
	margin: 0;
	padding: 0;
    box-sizing: border-box; 
}
h1, h2, h3, h4, h5, h6, h7, dt, dd, th, td, em, address, label {
	font-weight: normal;
	font-style: normal;
	font-size: inherit;
}
ol, ul {
	list-style-type: none;
}


.disp_pc { display: block; }
.disp_sp { display: none; }

.mb20 {margin-bottom: 20px;}
.mb40 {margin-bottom: 40px;}
.mb60 {margin-bottom: 60px;}
.mb80 {margin-bottom: 80px;}
.mb100 {margin-bottom: 100px;}
.mb120 {margin-bottom: 120px;}
.mb140 {margin-bottom: 140px;}
.mb160 {margin-bottom: 160px;}

body {
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    margin: 0 auto;
    padding: 0;
    background: #fff;
}

a img:hover {
    opacity: 0.7;
}

/* header */
header {
  background: #fff;
  margin: 0 auto;
  width: 100%;
}
header .logo {
  padding: 40px 0;
  width: 100%;
}
header .logo h1 {
  line-height: 0;
  height: 120px;
  width: 450px;
  text-align: center;
  margin: 0 auto;
}
header .logo img {
  width: 100%;
}

header h1.mv {
  margin: 0 auto;
  width: 100%;
}
header h1.mv img {
  width: 100%;
}


/*下層ページ*/
header .maker_nav {
  background: #ffffff;
  border-bottom: 1px solid #000;
  box-sizing: border-box;
  height: 124px;
  position: fixed;
  top: 0;
  margin: auto;
	padding: 0 0 1px;
  width: 100%;
  z-index: 999;
}
header .maker_nav ul {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
  margin: 0 auto;
  /*width: 1280px;*/
  width: 870px;
}
header .maker_nav li {
  margin: 0 auto;
	width: calc(100%/8);
}
header .maker_nav li a {
	display: block;
}
header .maker_nav li a:hover {
}
header .maker_nav li img {
	margin: 0;
	width: 100%;
}
body.page-sub.event header {
  padding-top: 124px;
}


/* footer */
footer {
  margin: 0 auto;
  width: 100%;
}
footer .foot_bnr_wrap {
  background: #fff;
  text-align: center;
  padding: 40px 0;
}
footer .foot_bnr_wrap .footer_bnr_care {
  margin: 0 auto;
}
footer .foot_bnr_wrap .footer_bnr_care a {
  border: 1px solid #1c2953;
  display: inline-block;
  max-width: 1025px;
  margin: 0 auto;
}
footer .foot_bnr_wrap .footer_bnr_care a img {
  height: auto;
  vertical-align: top;
  width: 100%;
}
footer .foot_wrap {
  background: url("../images/bg.jpg") no-repeat top center;
  background-size: cover;
  color: #fff;
  height: 140px;
  display: flex;
  flex-flow: column wrap;
  justify-content: center;
  align-items: center;
  padding: 20px 0;
  width: 100%;
}
footer .copyright {
  font-size: 0.8em;
  text-align: center;
  margin-top: 5px;
  padding: 10px 0;
}
footer .footer_link_care {
  margin: 0.5em auto;
}
footer .footer_link_care a {
  display: block;
  color: #ffffff;
  text-decoration: none;
  border: 1px solid #fff;
  border-radius: 10px;
  padding: 1.2em 1.5em;
}
footer .footer_link_care a:hover {
  opacity: 0.6;
}

/* pagetop btn */
#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 20px;
  bottom: 20px;
  background: #ccc;
  border-radius: 10px;
}
#page_top:hover{
	opacity: 0.6;
	transition: all ease-in-out .3s;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
	position: absolute;
	top: 3px;
	bottom: 0;
	right: 0;
	left: 0px;
    margin: auto;
    vertical-align: middle;
    content: "";
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.page.top header {
	margin-top: 0;
	background: none;
}
.page.top header h1.mv {
	width: 100%;
}
.page.top .sec {
	margin: 60px 0;
}
.page.top .sec.bnr {
	margin: 40px 0;
}
.page.top .sec img {
	width: 100%;
	max-width: 1280px;
	height: auto;
}
.page.top ul.shop {
	margin: 30px 0 120px;
}
.page.top ul.shop.last {
	margin-bottom: 30px
}




/* ----------------------------------------
contents
---------------------------------------- */
/* contents */
#contents {
  background: url("../images/bg.jpg") no-repeat top center;
  background-size: cover;
  margin: 0 auto;
  width: 100%;
}
main {
  color: #000;
  display: block;
  padding: 0;
  margin: 0 auto;
  /*max-width: 1100px;*/
}
main .sec_wrap {
  text-align: center;
  width: 100%;
}
main .sec_inner {
  margin: 0 auto;
  max-width: 1100px;
}

/* ----------------------------------------
top
---------------------------------------- */
body.top {}
#top_main1 {
  padding: 70px 0 40px;
}
#top_main1 h2 {
  margin-bottom: 70px;
}
#top_main1 .top_main1_special {
	display: flex;
  flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
  text-align: center;
  width: 100%;
}
#top_main1 .top_main1_special li {
  margin-bottom: 60px;
  width: 616px;
}
#top_main1 .top_main1_fin {
  text-align: center;
  width: 100%;
}

#conts_01 {}
#conts_01 #mv {
  line-height: 0;
  position: relative;
}
#conts_01 .conts_01_btn {
  position: absolute;
  bottom: 80px;
  left: 100px;
}
#conts_02 {
  background: #9fa0a0;
}



/* ----------------------------------------
下層
---------------------------------------- */

/* ---------- イベント詳細 ---------- */
/* 店舗 */
.shop_box_wrap {
  background: #ffffff;
  padding: 20px 0;
}
.shop_box_wrap.shop_box_wrap-even {
  background: #efefef
}
.shop_box {
  padding: 60px 0 120px;
}
.brand_logo {
  text-align: center;
}
ul.shop {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: flex-start;
  color: #231815;
  margin: 10px auto 0;
  max-width: 1280px;
}
ul.shop li {
  text-align: center;
  margin: 0 10px 60px;
  padding: 0;
  width: 40%;
}
ul.shop li:last-child {
  margin-bottom: 0;
}
ul.shop.shop_wide li {
  width: 40%;
}

ul.shop li .store {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: baseline;
  margin-bottom: 20px;
}
ul.shop li .store .name {
	font-size: 26px;
	font-weight: bold;
  margin-right: 1em;
}
ul.shop li .store .tel_no {
	font-size: 26px;
	font-weight: bold;
}
ul.shop li .store .tel_no span {
	font-size: 32px;
}
ul.shop li .tel {
	padding: 40px 0;
}
ul.shop li .tel img {
}
ul.shop li .tel img:hover {
	opacity: 0.8;
}
ul.shop li .gmap {
  margin: auto;
  max-width: 510px;
  width: 100%;
}

/* ---------- ファミリーケア ---------- */
#care_conts {
  padding: 40px 0;
}
#care_conts  .sec_inner {
  margin: 0 auto;
  max-width: 900px;
  background: #fff;
  border-radius: 20px 20px 0 0;
}
#care_conts  .sec_inner:last-child {
  border-radius: 0 0 20px 20px;
}
