@charset "utf-8";

/*
 * "Fredericka" is lisenced under the SIL Open Font License 1.1
 * http://fonts.googleapis.com
 * https://www.google.com/fonts/attribution
 * http://scripts.sil.org/OFL
 */

/* *****共通設定***** */


a {
  color: #fda615;
}

a:hover {
  color: #ffa500;
}

.bg-primary,
.btn-primary {
  background-color: #214591 !important;
}

.border-primary {
  border-color: #214591 !important;
}

.bg-maincolor {
  background-color: #f0f8ff !important;
}

.btn-warning:hover {
  background-color: #fd6a15;
  border-color: #ffa500;
}

.bg-yl-color {
  background-color: #fffaf0 !important;
}

.text-shadow {
  text-shadow: 1px 1px 3px #000;
}

.font-patrick {
  font-family: 'Fredericka the Great', cursive;
}

/* ヘッダー(navbar) */

.logo-area {
width: 80%;
}

.logo-area img {
max-width: 100%;
}


#nav01 {

  border-bottom: 3px solid #214591;
}

#nav02 .nav-fill {
  width: 100%;
}

#nav02 .nav-item {
  border-left: 1px solid #dee2e6;
}

#nav02 .last-list-md {
  border-right: 1px solid #dee2e6;
}

/* フッター */
#footer-sns img {
  height: 58px;
  width: auto;
  margin-right: 25px;
}

#footer-index ul ul {
  padding-left: 0.75rem;
  border-left: 1px solid #6c757d;
}

/* *****トップページ***** 
.jumbotron {
  background-image: url("../img/top-image.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  height: 35vh;
}*/

/* *****下層ページ***** */
.breadcrumb-item + .breadcrumb-item:before {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: small;
  color: #fff;
}

#page .jumbotron {
/*  background: #214591 url("../img/subpage-headding.") no-repeat center center;*/
    background: #214591;
  background-size: cover;
  border-radius: initial;
}


#page .jumbotron h1 {
	/* 最小1.8rem | SP:2rem | TB:2.5rem | PC:3rem | 最大3.2rem */
	font-size: clamp(1.8rem, calc(1.25vw + 1.5rem), 3.2rem);
}
p.lead {
	/* 最小1.2rem | SP:1.4rem | TB:1.5rem | PC:1.6rem | 最大1.8rem */
	font-size: clamp(1.2rem, calc(0.25vw + 1.3rem), 1.8rem);
	line-height: 1.5;
}

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

 レスポンシブ

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

@media (max-width: 991.98px) {
  /* md タブレット・スマートフォン向け */

  #nav02 .nav-item {
    border-left: none;
    border-right: none;
    border-bottom: 1px solid #dee2e6;
    letter-spacing: 0.25rem;
  }
  }
  
  @media (max-width: 575.98px) {
    /* xs スマートフォン向け */

    /* フッター */
    #footer-sns img {
      height: 29px;
      margin-right: 15px;
    }
	  }
	
/* --------------------------------------------------

 追記

--------------------------------------------------　*/
* {
	line-height: 1.8;
	letter-spacing:.1em;
}

/*表*/

h2 {
	/* 最小1.8rem | SP:2rem | TB:2.5rem | PC:3rem | 最大3.2rem */
	font-size: clamp(1.4rem, calc(1vw + 1.25rem), 2.2rem);
}

h2.headline_obi {
  padding: 0.5em;/*文字周りの余白*/
  color: #FFFFFF;/*文字色*/
  background: #214591;/*背景色*/
  border-bottom: solid 4px #fda615;/*下線*/
}

h3.katsudou_h3 {
  padding: 0em 0.5em;/*上下 左右の余白*/
  color: #214591;/*文字色*/
  background: transparent;/*背景透明に*/
  border-left: solid 5px #fda615;/*左線*/
  font-weight: 800;
  font-size: 1.2rem;
 } 


h3.member_h3 {
  padding: 0em 0.5em;/*上下 左右の余白*/
  border-bottom: 3px solid #ffdeca;
  font-weight: bold;
  font-size: 1.2rem;
 } 

 

 
/*表*/
.table-bordered th {
	background: #f1f1e6;
	border-left-color: transparent;
	border-right-color: transparent;
	width: 30%;
}	

.table-bordered td {
	border-left-color: transparent;
	border-right-color: transparent;	
}	

/*パンくず背景*/

.bg-success,
.btn-success {
  background-color: #0085c6 !important;
}

.border-success {
  border-color: #0085c6 !important;
}


/* 5 Columns */
.col-15, .col-sm-15, .col-md-15, .col-lg-15 {
    position: relative;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
}

@media (min-width: 768px) {
    .col-sm-15 {
        width: 20%;
        flex: 0 0 20%;
    }
}

@media (min-width: 992px) {
    .col-md-15 {
        width: 20%;
        flex: 0 0 20%;
    }
}

@media (min-width: 1200px) {
    .col-lg-15 {
        width: 20%;
        flex: 0 0 20%;
    }
}





.swiper--wrapper {
  /* wrapperのサイズを調整 */
  width: 100%;
  height: 300px;
}

