@charset "utf-8";
/* CSS Document */

/*Font Awesomeの読み込み
---------------------------------------------------------------------------*/
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css");

/*--------------------------------------
　基本設定
---------------------------------------*/
body {
  font-size: 16px;
  line-height: 1.7;
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
  color: #333;
  text-align: justify;
  text-justify: inter-character;
  background-image: url("../images2/bg_all.jpg");
  width:-webkit-fill-available;
}

a {
  text-decoration: none;
}
a:link {
  color: #dedb56;
} /* リンクの色 */
a:visited {
  color: #dedb56;
} /* 済みリンク */
a:hover {
  color: #dc2020;
  text-decoration: underline;
} /* リンク上 */
a:active {
  color: #dc2020;
} /* onclick */
dl {
  -webkit-text-size-adjust: none;
}
/*--------------------------------------
　大枠囲み
---------------------------------------*/
#wrapper {
  background: url(../images2/bg_hd.png) repeat-x;
  width: 100vw;
  overflow:hidden;
}
/*--------------------------------------
　ヘッダー(PC)
---------------------------------------*/
#header {
  width:96vw;
  margin: 0;
  padding: 0 2vw 0 2vw;
  z-index:9999;
  background-color: #F2F2F2;
  position: fixed;
　overflow: hidden;
}
#header_box2 {
  display: flex;
  justify-content: space-between;
}
h1 {
  font-size: 2vw;
  color: #999797;
  margin-top: 1vw;
}
#header_left {
  float: left;
}
#icons {
  display: flex;
  margin-right: 1em;
}
#icons p {
  padding:3px 5px;
  font-size: 3vw;
}
#header_right {
  float: right;
}
#logo {margin-top: 1vw;}
#logo img{width: 23vw;}

#header_btn {
  background:#A2E067;
  border-radius: 0 0 0.3em 0.3em;
  padding: 2px 21px;
  color: #ffffff;
  height: 1.7em;
}
#header_btn li {
  display: inline;
  font-size: 15px;
  padding-left: 10px;
  background: url(../images2/arrow.png) 0 50% no-repeat;
}
#header_btn li:first-of-type {
  margin-right: 16px;
}
#tel {
  background: url(../images2/tel.png) left no-repeat;
  font-size: 3vw;
  color: #b55e74;
  padding-left: 20px;
  margin-right: 0;
  float: right;
}
#header_btn a {
  text-decoration: none;
}
#header_btn a:link {
  color: #ffffff;
} /* リンクの色 */
#header_btn a:visited {
  color: #ffffff;
} /* 済みリンク */
#header_btn a:hover {
  color: #ffffff;
  text-decoration: underline;
} /* リンク上 */
#header_btn a:active {
  color: #ffffff;
} /* onclick */


/*--------------------------------------
　グローバルナビゲーション(PC)
---------------------------------------*/
#gnavi {
  width: -webkit-fill-available;
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
  list-style-type: none;
  display: flex;
  justify-content:space-around;
}

#gnavi li {
  width: 20vw;
  height:4vw; 
  line-height: 0;
  text-align: center;
  color: #040370;
  background: url(../images2/gnavi_off.png)no-repeat;
  background-size: contain;
}

#gnavi li:hover {
  line-height: 0;
  text-align: center;
  color: #040370;
  background: url(../images2/gnavi_on.png) no-repeat;
  background-size: contain;
}

#gnavi li a {
  font-size: 1.7vw;
  display: block;
  color:#141111;
  text-decoration: none;
  padding-top: 1.6vw;
  padding-left: 1vw;
 
}
#gnavi a:hover {
  color: #040370;
}
#gnavi li strong {
  font-weight: normal;
}

/*--------------------------------------
　キービジュアル
---------------------------------------*/
#visual_box {
  width: 96vw;
  margin: 15vw 2vw 2vw;
}

#visual_box img{
  width:96vw;
  margin: 1vw auto;
}

