@charset "utf-8";

.noto-serif jp-regular {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  font-style: normal;
}

/* サイト全体
----------------------------------------------- */
body{
text-align:center;
margin:0;
padding:0;
font-size:0.8em;
line-height:1.5;
color: #000000;
background-color: #dadada;
font-family:"ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3",sans-serif;
}

#body{
text-align:left;
margin:0 auto;
width:800px;
background-color: #FFFFFF;
padding:0;
background-image:url(../images/back_side.gif);
background-position:left;
background-repeat:repeat-y;
position: relative;
}
#body:after{content: "."; display: block; height: 0; clear: both; visibility: hidden;}

h1,h2,h3,h4,h5,p,dl,dd,ul,ol{margin:0px; padding:0px;}
img ,object{margin: 0;padding:0;}
img{ border:0;}
ul, ol{}
table{font-size:1em;line-height:1.5em; margin:0; padding:0;}list-style-position: outside; margin-left: 20px;}
li,img{vertical-align: bottom;}

h1{font-size:1.4em;}
h2{font-size:1.1em;}
h3{font-size:1.2em;margin-bottom:10px;}
h4{font-size:1em;}

a:link{text-decoration:none;color: #3399CC;}
a:visited{color: #3366CC;text-decoration:none}
a:hover{color: #FF9900;text-decoration:none;}
a:active{color: #3399FF;text-decoration:none;}



/* 
----------------------------------------------- */

/*共通
-------------------------------------------------*/
div#left_side{
float:left;
width:130px;
margin-top:51px;
background-color:#7b6289;
}
div#left_side ul{
list-style-type:none;
/*margin:0;*/
margin:0 0 5px;
}
#left_side .border_top{
  border-top:1px solid #fff;
  margin-top:3px;
  padding-top:3px;
}
div#left_side .side_wifi{
color:#fff;
margin:10px 5px;
}
div#right_side{
float:right;
width:670px;
margin-top:51px;
}
div#content{
margin:0 34px;
clear:both;
}
div#content h2{
  margin-top:15px;
}
div#body div#topnavi{
width:800px;
position:absolute;
top:0;
left:0;
clear:both;
}
div#topnavi ul{
list-style-type:none;
margin:0;
}
div#topnavi p,div#topnavi li{
float:left;
}
#view{text-align:center;
margin:5px 0;
}
#eco{text-align:center;}
#eco img{margin-top:3px;}
div#maincontent{margin-left:25px;}
div#maincontent:after{content: "."; display: block; height: 0; clear: both; visibility: hidden;}
.cb{clear:both;}
.fb{font-weight:bold;}
.color-red{color:#DF191C;}
.alignC{text-align:center;}
.alignL{text-align:left;}
.alignR{text-align:right;}
.txt_r{float:right;}
.txt_l{float:left;}
div.ph_l{float:left;}
div.ph_r{float:right;}
.yutori {line-height:2;}
form{margin:0;}
/*IE*/
* html div#body{height:1px;}

div#addbox{
width:250px;
padding:5px;
}
.mb_2{
margin-bottom: 2em;
}

/*index.html
-------------------------------------------------*/

#engi{margin-bottom:40px;}

div#content div.t_menu{
  width:190px;
  float:left;
  margin-right:16px;
  margin-bottom:10px;
}
div#content div.t_menu.last{
  margin-right:0;
}
h2.hasu,
div#content div.t_menu h2{
background-image:url(../images/bk_h2.gif);
background-repeat:no-repeat;
background-position:0 2px;
padding:10px 0 25px 36px;
margin:15px 0 0 -11px;
}

div#content div.t_menu p {
  line-height:1.7;
  margin-bottom:1em;
}
div#content div.t_menu a:hover img{
opacity:0.8;
filter:alpha(opacity=80);
-ms-filter: "alpha( opacity=80 )";
}
div.campaign{
  margin-top:20px;
  background:url(../images/top/bg_campaign.jpg) repeat-x #faeefa;
  min-height:175px;
}
div.campaign .campaign_th{
  float:right;
  margin-bottom:0;
}
div.campaign h2{
  padding:19px 0 0 46px;
  margin-bottom:1em;
}
div.campaign p{
  padding-left: 17px;
  line-height:1.7;
  margin-bottom:1em;
}

/*div#season_box {
  display:block;
  height:110px;
  background:url(../photo.jpg) bottom right no-repeat;
  border-top:1px dotted #909090;
}
div#season_box p{
  padding-top:1em;
  line-height:1.7;
}   */