.swiper-slide {
  /* スライドのサイズを調整、中身のテキスト配置調整、背景色 */
  color: #ffffff;
  width: 100%;
  height: 100%;
  text-align: center;
  line-height: 300px;
  text-align: center;
}

.swiper-slide:nth-child(3n + 1) {
  background-color: #de4439;
}

.swiper-slide:nth-child(3n + 2) {
  background-color: #fcd500;
}

.swiper-slide:nth-child(3n + 3) {
  background-color: #53c638;
}



.swiper-pagination-bullet {
  width: 12px !important;
  height: 12px !important;
  margin: 0 0 0 10px !important;
  background: #333 !important;
}

.swiper-pagination-bullet:first-child {
  margin: 0 !important;
}




    /*------ スライダー横幅 ------*/
    .slider{
        width:100%;
        margin:0 auto;
    }

    /*------ スライダー画像 ------*/
    .slider img{
        width:100%;
    }

    /*-------- 高さ調整 ----------*/
    .slider .slick-slide{
        height:auto!important;
    }

    /*----------- 矢印 -----------*/
    .slider .slick-next{
        right:0!important;
    }
    .slider .slick-prev{
        left:0!important;
    }
    .slider .slick-arrow{
        width: initial!important;
        height: initial!important;
        z-index:2!important;
    }
    .slider .slick-arrow:before{
        font-size: 30px!important;
    }
	
/* ______________________________________

ページトップへ
__________________________________________*/
	.pagetop {
  height: 50px;
  width: 50px;
  position: fixed;
  right: 30px;
  bottom: 30px;
  background: #fff;
  border: solid 2px #666;
  border-radius: 50%;
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 2;
  cursor: pointer;
}
.pagetop__arrow {
  display: block;
  height: 10px;
  width: 10px;
  border-top: 3px solid #666;
  border-right: 3px solid #666;
  transform: translateY(20%) rotate(-45deg);
}

.flex-box {
  
  display: flex;　/* 直下の要素を並列に */
  flex-direction: column; /* 直下の要素を縦積みに */
}


/*a.btn_30 {
	display: flex;
	vertical-align: middle;
	text-decoration: none;
	margin: auto;
	width: 25em;
	height: 4em;
	color: #ccc;
	cursor: pointer;
	transition: all 0.85s cubic-bezier(.17,.67,.14,.93);
	transform-style: preserve-3d;
	transform-origin: 100% 50%;
	  display: block;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}
a.btn_30:hover {
	transform: rotateX(-90deg);
}
a.btn_30 .side {
	box-sizing: border-box;
	position: absolute;
	display: inline-block;
	width: 25em;
	text-align: center;
	padding: 1.2rem 4rem;
	font-weight: bold;
	letter-spacing: 2px;
	  display: block;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}
a.btn_30 .top {
	background: #b4e12b;
	color: #fff;
	transform: rotateX(90deg) translate3d(0, 0, 2em);
}
a.btn_30 .front {
	background: #27acd9;
	color: #fff;
	transform: translate3d(0, 0, 2em);
}*/


.member_box a {
  color: #214591;
    text-decoration:underline;
    text-decoration-color: #214591;
}

.member_box a:hover {
  color: #fda615;
      text-decoration:underline;
    text-decoration-color: #fda615;
}


.simple-btn1{
  --mainColor :#27acd9;
  --subColor :#b4e12b;
  margin-left: auto;
  margin-right: auto;
  display: block;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
  cursor: pointer;
/*  border-style: solid;
  border-color: var(--mainColor);*/
  background-color: var(--mainColor);
  font-weight: 700;
  color: #FFF;
  -webkit-transition-duration: 300ms;
  transition-duration: 300ms;
  font-size: clamp(14px, 1.1111111111111112vw, 18px);
  padding-right: clamp(8px, 4.266666666666667vw, 24px);
  padding-left: clamp(8px, 4.266666666666667vw, 24px);
  padding-top: clamp(4px, 2.1333333333333333vw, 12px);
  padding-bottom: clamp(4px, 2.1333333333333333vw, 12px);
  border-top-width: clamp(1px, 0.1388888888888889vw, 3px);
  border-right-width: clamp(1px, 0.1388888888888889vw, 3px);
  border-bottom-width: clamp(1px, 0.1388888888888889vw, 3px);
  border-left-width: clamp(1px, 0.1388888888888889vw, 3px);
}

.simple-btn1:hover {
  background-color: var(--subColor);
  color: #FFF;
}

@media (min-width: 1025px) {
  .simple-btn1 {
    font-size: clamp(14px, 4.266666666666667vw, 18px);
    padding-right: clamp(24px, 2.2222222222222223vw, 40px);
    padding-left: clamp(24px, 2.2222222222222223vw, 40px);
    padding-top: clamp(12px, 1.1111111111111112vw, 24px);
    padding-bottom: clamp(12px, 1.1111111111111112vw, 24px);
  }
}

iframe[src*="drive.google.com"] {
	aspect-ratio: 16 / 9;
	width: 100%;
	height: auto;
}


.sec1 {



}