:root {
    color-scheme: light dark;
}

body {
    background-color: light-dark(#fff,#1c1c1c);
}

.top-content-mobile {
                     display: none;
}

.top-content span {
    width: 100%;
    height: 50%;
    background-color: #fff;
}

.top-text1 {
            position: absolute;
            color: white;
            top: 2.5em;
            left: 1em;
            font-weight: bold;
            font-size: 4em;
            font-family :Quicksand, sans-serif;
            animation-name: fadein;
            animation-duration: 2s;
     text-shadow: 1px 1px 0px #999, -1px -1px 0px #999,
                  -1px 1px 0px #999,  1px -1px 0px #999,
                  1px 0px 0px #999, -1px  0px 0px #999,
                  0px 1px 0px #999,  0px -1px 0px #999;
}

@keyframes fadein {

 from {
       opacity: 0;
       transform: translateX(50px);
 }

 to {
     opacity: 1;
     transform: translateX(0);
 }
}

.top-text2 {
            position: absolute;
            color: #7f7fff;
            top: 3em;
            left: 6.5em;
            font-weight: bold;
            font-size: 5em;
            font-family : sans-serif;
            text-shadow: 1px 1px 0px #fff, -1px -1px 0px #fff,
                        -1px 1px 0px #fff,  1px -1px 0px #fff,
                         1px 0px 0px #fff, -1px  0px 0px #fff,
                         0px 1px 0px #fff,  0px -1px 0px #fff;
            animation-name: fadein2;
            animation-duration: 4s;
}

@keyframes fadein2 {

 0% {
       opacity: 0;
       transform: translateX(50px);
 }

 30% {
      opacity: 0;
      transform: translateX(50px);
 }

 100% {
     opacity: 1;
     transform: translateX(0);
 }
}

/* 電光掲示板 ▼ */

.info-bar {
	overflow: hidden;
	white-space: nowrap;
	box-sizing: border-box;
	border-top: 2px #aaf solid;
	border-bottom: 2px #aaf solid;
	padding: 2px 0px;
}

.info-bar span {
	display: inline-block;
	padding-left: 100%;
	animation: info-bar 10s linear infinite;
	color: #f33;
}

@keyframes info-bar {
	0%   { transform: translate(0, 0); }
	100% { transform: translate(-100%, 0); }
}

/* 電光掲示板 ▲ */

/* 暁寮とは ▼ */

.overview-container {
	position: relative;
	margin: 100px 0px;
}

.overview-container span {
	position: absolute;
	height: 100%;
	width: 60%;
	background-color: light-dark(#e0e0ff,#9490cc);
	top: 0;
	left: 0;
	border-radius: 0px 10px 10px 0px;
}

.overview {
	padding: 60px 60px 60px 0px;
	position: relative;
}

.overview-title-mobile {
	display: none;
}

.overview-flex {
	position: relative;
	display: flex;
	height: 320px;
	margin-left: 32px;
}

.overview-flex img {
	position: absolute;
	left: 55%;
	width: 45%;
	height: 320px;
	border-radius: 10px;
	box-shadow: 0 0 8px light-dark(#77787b, #eee);
}

.text-box-o {
	position: absolute;
	left: 0%;
	width: 50%;
	margin-right: 40px;
}

.text-box-o h2 {
	color: light-dark(#333,#fafafa);
	font-size: 3.5em;
	margin: 0.5em 0em;
}

.text-box-o p {
	color: light-dark(#333,#fafafa);
	margin: 0px 0px 32px 0px;
}

.text-box-o a {
	text-decoration: none;
	color: #fff;
	background-color: #7f7fff;
	border: 1px #7f7fff solid;
	padding: 12px 32px;
	border-radius: 10px;
    transition: all 0.5s;
}

.text-box-o a:hover {
	color: #7f7fff;
	background-color: #fff;
}

/* 暁寮とは ▲ */


/* 今日の献立 ▼ */

.meal-container {
	position: relative;
	margin: 100px 0px;
}

.meal-container span {
	position: absolute;
	height: 100%;
	width: 60%;
	background-color: light-dark(#e0e0ff,#9490cc);
	top: 0;
	right: 0;
	border-radius: 10px 0px 0px 10px;
}

.meal {
	padding: 60px 60px 60px 0px;
	position: relative;
}

.meal-title-mobile {
	display: none;
}

.meal-flex {
	position: relative;
	display: flex;
	height: 320px;
	margin-left: 32px;
}

.meal-flex iframe {
	position: relative;
	width: 45%;
	height: 320px;
	border-radius: 10px;
	box-shadow: 0 0 8px light-dark(#77787b, #eee);
}

.text-box-m {
	position: absolute;
	right: 0%;
	width: 50%;
	margin-left: 40px;
}

.text-box-m h2 {
	color: light-dark(#333,#fafafa);
	font-size: 3.5em;
	margin: 0.5em 0em;
}

.text-box-m p {
	color: light-dark(#333,#fafafa);
	margin: 0px 0px 32px 0px;
}

.text-box-m a {
	text-decoration: none;
	color: #fff;
	background-color: #7f7fff;
	border: 1px #7f7fff solid;
	padding: 12px 32px;
	border-radius: 10px;
    transition: all 0.5s;
}

.text-box-m a:hover {
	color: #7f7fff;
	background-color: #fff;
}

/* 今日の献立 ▲ */


/* お知らせ ▼ */

.news {
    background-color: light-dark(#eee,#1c1c1c);
    padding: 100px 60px;
    display: flex;
}

.news-title {
    width: 35%;
}

.news-title h2 {
    font-size: 3em;
    color: light-dark(#000,#fafafa);
    margin-top: 0px;
}

.all-news {
    position: relative;
}

.all-news p,
.all-news span,
.all-news img {
    float: left;
}

.all-news p {
    font-size: 1.5em;
    color: light-dark(#000,#fafafa);
    margin: 80px 0px 0px 0px;
}

.allnews-light {
    width: 100%;
    height: auto;
    margin-top: 4em;
}

.allnews-dark {
    display: none;
}

.news-main {
    width: 65%;
    color: light-dark(#000,#fafafa);
}

.tabs {
    border-bottom: 2px #7f7fff solid;
    display: flex;
}

.ryo-tab,
.site-tab {
    width: 20%;
    margin-right: 1em;
    font-size: 1.3em;
    padding: 0.5em;
    background-color: light-dark(#e0e0ff,#9490cc);
    border: 2px light-dark(#e0e0ff,#9490cc) solid;
    border-radius: 15px 15px 0px 0px;
}

.ryo-tab.active,
.site-tab.active {
    background-color: #7f7fff;
    border-color: #7f7fff;
    color: light-dark(#fff,#333);
}

.ryo-tab input,
.site-tab input {
    display: none;
}

.ryo-tab label,
.site-tab label {
    display: block;
    width: 100%;
    text-align: center;
}

        .news-details > div {
            display: none;
        }
        .news-details > .ryo-news-details {
            display: block;
        }

.news-cell {
    padding: 35px 15px;
    border-bottom: 1px #bbb solid;
    font-weight: 300;
}

.date {
    font-weight: 500;
}

.all-news-mobile {
    display: none;
}

/* お知らせ ▲ */


/* ピックアップコンテンツ ▼ */

.pickup-container {
    padding: 100px 60px;
    margin-top: 100px;
    background: linear-gradient(180deg,light-dark(#fff,#1c1c1c) 0%,light-dark(#fff,#1c1c1c) 293px,light-dark(#c0c0c0,#000) 293px,light-dark(#c0c0c0,#000) 100%);
}

.pickup-container h2 {
    margin: 0em 0em 2em 0em;
    font-size: 3em;
    font-weight: bold;
    color: light-dark(#000,#fafafa);
}

.pickup-card-1 a {
    text-decoration: none;
    padding: 1em;
    margin: 0em 1em;
    font-size: 2em;
    border: 2px #7f7fff solid;
	border-radius: 10px;
    background-color: #7f7fff;
    color: light-dark(#fff,#fafafa);
    box-shadow: 0 0 8px light-dark(#77787b,#fafafa);
}

.pickup-card-1 a:hover {
    box-shadow: 0 0 0px gray;
}
.pickup-card-1 a:before {
    content: '';/*何も入れない*/
    display: inline-block;
    width: 50px;/*画像の幅*/
    height: 50px;/*画像の高さ*/
    background-image: url(../images/book-white.webp);
    background-size: contain;
    vertical-align: middle;
}

.pickup-card-2 a {
    text-decoration: none;
    padding: 1em;
    margin: 0em 1em;
    font-size: 2em;
    border: 2px #7f7fff solid;
	border-radius: 10px;
    background-color: #fff;
    color: #7f7fff;
    /*box-shadow: 0 0 8px gray; 利用可能になったらこのコメント消す */
    opacity: 0.5; /* 利用可能になったら、このプロパティを消す */
}

.pickup-card-2 a:hover {
    box-shadow: 0 0 0px gray;
}

.pickup-card-2 a:before {
    content: '';/*何も入れない*/
    display: inline-block;
    width: 50px;/*画像の幅*/
    height: 50px;/*画像の高さ*/
    background-image: url(../images/binoculars-color.webp);
    background-size: contain;
    vertical-align: middle;
}

/* ピックアップコンテンツ ▲ */



/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝モバイル版　▼＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

@media screen and (max-width: 767px) {

 .page {
     margin: 0% 2%;
 }

 .top-content {
               display: none;
 }

 .top-content-mobile {
                      display: inline;
 }

 .top-text1-mobile {
                    position: absolute;
                    color: white;
                    top: 3em;
                    left: 0.5em;
                    font-weight: bold;
                    font-size: 2em;
                    font-family : sans-serif;
                    animation-name: fadein;
                    animation-duration: 2s;
     text-shadow: 1px 1px 0px #999, -1px -1px 0px #999,
                  -1px 1px 0px #999,  1px -1px 0px #999,
                  1px 0px 0px #999, -1px  0px 0px #999,
                  0px 1px 0px #999,  0px -1px 0px #999;
 }

 @keyframes fadein {

  from {
        opacity: 0;
        transform: translateX(50px);
  }

  to {
      opacity: 1;
      transform: translateX(0);
  }
 }

 .top-text2-mobile {
                    position: absolute;
                    color: #7f7fff;
                    top: 4.5em;
                    left: 9em;
                    font-weight: bold;
                    font-size: 2em;
                    font-family : sans-serif;
                    animation-name: fadein2;
                    animation-duration: 4s;
    text-shadow: 1px 1px 0px #fff, -1px -1px 0px #fff,
                 -1px 1px 0px #fff,  1px -1px 0px #fff,
                 1px 0px 0px #fff, -1px  0px 0px #fff,
                 0px 1px 0px #fff,  0px -1px 0px #fff;
}

 @keyframes fadein2 {

  0% {
      opacity: 0;
      transform: translateX(50px);
  }

  30% {
       opacity: 0;
       transform: translateX(50px);
  }

  100% {
        opacity: 1;
        transform: translateX(0);
  }
 }

/* 暁寮とは(モバイル) ▼ */

.overview-container span {
	width: 75%;
	right: 25%;
}

.overview {
	padding: 50px 20px;
	text-align: center;
}

.overview-flex {
	display: inline;
	margin-left: 0px;
}

.overview-title-mobile {
	display: block;
	color: light-dark(#000,#fafafa);
	font-size: 2em;
	float: left;
	margin: 0px;
}

.overview-flex img {
	width: 80%;
	height: auto;
	position: relative;
	left: 0px;
	margin-top: 2em;
}

.text-box-o {
	display: inline;
	position: relative;
	right: 0%;
	margin-right: 0px;
	width: 100%;
}

.text-box-o h2 {
	display: none;
}

.text-box-o p {
	margin: 32px 0px;
	text-align: left;
}

.text-box-o a {
	position: relative;
}

/* 暁寮とは(モバイル) ▲ */

/* 今日の献立(モバイル) ▼ */

.meal-container span {
	width: 75%;
	left: 25%;
}

.meal {
	padding: 50px 20px;
	text-align: center;
}

.meal-flex {
	display: inline;
	margin-left: 0px;
}

.meal-title-mobile {
	display: block;
	color: light-dark(#000,#fafafa);
	font-size: 2em;
	float: right;
	margin: 0px;
}

.meal-flex iframe {
	width: 80%;
	height: 220px;
	position: relative;
	left: 0px;
	margin-top: 2em;
	margin-left: 1.5em; /* この要素が中央より若干左による不具合の対策 */
}

.text-box-m {
	display: inline;
	position: relative;
	right: 0%;
	margin-right: 0px;
	width: 100%;
}

.text-box-m h2 {
	display: none;
}

.text-box-m p {
	margin: 32px 0px;
	text-align: left;
}

.text-box-m a {
	position: relative;
}

/* 今日の献立(モバイル) ▲ */


/* お知らせ(モバイル) ▼ */

.news {
    display: block;
    padding: 60px 25px 120px 25px;
}

.news-title {
    width: 100%;
}

.news-title h2 {
    font-size: 2em;
    margin-bottom: 1.2em;
}

.all-news {
    display: none;
}

.news-main {
    width: 100%;
}

.ryo-tab,
.site-tab {
    width: 50%;
    margin-right: 0em;
}

.ryo-tab {
    margin-right: 1em;
}

.ryo-news-details,
.site-news-details {
    margin-bottom: 3em;
}

.all-news-mobile {
    text-decoration: none;
    display: inline;
    position: relative;
}

.all-news-mobile p {
    font-size: 1em;
    font-weight: bold;
    width: 6.5em;
    color: light-dark(#000,#fafafa);
    margin: 0px;
}

.allnews-light-mobile {
    width: 50%;
    height: auto;
}

.allnews-dark-mobile {
    display: none;
}



/* お知らせ(モバイル) ▲ */


/* ピックアップコンテンツ(モバイル) ▼ */

.pickup-container {
    padding: 100px 5px;
    margin-top: 100px;
}

.pickup-container h2 {
    margin: 0em 0em 2em 0em;
    font-size: 2em;
    font-weight: bold;
}

.pickup-card-1 a,
.pickup-card-2 a {
    display: block;
    margin-top: 1em;
    font-size: 1.3em;
    width: 50%;
}

.pickup-card-1 a:before,
.pickup-card-2 a:before {
    width: 1.5em;/*画像の幅*/
    height: 1.5em;/*画像の高さ*/
}

/* ピックアップコンテンツ(モバイル) ▲ */


}


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝小型モバイル画面用 ▼＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

@media screen and (max-width: 402px) {

 @keyframes fadein {

  from {
        opacity: 0;
        transform: translateY(50px);
  }

  to {
      opacity: 1;
      transform: translateY(0);
  }
 }

 .top-text2-mobile {
                    position: absolute;
                    color: #7f7fff;
                    top: 4.5em;
                    left: 9em;
                    font-weight: bold;
                    font-size: 2em;
                    font-family : serif;
                    animation-name: fadein2;
                    animation-duration: 4s;
 }

 @keyframes fadein2 {

  0% {
      opacity: 0;
      transform: translateY(50px);
  }

  30% {
       opacity: 0;
       transform: translateY(50px);
  }

  100% {
        opacity: 1;
        transform: translateY(0);
  }
 }


}


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝超小型モバイル画面用 ▼＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

@media screen and (max-width: 352px) {

.top-text1-mobile {
                    position: absolute;
                    color: white;
                    top: 3em;
                    left: 0.5em;
                    font-weight: bold;
                    font-size: 1.5em;
                    font-family :Quicksand, sans-serif;
                    animation-name: fadein;
                    animation-duration: 2s;
 }

 .top-text2-mobile {
                    position: absolute;
                    color: #7f7fff;
                    top: 4.5em;
                    left: 9em;
                    font-weight: bold;
                    font-size: 1.5em;
                    font-family : serif;
                    animation-name: fadein2;
                    animation-duration: 4s;
 }



}


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ダークモード画像 ▼＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

@media (prefers-color-scheme: dark) {

.allnews-light {
    display: none;
}

.allnews-dark {
    display: block;
    width: 100%;
    height: auto;
    margin-top: 4em;
}

.allnews-light-mobile {
    display: none;
}

.allnews-dark-mobile {
    display: block;
    width: 50%;
    height: auto;
}


}