/* ご案内
----------------------------------------------- */
.annai .txt_r{width:350px;}
#course{padding-top:20px;}
#course dl{margin-bottom:20px;}
#course dt{
padding:5px;
background-color:#ffcccc;
font-weight:bold;
font-size:1.2em;
}
#course dd{
margin-left:1em;
margin-bottom:1em;
}
#add dd{margin:-1.5em 0 0 5em;}
#add_title{
font-weight:bold;
font-size:1.2em;
}


/* 精進料理
----------------------------------------------- */
.syojin h4{
  font-size:1.2em;
  padding-bottom: 5px;
}
.syojin .menu {
margin: 30px 0px 10px 0px;
}
.syojin .ph {
float: left;
width: 300px;
}
.syojin .txt {
float: right;
width: 260px;
}
#yoyaku{
  font-size: 108%;
  margin: 0em 0px 10px 3em;
}
.syojin #rooms {
background-image: url(../images/syojin/bgdot.gif);
background-repeat: repeat-x;
background-position: top left;
padding-top: 10px;
margin-bottom: 20px;
}
.syojin #rooms #own {
padding-top: 10px;
width: 500px;
margin: 0px auto 20px auto;
font-size: 1.2em;
font-weight: bold;
line-height: 2em;
}
.syojin #rooms .room_box {
margin-bottom:20px;

}

.syojin #rooms .room_box img.room_ph {
float: left;
margin: 0 20px 0 0;}

.planbox{
width:500px;
border:solid 1px #CCC;
margin-bottom:20px;
}
.plan_bg{
font-weight:bold;
padding:5px;
background-color:#c1c1ff;
}
.plan_sp{padding:0 5px;}

.syjn_cancel{
margin:1em 0;
}
.syojin_bnr{
  margin:1em auto;
}
.syojin td {
  vertical-align: top;
}
.syojin_nomimono dd{margin:-1.5em 0 0 2.1em;}
.syojin_nomimono dt{margin:0;}

.syojin_mochikomi dd{margin:-1.5em 0 0 8.5em;}
.syojin_mochikomi dt{margin:0;}


/* ご宿泊
----------------------------------------------- */
.syukuhaku .txt_l{width:310px;}
.syukuhaku .txt_r{width:310px;}
.syukuhaku .txt_l,.syukuhaku .txt_r,.syukuhaku .ph_l,.syukuhaku .ph_r{margin-bottom:20px;}
.syukuhaku .ph_l{text-align:center;}
.syukuhaku ul{list-style-type:none;}
.syukuhaku li{
float:left;
margin:0 10px 40px;
}
.syukuhaku .txt_r p {
margin:1em 0;
}
.syukuhaku .txt_l ul{
width:110px;
float:left;
list-style-type:disc;
margin-left: 20px;
display:inline;
/*margin-left: 5px;
width:130px;
*/}
.syukuhaku .txt_r ul{
width:125px;
float:left;
list-style-type:disc;
margin-left: 20px;
display:inline;
/*margin-left: 5px;
width:145px;
*/}
.syukuhaku .txt_r ul li,
.syukuhaku .txt_l ul li{
float:none;
margin:0;
vertical-align:baseline;
}
.syukuhaku .planbox{
width:auto;
padding:5px;
border:none;
background-color:#EEE;
}
.syukuhaku .planbox dl{}
.syukuhaku .planbox dd{margin:-1.5em 0 0 4em;}
div#ryokin{
padding:5px;
background-color:#ffffcc;
/zoom:1;
}
div#ryokin h4{font-size:1.2em;}
div#ryokin table{
width:100%;
background-color:#FFF;
margin:10px 0;
}
div#ryokin table,div#ryokin td,div#ryokin th{
border-collapse:collapse;
border:solid 1px #CCC;
padding:5px;
}
div#ryokin th{text-align:center;}
div#ryokin td{
    text-align:center;
    font-weight:bold;
}
#ryokin .alignL{text-align:left;}
#ryokin .blank-cell{
    background-image: linear-gradient(to right top, transparent calc(50% - 0.5px), #ccc 50%, #ccc calc(50% + 0.5px), transparent calc(50% + 1px));
}


div.kushitsu_btn{
display:table;
margin:10px auto 1em;
text-align:center;
/*margin-top:20px;
float:right;*/
}
div.kushitsu_btn p{
margin:0;
padding:0 1em 0 0;
}
div.kushitsu_btn img{
margin:0 5px;
}
div.kushitsu_btn a:hover img{
opacity:0.8;
filter:alpha(opacity=80);
-ms-filter: "alpha( opacity=80 )";
}