@media screen and (max-width:600px) {
/*--------------------------------------
　ヘッダー(600px以下)
---------------------------------------*/
#header {
  width: -webkit-fill-available;
  margin: 0 auto;
  padding-bottom: 10px;
}
#header_box2 {
  z-index:9999;
  background-color: #F2F2F2;
　overflow: hidden;
  display: flex;
  justify-content: space-between;
}
	
.hamburger-demo-menubox *{
	font-size: 16px;
}
.hamburger-demo-menubox li{
	font-size: 14px;
}
/* hamburgerここから */
	/* inputを非表示 */
.input-hidden{
	display: none;
}
	/* label */
.hamburger-demo-switch{
	cursor: pointer;
	position: absolute;
	right: 2vw;
	bottom: -1vw; /* ハンバーガーアイコンの位置（下から） */
	z-index: 9999;
	width: 10vw; /* アイコン（クリック可能領域）の幅 */
	height: 15vw; /* アイコン（クリック可能領域の）高さ */
}
/* メニュー展開時にハンバーガーアイコンを固定 */
#hamburger-demo1:checked ~ .hamburger-demo-switch{
	position: fixed;
}
/* ハンバーガーアイコン */
.hamburger-switch-line1, .hamburger-switch-line1:before, .hamburger-switch-line1:after{
	width: 5vw;
	height: 0.9vw;
	background: #DEDB56; /* ハンバーガーアイコンの色 */
	position: absolute;
	top: 45%;
	left: 50%;
	transition: .3s;
	content: "";
}
.hamburger-switch-line1{
		transform: translate(-50%, -50%);
}
.hamburger-switch-line1:before{
	transform: translate(-50%, -300%);
}
.hamburger-switch-line1:after{
	transform: translate(-50%, 200%);
}
/* ハンバーガーアイコン･アニメーション */
#hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1{
	width: 0;
}
#hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1:before{
	transform: rotate(45deg) translate(-40%, 325%);
}
#hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1:after{
	transform: rotate(-45deg) translate(-40%, -325%);
}
/* メニューエリア */
.hamburger-demo-menuwrap{
	position: fixed;
	height: 40%;
	background: #fafafa; /* メニューエリアの背景色 */
	padding: 5em 3% 5em;
	z-index: 9998;
	transition: .3s;
	overflow-y: scroll; /* メニュー内容が多い場合に縦スクロールする */
	top: 0;
	left: 100%;
	width: 100%;
}
/* メニューリスト */
.hb_list{
	margin-right: 3%;
	padding-left: 5% !important; /* !important不要な場合もあり */
	list-style: none;
}
.hb_list li a{
	text-decoration: none;
	color: #333; /* メニューリストの文字色 */
	display: block;
	padding: .5em 0;
}
/* メニューエリア･アニメーション */
	/* 右から */
#hamburger-demo1:checked ~ .hamburger-demo-menuwrap{
	left: 50%;
}
	/* コンテンツカバー */
#hamburger-demo1:checked ~ .hamburger-demo-cover{
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 9997;
	background: rgba(3,3,3,.5);
	display: block;
}

h1 {
  font-size: 3vw;
  color: #999797;
  margin-top: 1vw;
  margin-left: 1vw;
}
#header_left {
  float: left;
  width: 45%;
}
#header_right {
  float: right;
  width: 55%;
}
#logo {margin-top: 4vw;}
#logo img{width: 43vw;}	
	
