@charset "utf-8";
* {
	font-family: 'Noto Sans JP','Meiryo', serif;
	color: #000000;
}
.font-weight-bold {
	font-weight: 600!important;
}

.font-weight-M500 {
	font-weight: 500;
}

.no-gutter > [class*='col-'] {
	padding-right: 0;
	padding-left: 0;
}
.bg-lightgreen {
	background-color: #B7DCBC;
}
.text-Lightreen {
	color: #B7DCBC;
}
.text-Green {
	color:#22B863;
}

.sample-title{
    display: flex;
    align-items: center;
    text-align: center;
	color: #0e536d;
	padding-bottom: 0.5em;
}

.sample-title::after {
    border-top: 3px dotted;
    content: "";
    display: inline; /* for IE */
    flex-grow: 1;
    margin-left: 0.5em;
	color: #0e536d;
}
.jumbotron {
	/*background-image: url('../images/22477116_m.jpg');*/
	background-size: cover;
	background-position: bottom right;
	height: 400px;
	
	background-repeat: no-repeat;
}
.heading {
	border-left: 6px solid #0e536d;
	padding: 0 0 0 10px;
}
.breadcrumb-item + .breadcrumb-item::before {
	content: ">"
}

.map iframe {
	width: 100%;
	height: 450px;
}
.top-text {
	position: absolute;
	margin: auto;
	max-width:400px;
	background-color: rgba(255,255,255,0.50);
}



/* 大デバイス（デスクトップ, 992px 未満）
============================================== */
@media screen and (max-width: 991.98px) {
.footer-logo {
	width: 100%;
}
} /* END */

/* 中デバイス（タブレット, 768px 未満）
============================================== */
@media screen and (max-width: 767.98px) {
.gnav-item {
	display: block;
	width: 100%;
	border: none;
}
.gnav-item+ .gnav-item {
	border: none;
}
table th, table td {
	padding: .25rem !important;
}
table th:first-child {
	width: 25%;
}
} /* END */

/* 小デバイス（縦向きモバイル, 576px 以上 デスクトップ, 992px 未満）
============================================== */
@media screen and (min-width: 576px) and (max-width: 991.98px) {
 #sec2  {
     height: 400px;
 } 
} /* END */

/* 小デバイス（縦向きモバイル, 576px 以上）
============================================== */
@media screen and (min-width: 576px) {
 #sec2 .message {
    position: absolute;
     left: 0;
 } 
} /* END */

/*==============================================
ナビゲーション
============================================== */

