@charset "utf-8";
/*-----------------------------------------------------
							　　　　　目次
							
■PC 共通パーツ

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


■PC 汎用スタイル

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


■PC ページごと個別スタイル
	
-----------------------------------------------------*/


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

    PC 共通パーツ

    ============================================================================================  */
		
/* font-size フォントサイズ
------------------------------------------------------------------ */
html {
	font-size: 62.5%;
}
body {
	font-size: 16px;
  font-size: 1.6rem;
	line-height: 1.8;
}	
img {
	max-width:100%;
}
		
/* layout　レイアウト
------------------------------------------------------------------ */
.twitterArea {
	max-height:300px;
	overflow-y: scroll;
}
.calender {
	display:flex;
}
.calender > div {
	width:50%;
}
#mainImg img{
	width:100%;
}
section {
	max-width:960px;
	margin: 0 auto;
}
ul.slider {
	line-height:0;
}

/* ボタン */
.btnMap {
	width:200px;
	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 {
	padding: 120px 0 0 0;
}
.second .row p{
	margin: 0 0 40px 0;
}

/* header　ヘッダー
------------------------------------------------------------------ */
header .inner{
	max-width:1200px;
	margin: 0 auto;
}
header .inner img{
	transition: .3s;
}

header{
	/*background:rgba(256,256,256,0.9);*/
	position: fixed;
	z-index: 9999;
	width: 100%;
	top:0;
	left:0;
	right:0;
	transition: .3s;
	background: rgba(256,256,256,0.8);
}
.displayFlex{
	display:flex;
	align-items: center;
}
#headerWrap {
	margin-right:auto;
}
.logo{
	margin-top: 10px;
	padding-bottom: 10px;
}
.logo img {
	width:80px;
}

.is-animation {
	background:rgba(256,256,256,0.96);
	height:60px;
	  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 .logo img {
	width:40px;
}
header.is-animation .inner img {
	max-width:100%;
}
.is-animation ul {
	margin:0;
}
.snsLink {
	display:flex;
}
.snsLink img{
	max-width:100%;
}

.snsLink {
	display:flex;
}
.snsLink li {
	padding: 0 5px;
	max-width: 50px;
}
.snsLink img{
	max-width:100%;
}





/* globalNavi グローバルナビ
------------------------------------------------------------------ */
#globalNaviBox{
	float:right;
}
.globalNavi {
	display: -ms-flexbox;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;	
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;	
	margin: 20px 0;	
	margin: 20px 0 0 0;
}
.globalNavi li{
	text-align: center;
}
.globalNavi li a {
	display: -ms-flexbox;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;		
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;	

	padding: 15px 5px;
	color: #333;
	line-height: 1.2;
	text-decoration: none;
	padding:15px 30px 10px;
}
.globalNavi li a:hover {
	color: #E20A16;
}
#toggle {
	display: none;
}
.globalNavi li a {
	display:block;
	padding:15px 5px;
	transition: .3s;
	white-space:nowrap;
}
.globalNavi li a:after{
	content:"\a"attr(data-subtitle) "";
	white-space:pre;
	font-size:12px;
}

.is-animation .globalNavi li{
	text-align: center;
	line-height:90%;	
}
.is-animation .globalNavi li a {
	display:block;
	padding:5px;
}
/* current */


/* siteStructure　パンくず
------------------------------------------------------------------ */
.siteStructure {
	padding: 0px 5px;
}
.siteStructure li {
	display:inline-block;
	font-size:12px;
}
.siteStructure li a {
	text-decoration:none;
	color:#023F73;
}
.siteStructure li a:after {
	content:"　>　";
	color:#CCCCCC;
}


/* mainImg　メインイメージ
------------------------------------------------------------------ */
#mainImg{
	padding: 0;
	text-align: center;
	max-width:100%;
	margin: 0 auto;
}


/* contentsWrap コンテンツラップ
------------------------------------------------------------------ */
.contentsWrap,
.siteStructure,
#header,
#footer,
.globalNavi{
	max-width: 1240px;
	margin-left: auto;
	margin-right: auto;
}
.contentsWrap{
	margin: 20px auto;
	/*min-height:800px;*/
}
/* 背景 */
.greeting{
	background:url(/anime/img/common/bg_greeting.jpg) 0 100px no-repeat;
	background-attachment: fixed;/*画面からの相対位置（背景固定）*/
 background-size: cover;/*背景サイズ*/
}
.news{
	background:url(/anime/img/common/bg_news.jpg) 0 100px no-repeat;
	background-attachment: fixed;/*画面からの相対位置（背景固定）*/
 background-size: cover;/*背景サイズ*/
}
.guide{
	background:url(/anime/img/common/bg_guide.jpg) 0 100px no-repeat;
	background-attachment: fixed;/*画面からの相対位置（背景固定）*/
 background-size: cover;/*背景サイズ*/
}


