@charset "utf-8";
/*-----------------------------------------------------
							　　　　　目次

■SP 共通パーツ

・layout　レイアウト	
・header ヘッダー
・globalNavi グローバルナビ
・siteStructure パンくず
・mainImg　メインイメージ
・contentsWrap コンテンツラップ
・subNavi サブナビ
・main メインコンテンツ
・localNavi ローカルナビ
・footer フッター


■SP 汎用スタイル

・見出し
・ボタン
・背景ボックス
・枠ボックス


■SP ページごと個別スタイル

-----------------------------------------------------*/
.twitterArea {
	max-height:300px;
	overflow-y: scroll;
}

.twitterArea{
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
}
.twitterArea::-webkit-scrollbar {
	width: 5px;
}
.twitterArea::-webkit-scrollbar-thumb{
	background: #999;
	border-radius: 5px;
}
.twitterArea::-webkit-scrollbar-track-piece {
	background: #efefef;
}
.calender > div {
	width:100%;
}


/*  ================================================================================================

    SP 共通パーツ

    ============================================================================================  */
img {
	max-width:100%;
}
		
/* font-size フォントサイズ
------------------------------------------------------------------ */
html {
	 font-size: 62.5%;
}
body {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.6;
}

/* フォントサイズ
-----------------------------------------------------*/
.fontSS { font-size:1.2rem;}
.fontS { font-size:1.3rem;}
.fontM { font-size:1.4rem;}
.fontL { font-size:1.5rem;}
.fontLL { font-size:2.0rem;}


/* フォントカラー
-----------------------------------------------------*/
.fontF00 {
	color:#FF0000;
	font-weight:bold;
}

/* layout　レイアウト
------------------------------------------------------------------ */
#wrapper {
	margin-top: 50px;/* ヘッダーの高さ分 */
}


/* header　ヘッダー
------------------------------------------------------------------ */
header {
	margin-top: 0;
	top: 0;
	position: fixed;
	height: 50px;
	width:100%;
	z-index:100;
	background: rgba(256,256,256,0.8);
}
header:after {
	content:" ";
	display:block;
	clear:both;
}
.logo {
	float:left;
	width:60%;
	margin: 8px auto 0 8px;
}
.logo img{
	height:30px;
}
header .inner img{
	transition: .3s;
}
.is-animation {
	background:rgba(256,256,256,0.8);
	height:50px;
	  box-shadow: 0px 6px 3px rgba(0,0,0,0.2);
  -webkit-box-shadow: 0px 6px 3px rgba(0,0,0,0.2);
  -moz-box-shadow: 0px 6px 3px rgba(0,0,0,0.2);
}
/*header.is-animation .inner img {
	height:30px;
}*/
#headerWrap {
	width: 100%;
}
#header {
	display:flex;
	align-items:center;
}
.sns .snsLink {
	display:flex;
	align-items:center;
	    margin: 10px 10px 0 0;
			height: 30px;
}
.sns .snsLink li {
	margin:0 10px;
	width: 30px;
}
#header .snsLink li {
	height: 30px;
}
#header .snsLink li img {
	height: 30px;
	max-width: none;
}


