/* tawaradai_bus内の共通cssを読み込む */
@import url("/tawaradai_bus/inc/style.css");　
/* tawaradai_bus内の共通cssを読み込むここまで */

/*wp読み込み部分のcss*/

/*お知らせ*/

.news-list{
  list-style: none outside;
  margin: 0;
  padding: 0; 
overflow:auto;
overflow-y:scroll;
	height: 100px;
}
.news-list .item{
  display: flex;
  flex-wrap: wrap;
  flex-wrap: nowrap;
  text-decoration: none;
  color: #333;
  border-bottom: 1px solid #CCC;
  padding: 20px 20px;
}
.news-list .item:first-child{
  border-top: 1px solid #CCC;
}
.news-list .item .date{
  margin: 0;
  min-width: 120px;
  font-size: 16px;
  color: #333;
  padding: 0 20px 0 0;
}
.news-list .item .title{
  margin: 0 20px 0 0;
  /*width: 100%;*/
}

@media screen and (max-width: 767px){
.news-list .item{
  flex-wrap: wrap;
	font-size: 12px;
}
.news-list .item .date{
  min-width: 100px;
}
.news-list .item .title{
  margin-top: 10px;
}
}

/*newマーク*/
em.newicon{
	background: #F789C6;
	color: #fff;
	font-size: 10px;
	padding: 3px;
	margin: 2px;
	border-radius: 2px;
	font-style: normal;
}
/*　/お知らせ*/

.sakuraenprice em{/*更新日非表示*/
	display: none;
}


/*毎月*/
table.mon{width: 100%;}
table.mon tr :nth-child(1),
table.mon tr :nth-child(2),
table.mon tr :nth-child(3),
table.mon tr :nth-child(4){
	font-size: 90%;/*1～4列*/
}
table.mon tr :nth-child(1) small{
	display: block;
	font-size: 80%;
}
table.mon tr :nth-child(5) {
	width: 40%;/*５列目のみ*/
}
table.mon tr :nth-child(5) strong {
	font-size: 100%;
	color: #666;
	border: 1px solid #ccc;
	padding: 2px;
}
table.mon tr:last-child td{/*最終行*/
	text-align: center;
}
/*毎月*/

.sakuraenprice table tr:first-child td,
.sakuraenprice table tr:first-child th{
	text-align: center!important;
	font-weight: bold;

}
/*1行目だけのスタイル、なぜかthにしないと効かない*/

.sakuraenprice table tr:nth-child(2n+1){
	background: rgba(243,243,243,0.5)
	
}
.sakuraenprice table td:nth-child(5) {
	text-align: left;
}
.sakuraenprice table td:nth-child(5) strong {
	display:inline-block;
	margin: 8px 0px 2px auto;
}

.sakuraenprice table small{
	display: block;
}

.sakuraenprice h5{
	text-align: right;
	margin: 10px;
}

.sakuraenprice ul.pac strong{
	display: block;
}

.sakuraenprice ul.pac li{
	margin: 10px
}
.sakuraenprice ul.pac{
	margin-bottom: 30px;
}

/*wp読み込み部分のcssここまで*/