/* subNavi サブナビ
------------------------------------------------------------------ */
#subNavi {
	float:left;
	width:250px;
	margin: 0 25px 0 5px;
	background-color: #EFEFEF;
}
#subNavi ul li a{
	position: relative;
	display: block;
	padding: 8px 10px;
	background-color: #EFEFEF;
	border-bottom: 1px solid #fff;
	vertical-align: middle;
}
#subNavi ul li a:before{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 15px;
	margin: auto;
	content: "";
	vertical-align: middle;
}
#subNavi ul li a:before{
	width: 8px;
	height: 8px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

/* main メインコンテンツ
------------------------------------------------------------------ */
#mainContents {
	display:block;
	margin: 0 auto;
}


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



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

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

/* コピーライト */
footer small{
	display: block;
	text-align: center;
	margin: 15px auto 0;
  background: #ccc;
  padding: 10px 0 30px;
}

/* ページトップ */
.btnPageBtn {
	position: fixed;
	bottom: 10px;
	right: 10px;
	font-size: 77%;
}
.btnPageBtn img {
	width:80px;
}

/* page link */
/*.anchor {
  margin-top: -100px;
  padding-top: 100px;
}*/
.anchor::before {
    content: "";
    display: inline-block;
    height: 100px;
    margin-top: -100px;
    vertical-align: top;
}


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

    PC 汎用スタイル

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

/* 見出し
-----------------------------------------------------*/
.titleA{
	font-size: 3.0rem;
	color: #097605;
	border-left: 6px solid #097605;
	padding: 10px 20px;
	margin-bottom: 20px;
	line-height:65%;
	position:relative;
}
.titleA span {
	font-size:12px;
	line-height:0;
}
.titleA span:before {
	content:"\a";
	white-space:pre;
}
.titleA i {
	position:absolute;
	left: 200px;
	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: 2.4rem;
	color: #097605;
	border-bottom: 1px solid #097605;
	padding-bottom:6px;
	margin-bottom: 20px;
}
.titleC{
	font-size: 2.2rem;
	border-bottom: 1px solid #ccc;
	margin-bottom: 20px;
}
.titleD{
	font-size: 1.8rem;
	color: #097605;
	margin-bottom: 10px;
}
.titleE{
	font-size: 1.8rem;
	color: #EEA620;
	border-bottom: 1px solid #EEA620;
	margin-bottom: 20px;
}
.titleF{
	font-size: 1.7rem;
	border-bottom: 1px solid #ccc;
	margin-bottom: 20px;
}
.titleG{
	font-size: 1.8rem;
	font-weight: bold;
}
.titleH{
	font-weight: bold;
	margin-bottom: 10px;
}
.titleI{
	font-size: 2.8rem;
	margin-bottom: 40px;
	text-align:center;
}
.titleJ{
	text-align:center;
	font-size: 2.0rem;
	margin-bottom: 40px;
}
.titleK {
	font-weight: bold;
    margin: 0 0 10px 0;
   	font-size: 1.4rem;
	margin-bottom: 10px;
}
.titleL {
	font-weight: bold;
	margin-bottom: 10px;
	margin-left: 10px;
}

/* フォントサイズ
-----------------------------------------------------*/
.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;
}


/* ボタン
-----------------------------------------------------*/
/* 幅（PCの時のみ可変か固定か） ---------------------*/
.btnFlexible,
.btnFixed{
	display: inline-block;
	font-weight: bold;
	padding: 13px 20px 12px;
	margin: 20px;
	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;		
}
.btnFixed{
	width: 300px;
}
/* hover */
.btnFlexible:hover,
.btnFixed:hover{
	text-decoration: none;
}