/* globalNavi グローバルナビ
------------------------------------------------------------------ */
/* ハンバーガー */
#toggle,
#toggle span {
	transition: all .4s;
	box-sizing: border-box;
}
#toggle {
	float:right;
	position: relative;
	width: 30px;
	height: 20px;
	margin:6px 5px 0 0;
}
#toggle span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: #E20A16;
	border-radius: 4px;
}
#toggle span:nth-of-type(1) {
	top: 0;
}
#toggle span:nth-of-type(2) {
	top: 8px;
}
#toggle span:nth-of-type(3) {
	bottom: 0;
}
#toggle.active span:nth-of-type(1) {
	-webkit-transform: translateY(8px) rotate(-315deg);
	transform: translateY(8px) rotate(-315deg);
}
#toggle.active span:nth-of-type(2) {
	opacity: 0;
}
#toggle.active span:nth-of-type(3) {
	-webkit-transform: translateY(-8px) rotate(315deg);
	transform: translateY(-8px) rotate(315deg);
}
/* ハンバーガーメニュー */
#globalNaviBox{
	display: none;
	width: 100%;
	margin: 0 auto 0;
	padding: 2px 0 0 0;
	letter-spacing: -.40em;
	overflow-y: scroll;
	height: 440px;
}
.globalNavi {
	width: 100%;
	margin: 0 auto 0;
	padding: 5px 0 0 0;
	letter-spacing: -.40em;
}
.globalNavi li{
	letter-spacing: normal;
	width: 100%;
	margin: 0;
	padding: 0;
	border-bottom:1px solid #FFF;
}
.globalNavi li a{
	position: relative;
	font-size:16px;
	font-weight:bold;
	display: block;
	padding: 15px;
	color: #FFF;
	text-align: left;
	text-decoration: none;
	background-color: #E20A16;
	vertical-align: middle;
}
.globalNavi li a:before{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 15px;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.globalNavi li a:before{
	width: 8px;
	height: 8px;
	border-top: 1px solid #FFF;
	border-right: 1px solid #FFF;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.globalNavi li a:after{
	content:"　"attr(data-subtitle) "";
	white-space:pre;
	font-size:12px;	
}
/*.globalNavi li:nth-child(7) a span:after{
	content:"（Visitor Information）";
	white-space:pre;
	font-size:12px;
}
.displayFlex {
	display: flex;
  align-items: center;
}*/

/* siteStructure　パンくず
------------------------------------------------------------------ */
.siteStructure{
	padding: 3px 5px;
}
.siteStructure li {
	display:inline;
	font-size: 0.8rem;
}
.siteStructure li a {
	text-decoration:none;
}
.siteStructure li a:after {
	content:" > ";
}


/* mainImg　メインイメージ
------------------------------------------------------------------ */
#mainImg{
	padding: 5px 0 0;
	text-align: center;
}

ul.slider {
	line-height:0;
}

/* contentsWrap コンテンツラップ
------------------------------------------------------------------ */
#mainContents {
	padding:10px;
}

/* 背景 */
.greeting .contentsWrap{
	background:url(/anime/img/common/bg_greeting.jpg) bottom center no-repeat;
	background-size: contain;
}
.news .contentsWrap{
	background:url(/anime/img/common/bg_news.jpg) bottom center no-repeat;
	background-size: contain;
}
.guide .contentsWrap{
	background:url(/anime/img/common/bg_guide.jpg) bottom center no-repeat;
	background-size: contain;
}



/* main メインコンテンツ
------------------------------------------------------------------ */
/*article{
	margin: 20px 0;
}*/


/* localNavi ローカルナビ
------------------------------------------------------------------ */



/* footer フッター
------------------------------------------------------------------ */
.footerSNS {
	margin: 20px auto 0px;
}
.footerSNS ul {
	display:flex;
	justify-content: center;
}
.footerSNS ul li {
	padding: 0 10px;
	max-height: 80px;
}
.footerSNS ul li img {
	max-height: 40px;
}
footer {
	width:100%;
	margin:0px 0 0 0;
}
#footerWrap{
	background-color: #ccc;
	padding: 10px;
}

/* フッターリンク */
footer ul{
	text-align: center;
}
footer ul li{
	display: inline-block;
	padding: 8px 10px;
}

/* コピーライト */
footer small{
	display: block;
	text-align: center;
	margin: 10px auto;
	font-size: 12px;
	line-height: 1.2;
}

/* ページトップ */
.btnPageBtn {
	position: fixed;
	bottom: 10px;
	right: 10px;
	font-size: 77%;
}
.btnPageBtn img {
	width:60px;
}
/* overray */
#overLay {
	display: none;
	width: 100%;
	height:100%;
	text-align: center;
	position: fixed;
	top: 0;
	z-index: 2;
	background: rgba(256,256,256,.9);
}

/****** SP横にした時のメニューの高さ指定 ******/
@media all and (orientation: landscape) {
	#globalNaviBox {
		height:180px;
	}
}




/*  ================================================================================================

    SP 汎用スタイル

    ============================================================================================  */