.shukuhaku_yoyaku{margin:-2.4em 0 5px 7em;}

/* 還暦まいり
----------------------------------------------- */
.kanreki h4{margin-bottom:10px;}
.kanreki .txt_l{width:250px;}
.kanreki .txt_r{width:350px;}
.kanreki .ph_r img,.kanreki .ph_l img{border:solid 1px #666;}
.kanreki .txt_l,.kanreki .txt_r,.kanreki .ph_l,.kanreki .ph_r{margin-bottom:20px;}

/* 写経
----------------------------------------------- */
.syakyo .txt_l{width:300px;}
.syakyo .txt_r{width:300px;}
.syakyo .txt_l,.syakyo .txt_r,.syakyo .ph_l,.syakyo .ph_r{margin-bottom:20px;}
#sinsin{margin:-2.4em 0 5px 14em;}
.syakyo dd{margin:-1.5em 0px 5px 5em;}
.setbox01{float:left;}
.setbox02{float:right;}

/* ご回向
----------------------------------------------- */
.eko h3{margin:0;}
.eko h4{
  margin-top:10px;
  text-indent: -19px;
  margin-left: 19px;
}
.eko ul{list-style-type:none;}
.eko ol{list-style-position:inside;padding:0;}
.eko dd{margin:-1.5em 0 5px 5.5em;}
.eko ul,.eko dl,.eko ol{margin:10px;}
.eko_contact li{
background-color:#ffcccc;
padding:2px 2px 2px 10px;
margin-bottom:2px;
vertical-align:baseline;
}

/* ご祈願
----------------------------------------------- */
.kigan h3{margin:0;}
.kigan h4{margin-top:20px;}
.kigan ol{list-style-position:inside;padding:0;}
.kigan dd{margin:-1.5em 0 5px 5.5em;}
.kigan ul,.kigan dl,.kigan ol{margin:10px;}
.kigan ul{margin-left:20px;}
.kigan_contact li{
background-color:#ffcccc;
padding:2px 2px 2px 10px;
margin-bottom:2px;
vertical-align:baseline;
}

/* お祝事プラン
----------------------------------------------- */

.iwaigoto div.ph_r{
  margin-left:10px;
  margin-bottom:20px;
}

.iwaigoto div.ph_r p,
.iwaigoto div.ph_l p{
  text-align:center;
  margin-bottom:5px;
}

/* ご朱印
----------------------------------------------- */

.goshuin div.ph_r{
  margin-left:10px;
  margin-bottom:20px;
}

.goshuin div.ph_r p,
.goshuin div.ph_l p{
  text-align:center;
  margin-bottom:5px;
}
.goshuin_headline {
    text-align: center;
}
.goshuin_headline h2{
    margin-top:0;
    margin-bottom:10px;
    font-size: 3em;
    line-height:1;
}
.goshuin_headline p{
    margin-top:0;
    margin-bottom:30px;
    font-size: 1.3em;
    line-height:1;
}
.goshuin img{
    box-shadow: 0 10px 25px 0 rgba(0, 0, 0, .5);
}
.goshuin h3{
   padding-top: 1em;
   font-size: 1.5em;
}
.goshuin p{
    font-size: 1.5em;
}


/* ご法事プラン
----------------------------------------------- */

.houji div.ph_r{
  margin-left:10px;
  margin-bottom:20px;
}
.houji p{
  margin-bottom:1em;
}
.houji table{
  border-collapse: collapse;
  margin:10px 0 20px;
  border-top:#C1C1FF 1px solid;
  border-left:#C1C1FF 1px solid;
}
.houji table th,
.houji table td {
  border-right:#C1C1FF 1px solid;
  border-bottom:#C1C1FF 1px solid;
  padding:4px 6px;
  vertical-align:top;
}
.houji table th {
  text-align:left;
  font-weight:normal;
  background:#e7e7ff;
}
.houji table td{
  width:85%;
  
}
.houji table tr td.center {
  text-align:center;}



/* 仏前結婚式プラン
----------------------------------------------- */
.marriage p,
.marriage  h4 {
  margin-bottom:0.5em;
}

.marriage .marriage_box{
  margin:20px 0;
}
.marriage .marriage_box img {
  float:right;
  margin-left:20px;
}


/* 申し込み
----------------------------------------------- */
div.mosikomi_box{
margin-top:10px;
text-align:center;
}
#main_tb{
width:550px;
margin:20px auto 0;
}
#main_tb th{white-space:nowrap;}
#main_tb td,#main_tb th{
padding:10px 5px;
border-bottom:dotted 1px #CCC;
}
#main_tb textarea{
width:300px;
height:150px;
/*font-size:0.9em;*/
}
.mosikomi ol{
width:300px;
margin:10px auto;
list-style-position:inside;
}
.mosikomi li{
background-color:#ffcccc;
padding:2px 2px 2px 10px;
margin-bottom:2px;
vertical-align:baseline;
}

