@charset "utf-8";
/* ------------------------------------------------------------ common */


#fv { background: #fff url(../images/fv.png?v=250702) no-repeat center top; background-size: cover; width: auto; height: auto;padding: 32% 0 124%;  text-align: center; }
#fv img{width: 70%; height: auto; margin: 0 auto; display: block;}

#top-massage{ background: #fff; padding: 50px 0 0; color: #000; text-align: center; font-family: maru-maru-gothic-clr-stdn, sans-serif; font-weight: 400; font-style: normal; }
#top-massage h2{ padding: 0 0 40px; font-size: 18px; }
#top-massage p{ padding: 0 0 25px; font-size: 15px; }

#kakigori .pic { padding: 90px 0 10px; text-align: center; background: url(../images/bg_01.jpg) no-repeat center bottom; background-size: cover; }
#kakigori .pic img { width: 60%; height: auto; max-width: 350px; }

#kakigori{background: #fff; padding: 46px 0 67px}
#kakigori .box_top{position: relative;}

#kakigori .box_top .flex{display: flex; align-items: flex-end;margin: 0 0 37px;}
#kakigori .box_top .flex img{width: calc(100% - 30px); height: auto;}

#kakigori .box_top .flex p {width: 30px; font-size: 16px; color: #000; -ms-writing-mode: tb-rl; writing-mode: vertical-rl;font-family: maru-maru-gothic-clr-stdn, sans-serif; font-weight: 400; font-style: normal; letter-spacing: 0.2em; white-space: nowrap; }
#kakigori .box_top .flex p span{ position: relative; padding-top: 30px; writing-mode: horizontal-tb; letter-spacing: -0.1rem; line-height: 1; color: #000; }
#kakigori .box_top .flex p span:before{ position: absolute; top: 0; left: 50%; transform: rotate(45deg) translate(-50%,0); content: ""; width: 1px; height: 25px; background: #000; }


#menu { background: #fff; color: #070707; }
#menu h3 { text-align: center; padding: 0 0 40px; }
#menu h3 img { width: 122px; height: auto; }
#menu p.title_text{text-align: center; padding: 0 0 40px;font-family: maru-maru-gothic-clr-stdn, sans-serif; font-weight: 400; font-style: normal; line-height: 160%;}

#menu .sizes{ }
#menu .sizes img { display: block; width: 90%; height: auto; margin: 0 auto; }
#menu .sizes p.text { padding: 30px 0; width: 88%; margin: auto; text-align: center; line-height: 180%; }
#menu .sizes p.text span { line-height: 100%; display: block; width: 100%; padding: 15px 0 0;  }
#menu .sizes p.text span:first-child { border-bottom: 1px solid #070707; padding: 0 0 15px; }

#menu ul li .info { padding: 20px 15px 45px; }
#menu ul li img { width: 100%; height: auto; }
#menu ul li h4 { font-size: 19px; text-align: center; border-bottom: 1px solid #070707; margin: 0 0 3px; padding: 0 0 5px; font-family: maru-maru-gothic-clr-stdn, sans-serif; font-weight: 400; font-style: normal;}
#menu ul li h4 span { display: inline-block; }
#menu ul li p.text { text-align: center; line-height: 180%; border-top: 1px solid #070707; padding: 10px 15px 21px; font-family: maru-maru-gothic-clr-stdn, sans-serif; font-weight: 400; font-style: normal;}
#menu ul li .prices { ¥ margin: auto; display: flex; justify-content: center; align-items: center; }
#menu ul li .prices div { padding: 7px 0px 0 33px; box-sizing: border-box; }
#menu ul li .prices .regular { background: url(../images/icn_size5.svg) no-repeat left top; background-size: 100%; }

#menu ul li .prices .takeout { background: url(../images/icn_size6.svg) no-repeat 2px top; background-size: 100%; }
#menu ul li .prices .takeout2 { background: url(../images/icn_size6.svg) no-repeat 2px top; background-size: 100%; }
#menu ul li .prices .slash { width: 18px; padding: 0; margin: 0 10px; }
#menu ul li .prices .slash img { width: 100%; height: auto; }
#menu ul li .prices p { font-size: 14px; line-height: 150%; padding: 3px 0 0; font-family: fot-tsukuardgothic-std, sans-serif; font-weight: 700; font-style: normal;}
#menu ul li .prices p span { display: inline-block; font-size: 19px; padding: 0 0 0 1px; line-height: 120%; font-family: fot-tsukuardgothic-std, sans-serif; font-weight: 700; font-style: normal;}
#menu ul li .prices p small { display: inline-block; font-size: 0.5em; padding: 0 0 0 4px; font-size: 11px;font-family: fot-tsukuardgothic-std, sans-serif; font-weight: 700; font-style: normal;}

#menu .double { text-align: center; padding: 20px 0 60px;}
#menu .double .en{ padding-bottom: 5px; font-size: 14px; text-align: center; font-family: maru-maru-gothic-clr-stdn, sans-serif; font-weight: 400; font-style: normal;}
#menu .double h4 { border-top: 1px solid #000; border-bottom: 1px solid #000; font-size: 16px; padding: 15px 0; line-height: 180%; font-family: maru-maru-gothic-clr-stdn, sans-serif; font-weight: 400; font-style: normal;}
#menu .double p.text { padding-top: 15px; line-height: 140%; font-family: maru-maru-gothic-clr-stdn, sans-serif; font-weight: 400; font-style: normal;}
#menu .double .price { padding: 15px 0 0; display: flex; justify-content: center; }
#menu .double .price p { font-size: 12px; line-height: 150%; padding: 12px 0 0 48px; background: url(../images/icn_size7.svg) no-repeat left top; background-size: 100px auto;font-family: fot-tsukuardgothic-std, sans-serif; font-weight: 700; font-style: normal;}
#menu .double .price p span { display: inline-block; font-size: 16px; padding: 0 0 0 1px; line-height: 120%; font-family: fot-tsukuardgothic-std, sans-serif; font-weight: 700; font-style: normal;}
#menu .double .price p span.num { font-size: 18px; }
#menu .double .price p small { display: inline-block; font-size: 8px; padding: 0 6px; font-family: fot-tsukuardgothic-std, sans-serif; font-weight: 700; font-style: normal;}