/* 見出し
-----------------------------------------------------*/
.titleA{
	font-size: 2.2rem;
	line-height: 1.2;
	color: #097605;
	border-left: 4px solid #097605;
	padding: 5px 10px;
	margin-bottom: 20px;
	line-height:80%;
	position:relative;
}
.titleA span {
	font-size:12px;
	line-height:0;
}
.titleA span:before {
	content:"\a";
	white-space:pre;
}
.titleA i {
	position:absolute;
	left: 150px;
	top: 5px;
	font-size: 1.2rem;
	background: #097605;
	padding: 5px 10px;
}
.titleA i a{
	color:#FFFFFF;
	  position: relative;
  display: inline-block;
  padding-right: 20px;
}
.titleA i a:after{
  content: '';
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 2px #FFF;
  border-right: solid 2px #FFF;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -4px;
}
.titleB{
	font-size: 1.8rem;
	color: #097605;
	border-bottom: 1px solid #097605;
	padding-bottom:2px;
	margin-bottom: 20px;
}
.titleC{
	font-size: 1.7rem;
	border-bottom: 1px solid #ccc;
	margin-bottom: 20px;
}
.titleD{
	font-size: 1.6rem;
	color: #097605;
	margin-bottom: 10px;
}
.titleE{
	font-size: 1.5rem;
	color: #EEA620;
	border-bottom: 1px solid #EEA620;
	margin-bottom: 20px;
}
.titleF{
	border-bottom: 1px solid #ccc;
	margin-bottom: 20px;
}
.titleG{
	font-weight: bold;
}
.titleI{
	font-size: 1.8rem;
	margin-bottom: 10px;
	text-align:center;
}
.titleJ{
	text-align:center;
	font-size: 1.6rem;
	margin-bottom: 20px;
}
.titleL {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 10px;
	margin-left: 10px;
}