body {
	font-family: "Kosugi Maru", sans-serif;
  font-weight: 400;
  font-style: normal;
	/*color:#828282;*/
	background-color:#fff;
	margin:0;
	padding:0;
	overflow-x:hidden;
	-webkit-font-smoothing:antialiased
}
#main{
	margin: auto 10px;
}
ul {
	margin:0;
	padding:0;
	list-style:none
}
h1 {
	font-size:60px
}
h2 {
	/*color:#F90;*/
	font-weight:300;
	margin:30px auto;
}
h3, h4, h5 {
	color:#333c4d;
	font-weight:400;
	margin-bottom:20px
}
p {
	font-family: "Kosugi Maru", sans-serif;
  font-weight: 400;
  font-style: normal;
	line-height:23px;
	/*color:#828282;*/
	padding-bottom:15px
}
@font-face {
font-family: "Kosugi Maru", sans-serif;
  font-weight: 400;
  font-style: normal;
}
ul li {
	font-family: "Kosugi Maru", sans-serif;
  font-weight: 400;
  font-style: normal;
	line-height:27px;
	list-style-type:none;
	/*color:#828282*/
}
a {
	/*color:#828282*/
}
a:hover {
	color:#0785f2
}
a h4:hover {
	text-decoration:underline
}
img {
	max-width:100%;
	height:auto
}
.branding img#logo {
	/*max-width:initial;
	margin-left:-25px*/
}
.clear {
	clear:both
}
.container {
	/*padding-right:15px;
	padding-left:15px;*/
	margin-right:auto;
	margin-left:auto
}
.caption {
	text-align:center;
	margin-bottom:70px
}
.btn-cta-primary {
	color:#fff!important;
	padding:15px 30px!important;
	border-radius:0;
	font-size:12px;
	letter-spacing:2px;
transition:all .2s ease-in-out;
	position:relative;
	margin-top:25px;
	text-transform:uppercase;
	font-weight:500
}
.btn-cta-blue {
	background-color:#0785f2
}
.btn-cta-blue:hover {
	background-color:#fff;
	color:#0785f2!important
}

.flexlayout{
	display: flex;
	margin-left: auto;
	margin-right: auto;
	justify-content: center;
}
.flexlayout img{
	width: 300px;
	height: auto;
}

/*アンカーずれ*/
hr{
padding-top: 60px;
margin-top: -60px;
height: 60px;
	border: none;
}
a.more {
transition:all .2s ease-in-out;
	font-size:14px!important;
	margin-top:10px;
	font-weight:400
}
a.more:hover * {
	color:#0785f2;
	padding-left:10px
}
a.more i.fa {
	font-size:15px!important;
	font-weight:700;
	border:none;
	cursor:pointer;
	margin-right:5px;
transition:all .2s ease-in-out
}
a.more i.fa:hover {
	color:#009be3
}
#top-nav {
transition:all .2s linear 0s
}
.navbar-fixed-top {
	background-color:transparent;
	border:none
}
a.jump_point {height: 1px;
display: block;
padding-top: 40px;
margin-top: -40px;
}
.navbar-fixed-top li a {
	color:#fff;
	font-size:14px;
	font-weight:400;
transition:color .3s, border .3s
}
.navbar-fixed-top .navbar-nav .activenav a {
	color:#fff;
	border-bottom:1px solid #fff
}
.navbar-nav>li>a {
	border-bottom:1px solid transparent;
transition:color .3s, border .3s
}
.navbar-fixed-top .navbar-nav>li>a:hover {
	border-bottom:1px solid #fff
}
.fixed-header {
	background:rgba(255,255,255,0.8)!important;
	box-shadow:0 6px 4px -4px rgba(0, 0, 0, .1)
}
.fixed-header .navbar-nav>li>a {
	color:#828282;
	opacity:1
}
.fixed-header .navbar-nav .activenav a {
	color:#222!important;
	border-bottom:1px solid #0785f2
}
.fixed-header .navbar-nav .activenav a:hover {
	border-bottom:1px solid #0785f2
}
.fixed-header .navbar-nav>li>a:hover {
	border-bottom:1px solid #111
}
#top-nav.navbar-scroll-changed {
	background:0 0;
	margin:0 auto;
	border:0;
	padding-top:15px;
	padding-bottom:15px
}
.hero-overlay {
	background:rgba(0, 0, 0, .4);
	height:300px;
	top:0;
	left:0;
	bottom:0;
	right:0
}

.hero-image #home {
	background:url(../images/home-hero-2.jpg) center no-repeat;
	position:relative;
	width:100%;
	background-size:cover;
	overflow:hidden
}

/*ヘッダー内*/
.main-message h1 ul{
	list-style: none;
	font-size: 1.5rem;
	color: #fff!important;
	text-align: right;
	margin-top: 200px;
	z-index: 1000;
}

/* 下から */
.fadeUp{
animation-name:fadeUpAnime;
animation-duration:1.0s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}
/* /下から */