#header_btn {
  background:#A2E067;
  border-radius: 0 0 0.3em 0.3em;
  padding: 2px 10px;
  color: #ffffff;
  height: 1.5em;
  width: 70%;
  float:right;
}
#header_btn li {
  display: inline;
  padding-left: 4vw;
  background: url(../images2/arrow.png) 0 50% no-repeat;
  font-size: 2.7vw;
}
#header_btn li:first-of-type {
  margin-right: 5px;
}
#tel {
  background: url(../images2/tel.png) left no-repeat;
  font-size: 3.5vw;
  color: #b55e74;
  padding-left: 20px;
  margin-right: 8vw;
  float: right;
}
#header_btn a {
  text-decoration: none;
  font-size: 1em;
}
#icons {
  display: flex;
  float:right;
  margin: -11px 10vw 0 0;
}
#icons p {
  padding:2vw 1.5vw 0 1vw;
  font-size: 6vw;
}
	
/*--------------------------------------
　グローバルナビゲーション(600px以下)
---------------------------------------*/
#gnavi {
  display: none;
}

/*--------------------------------------
　キービジュアル(600px以下)
---------------------------------------*/
#visual_box {
  width: 100vw;
  padding-top: 25vw;
  margin: 0 auto;
}
#visual_box img{width:100vw;
}
}/*ここまで600*/

/* PCではハンバーガーメニューを表示しない */
@media (min-width: 600px){
.hamburger{display: none;}
}
	

/*--------------------------------------
　コンテナ
---------------------------------------*/
#container {
  width: 100%;
  margin: 0 auto 5px;
  margin-top: 24px;
}
/*--------------------------------------
　サイド
---------------------------------------*/
#side {
  width: 24vw;
  margin: 0 2vw;
  float: left;
}
#side h2 {
  background: url("../images2/side_title.png") left bottom no-repeat;
  color: #040345;
  padding: 4px 0 0px 42px;
  margin-bottom: 4px;
  margin-top: 10px;
  line-height: 22px;
  font-size: 15px;
  font-weight: bold;
  width: 16.5vw;
}
#side ul {
  margin-bottom: 26px;
}
#side ul li {
  text-indent: 14px;
  padding: 0 0 0 20px;
  display: block;
  border-bottom: 1px dotted #cccccc;
  font-size: 13px;
  line-height: 35px;
  width: 18vw;
  margin-left: 1vw;
}
#side ul li a {
  display: block;
}
.side_info {
  background:#F2F2F2;
  padding-top: 5px;
  border-radius: 0.3em 0.3em 0 0;
  color: #ffffff;
  font-size: 14px;
}
.side_info img{
	width: 20vw;
 	margin-left: -0.5vw;
}
.s_box {
  width: 20vw;
  background: url(../images2/bg_info.png) ;
  background-size: cover;
  background-position: right;
  padding: 3px;
  font-size: 1.5vw;
  color: #533401;
  font-family:'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
  border: solid 3px #fef135
}
.s_box p:first-of-type {
  margin-bottom: 20px;
}
.s_box img{width: 20vw;}
.side_list {
  background: url(../images2/icon_1.png) 5% 50% no-repeat;
}

.side_bnr img{width: 21vw;}
.side_bnr_sns img{width: 21vw;}
.side_bnr:hover {opacity: 0.6;}

.s_btn1 {
  background: url(../images2/btn1_off.png) no-repeat;
  margin-bottom: 15px;
  line-height: 64px;
}
#side ul a {
  text-decoration: none;
}
#side ul a:link {
  color: #333333;
} /* リンクの色 */
#side ul a:visited {
  color: #333333;
} /* 済みリンク */
#side ul a:hover {
  color: #dedb56;
} /* リンク上 */
#side ul a:active {
  color: #dedb56;
} /* onclick */

/*--------------------------------------
　メインコンテンツ
---------------------------------------*/
#main {
  width:70vw;
  float: right;
  margin-right: 2vw;
}
#feature{
	width:70vw;
	background-image: url("../images2/bg_contents_all.jpg");
	background-size: contain;
	background-repeat: no-repeat;
}


.feature_box1 {
  height: 40vw;
  position: relative;
  background-size: contain;
}

.feature_box2 {
  overflow:inherit;
  height: 40vw;
  position: relative;
  background-size: contain;
}

