@charset "utf-8";
/*
=======================================
	Reset CSS
=======================================
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
 margin:0;
 padding:0;
 border:0;
 outline:0;
 font-size:100%;
 vertical-align:baseline;
 background:transparent;
}

/*文字サイズ自動調整機能オフ*/
html{
	-webkit-text-size-adjust: 100%;
}

body {
 line-height:1.5;
 color:#000b00;
 font-size:16px;
 font-family:serif;
 font-weight:bold;
 background:rgba(219,208,230,0.3);
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
 display:block;
}

nav ul {
 list-style:none;
}

a {
 margin:0;
 padding:0;
 font-size:100%;
 vertical-align:baseline;
 background:transparent;
 color:#c9171e;
 transition:0.5s;
}

a:hover{
	color:#008080;
}

a:hover img{
	opacity:0.7;
}

del {
 text-decoration: line-through;
}

table {
 border-collapse:collapse;
 border-spacing:0;
}

img{
	border:0;
	max-width:100%;
	height:auto;
}

/*
=========================================
	Base Layout
=========================================
*/

/*ALL and Smart Phone*/

/*コンテナ幅設定(最大幅940pxまで)(余白含めて960px)*/
.container{
	max-width: 940px;
	padding-left: 10px;
	padding-right: 10px;
	margin: 0 auto;
}

.container:after{
	content:"";
	display: block;
	clear:both;
}

@font-face {
  font-family: 'icomoon';
  src:  url('fonts/icomoon.eot?21en3x');
  src:  url('fonts/icomoon.eot?21en3x#iefix') format('embedded-opentype'),
    url('fonts/icomoon.ttf?21en3x') format('truetype'),
    url('fonts/icomoon.woff?21en3x') format('woff'),
    url('fonts/icomoon.svg?21en3x#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-facebook:before {
  content: "\ea90";
}
.icon-twitter:before {
  content: "\ea96";
}
.icon-pinterest:before {
  content: "\ead1";
}

/*ヘッダー*/

/*スマホ画面*/

/*headerを囲うdiv*/
#wrap{
	width:100vw;/*ビューポートの幅に対する割合.画面一杯に広がる*/
}

header dt{
	clear:left;/*dt,ddを横並びに*/
	float:left;
	font-weight:bold;
}

header dt::after{
	content:"："
}

header #info p{
	color:#ff0000;
}

h1{
	width:85%;
}

/*PC画面.640px以上の画面*/
@media screen and (min-width:640px){

/*headerを囲うdiv*/
#wrap{
	height:200px;
	width:100vw;/*ビューポートの幅に対する割合*/
}

header{
	width:100%;
	overflow:hidden;
	margin:0 auto;
}

h1{
	width:50%;
	height:200px;
	float:left;
	}
	
#info{
	width:45%;
	height:200px;
	float:right;
	margin-top:10px;
	}
}

/*グローバルナビゲーション*/

/*スマホ*/
#gnav.pc_none{
	background-color:transparent;/*透明*/
	position:static;/*表示状態を初期に戻す*/
}
/*クリック前のメニューリスト*/
nav {
    position: fixed;/*固定配置*/
    top: 50px;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 1rem;
    opacity: 0;
    visibility: hidden;
    transition: opacity .5s, visibility .5s;
}
/*3本線の親要素.この要素を基準にして内包する線の位置を定義*/
.nav_toggle {
    display: block;
    position: fixed;
    width: 2.5rem;
    height: 1.5rem;
    top:20px;
    right:20px;
    z-index:1000;/*ハンバーガーメニュのクリック領域を前に出す*/
}

/*.nav_toggle i＝3本線
3本線の本体となる部分
transition: transform .5s, opacity .5s; で、変化させるプロパティと変化にかかる時間を定義
transformとopacityを.5秒かけて変化させています
ボタンクリック時のアニメーションの速度を調整したい場合は、ここの数値を変更してください*/
.nav_toggle i {
    display: block;
    width: 100%;
    height: 2px;
    background-color:#da70d6;
    position: absolute ;
    transition: transform .5s, opacity .5s;
}

/*.nav_toggle i:nth-child(1)＝3本線の一番上
.nav_toggle i:nth-child(2)＝3本線の真ん中
.nav_toggle i:nth-child(3)＝3本線の一番下
それぞれの線の位置を定義*/
.nav_toggle i:nth-child(1) {
    top: 0;
}
.nav_toggle i:nth-child(2) {
    top: 0;
    bottom: 0;
    margin: auto;
}
.nav_toggle i:nth-child(3) {
    bottom: 0;
}

/*クリック後　.showが追加されている。3本線から×へ*/
.nav_toggle.show i:nth-child(1) {
    transform: translateY(10px) rotate(-45deg);
}
.nav_toggle.show i:nth-child(2) {
    opacity: 0;
}
.nav_toggle.show i:nth-child(3) {
    transform: translateY(-12px) rotate(45deg);
}

/*.navのとき opacity: 0; → .navi.showのとき opacity: 1;
transition で指定した通り.5秒かけて変化します。

visibility: hidden; → visibility: visible;
こっちも同様にtransitionで指定した通り.5秒かけて変化します。*/

.nav.show {
    opacity: 1;
    visibility: visible;
}

#gnav.pc_none.show {
    background-color:#fff;
    position:fixed;/*固定配置*/
    top:0;
    height:100vh;/*クリックしてハンバーガーメニュが開いた時に、画面いっぱいにメニューが広がる*/
    width:100vw;/*クリックしてハンバーガーメニュが開いた時に、画面いっぱいにメニューが広がる*/
}
nav li{
	line-height:50px;
	font-size:18px;
}

