@charset "UTF-8";
/* --------------------------------------------------
    COMMON
-------------------------------------------------- */
html { overflow-x: hidden; }
body, p { line-height: 1.8rem !important; }
.border { border-width: 2px !important; }
.bg-lightblue {	background: #EAF2F4; }

/* 半円背景各種
-------------------------------------------------- */
/* 半月（背景白） */
.half-white:after { background-color: #fff; }
/* 半月（背景薄青） */
.half-lightblue:after { background: #EAF2F4; }
/* 半月（背景緑） */
.half-info:after { background: #17a2b8; }
/* 共通 */
.half {
    width: 120%;
    height: 150px;
    border-top-left-radius: 50% 120px;
    border-top-right-radius: 50% 120px;
    position: absolute;
    top: 0;
    left: -10%;   
}
.half:after {
	content: ' ';
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: -1;    
}

/* 見出し青丸
-------------------------------------------------- */
.dot {
	padding-left: 1.5rem !important;
	padding-right: 1.5rem !important;
}
.dot:before, .dot:after {
	font-family: "Font Awesome 5 Free";/*忘れずに*/
	content: "\f111";/*アイコンのユニコード*/
	font-size: 1.2rem;/*サイズ*/
	color: #a1ceff;
	padding: 0 10px;
	vertical-align: middle;
}
/* --------------------------------------------------
    header
-------------------------------------------------- */
header .container-fluid {
	height: 100vh;
	width: 100%;
	background: url(../img/image-top.jpg);
	background-size: cover;
	background-position: 50% 100%;
}
/*    グローバルナビ
-------------------------------------------------- */
.breadcrumb {
	background: transparent;
}
.breadcrumb-item + .breadcrumb-item::before {
	content: '>';
	color: #fff;
}
/* --------------------------------------------------
    トップページ
-------------------------------------------------- */
.balloon {
	width: 130px;
	height: 130px;
	top: -50px;
	z-index: 10;
	left: -20px;
	font-size: 15px;
}
.balloon-s {
	width: 110px;
	height: 110px;
	top: -20px;
	z-index: 10;
	left: -20px;
	font-size: 14px;
}
.balloon:before, .balloon-s:before {
	content: "";
	position: absolute;
	bottom: -5px;
	right: -5px;
	margin-top: -15px;
	border: 10px solid transparent;
	border-left: 30px solid #17a2b8;
	z-index: 0;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

table tr:last-child {
	border-bottom: 1px solid #dee2e6;
}
table tr:nth-child(even) {
	background-color: #F9F9F9;
}
table tr:nth-child(odd) {
	background-color: #E4E9EF;
}
/* --------------------------------------------------
    サンプルページ
-------------------------------------------------- */
.season {
	width: 70px;
	height: 70px;
	left: 10px;
	padding: 0.34em;
}
.season div {
	display: block;
	width: 100%;
	height: 100%;
	border: 2.4px dotted #fff;
}
.title {
	border-bottom: 2px solid #17a2b8;
}
.stripe {
	background: repeating-linear-gradient(90deg, #fff 0, #fff 40%, #17a2b8 40%, #17a2b8 60%, #fff 60%, #fff 70%);
}

/** 以下追加要素 **/

/* --------------------------------------------------
    ボタン
-------------------------------------------------- */
.sjps-button {
  display: flex;
  align-items: center;
  justify-content: center;
  /* ルビ位置調整のため変更 */
  /*  line-height: 1.5; */
  line-height: 2;
  text-decoration: none;
  color: #333333;
/* SE対応 */
/*  font-size: 17px; */
  font-size: 17px;
  border-radius: 0px;
  width: 95%;
  height: 40px;
  font-weight: bold;
  border: 2px solid #333333;
  transition: 0.3s;
  box-shadow: 5px 5px 0px 0px rgba(51, 51, 51, 1);
  background-color: #ffffff;
  margin: 0 auto;

}
@-moz-document url-prefix(){
.sjps-button {
  display: flex;
  align-items: center;
  justify-content: center;
  /* ルビ位置調整のため変更 */
  /*  line-height: 1.5; */
  line-height: 2;
  text-decoration: none;
  color: #333333;
/* SE対応 */
/*  font-size: 17px; */
  font-size: 17px;
  border-radius: 0px;
  width: 95%;
  height: 50px; /* ここだけFF対応 */ 
  font-weight: bold;
  border: 2px solid #333333;
  transition: 0.3s;
  box-shadow: 5px 5px 0px 0px rgba(51, 51, 51, 1);
  background-color: #ffffff;
  margin: 0 auto;
}
}

.sjps-button:hover {
  box-shadow: 0 0 #333;
  color: #fff;
  background-color: #333;
}

/* --------------------------------------------------
    動画コンテナ
-------------------------------------------------- */
.embed-container {
  height: 0;
  overflow: hidden;
  max-width: 100%;
  padding-bottom: 56.25%; /* 16:9 の高さなので 56.25% (= 9 ÷ 16) */
  position: relative;
}

.embed-container iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

/* --------------------------------------------------
    左吹き出し
-------------------------------------------------- */
.balloon1-left {
  position: relative;
  display: inline-block;
  margin: 1.5em 0 1.5em 15px;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  color: #555;
  font-size: 16px;
/*  background: #e0edff;*/
  background: white;

}

.balloon1-left:before {
  content: "";
  position: absolute;
  top: 20%;
  left: -28px;
  margin-top: -5px;
  border: 15px solid transparent;
/*  border-right: 15px solid #e0edff;*/
  border-right: 15px solid white;
}

.balloon1-left p {
  margin: 0;
  padding: 0;
}

/* --------------------------------------------------
    右吹き出し
-------------------------------------------------- */
.balloon1-right {
  position: relative;
  display: inline-block;
  margin: 1.5em 15px 1.5em 0;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  color: #555;
  font-size: 16px;
/*  background: #e0edff;*/
  background: white;
}

.balloon1-right:before {
  content: "";
  position: absolute;
  top: 15%;
  left: 100%;
  margin-top: -5px;
  border: 15px solid transparent;
/*  border-left: 15px solid #e0edff;*/
  border-left: 15px solid white;
}

.balloon1-right p {
  margin: 0;
  padding: 0;
}

.tleft{
  text-align: left;
}

.tright{
  text-align: right;
}

/* --------------------------------------------------
    ルビ
-------------------------------------------------- */
@media (max-width: 768px) {
  .rubyful-rt { font-size: 0.3em; }
}

.my-toggle {
  position: fixed;
  bottom: 20px;
  right: 20px;
  padding: 10px 20px;
  background: #ffffff;
  color: #000000;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: 0.3s;
}
.my-toggle:hover { background: #17a2b8; }