.feature_box3 {
  overflow: auto;
  height: 40vw;
  position: relative;
  background-size: contain;
}

.feature_big {
  font-size: 28px;
  text-shadow: 1px 1px 2px silver;
}
.feature_box_txt1 {
  position: absolute;
  top: 18vw;
  left: 4vw;
  width: 30vw;
  font-size: 1.5vw;
}
.feature_box_txt2 {
  position: absolute;
  top: 16vw;
  left: 36vw;
  width: 34vw;
	font-size: 1.5vw;
}
.feature_box_txt3 {
  position: absolute;
  top: 16vw;
  left: 3vw;
  width: 32vw;
	font-size: 1.5vw;
}
.feature_more_btn1 {
  position: absolute;
  top: 34vw;
  left: 16vw;
}
.feature_more_btn2 {
  position: relative;
  top: 32vw;
  left: 45vw;
}
.feature_more_btn3 {
  position: absolute;
  top: 33vw;
  left: 16vw;
}
.feature_more_btn1 img, .feature_more_btn2 img, .feature_more_btn3 img {
  width: 20vw;
}
#news {
  margin-bottom: 2vw;
}
#news h2 {
  background: url(../images2/title_1.png) left bottom no-repeat;
  padding: 4px 0px 4px 80px;
  margin-bottom: 16px;
  font-size: 20px;
  font-weight: bold;
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
}
#news dl {
  overflow: hidden;
  font-size: 1.5vw;
}
#news dt {
  background: url(../images2/icon_2.png) 11% 50% no-repeat;
  float: left;
  padding-left: 27px;
  line-height: 38px;
}
#news dd {
  border-bottom: 1px dotted #a6a6a6;
  padding: 0 0 0 140px;
  line-height: 38px;
}

@media screen and (max-width:600px) {
/*--------------------------------------
　コンテナ(600px)
---------------------------------------*/
#container {
  width: 100vw;
  margin: 0 auto;
}
/*--------------------------------------
　サイド(600px)→横並びにする
---------------------------------------*/
#side {
  width: 100vw;
  height: 20vw;
  margin: 0 1vw;
  display: flex;
  justify-content: space-around;
}
#side h2 {display: none;}
#side ul {display: none;}

.side_info {display: none;}
.s_box {display: none;}
.side_list {display: none;}
.side_bnr_sns{display: none;}
	
.side_bnr {
 width: 100%;
 height: 100%;
}
.side_bnr:hover {
  opacity: 0.6;
}
.side_bnr img{width:93%;}
.s_btn1 {
  background: url(../images2/btn1_off.png) no-repeat;
  margin-bottom: 15px;
  line-height: 64px;
}
#side ul a {
  text-decoration: none;
}
#side ul a:link {
  color: #333333;
} /* リンクの色 */
#side ul a:visited {
  color: #333333;
} /* 済みリンク */
#side ul a:hover {
  color: #dedb56;
} /* リンク上 */
#side ul a:active {
  color: #dedb56;
} /* onclick */
	
/*--------------------------------------
　メインコンテンツ(600px)
---------------------------------------*/
#main {
  width:100vw;
  margin: 0;
}
#feature{
  width: 100vw;
  height: 174vw;
  background-image: url("../images2/bg_contents_all.jpg");
  background-size: contain;
  background-repeat: no-repeat;
}
	
.feature_box1 {
  width:100vw;
  height: 62vw;
  background-size: 100%;
  position: relative;
}
.feature_box_txt1 {
  position: absolute;
  top: 25vw;
  left: 7vw;
  width: 40vw;
  font-size: 2vw;
}
.feature_more_btn1 {
  position: absolute;
  top: 50vw;
  left: 17vw;
}	
	