.main-message .container h1 span{
	display: block;
}
.main-message .container h1 span#s-name{
font-size:20%;
color: #fff;
}
.main-message .container h1 span{
font-size:30%;
color:#ffd700;
margin-top: 10px;
}


/* 480px以下に適用されるCSS（スマホ用） */
@media screen and (max-width: 480px) {
.main-message h1 ul{
	list-style: none;
	display: flex;
		right: 0;
		top:0;
	position: fixed;
}
.branding img#logo{
		margin-left: 80px;
		margin-right: auto;
	width: 150px;
	height: auto;
	}
	.hero-image {
  margin-bottom: 0;
}
h3, .h3 {
  font-size: 20px;
}
.title h2,h2 {
	font-size: 1.8rem;
	margin: 30px auto 10px auto;
	text-align: center;
	}
.hero-overlay {
height:160px
}
.navbar-fixed-top {
background:rgba(255,255,255,0.6)!important;
box-shadow:0 6px 4px -4px rgba(0, 0, 0, .1)
}
.navbar-default .navbar-nav>li>a {
/*color:#828282;*/
opacity:1;
line-height:20px!important;
margin-left:0!important
}
.navbar-fixed-top .navbar-toggle .icon-bar {
 background-color:#ff99cc!important;
 row-gap: 0.5rem;
	box-shadow: 2px 2px 4px gray;
}
.navbar-fixed-top .navbar-nav .activenav a {
color:#222;
border-bottom:3px solid #fff;
}
	span.br{
	display: block;
	margin: 5px;
}
}
/* /480px以下に適用されるCSS（スマホ用）ここまで */

h2,
.title h2,
main h2,
.sakuraenprice h2{
	border-radius: 100vh;
	border: 3px solid #ffb6c1; 
	color: #333;
	padding: 20px;
	margin: 30px 8px 20px 4px;
	text-align: center;
}
body.sakuraen .title h2 {
border: 3px solid #ffb6c1 ; 
}
body.tawaraen .title h2 {
border: 3px solid #32cd32 ; 
}

.flexbox{
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}


@media (min-width:1024px) {
.hero-overlay {
/*height:750px*/
height:250px
}
}

p.copyright {
float:none!important;
margin-left:0!important
}


 
/* Google Mapを囲う要素 */
.map {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 75%; /* 比率を4:3に固定 */
}
 
/* Google Mapのiframe */
.map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*テーブル*/
table{
	width: 100%!important;
	table-layout: fixed;/*幅均等*/
	margin: 10px 0;
	overflow-x: scroll;/*横スクロール*/
    -webkit-overflow-scrolling: touch;/*横スクロール*/
}

th,td{
	border: 1px solid #ccc;
	padding: 6px;
	text-align: center;
}
th{
	text-align: center;
	background: #f5f5f5;
}

th.shien {
  background-color:rgba(112,128,144,0.5)  ;
  font-weight: normal;
}

table.one tr td:nth-of-type(5),
.jihi table tr td:nth-of-type(2){text-align: left;}

/* 「土」の文字色 */
th.sat {
  color: #3db2da;
}

/* 「日」の文字色 */
th.sun {
  color: #e66a6a;
}

/*dl.list_table*/
.list_table,
.list_table > dt,
.list_table > dd {
    box-sizing: border-box;
}

.list_table > dt,
.list_table > dd {
    padding: 1em;
    margin: 0px;
}

.list_table > dt {
    background-color: #778899 ;
    color: #fff;
}

.list_table > dd {
    background-color: #fff;
}

@media screen and (max-width: 767px) {
    .list_table > dd {
        border: 1px solid #ddd;
        border-top: none;
    }
    .list_table > dt,
    .list_table > dd {
        text-align: center;
    }
    .list_table > dd > ul {
        text-align: left;
    }
}
@media print, (min-width: 768px) {
    .list_table {
        display: flex;
        flex-wrap: wrap;
        border-bottom: 1px solid #ddd;
    }
    .list_table > dt,
    .list_table > dd {
        display: flex;
        flex-direction: column;
        justify-content: center;
        border-top: 1px solid #ddd;
    }
    .list_table > dt {
        width: 20%;
    }
    .list_table > dd {
        width: 80%;
        border-right: 1px solid #ddd;
    }
}



