@charset "UTF-8";

/*====================================================================
すべてのWebページに適用される
====================================================================*/
html {
   font-family: sans-serif;
}

html * {
   box-sizing: border-box;
}

body {
   margin: 0 0 0 0;
   background-color: #fad09e;
}

.wrapper {
   margin: 0 auto 0 auto;
   max-width: 100%;
}

h2 {
   color: #000000;
   font-size: 22px;
   border-bottom: 2px dotted #783c1d;
   margin-top: 20px;
   margin-right: 0px;
   margin-left: 0px;
   margin-bottom: 20px;
   padding-top: 5;
   padding-right: 5;
   padding-left: 5;
   padding-bottom: 5;
}

img {
   max-width: 100%;
   height: auto;
}

p {
   line-height: 1.6;
}

a:link {
   color: #d25833;
}

a:visited {
   color: #d25833;
}

a:hover {
   color: #e3937a;
}

a:active {
   color: #ff6a3b;
}

img {
   max-width: 100%;
   height: auto;
}

.clearfix {
   max-width: 960px;
   margin-right: auto;
   margin-left: auto;
}

/*====================================================================
すべてのページに適用 - ヘッダー -
====================================================================*/
.header {}

.logo {
   width: 30vw;
   height: auto;
   margin-top: auto;
   margin-bottom: auto;
   line-height: 0;
   text-align: left;
}

.dream {
   display: flex;
   justify-content: space-between;
}

.info {
   color: #000000;
   text-align: right;
}

.nav {
   box-shadow: 0 3px 6px -3px #000000 inset;
   background-color: #fff3b8;
   text-align: center;
   border-top: 1px solid black;
   border-bottom: 1px solid black;
}

.nav_inner {
   max-width: 960px;
   height: 100%;
   margin: 0 auto;
}

.nav ul {
   margin: 0;
   padding: 9px 10px 7px 20px;
   height: 100%;
   display: flex;
}

.nav li {
   display: inline;
   list-style-type: none;
   text-align: center;
   flex: 1 1;
   position: relative;
}

.nav li::after {
   content: "";
   display: block;
   width: 2px;
   height: 24px;
   background-color: #000000;
   position: absolute;
   right: -1px;
   top: calc((100% - 24px)/2);
}

.nav li:last-child::after {
   content: none;
}

.nav a:link {
   color: #98605e;
   text-decoratino: none;
}

.nav a:visited {
   color: #98605e;
   text-decoration: none;
}

.nav a:hover span {
   color: #6c3524;
   position: relative;
}

.nav a:hover span::after {
   content: "";
   position: absolute;
   display: block;
   height: 4px;
   width: 100%;
   bottom: 0;
   background-color: #6c3524;
   border-radius: 5px;
}

.nav a:hover::after {
   transform: scale(1, 1);
}

.nav a:active {
   color: #be8f68;
   text-decoration: none;
}

.nav a {
   position: relative;
   display: inline-block;
   color: inherit;
   text-decoration: none;
   justify-content: center;
}

.nav span {
   display: flex;
   align-items: center;
}

a {
   color: inherit;
   text-decoration: none;
}

/*====================================================================
.nav_sp .accordion_one
====================================================================*/
.nav_sp .accordion_one {
   max-width: 960px;
   margin: 0 auto;
}

.nav_sp .accordion_one .accordion_header {
   background-color: #fff3b8;
   color: #000;
   font-size: 26px;
   font-weight: bold;
   padding: 20px 11%;
   text-align: center;
   position: relative;
   z-index: +1;
   cursor: pointer;
   transition-duration: 0.2s;
}

.nav_sp .accordion_one .accordion_header:hover {
   opacity: .8;
}

.nav_sp .accordion_one .accordion_header .i_box {
   display: flex;
   justify-content: center;
   align-items: center;
   position: absolute;
   top: 50%;
   right: 5%;
   width: 40px;
   height: 40px;
   border: 1px solid #000;
   margin-top: -20px;
   box-sizing: border-box;
   -webkit-transform: rotate(45deg);
   transform: rotate(45deg);
   transform-origin: center center;
   transition-duration: 0.2s;
}

.nav_sp .accordion_one .accordion_header.stay .i_box {
   -webkit-transform: rotate(0deg);
   transform: rotate(0deg);
}

.nav_sp .accordion_one .accordion_header .i_box .one_i {
   display: block;
   width: 18px;
   height: 18px;
   -webkit-transform: rotate(45deg);
   transform: rotate(45deg);
   transform-origin: center center;
   transition-duration: 0.2s;
   position: relative;
}

.nav_sp .accordion_one .accordion_header.stay .i_box .one_i {
   -webkit-transform: rotate(0deg);
   transform: rotate(0deg);
}

.nav_sp .accordion_one .accordion_header.stay.open .i_box .one_i {
   -webkit-transform: rotate(45deg);
   transform: rotate(45deg);
}