#menu .takeouts { padding: 10px 0 30px; text-align: center; }
#menu .takeouts img { width: 100%; height: auto; }
#menu .takeouts .box { padding: 0 4%; border-bottom: 1px solid #231815; }
#menu .takeouts .box h4 { font-size: 14px; padding: 20px 0 10px; border-bottom: 1px solid #231815; font-family: maru-maru-gothic-clr-stdn, sans-serif; font-weight: 400; font-style: normal;}
#menu .takeouts .box p { padding: 15px 0; line-height: 180%; font-family: maru-maru-gothic-clr-stdn, sans-serif; font-weight: 400; font-style: normal;}


#shop { background: #fff; }
#shop h3 { padding: 0 0 30px; text-align: center; }
#shop p.logo { padding: 0 0 25px; text-align: center; }
#shop .gray_box { padding: 10px 0 0; background: #6b7e85; }

#shop ul { margin: auto; padding: 0 0 14px;}
#shop ul li { padding: 30px 0; border-top: 1px solid #fff; }
#shop ul li:first-child { border: none; }
#shop ul li img { width: 100%; height: auto; }
#shop ul li h4 { text-align: center; line-height: 140%; padding: 0 0 34px; font-size: 17px;font-family: maru-maru-gothic-clr-stdn, sans-serif; font-weight: 400; font-style: normal;}
#shop ul li p.address { font-size: 14px; line-height: 140%; padding: 0 15px 10px; font-family: maru-maru-gothic-clr-stdn, sans-serif; font-weight: 400; font-style: normal;}
#shop ul li .info { display: flex; flex-wrap: wrap; flex-direction: column; padding: 0 15px; }
#shop ul li .info p {font-size: 14px; width: 100%; line-height: 180%; font-family: maru-maru-gothic-clr-stdn, sans-serif; font-weight: 400; font-style: normal;}
#shop ul li iframe { width: 100%; height: 570px; margin: 20px 0 0; 
	-webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%); }
  
#shop .insta { padding: 0 0 45px; color: #000; text-align: center; font-family: maru-maru-gothic-clr-stdn, sans-serif; font-weight: 400; font-style: normal; font-size: 26px;}
#shop .insta p{ padding: 0 0 25px; line-height: 180%; font-size: 16px; }
#shop .insta .ig{ display: block; width: 40px; margin: 0 auto; }
#shop .insta .ig img{ width: 100%; height: auto; }

@media only screen and (min-width: 640px) {
	
	#top-massage{ padding: 50px 0; }
	#top-massage h2{ padding: 0 0 130px; font-size: 34px; }
	#top-massage p{ padding: 0 0 50px; font-size: 28px; }

	#kakigori .box_top .flex:nth-child(2){margin: 0 0 57px;}
	#kakigori .box_top .flex:nth-child(3){margin: 0 0 46px;}
	#kakigori .box_top .flex:nth-child(4){margin: 0 0 0;}
	
	#kakigori .box_top .flex p { width: 8%; font-size: 26px;}
	#kakigori .box_top .flex img { width: calc(100% - 8%);}
	
	#kakigori .info p{font-size: 24px;}
	
	#menu h3 img {  width: 160px;}
	#menu p.title_text{ padding: 0 0 80px; }
	#menu p.title_text{font-size: 22px;}
	#menu .sizes p.text { padding: 30px 0; width: 88%; line-height: 180%; }
	#menu .sizes p.text span { line-height: 100%; display: block; width: 100%; padding: 15px 0 0;  }
	#menu .sizes p.text span:first-child {  padding: 0 0 15px; }
	#menu ul li .prices div {padding: 7px 0px 0 40px;}
	#menu ul li h4 {font-size: 32px;}
	#menu ul li p.text { font-size: 22px;}

	#menu ul li .prices p { font-size: 20px; padding: 8px 0 0;}
	#menu ul li .prices p span { font-size: 28px; }
	#menu ul li .prices p small {  font-size: 14px; }
	
	#menu .double .en{ font-size: 34px; }
	#menu .double h4 { font-size: 19px; }
	#menu .double p.text {font-size: 24px; }

	#menu .double .price p { font-size: 20px;background-size: 140px auto;padding: 12px 0 0 70px;}
	#menu .double .price p span { font-size: 20px; }
	#menu .double .price p span.num { font-size: 28px; }
	#menu .double .price p small { font-size: 16px; }
	
	#menu .takeouts .box h4 { font-size: 28px; }
	#menu .takeouts .box p { font-size: 24px; }
	
	
	#shop h3 img {  width: 160px;}
	#shop ul li h4 {  font-size: 29px;}
	#shop ul li p.address { font-size: 23px; }
	#shop ul li .info p {font-size: 23px; }
	
	#shop p.logo img{width: 200px;}
	
	#shop .insta p{ padding: 0 0 45px; font-size: 26px; }
	
}