/*テーブルここまで*/

/*_blank*/
a[target="_blank"]::after {
   font-family: "Material Icons";
  content: "\e89e";
}

h3.noman{
	text-align: center;
	margin: 20px;
}
h3.noman span{
	background:linear-gradient(transparent 60%, #ff6 60%);/*マーカー*/
	display: inline-block;
}

/*順番*/
.flow ol{
	list-style: none;
	font-weight:bold;
}

body.tawara .flow ol li span{
 	background: rgba(0,136,85,0.8);
}
body.sakuraen .flow ol li span{
 	background: #ff69b4;
}

.flow ol li span{
	font-weight: bold;
	border-radius: 50%;
	color: #fff;
	padding: 4px;
	margin-right: 3px;
}
.flow ol li p{
	margin: 10px;
	padding: 10px;
	font-weight: normal;
}

/*.gallery*/
.gallery{
display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

.fullscreen-image {
   cursor: url("../gallery/img/plus_cursor.png"), pointer; /* マウスポインタを指定 */
   display: inline-block;   /* 横方向に並べる指定 */
   margin: 0px 5px 5px 0px; /* 周囲の余白量(右と下に5pxずつ) */
}
figcaption h2{
	border: inherit!important;
	border: none!important;
	color: #f5f5f5;
}
figcaption{
	background: rgba(0,0,0,0.5);
	color: #333;
	width: 100%;
}
.fullscreen-image h4[data-sub]:after{
	content:attr(data-sub);
text-align: center;
	margin: 5px;
font-size: 14px;
display: block;}
	
@media screen and (max-width: 480px) {

.fullscreen-image{
	pointer-events: none;/*リンク無効*/
}
.gallery li{
		width : 100%;
		display: block;
}
}

/*チェック*/
ol.check {
  list-style-type: none;
}
ol.check li {
  position: relative;
  line-height: 1.8;
}
ol.check li::after {
  content: '';
  display: block;
  position: absolute;
  top: .5em;
  left: -1.5em;
  width: 10px;
  height: 5px;
  border-left: 3px solid #9c9c9c;
  border-bottom: 3px solid #9c9c9c;
  transform: rotate(-45deg);
}

/* .faqここから */
ol.accordion {
margin: 3em auto;
max-width: 80vw;
}

ol.accordion li{

}

.toggle {
display: none;
}
.option {
position: relative;
margin-bottom: 1em;
}
.faqtitle:hover {
cursor: pointer;
}
.faqtitle,
.faqcontent {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transform: translateZ(0);
transition: all 0.3s;
}
.faqtitle {
/*border: solid 1px #ccc;*/
padding: 1em;
display: block;
color: #333;
font-weight: bold;
}
.faqtitle::after,
.faqtitle::before {
content: "";
position: absolute;
right: 1.25em;
top: 1.25em;
width: 2px;
height: 0.75em;
background-color: #999;
transition: all 0.3s;
}
.faqtitle::after {
transform: rotate(90deg);
}
.faqcontent {
max-height: 0;
overflow: hidden;
}
.faqcontent p {
margin: 0;
padding: 0.5em 1em 1em;
font-size: 0.9em;
line-height: 1.5;
}
.toggle:checked + .faqtitle + .faqcontent {
max-height: 500px;
transition: all 1.5s;
}
.toggle:checked + .faqtitle::before {
transform: rotate(90deg) !important;
}
/* .f@aqここまで */

/* .faqの装飾ここから*/
ol.accordion {
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding:0.5em;
}

ol.accordion li {
  position: relative;
  line-height: 1.5em;
  padding: 0.5em 0.5em 0.5em 30px;
	border-bottom: dashed 1px gray;
}

ol.accordion li:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*数字のデザイン変える*/
  display:inline-block;
  color: white;
  font-family: 'Avenir','Arial Black','Arial',sans-serif;
  font-weight:bold;
  font-size: 15px;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  /*以下上下中央寄せのため*/
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
body.tawara ol.accordion li:before{
	  background: #74c2f8;
}
body.sakuraen ol.accordion li:before{
	  background: #ff69b4;
}
/*　装飾ここまで*/


/*アクセス部分（/tawaradai-bus/inc/style.cssが基本）*/
/*さくら苑はwpを読み込んでるので別途下部に書く！*/
.access{
	font-family: "Kosugi Maru";
	background: #085;
    justify-content: right;
}
.access-description{
	background: #085;
	padding: 20px;
	color: #fff;
}

h2.access-title{
	color: #fff!important;
	font-weight: bold;
	font-size: 2.8rem;
	border: none!important;
}
h2.access-mean-title{
	color: #fff!important;
	border:3px solid #fff!important;
}
.access a{
	color: #fff;
}

.access-map {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
}
.access-address{
	display: flex;
}
.access-address span{
	margin: 10px;
}

/*継承させない*/
p,
.content p{
	font-size: initial;
	color: initial;
}

/* □□□□□□□□□　さくら苑用wpのcss　□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□　*/
.wp-block-columns,
.has-2-columns{
	width: 100%;
	display: flex;
	align-items:stretch;
}
div.wp-block-column{
width: initial!important;/*継承しない*/
width: 50%!important;
  display:flex;/*子要素に追加*/
  flex-direction:column;/*子要素に追加*/
}

/*左側のcss*/
.has-2-columns>:first-child {
	background: #085;
	padding: 10px 20px;
	color: #fff!important;
}

.has-2-columns ul,
.has-2-columns ol{
	list-style: none;
	border: 1px solid #fff;
	padding: 10px;
	margin: 5px;
}

.has-2-columns>:first-child h2{
	color: #fff!important;
	border:none!important;
	font-size: 3rem
}

.has-2-columns>:first-child h3,
.has-2-columns>:first-child a,
.has-2-columns>:first-child p{
	color: #fff!important;
}

.has-2-columns>:first-child h3{
	margin-top: 20px;
	font-size: 2rem;
}
/*1つめのリンク指定*/
.has-2-columns a em{
	border: 1px solid #fff;
	padding: 15px 25px 15px 15px;
	margin-right: -25px;
	border-radius: 35px;
	font-style: normal;
}

/*1つめの見出しh3の前に車アイコン*/
.has-2-columns h3:nth-of-type(1)::before {
  font-family: "Material Icons";
  content: "\e531";
  margin-right:3px;
  font-size: 30px;
}
/*2つめの見出しh3の前に電車アイコン*/
.has-2-columns h3:nth-of-type(2)::before {
  font-family: "Material Icons";
  content: "\e570";
  margin-right:3px;
  font-size: 30px;
}
/*3つめの見出しh3の前にバスアイコン*/
.has-2-columns h3:nth-of-type(3)::before {
  font-family: "Material Icons";
  content: "\eb3c";
  margin-right:3px;
  font-size: 30px;
}

.has-2-columns h3 em{
	font-size: 12px;
	font-style: normal;
	border: 1px solid #fff;
	border-radius: 3px;
	padding: 5px;
	margin-left: 10px;
}

.wp-block-columns{
	width: 100%;
	height: 100%!important;
}
.has-2-columns .access-map {
	height: 100vh!important;
	position: relative;
}
.has-2-columns .access-map iframe {
	position: absolute;
	left: 0;
	top:0;
	height: 100vh!important;
}
/* 767px以下に適用されるCSS（スマホ用） */
@media screen and (max-width: 767px) {
.has-2-columns{
	width: 100%!important;
	display: block;
	height: initial !important;
}

div.wp-block-column {
  width: initial !important;
  width: 100% !important;
height: initial !important;
}
.has-2-columns .access-map {
	width: 100%;
	height: initial !important;
	position:static
}
.has-2-columns .access-map iframe {
	position:static
}

footer{
font-size: 10px;
	margin: 20px 5px;
	clear: both;
	}
}
/* □□□□□□□□□　さくら苑用wpのcssここまで　□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□　*/