.nav_sp .accordion_one .accordion_header.open .i_box {
   -webkit-transform: rotate(-360deg);
   transform: rotate(-360deg);
}

.nav_sp .accordion_one .accordion_header.stay.open .i_box {
   -webkit-transform: rotate(315eg);
   transform: rotate(315deg);
}

.nav_sp .accordion_one .accordion_header .i_box .one_i:before,
.nav_sp .accordion_one .accordion_header .i_box .one_i:after {
   display: flex;
   content: '';
   background-color: #000;
   border-radius: 10px;
   width: 18px;
   height: 4px;
   position: absolute;
   top: 7px;
   left: 0;
   -webkit-transform: rotate(0deg);
   transform: rotate(0deg);
   transform-origin: center center;
}

.nav_sp .accordion_one .accordion_header .i_box .one_i:before {
   width: 4px;
   height: 18px;
   top: 0;
   left: 7px;
}

.nav_sp .accordion_one .accordion_header.stay .i_box .one_i:before {
   content: none;
}

.nav_sp .accordion_one .accordion_header.open .i_box .one_i:before {
   content: none;
}

.nav_sp .accordion_one .accordion_header.stay.open .i_box .one_i:before {
   content: "";
}

.nav_sp .accordion_one .accordion_header.open .i_box .one_i:after {
   -webkit-transform: rotate(-45deg);
   transform: rotate(-45deg);
}

.nav_sp .accordion_one .accordion_header.stay.open .i_box .one_i:after {
   -webkit-transform: rotate(0deg);
   transform: rotate(0deg);
}

.nav_sp .accordion_one .accordion_inner {
   display: none;
   border-left: 2px solid #fff3b8;
   border-right: 2px solid #fff3b8;
   border-bottom: 2px solid #000;
   box-sizing: border-box;
}

.nav_sp .accordion_one .accordion_inner.stay {
   display: block;
}

.nav_sp .accordion_one .accordion_inner .box_one {
   height: 120px;
}

.nav_sp .accordion_one .accordion_inner p.txt_a_ac {
   margin: 0;
}

@media screen and (max-width: 960px) {
   .nav_sp .accordion_one .accordion_header {
      font-size: 18px;
   }

   .nav_sp .accordion_one .accordion_header .i_box {
      width: 30px;
      height: 30px;
      margin-top: -15px;
   }
}

@media screen and (max-width: 768px) {
   .nav_sp .accordion_one .accordion_header {
      font-size: 16px;
      text-align: left;
      padding: 15px 60px 15px 15px;
   }
}

.box_one {
   z-index: 2;
   color: #000;
   background: #fff3b8;
   text-align: center;
   width: 100%;
}

.box_one ul {
   background: #ccc;
   margin: 0 auto;
   padding: 0;
   width: 100%;
}

.box_one ul li {
   background-color: #fff3b8;
   float: left;
   width: 33%;
   text-align: center;
   border-bottom: 1px solid #aaa;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   list-style-type: none;
   padding: 0;
   border-bottom: 1px solid #000;
}

.box_one ul li:hover {
   background: #ddd;
}

.box_one ul li a {
   display: block;
   color: #98605e;
   padding: 1em 0;
   text-decoration: none;
}

/*====================================================================
すべてのページに適用	 - フッター -
====================================================================*/
.footer {
   background-color: #946c45;
   margin-top: 30px;
   font-size: 14px;
}

.footer_dream {
   max-width: 960px;
   margin-right: auto;
   margin-left: auto;
   display: flex;
   justify-content: space-between;
}

.footer_logo {
   width: 30vw;
   height: auto;
   margin-top: auto;
   margin-bottom: auto;
   line-height: 0;
   text-align: left;
}

.footer_info {
   width: 60vw;
   color: #fffff9;
   margin-top: auto;
   margin-bottom: auto;
   text-align: right;
}

#copyright {
   background-color: #7b5544;
   text-align: center;
   color: #fffff9;
}

/* 個別のスタイル */
/*====================================================================
dream_index.html
====================================================================*/
main {
   margin-top: 25px;
}

.covid-info {
   margin-right: auto;
   margin-right: auto;
   text-align: center;
   background-color: #f0f0f0;
   border-top: 2px solid #000;
   border-right: 2px solid #000;
   border-left: 2px solid #000;
   border-bottom: 2px solid #000;
}

#covid-time {
   margin-left: auto;
   margin-right: auto;
   font-size: 44px;
   color: red;
}

.temporary-info {
   margin-right: auto;
   margin-right: auto;
   text-align: center;
   background-color: #f0f0f0;
   border-top: 2px solid #000;
   border-right: 2px solid #000;
   border-left: 2px solid #000;
   border-bottom: 2px solid #000;
}

#temporary-time {
   margin-left: auto;
   margin-right: auto;
   font-size: 44px;
   color: red;
}