.navbar-Yellow, .bg-Yellow {
	background-image: linear-gradient(#FFEEA7, #F8B500);
}

.navbar-PreciusClay, .bg-PreciusClay {
	background-color: #ded3d6;
}
.navbar-ClearAle, .bg-ClearAle {
	background-color: #c0e4f2;
}

.navbar-BabySheep, .bg-BabySheep {
	background-color: #fffcd7;
}

.navbar-FoxYellow, .bg-FoxYellow {
	background-color: #fae06a;
}
.bg-LightGreen {
	background: linear-gradient(#EDF6EE, #B7DCBC)
}

.bg-LightPink {
	background: linear-gradient(#fdf7fa, #ffcde6);
}

.bg-LightBlue {
    background: linear-gradient(#eff7ff, #b2d8ff);
}

.navbar-LightGreen {
	background: linear-gradient(#EDF6EE, #B7DCBC)
}

.navbar-MilkyNight, .bg-MilkyNight {
	background-color: #0e536d;
}

/** {
	color: rgba(250,224,106,0.50);
}


#top-aisatsu {
	position: absolute;
	background-image: url("../images/22477116_s.jpg") top right;
	background-repeat:no-repeat;
}*/

.op-05 {
	opacity: 0.5;
}
/* Lightgreen */
.border-LightGreen {
	border: 2px solid #B7DCBC;
}

.border-bottomLightGreen {
	border-bottom: 2px solid #B7DCBC;/*#f6b7aa*/
}

 .border-topLightGreen {
	border-top: 2px solid #B7DCBC;
}

.border-leftLightGreen {
	border-left: 2px solid #B7DCBC;
}

 .border-rightLightGreen {
	border-right: 2px solid #B7DCBC;
}

/* Green */
.border-Green {
	border: 2px solid #22B863;
}

.border-bottomGreen {
	border-bottom: 2px solid #22B863;/*#f6b7aa*/
}

 .border-topGreen {
	border-top: 2px solid #22B863;
}

.border-leftGreen {
	border-left: 2px solid #22B863;
}

 .border-rightGreen {
	border-right: 2px solid #22B863;
}
a.nav-link:hover {
	opacity: 0.5;
}

.hashtag {display: inline-block;
	font-size: 0.8em;
	line-height: 1.8em;
	background-color: #FEFCD3;
	padding: 0.25em 0.5em;
	color: #000000;
	border-radius: 10px;
	margin: 0.25em;
}

.taishou {display: inline-block;
	font-size: 0.8em;
	line-height: 1.8em;
	background-color: #D1E8B2;
	padding: 0.25em 0.5em;
	color: #000000;
	border-radius: 10px;
	margin: 0.25em;
}

.program {display: inline-block;
	font-size: 0.8em;
	line-height: 1.8em;
	background-color: #CEFFF9;
	padding: 0.25em 0.5em;
	color: #000000;
	border-radius: 10px;
	margin: 0.25em;
}


/*


参照URL
https://qumeru.com/magazine/313#:~:text=CSS%E3%81%A7%E7%B6%9A%E3%81%8D%E3%82%92%E8%AA%AD,%E3%81%AB%E3%81%AA%E3%82%8A%E3%81%BE%E3%81%97%E3%82%87%E3%81%86%E3%80%82

.kikkake {
	position: relative;
	height: 300px;
}


label {
	position: absolute;
	z-index: 1;
	bottom: 0;
	width: 100%;
	height: 100px; 
	cursor: pointer;
	text-align: center;
	background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(250, 252, 252, 0.95) 90%);
}
input:checked + label {
	background: inherit; 
}
label:after {
	line-height: 2.5rem;
	position: absolute;
	z-index: 2;
	bottom: 20px;
	left: 50%;
	width: 200px;
	content: '続きをよむ';
	transform: translate(-50%, 0);
	color: #ffffff;
	border-radius: 20px;
	background-color: rgba(27, 37, 56, 1);
}
input {
  display: none;
}
.text-wrapper {
	overflow: hidden;
	height: 200px;
	transition: all 0.5s;
}
input:checked + label {
  display: none ;
}
input:checked ~ .text-wrapper {
	height: auto;
	padding-bottom: 60px;
	transition: all 0.5s;
}*/

.about ul.list-unstyled li {
	margin: 10px 0; 
}

.pp-kojin {
	height: 200px;
	overflow: auto; 
}

.pp-otoiawase {
	height: 250px;
	overflow: auto;
}

.form-must {
	font-size: 0.8em;
	padding: 0.25em;
	margin: 0.25em;
	border-radius: 7px;
	color: #ffffff;
}

.form-shozoku input {
	margin-right: 5px;
}

.font-70 {
	font-size: 0.7em;
}

.font-100{
    font-size: 1em;
}

.problems {
	width: 100%;
}
/*==============================================
index.html header
============================================== */
#test-nav .header-box {
}
#test-nav .header-menu-box {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#test-nav .header-menu-box .inner {
	display: flex;
	align-items: center;
}

#test-nav .header-menu-box .inner p {
	margin: 0;
	font-weight: bold;
/*	padding-left: 15px;*/
}

#test-nav .navbar-collapse {
	justify-content: end!important;
}

#test-nav .nav-justified .nav-item, #test-nav  .nav-justified>.nav-link {
    flex-basis: unset;
    flex-grow: 1;
    text-align: center;
}
/*==============================================
index.html YouTube
============================================== */