.feature_box2 {
  width:100vw;
  height:70vw;
  background-size: 100%;
  position: relative;
}
.feature_box_txt2 {
  position: absolute;
  top: 18vw;
  left: 53vw;
  width: 42vw;
  font-size: 2vw;
}
.feature_more_btn2 {
  position: absolute;
  top: 40vw;
  left: 60vw;
}
	
.feature_box3 {
  width: 100vw;
  height: 70vw;
  background-size: 100%;
  position: relative;
}
.feature_box_txt3 {
  position: absolute;
  top: 5vw;
  left: 5vw;
  width: 45vw;
  font-size: 2vw;
}
.feature_more_btn3 {
  position: absolute;
  top: 27vw;
  left: 17vw;
}
	
.feature_more_btn1 img, .feature_more_btn2 img, .feature_more_btn3 img {
  width: 33vw;
}
	
.feature_big {
  font-size: 28px;
  text-shadow: 1px 1px 2px silver;
}


#news {
  margin-bottom: 2vw;
}
#news h2 {
  background: url(../images2/title_1.png) left bottom no-repeat;
  padding: 4px 0px 4px 80px;
  margin-bottom: 16px;
  font-size: 20px;
  font-weight: bold;
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;	
}
#news dl {
  overflow: hidden;
  font-size: 3vw;
}
#news dt {
  background: url(../images2/icon_2.png) 11% 50% no-repeat;
  float: left;
  padding-left: 27px;
  line-height: 38px;
}
#news dd {
  border-bottom: 1px dotted #a6a6a6;
  padding: 0 0 0 140px;
  line-height: 38px;
}

}/*ここまで600*/

/*--------------------------------------
	　フッター
---------------------------------------*/
#footer_top {
  width: 100vw;
  height: 12.5vw;
  margin: 0 auto;
  overflow: hidden;
}
#footer_top ul {
  font-size: 1.5vw;
  justify-content: space-between;
  padding: 7vw 2vw;
  list-style-type: none;
}
#footer_top ul li {
  float: left;
}
#footer_top li a {
  margin: 0 20px;
  color: #1F4F58;
  text-decoration: none;
}
#footer_top p {
  float: right;
}
#footer_top p img{width: 18vw;}

#footer_bottom {
  width: 100vw;
  margin: 0 auto;
  overflow: hidden;
  background:#A2E067;
  color: #ffffff;
  font-size: 12px;
}
#footer_bottom a {
  color: #595959;
}
#footer_bottom_box {
  width: 100vw;
  margin: 0 auto;
  overflow: hidden;
}
#footer_bottom address {
  float: left;
  padding-top: 3px;
  font-style: normal;
  margin-left: 20px;
}
#footer_bottom .copy {
  float: right;
  margin-top: 38px;
  margin-right: 20px;
}

@media screen and (max-width:600px) {
/*--------------------------------------
	　フッター(600px)
---------------------------------------*/
#footer_top {
  width: 100vw;
  margin: 0 auto;
  overflow: hidden;
}
#footer_top ul {
  font-size: 2vw;
  float: left;
  padding:0 3vw;
  list-style-type: none;
}
#footer_top ul li {
  float: left;
}
#footer_top li a {
  margin: 0 3px;
  color: #1F4F58;
  text-decoration: none;
}
#footer_top p img{width: 30vw;}
#footer_top p {
  float: right;
}
#footer_bottom {
  width: 100vw;
  background:#A2E067;
  color: #ffffff;
  font-size: 0.5em;
}
#footer_bottom a {
  color: #595959;
}
#footer_bottom_box {
  width: 100vw;
}
#footer_bottom_box address{
  float: left;
  padding-top: 3px;
  font-style: normal;
}
#footer_bottom_box .copy{
  margin:2vw 13vw 0 0;
}
}/*ここまで600*/