/* 地図
----------------------------------------------- */
.map h4{margin-top:20px;}
.map h5{
margin-top:20px;
font-size:1em;
border-bottom:solid 5px #9999cc;
}
.map p{text-align:center;}
.map ul{list-style-type:none;}
.map ol{list-style-position:inside;padding:0;}
.map .longtype dd{margin:-1.5em 0 5px 7em;}
.map .shorttype dd{margin:-1.5em 0 5px 5em;}
.map ul,.map dl,.map ol{margin:10px;}

/* リンク
----------------------------------------------- */
.link h3{margin-bottom:0;}
.link ul{
list-style-type:none;
margin-left:10px;
margin-bottom:10px;
}
.link li{
margin-bottom:5px;
border-bottom:dotted 1px #CCC;
}
div.linkbox_l{float:left;}
div.linkbox_r{
float:right;
padding-right:100px;
}
div.linkbox_l,div.linkbox_r{
margin-bottom:0;
}

/* 善光寺縁起について
----------------------------------------------- */
.engi .txt_l,.engi .txt_r{width:270px;}
div.engibox{
/*margin:20px 0;*/
padding:20px 0;
clear:both;
border-bottom:dotted 1px #CCC;
}
div.engibox:after{content: "."; display: block; height: 0; clear: both; visibility: hidden;}
/*IE*/
* html div.engibox{height:1px;}
/*IE7*/
*:first-child+html div.engibox{overflow:auto;}


/* 善光寺縁起について & 絵ときシアター
----------------------------------------------- */

.engi a, .etoki a {
  width:300px;
  background-color: #7F668C;
  font-weight: bold;
  color: #FFF;
  line-height: 30px;
  padding-top: 5px;
  padding-right: 20px;
  padding-bottom: 5px;
  padding-left: 20px;
}
.engi a:hover, .etoki a:hover {
  background-color: #C93;
  font-weight: bold;
  color: #FFF;
  text-align: center;
}



/* 団体参拝
----------------------------------------------- */
#dantaimap{text-align:center;}
.dantai dl{
width:400px;
margin:0 auto;
}
.dantai dd{margin:-2.3em 0 1.5em 95px;}
.dantai p{
margin-bottom:1em;
}

/* 善光寺前立本尊御開帳 参拝プラン
----------------------------------------------- */
.gokaicho p{
  margin-bottom:1em;
}
.gokaicho .ph_l{
width: 300px;
}
.gokaicho .txt_r{
width: 270px;
}
.gokaicho h3#kikan {
font-size:1.2em;
padding: 30px 0px 10px 0px;
}
.gokaicho ul{
  list-style:circle;
  margin-left:1em;
}
.gokaicho li{
  margin-bottom:0.4em;
}

/* 駐車場のご案内
----------------------------------------------- */
.parking h3 {
margin: 0px;
padding: 0px;
}
.parking p {
margin: 0px 0px 2em 1.5em;
}
.parking #park_l {
width: 365px;
float: left;
}
.parking #park_r {
width: 176px;
float: right;
}
div#map{
width:575px;
height:1350px;
margin-top:20px;
}

/* 同窓会プラン
----------------------------------------------- */
.dousoukai h3{
  margin-top:20px;
}
.dousoukai h4{
  background:#FAE9FA;
  padding:3px 5px;
  margin-bottom:0.5em;
}
.dousoukai_stay dt{
    color:#7b6289;
  font-weight:bold;
  width:70px;
}
.dousoukai_stay dd{
  margin:-1.5em 0 1em 70px;
}
.dousoukai_box{
  border:1px solid #7b6289;
  padding:0 20px 20px;
  margin:30px 0;
}