.YouTube-manga {
	
}
.YouTube-manga .box-frame {
	width: 48%;
	margin-bottom: 50px;
}
.YouTube-manga .box-inner {
	 position: relative; padding-bottom: 56.25%; height:0; overflow: hidden;
}
.YouTube-manga .box-inner iframe {
	position:absolute;
top:0;
right:0;
width:100%;
height:100%;
}

@media screen and (max-width: 767.98px) {
	.YouTube-manga .box-frame {
		width: 100%;
		margin-bottom: 50px;
	}
}

@media screen and (min-width: 1400px) {
	.YouTube-manga .box-frame {
		width: 24%;
		margin-bottom: 50px;
	}
}

/*==============================================
index.html footer
============================================== */
.footer-text div {
	padding-bottom: 15px;
	margin-bottom: 15px;
	border-bottom: 0.5px solid #aaa;
}
.footer-text div p {
	color: #fff;
	padding-left: 15px;
}

.footer-text div span {
	color: #fff;
}


.footer-copyright {
	width: 100%;
	height: 60px;
	line-height: 60px;
	background-color: #f5f5f5;
}


/*==============================================
index.html 追加内容
============================================== */
.text-align{
text-align: center;
line-height: 2em;
	}

.index-midashi{
	display: flex;
	justify-content: space-between;
}

.MainBox {
    display: flex;
    justify-content: space-between;
}

.box6 {
    padding: 0.5em 1em;
    margin: 1em 0;
    background: linear-gradient(#EDF6EE, #B7DCBC);
    width: calc((100% - 5%) / 2);
}
.box6 p {
    margin: 30px 10px;
    padding: 0;
    font-size: 22px;
}

.box7 {
    padding: 0.5em 1em;
    margin: 1em 0;
    background: linear-gradient(#fff9fc, #ffe5f2);
  	width: calc((100% - 5%) / 2);
}
.box7 p {
    margin: 30px 10px;
    padding: 0;
    font-size: 22px;
}

.mainbox-title{
	margin: 50px auto 0;
	font-size:30px;
}




.index-text{
	margin: 30px 10px;
}

ol, ul, dl {
    margin-top: 0;
    margin-bottom: 1rem;
    padding-left: 10px;
    font-size: 18px;
    line-height: 2em;
}

#index-test .m-4 {
    margin: 3.5rem;
}


#index-test .indexBOx {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}


.box2 {
    padding: 0.5em 1em;
    margin: 2em 0;
    background: #FFF;
    border: solid 0.5px #000000;
    border-radius: 5px;
    width: calc((100% - 5%) / 3);
}
.box2 p {
   margin: 20px auto;
   padding: 0;
}

#index-test #test-nav .navbar-collapse {
    justify-content: end !important;
    width: 70%;
}

.SE-kaisetu{
	margin-top: 20px;
}

p.SE-title {
    margin: 30px auto 20px;
    padding: 0;
    font-size: 22px;
	font-weight: bold;
}

.img-sp {
    display: none;
}

.index-mapBox {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.index-mapBox .inner-map {
    width: 47%;
}

.index-mapBox .inner-map .Google-map {
    position: relative;
    width: 100%;
    height: 0;
}

.fontsize {
    font-size: 26px;
}

#index-test .text-align {
    text-align: center;
    line-height: 1.5em;
}

.contactBox {
    display: flex;
    justify-content: space-between;
}
.contactBox-left{
	width: 85%
}

.contactBox-rigth{
	width: 25%; 
	font-size: 23px; 
	font-weight: bold;
}

.indoorBox {
    display: flex;
    justify-content: space-between;
}

.indoorBox_detail {
    width: calc((100% - 5%) / 5);
}

p.indoor_title {
    font-weight: bold;
    font-size: larger;
}

.icon {
    display: flex;
    justify-content: space-between;
}


.icon-text {
    width: 70%;
}

p.icon-image {
    text-align: center;
}


@media (min-width: 767.98px) and (max-width: 991.98px) {
#index-test .box2 {
    padding: 0.5em 1em;
    margin: 1em 0;
    background: #FFF;
    border: solid 0.5px #000000;
    border-radius: 5px;
    width: calc((100% - 5%) / 2);
}
	
	.contactBox {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
}
	
	.contactBox-left{
	width: 100%
}