/* ボタン
-----------------------------------------------------*/
/* 幅（SPは同じ） */
.btnFlexible,
.btnFixed{
	width: 90%;
	display: inline-block;
	font-weight: bold;
	padding: 10px 5px;
	margin: 10px 0;
	text-align: center;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	-ms-border-radius: 4px;
	border-radius: 4px;	
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
/* hover */
.btnFlexible:hover,
.btnFixed:hover{
	text-decoration: none;
}

/* ボタン */
.btnMap {
	width:60%;
	margin:20px auto 0;
}
.btnMap a{
	text-align:center;
	background:#000000;
	color:#FFFFFF;
	text-decoration:none;
	display:block;
	padding:10px;
	transition: .3s;
}
.btnMap a:hover{
	opacity:0.8;
}
.btnRev {
	width:200px;
	margin:20px auto 0;
}
.btnRev a{
	text-align:center;
	border:1px solid #333;
	color:#333;
	text-decoration:none;
	display:block;
	padding:10px;
	transition: .3s;
}
.btnRev a:hover{
	opacity:0.8;
}

/* 2階層目 */
.second .row p{
	margin: 0 0 20px 0;
}


/* 矢印の形状 ------------------------------*/
/* 右配置　右→ */
.arrowR{
	position: relative;
	display: inline-block;
	padding-right: 32px;
	vertical-align: middle;
	text-decoration: none;
}
.btnFlexible.arrowR{
	padding-right: 48px;
}
.arrowR:before,
.arrowR:after{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.arrowR:before{
	width: 22px;
	height: 22px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #fff;
}
.arrowR:after{
	right: 19px;
	width: 9px;
	height: 9px;
	border-top: 2px solid #527F6B;
	border-right: 2px solid #527F6B;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

/* 右配置　下↓ */
.arrowD{
	position: relative;
	display: inline-block;
	padding-right: 32px;
	vertical-align: middle;
	text-decoration: none;
}
.btnFlexible.arrowD{
	padding-right: 48px;
}
.arrowD:before,
.arrowD:after{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.arrowD:before{
	width: 22px;
	height: 22px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #fff;
}
.arrowD:after{
	top: -2px;
	right: 17px;
	width: 9px;
	height: 9px;
	border-top: 2px solid #527F6B;
	border-right: 2px solid #527F6B;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

/* 左配置　左← */
.arrowL{
	position: relative;
	display: inline-block;
	padding-left: 32px;
	vertical-align: middle;
	text-decoration: none;
}
.btnFlexible.arrowL{
	padding-left: 48px;
}
.arrowL:before,
.arrowL:after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 10px;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.arrowL:before{
	width: 22px;
	height: 22px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #527F6B;
}
.arrowL:after{
	left: 19px;
	width: 9px;
	height: 9px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}

/* 2列 */
.btnArea2{
	width: 90%;
	margin: 0 auto;
	letter-spacing: 0;
}
.btnArea2 a{
	float: left;
	width : -webkit-calc((100% - 5px) /2);
	width : calc((100% - 5px) /2);
}
.btnArea2 a:first-child{
	margin-right: 5px;
}
.btnArea2:before,
.btnArea2:after{
	content: " ";
	display: table;
}
.btnArea2:after{
	clear: both;
}


/*  テーブル
-----------------------------------------------------*/
/* レスポンシブ */
.responsive>tbody>tr>th,
.responsive>tbody>tr>td{
	display: block;
	border-top: none;
}
.responsive>tbody>tr:first-child th{
	border-top: 1px solid #ddd;
}
.responsive>tbody>tr>th,
.responsive>tbody>tr>td{
	padding: 8px;
}


/*  背景ボックス 
-----------------------------------------------------*/
.boxWrapA{
	background-color: #F2F2F2;
	padding: 20px;
}


/*  枠ボックス
-----------------------------------------------------*/
.borderA{
	border: 1px solid #ccc;
	padding: 15px 10px 0 10px;
	height: 100%;
}
.borderB {
	border:2px dashed #aaa;
	padding:20px;
}


/*  tel番タップ
-----------------------------------------------------*/
/* PCでウィンドウサイズを縮めた時 */
span[data-tel='tel'] {
	font-weight: bold;
	font-size: 2.2rem;
	display: block;
}
/* SPの電話番号タップ */
a[href^="tel:"]{
	font-weight: bold;
	font-size: 2.2rem;
	display: block;
	padding-left: 18px!important;
	color: #CC0000;
}


/*  その他
-----------------------------------------------------*/
.paragraph{
	margin-bottom: 20px;
}


/*  ================================================================================================

    SP ページごと個別スタイル

    ============================================================================================  */


.ceo {
	text-align:center;
}
.ceo dl {
	margin: 0 0 20px 0;
}

.newsList li {
	margin: 0 0 20px 0;
}
.newsList li h2 {
	margin: 0 0 10px 0;
	font-size:1.4rem;
	font-weight:bold;
}
.newsList li h2 span:after{
	content:"\a";
	white-space:pre;
}
.newsList li h2 span {
	font-weight:normal;
	font-size:1.2rem;
}


.newsDetail p {
	margin: 0 0 10px 0;
}
.newsDetail ul {
	margin: 20px 0 0 0;
}
.newsDetail ul li {
	margin: 0 0 10px 0;
}
.guide .tel {
	font-size:2.0rem;
}

.sectionInner {
	margin: 0 auto 15px;
	padding:10px 0;
}

.newsDetail .detailTitleA{
	color: #0070C0;
	font-weight: bold;
}
.newsDetail .notesList{
	margin: 0;
}
.newsDetail .notesList li{
	font-size: 1.2rem;
	color: #7d7d7d;
	margin: 0;
}



.bgSection {
	background:#F9F9F9;
	max-width:100%;
}

/* page link */
.anchor::before {
    content: "";
    display: inline-block;
    height: 100px;
    margin-top: -100px;
    vertical-align: top;
}
.alert { 
	background:#FFFF66;
	text-align:left;
	padding:20px;
	color:#CC0033;
	font-weight:bold;
}

.blockend-ss {
	margin: 0 0 10px 0;
}


.floorPlan {
	width:100%;
}

/* トップページ 画像のhover設定　*/
#mainContents  figure a:hover{
  opacity: 0.7;
} 

#mainContents  .txtArea{
  margin-top: 5px;
}
#mainContents dt,#mainContents dd{
  line-height: 1.3;
  font-size: 14px;
}

/* news コメント */
.noteTxt {
	font-size: 1.2rem;
	color:#7C7C7C;
}




/* covid-19　対応 */
.covid19 a{
	font-family:'ＭＳ Ｐ明朝', '細明朝体', 'ヒラギノ明朝 Pro W3';
	color:#FF0000;
	font-weight:bold;
	text-decoration:underline;
	letter-spacing:0.1em;
	display:block;
	padding:10px;
}
.covid19 a:hover{
	text-decoration:none;
}
#globalNaviBox{
	height: 460px;
}
/* //　covid-19　対応 */

#wrapper{
	min-height: calc(100vh - 50px);
	position: relative;
	padding-bottom: 70px;
	box-sizing: border-box;
}