/* 信州ワインと精進料理
----------------------------------------------- */
.wine h4{
  font-size:1.2em;
  padding-bottom: 5px;
}
.wine_ph01{
  text-align:center;
  margin-bottom:20px;
}
.wine p{
  margin-bottom:1em;
}
.wine_cont{
  margin-bottom:30px;
}
.wine .ph_r{
  float:right;
  margin:0 0 10px 10px;
}
.wine_text{
  width:360px;
  float:left;
  margin-top:20px;
}
.wine_link{
  margin-top:1em;
  border-top:1px dotted #999;
  padding-top:1em;
}

.wine dd{margin:-1.5em 0px 0px 8.5em;}
.wine dt{margin:0 0px 0px 0.8em;}

/* vegetarian
----------------------------------------------- */
#vegetarian #wrapper {
  width: 800px;
  margin-right: auto;
  margin-left: auto;
  background-color: #FFF;
  padding: 10px;
}
#vegetarian h1 {
  color: #639;
  font-size: 24px;
}
#vegetarian th, #vegetarian td {
  padding: 15px;
  vertical-align: top;
  border-bottom-width: 1px;
  border-bottom-style: dashed;
  border-bottom-color: #66C;
  text-align: left;
}
#vegetarian ol {
  margin: 0px;
  padding-top: 0px;
  padding-right: 0px;
  padding-bottom: 0px;
  padding-left: 16px;
}
#vegetarian li {
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 5px;
  margin-left: 0px;
}




/* footer
----------------------------------------------- */
#footer{
margin:15px 0;
padding-right:10px;
border-top:solid 1px #CCC;
background:url(../images/bk_footer.gif) repeat-x;
padding:12px 34px 0;
line-height:1.3;
clear:both;
}
#footer p img{
margin-bottom:10px;
}
#footer div#foot_l {
float:left;
width:340px;
}
#footer div#foot_l h3{
  margin:4px 0 10px;
  font-weight:bold;
  font-size:1.2em;
}
#footer div#foot_l p{
font-size:95%;
color:#666;
}
#footer p#foot_r{
border-left:1px solid #CCC;
padding-left:13px;
float:right;
width:247px;}
#copyright {
  text-align:right;
  margin-top:20px;
  font-size:0.85em;
}

/* clearfix
----------------------------------------------- */
.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}
.clearfix {
  min-height: 1px;
}
* html .clearfix {
  height: 1px;
  /*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
}

/* 印刷用
----------------------------------------------- */
@media print{
div#topnavi,div#left_side{display:none;}
div#right_side{
width:700px;
float:none;
}
body{background-color: #FFF;}
#body{background-image:none;}
}

/*************************
**                      **
**    2020/03/03追加    **
**                      **
**************************/
/* 料金設定
----------------------------------------------- */
.vertical {
  writing-mode: vertical-rl;
}

.red_frame {
  content: "";
  display: inline-block;
  position: relative;
  transform: translateY(.25em);
  margin-right: .5em;
  width: 25px;
  height: 1em;
  border: 2px solid red;
}

#ryokin .ryokin_table.sp_display {
  display: none;
}

#ryokin .ryokin_setting {
  margin-bottom: 30px;
}

#ryokin .ryokin_setting .ryokin_table.pc_display th {
  padding: .5em .75em;
  border: 1px solid #ccc;
}

.ryokin_setting .ryokin_table.pc_display .ryokin_table_about .ryokin_season ,
.ryokin_setting .ryokin_table.pc_display .ryokin_table_about .ryokin_kaiseki ,
.ryokin_setting .ryokin_table.pc_display .ryokin_table_about .ryokin_kaiseki_special {
  width: 100px;
}

.ryokin_setting .ryokin_table.pc_display .ryokin_table_item .ryokin_seasonality {
  width: 55px;
  letter-spacing: .25em;
}

.ryokin_setting .ryokin_table .ryokin_table_item .ryokin_planA {
  background-color: #ebb;
}

.ryokin_setting .ryokin_table .ryokin_table_item .ryokin_planB {
  background-color: #aae;
}

.ryokin_setting .ryokin_table .ryokin_table_item .ryokin_planC {
  background-color: #9e9;
}

.ryokin_setting .ryokin_table .ryokin_table_item .ryokin_planD {
  background-color: #ee9;
}

#ryokin .ryokin_setting .plan_description table tr:not(:first-child) th {
  text-align: left;
}

#ryokin .ryokin_setting .ryokin_setting_title {
  font-size: 15px;
  font-weight: bold;
}

/* コロナ対策
----------------------------------------------- */

.corona_note {
  margin: 0px 3em 0em 1.5em;

}
.corona_img {
    margin-left: 1.5em;
}