.temporary-ul {
	padding-left: 0;
	display: inline-block;
}

.temporary-li {
   text-align: left;
}

#time {
   font-size: 32px;
}


.box_srcollbar {
   overflow: auto;
   width: 96%;
   height: 100px;
   margin-left: auto;
   margin-right: auto;
   margin-bottom: 25px;
   padding: 5px;
   border-right: 5px solid #c9caca;
   border-left: 5px solid #c9caca;
   border-bottom: 8px solid #ac6b25;
   background-color: #00552e;
   color: #fffff9;
   font-size: 14px;
}

.box_title {
   border-top: 5px solid #c9caca;
   border-right: 5px solid #c9caca;
   border-left: 5px solid #c9caca;
   padding: 5px;
   width: 96%;
   margin-left: auto;
   margin-right: auto;
   font-weight: bold;
   font-size: 18px;
   background-color: #000;
   text-align: center;
   color: #fffff9;
}

.keyvisual {
   margin: 10px 0 10px 0;
   width: 100vw;
   /* 画面幅の100%の幅で画像を表示 */
}

@media (min-width: 767px) {
   #box {
      display: flex;
      justify-content: space-between;
   }
}

.index {
   list-style: none;
}

#content {
   background-color: #fad09e;
   flex-grow: 1;
}

#twitter {
   background-color: #fad09e;
   padding: 10px;
   margin-top: 5px;
   flex-grow: 1;
}

/*====================================================================
dream-menu.html
====================================================================*/

.menu-item {
   display: flex;
   list-style: none;
   margin-left: -40px;
   flex-wrap: wrap;
}

.menu-item li {
   width: calc(100%/3);
   /*←画像を横に3つ並べる場合*/
   padding: 0 5px;
   /*←画像の左右に5pxの余白を入れる場合*/
   box-sizing: border-box;
}

.menu-item li img {
   max-width: 100%;
   /*画像のはみだしを防ぐ*/
   height: auto;
   /*画像の縦横比を維持 */
   border: solid 1px #ccc;
   /*←画像を1pxのグレーの枠線で囲む指定の場合*/
}

.menu-items {
   display: flex;
   list-style: none;
   margin-left: -40px;
   flex-wrap: wrap;
}

.menu-items li {
   width: calc(100%/2);
   /*←画像を横に2つ並べる場合*/
   padding: 0 5px;
   /*←画像の左右に5pxの余白を入れる場合*/
   box-sizing: border-box;
}

.menu-items li img {
   max-width: 100%;
   /*画像のはみだしを防ぐ*/
   height: auto;
   /*画像の縦横比を維持 */
   border: solid 1px #ccc;
   /*←画像を1pxのグレーの枠線で囲む指定の場合*/
}

/*====================================================================
dream_access
====================================================================*/
#map {
   display: flex;
}

/*====================================================================
dream_company.html
====================================================================*/
/* テーブル */
.overview {
   border-collapse: collapse;
}

.overview th,
.overview td {
   padding: 8px;
   border: 1px solid #250d00;
   text-align: left;
}

.overview th {
   background-color: #fff3b8;
   width: 100px;
   color: #000000;
   text-align: center;
   vertical-align: top;
}

.overview td {
   background-color: #e7e7eb;
}

/*====================================================================
スマートフォン向けCSS
====================================================================*/
@media screen and (min-width: 767px) {
   .sp-br {
      display: none;
   }

   .nav_sp {
      display: none;
   }
}

/* 全体	 - ナビゲーション */
@media (max-width: 768px) {
   .wrapper {
      margin: 0 8px;
   }

   .logo {
      width: 30px 0;
   }

   .logo img {
      width: 200px;
   }

   .nav_inner {
      display: none;
   }

   /*====================================================================
dream-index.html 
====================================================================*/
   .index {
      display: flex;
      list-style: none;
      margin-left: -30px;
      flex-wrap: wrap;
   }

   .index li {
      width: 100%
         /*←画像を横に2つ並べる場合*/
         box-sizing: border-box;
   }

   .index li img {
      width: 90vw;
      /*画像のはみだしを防ぐ*/
      height: auto;
      /*画像の縦横比を維持 */
   }

   /*====================================================================
dream-menu.html
====================================================================*/
   .menu-item {
      display: flex;
      list-style: none;
      flex-wrap: wrap;
   }

   .menu-item li {
      width: calc(100%/2);
      /*←画像を横に2つ並べる場合*/
      padding: 0 5px;
      /*←画像の左右に5pxの余白を入れる場合*/
      box-sizing: border-box;
   }

   .menu-item li img {
      max-width: 100%;
      /*画像のはみだしを防ぐ*/
      height: auto;
      /*画像の縦横比を維持 */
      border: solid 1px #ccc;
      /*←画像を1pxのグレーの枠線で囲む指定の場合*/
   }
}