nav a{
	color:#c71585;
}

/*カーソルが乗ったとき*/
nav a:hover{
	color:#008080;
}

/*未訪問リンク
nav a:link{
	color:#008080;
}

/*訪問済みリンク
nav a:visited{
	color:#191970;
}*/

/*グローバルナビゲーション*/

/*PC画面*/
@media screen and (min-width:640px){

/*ハンバーガーメニューを非表示.クリック領域も非表示*/
.nav_toggle,
.nav_toggle i {
	display:none;
	}

nav{
	position:absolute;
    top: 12rem;
	width:100%;
	display:flex;
	visibility: visible;
    opacity: 1;
    height:40px;
    z-index:2;
}

nav ul{
	width:100%;
}
nav ul:after{
	content:"";
	display:block;
	clear:both;
}

nav li{
	float:left;
	width:20%;
	line-height:2.5;
}

/*第二階層のuiのliに対して*/
nav ul li ul li{
	width:100%;
	float:none;/*縦並びなので、float無*/
	text-align:center;
	background-color:rgba(255,255,255,1);
	display:none;/*非表示*/
}

/*マウスが当たると表示される*/
nav ul li:hover ul li{
	display:block;
}

nav a{
	display:block;
	height:40px;
	text-align:center;
	line-height:2;
	font-size:16px;
}
}

/*パンくずリスト.スマホ*/

#pankuzu{
	display:none;
}

/*パンくずリスト.PC画面*/
@media screen and (min-width:640px){

#pankuzu{
	display:block;
	margin-top:50px;
	margin-bottom:20px;
	margin-left:30px;
	font-size:14px;
	position:relative;
	z-index:1;
}

#pankuzu li{
	display:inline;
}

#pankuzu li a{
	padding-right:15px;
	background:url(../deco/ico_arw02.png)right center no-repeat;
}

#pankuzu li a:hover{
	color:#008080;
}
}

/*メイン.スマホ*/

.hannari{
	font-family:'SimSun';
	margin-bottom:3%;
	margin-top:3%;
	font-size:20px;
	color:#2e2930;
}

h2{
	background:#a59aca;
	text-align:center;
	color:#0d0015;
	font-size:30px;
}

h3{
	background:#ff8e8e;
	text-align:center;
	color:#0d0015;
	font-size:20px;
	margin:5%;
	border:#e597b2 2px solid;
	border-radius:10px 20px;
}

#main .item{
	text-align:center;
}
#main .item a{
	display:block;
}

#main .pp{
	width:70%;
	height:20%;
	margin:0 auto;
}

/*メイン.PC画面*/

@media screen and (min-width:640px){

h2{
	background:#a59aca;
	text-align:center;
	color:#0d0015;
	font-size:20px;
}

h3{
	background:#e9546b;
	text-align:center;
	color:#0d0015;
	font-size:20px;
	margin:10px;
	border:#e597b2 2px solid;
	border-radius:10px 20px;
	width:300px;
}

#main{
	width:940px;
	margin:0 auto;
}

#main .left{
	width:400px;
	float:left;
	margin-left:30px;
}

#main .right{
	width:400px;
	float:right;
	margin-right:30px;
}

.clearfix:after{
	content:"";
	display:block;
	clear:both;
}

#main .pp{
	width:400px;
	height:400px;
	margin:0 auto;
}

}

/*フッター.スマホ*/

footer{
	background:#74325c;
}

footer ul li{
	list-style:none;
}

footer ul li a,
footer p{
	color:#c0a2c7;
}

.sns{
	margin-bottom: 15px;
}
.sns li{
	display: inline-block;
}
.sns a{
	display: block;
	padding: 10px 20px;
	background:#e4d2d8;
	color: #c97586;
	border-radius: 5px;
	font-size:24px;
	text-decoration: none;
}
.sns a:hover{
	opacity: 0.7;
}

footer p{
	text-align:center;
}

/*フッター*.PC画面*/

@media screen and (min-width:640px){
.sns a{
	clear: both;
	text-align:center;
}
}

/*ページトップへ.スマホ*/
#top{
	display:none;
}

/*ページトップへ.PC画面*/
@media screen and (min-width:640px){

#top{
	display:block;
	margin:0;
	position:fixed;
	right:0;
	bottom:40px;
	left:50%;
	margin-left:480px;
}

#top a{
	display:inline-block;
	padding:10px;
	background:#8a2be2;
	color: #fff;
	text-decoration: none;
	border-radius:5px;
}
}

/*プライバシーポリシー.スマホ*/

#privacy{
	padding:3%;
	margin:3%;
	background:#66cdaa;
	text-align:center;
	color:#0d0015;
	font-size:16px;
	border:#7fffd4 2px solid;
	border-radius:5px 5px;
}

.privacy{
	margin:3%;
}

/*プライバシーポリシー.PC画面*/

@media screen and (min-width:640px){

#p-main{
	margin-top:8%;
}
}

/*お電話で注文予約*/

#tel{
	text-align:center;
}

h4{
	text-decoration:underline red;
	font-size:18px;
	margin-top:3%;
}

.tel{
	margin-bottom:5%;
	font-size:18px;
}

.tel2{
	width:50%;
	margin-left:22%;
	margin-bottom:5%;
	padding:4%;
	background:#8effc6;
	border:#add6ff 2px solid;
	border-radius:10px 10px;
	font-size:20px;
}

.tel2:hover{
	background:#8eff8e;
}

/*地図.PC画面*/

@media screen and (min-width:640px){

#map iframe{
	width:940px;
}