/*--------------------------------------
　下層ページ共通
---------------------------------------*/
/*#page_ttl {
  margin: 0 auto;
  background: url(../images2/bg_title.jpg) no-repeat;
  overflow: hidden;
  width: 1000px;
  height: 97px;
}*/
#page_ttl p {
  padding-left: 40px;
  font-size: 60px;
  line-height: 97px;
  font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
  color: #fff;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, .5);
}
/*--------------------------------------
　コンセプトページ new
---------------------------------------*/
#page_ttl_cafe {
  margin: 0 auto;
  background: url("../images2/bg_title_cafe.png") no-repeat;
  overflow: hidden;
  width: 1000px;
  height: 97px;
}
.concept_ttl {
  background: url(../images2/title_2.png) left bottom no-repeat;
  padding: 4px 0 4px 90px;
  margin-bottom: 16px;
  font-size: 20px;
  font-weight: bold;
  font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.concept_txt {
  margin-bottom: 30px;
}
.concept_img {
  margin-bottom: 30px;
}
/*--------------------------------------
　メニューページ
---------------------------------------*/
#page_ttl_dogrun {
  margin: 0 auto;
  background: url("../images2/bg_title_dogrun.png") no-repeat;
  overflow: hidden;
  width: 1000px;
  height: 97px;
}
.menu_ttl {
  background: url(../images2/title_3.png) left bottom no-repeat;
  padding: 4px 0 4px 90px;
  margin-bottom: 16px;
  font-size: 20px;
  font-weight: bold;
  font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.menu_txt {
  margin-bottom: 30px;
}
.menu_img {
  margin-bottom: 30px;
}
.menu_box {
  background-image: url("../images2/menu_bg.jpg");
  width: 760px;
  height: 440px;
  background-repeat: no-repeat;
  margin-bottom: 40px;
  position: relative;
}
.menu_box_txt {
  position: absolute;
  width: 700px;
  top: 30px;
  left: 30px;
}
/*--------------------------------------
　よくあるご質問ページ
---------------------------------------*/
#page_ttl_qa {
  margin: 0 auto;
  background: url("../images2/bg_title_qa.png") no-repeat;
  overflow: hidden;
  width: 1000px;
  height: 97px;
}
#qa dt {
  border-bottom: 1px dotted #e2546c;
  font-weight: bold;
}
#qa dd {
  margin-bottom: 40px;
}
.q_txt {
  font-weight: bold;
  color: #040345;
  padding-right: 5px;
}
.a_txt {
  font-weight: bold;
  color: #5aaee9;
  padding-right: 5px;
}
.qa_img {
  text-align: center;
  margin-bottom: 40px;
}
/*--------------------------------------
　アクセスページ
---------------------------------------*/
#page_ttl_access {
  margin: 0 auto;
  background: url("../images2/bg_title_access.png") no-repeat;
  overflow: hidden;
  width: 1000px;
  height: 97px;
}
.access_ttl {
  background: url(../images2/title_4.png) left bottom no-repeat;
  padding: 4px 0 4px 90px;
  margin-bottom: 16px;
  font-size: 20px;
  font-weight: bold;
  font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.access_txt {
  margin-bottom: 30px;
}
.access_map {
  margin-bottom: 40px;
}
.access_img {
  text-align: center;
  margin-bottom: 40px;
}
/*--------------------------------------
　お問い合わせページ
---------------------------------------*/
#page_ttl_res {
  margin: 0 auto;
  background: url("../images2/bg_title_res.png") no-repeat;
  overflow: hidden;
  width: 1000px;
  height: 97px;
}
.inquiry_ttl {
  background: url(../images2/title_2.png) left bottom no-repeat;
  padding: 4px 0 4px 90px;
  margin-bottom: 16px;
  font-size: 20px;
  font-weight: bold;
  font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.inquiry_form {
  margin-bottom: 30px;
}
.inquiry_form table {
  width: 100%;
}
.inquiry_form td {
  padding: 5px;
}
.inquiry_txt {
  margin-bottom: 30px;
}
.inquiry_img {
  text-align: center;
  margin-bottom: 40px;
}