footer{
	width: 100%;
	background: #ccc;
	color:#333;
	text-align: center;
	padding: 10px 0;	
	position: absolute;
	bottom: 0;
}


.icoWalk,
.icoBus,
.icoTaxi {
	position:relative;
	padding: 0px 0 0 1.2em;						
}
.icoWalk:before {
	position: absolute;
	content: "";
	background: url(/anime/img/common/ico_walk.png);
	background-size: contain;
	vertical-align: middle;
	display: inline-block;
	left: 0;
	width: 1em;
	height: 1em;
	vertical-align: middle;
	margin-right: 10px;
	top: 5px;
}
.icoBus:before {
	position: absolute;
	content: "";
	background: url(/anime/img/common/ico_bus.png);
	background-size: contain;
	vertical-align: middle;
	display: inline-block;
	left: 0;
	width: 1em;
	height: 1em;
	vertical-align: middle;
	margin-right: 10px;
	top: 5px;
}
.icoTaxi:before {
	position: absolute;
	content: "";
	background: url(/anime/img/common/ico_taxi.png);
	background-size: contain;
	vertical-align: middle;
	display: inline-block;
	left: 0;
	width: 1em;
	height: 1em;
	vertical-align: middle;
	margin-right: 10px;
	top: 5px;
}
.btnBtmTxtC {
	text-align:center;
	margin-bottom: 3em;
}

.btnBtmTxtC span {
	color:#CC0033;
}

.indentTextA{
	padding-left: 3.2em;
	text-indent: -3.2em;
}

.btnLeft a {
	  display: inline-block;
    padding: 10px 20px 10px 40px;
    background: #CC0033;
    color: #fff;
    font-weight: bold;
    transition: .3s;
    position: relative;
    vertical-align: middle;
    text-decoration: none;
    font-size: 15px;
}
.btnLeft a:before,
.btnLeft a:after{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.btnLeft a:before{
    left: 10px;
    box-sizing: border-box;
    width: 6px;
    height: 6px;
    border: 6px solid transparent;
    border-left: 10px solid #FFF;
}
.btnLeft a:hover {
	opacity:0.8;
}

/* news */
.newNews strong {
	font-size:16px;
}
.newNews .decoFontA {
	font-size:16px;
	font-weight:bold;
}
.newNews #mainContents .newsContentsList li h3 {
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 15px 0;
	line-height:1.8;
}
.newNews #mainContents .newsContentsList li dl {
	margin-bottom:10px;
}
.newNews #mainContents .newsContentsList li p {
	font-size: 14px;
	line-height:1.8;
	margin: 0 0 10px 1em!important;
}
.newNews #mainContents .newsContentsList li dl dt {
	text-indent: -1.8em;
	padding-left: 1.8em;
	font-size: 18px;
	font-weight: bold;
	line-height:1.8;
	margin: 0 0 0 1em!important;
	float: none;
	width:auto;
}
.newNews #mainContents .newsContentsList li dl dd {
	margin-left: 2.6em;
	font-size: 14px;
	line-height:1.8;
}
.newNews #mainContents .newsContentsList li dl dd ul {
	margin:0;
}
.newNews #mainContents .newsContentsList li dl dd ul li {
	text-indent:-1.4em;
	padding-left:1.4em;
}
.newNews #mainContents .newsContentsList .underline {
	border-bottom: 1px solid #000;
}

dl.photoAreaEn {
	display: flex;
	margin-bottom: 10px;
}
#mainContents dl.photoAreaEn dt,
#mainContents dl.photoAreaEn dd {
	font-size: 14px;
	line-height: 1.5;
}
/* トップページ オンラインショップバナー*/
figure.sideBannerImg{
	text-align: left;
    width: 100%;
}
figure.sideBannerImg a[target="_blank"]:after {
	display: none;
}