/* 矢印の形状 ------------------------------*/
/* 右配置　右→ */
.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: 15px;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.arrowR:before{
	width: 26px;
	height: 26px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #fff;
}
.arrowR:after{
	right: 25px;
	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: 15px;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.arrowD:before{
	width: 26px;
	height: 26px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #fff;
}
.arrowD:after{
	top: -2px;
	right: 23px;
	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: 15px;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.arrowL:before{
	width: 26px;
	height: 26px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #527F6B;
}
.arrowL:after{
	left: 25px;
	width: 9px;
	height: 9px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}

/* 2列 */
.btnArea2{
	width: 600px;
	margin: 0 auto;
}
.btnArea2 .btnFixed{
	width: 250px;
}

/* ボタン位置下ぞろえ */
.borderA{
	position: relative;
	padding-bottom: 90px!important;
}
.btnPositionBtm{
	position: absolute;
	bottom: 0px;
	left: 0px;
	right: 0px;
	margin: auto;
}
.borderB {
	border:2px dashed #aaa;
	padding:20px;
}


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


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


/*  tel番タップ
-----------------------------------------------------*/
span[data-tel='tel'] {
	font-weight: bold;
	font-size: 3.2rem;
}


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


/*  キャプションを画像の幅に合わせる
-----------------------------------------------------*/
figure.imgFit{
	display: table; /* figure要素をtableとして扱う */
	min-width: 100px;
	margin: 0 auto;
}
figure.imgFit figcaption{
	display:table-caption;
	caption-side:bottom;
}
figure.imgFit .note{
	margin-top:5px;
}


/*  sampleNavi hover無効化
-----------------------------------------------------*/
.sampleNavi {
	display: -ms-flexbox;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
}
.sampleNavi li{
  -webkit-flex-grow: 1;
  flex-grow: 1;
}
.sampleNavi li a {
	display: -ms-flexbox;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;		
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;	
	
	padding: 15px 5px;
	background-color: #023F73;
	color: #fff;
	font-size: 0.8rem;
	text-decoration: none;
}

/*
 	hoverのスタイルは
 	touchdevice.css　に記載
---------------------------------*/


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

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

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

.ceo {
	width:40%;
	margin: 0 auto;
	text-align:center;
}
.ceo dl {
	margin: 0 0 30px 0;
}

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

.sectionInner {
	max-width: 960px;
	margin: 0 auto 30px;
	padding:30px 0;
}
.bgSection {
	background:#F9F9F9;
	max-width:100%;
}
.newsList li dl:before,
.newsList li dl:after {
	display: table;
	content: " ";
}

.newsList li dl:after,
.newsList li dl {
	clear: both;
}

.newsList li dl {

}
.newsList li dl dt {
	float:left;
	width:92px;
}
.newsList li dl dd {
	float:left;
	width:85%;
}

.newsDetail p {
	margin: 0 0 10px 0;
}
.newsDetail ul {
	margin: 20px 0 0 0;
}
.newsDetail ul li {
	margin: 0 0 10px 0;
}


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



.alert { 
	background:#FFFF66;
	text-align:left;
	padding:20px;
	color:#CC0033;
	font-weight:bold;
}
.alert p {
	max-width:960px;
	margin:0 auto;
}
.alert a {
	color:#CC0033;
	text-decoration:underline;
}
.alert a:hover {
	color:#CC0033;
	text-decoration:none;
}

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


.floorPlan {
	width:70%;
	margin:0 auto!important;
}


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

#mainContents  .txtArea{
  margin-top: 5px;
}
#mainContents dt,#mainContents dd{
  line-height: 1.3;
  font-size: 14px;
}
.padding0{
    padding-bottom: 0px!important;
}

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

/* covid-19　対応 */
.covid19 a{
	font-family:'ＭＳ Ｐ明朝', '細明朝体', 'ヒラギノ明朝 Pro W3';
	color:#FF0000;
	font-weight:bold;
	text-decoration:underline;
}
.covid19 a:hover{
	text-decoration:none;
}
.is-animation {
	height:60px;
}
.globalNavi li a {
	padding:10px 15px;
}
.globalNavi li ul.snsLink li {
	padding:0;
}
/* //　covid-19　対応 */

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

footer{
	width: 100%;
	color: #fff;
	text-align: center;	
	position: absolute;
	bottom: 0;
}

@media screen and (min-width: 970px) {
	.is-animation .globalNavi li a,
	.globalNavi li a {
		padding:5px 10px;
	}
	.globalNavi li ul.snsLink li a{
		padding:5px;
	}
}
@media screen and (max-width: 969px) {
	.is-animation .globalNavi li a,
	.globalNavi li a {
		padding:5px;
	}
}

.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;
}

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

.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:18px;
}
.newNews .newsDetail {
	font-size:16px;
}
.newNews .decoFontA {
	font-size:18px;
	font-weight:bold;
}
.newNews #mainContents .newsContentsList li h3 {
	font-size: 20px;
	font-weight: bold;
	margin: 0 0 15px 0;
	line-height:1.8;
}
.newNews #mainContents .newsContentsList li dl {
	margin-bottom:30px;
}
.newNews #mainContents .newsContentsList li p {
	font-size: 16px;
	line-height:1.8;
	margin: 0 0 10px 1em!important;
}
.newNews #mainContents .newsContentsList li dl dt {
	font-size: 18px;
	font-weight: bold;
	line-height:1.8;
	margin: 0 0 10px 1em!important;
	float: none;
	width:auto;
}
.newNews #mainContents .newsContentsList li dl dd {
	margin-left: 2.6em!important;
	font-size: 16px;
	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: 20px;
}
#mainContents dl.photoAreaEn dt,
#mainContents dl.photoAreaEn dd {
	font-size: 16px;
	line-height: 2;
}

/* トップページ オンラインショップバナー*/
figure.sideBannerImg{
	text-align: left;
    width: 100%;
}
figure.sideBannerImg a[target="_blank"]:after {
	display: none;
}