.contactBox-rigth{
	width: 100%; 
	font-size: 23px; 
	font-weight: bold;
}
	
	.indoorBox {
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    flex-wrap: wrap;
}
	
	.indoorBox_detail {
    width: 48%;
    margin-bottom: 30px;
}
	
	.icon-text {
    width: 54%;
}
	
	p.icon-image {
    text-align: end;
}
	
}


@media screen and (max-width: 991.98px) {
.MainBox {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
}
.box6 {
    padding: 0.5em 1em;
    margin: 1em 0;
    background: linear-gradient(#EDF6EE, #B7DCBC);
    width: 100%;
}
.box6 p {
    margin: 30px 10px;
    padding: 0;
    font-size: 22px;
}

.box7 {
    padding: 0.5em 1em;
    margin: 1em 0;
    background: linear-gradient(#fff9fc, #ffe5f2);
  	width: 100%;
}
.box7 p {
    margin: 30px 10px;
    padding: 0;
    font-size: 22px;
}
	.contactBox {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
}
	.contactBox-left{
	width: 100%
}

.contactBox-rigth{
	width: 60%; 
	font-size: 23px; 
	font-weight: bold;
}
}


@media screen and (max-width: 767.98px) {
#index-test .m-4 {
    margin: 2.5rem 1rem;
}
	
	#index-test .indexBOx {
    display: flex;
    flex-wrap: wrap;
    /* justify-content: space-between; */
    flex-direction: column;
    width: 100%;
}
	
.box2 {
    padding: 0.5em 1em;
    margin: 2em 0;
    background: #FFF;
    border: solid 0.5px #000000;
    border-radius: 5px;
    width: 100%;
}
	
	.img-pc {
        display: none;
    }

    .img-sp {
        display: block;
    }
	
.mainbox-title {
    margin: 50px auto 0;
    font-size: 28px;
}
	
	.indoorBox {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
}
	
	.indoorBox_detail {
    width: 100%;
    margin-bottom: 30px;
}
	
	.icon {
    display: flex;
    justify-content: space-between;
    flex-direction: column-reverse;
}
	
	.icon-text {
    width: 100%;
}
	
	p.icon-image {
    text-align: center;
    margin-bottom: 40px;
}

}


/*==============================================
index.html スライダー
============================================== */


div.slide-show {
	width: 100%; /* スライドショーの幅 */
	max-width: 100%; /* スマホで表示が欠けないように */
	position: relative;
	margin-bottom: 70px;
}

.slide-show img {
	animation: show 30s infinite; /* 20秒のスライドショーを繰り返し */
	max-width: 100%;
	height: auto;
	opacity: 0;
	position: absolute; /* 画像を重ねて表示 */
	left: 0;
	top: 0;
	width: 100vw;
}

@keyframes show {
0% {opacity: 0}
17% {opacity: 1}
33% {opacity: 1}
50% {opacity: 0}
}

.slide-show img:nth-of-type(1) {
position: relative;
}

.slide-show img:nth-of-type(2) {
animation-delay: 0s;
}

.slide-show img:nth-of-type(3) {
animation-delay: 5s;
}

.slide-show img:nth-of-type(4) {
animation-delay: 10s;
}

.slide-show img:nth-of-type(5) {
animation-delay: 15s;
}

.slide-show img:nth-of-type(6) {
animation-delay: 20s;
}


/*==============================================
contact.html 追加内容（リンク先の指示）
============================================== */
.linkbox {
    display: flex;
    justify-content: flex-start;
}

.linkbox li.small {
    width: calc((100% - 20%) / 4);
    margin-right: 30px;
}

.linkbox li.small a:hover {
    opacity: 0.5;
}

@media screen and (max-width: 767.98px) {
    
    .linkbox {
        display: flex;
        justify-content: flex-start;
        flex-direction: row;
        flex-wrap: wrap;
}

    .linkbox li.small {
        width: 80%;
        margin: 15px 0;
    }
    
    
}


