@charset "UTF-8";



/*square. This shape is origin of other shapes.
---------------------------- */
.square {
	width:50px;
	height:50px;
	margin:auto;  
	position:relative;
	background:rgb(60,60,60);
}
.square.cross {
	width:15px;/*その要素自身の幅を、高さの1/4に指定。*/
	left:0px;
}
.cross::before {
	content:"";	/*before疑似要素のcontent*/
	display:block;	/*ブロック化*/
	width:100%;	/*幅と高さを100%に*/
	height:100%;
	/*90度回転。回転の基準点はデフォルトで中心なので指定しない*/
	-moz-transform:rotate(90deg);
	-webkit-transform:rotate(90deg);
	transform:rotate(90deg);
	/*色を変えたのはサンプルとしての分かり易さのため*/
	background:rgb(60,60,60);
}



/* Fukidashi
---------------------------------------------------- */
.fukidashi_bottom {
	position: relative;
	display: inline-block;
	margin: 1.5em 0;
	padding: 15px 13px;
	min-width: 120px;
	max-width: 100%;
	color: #393939;
	font-size: 14px;
	background: #e1f0fa;
	border-radius: 15px;
}
.fukidashi_bottom:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -15px;
	border: 15px solid transparent;
	border-top: 15px solid #e1f0fa;
}

.fukidashi_top {
	position: relative;
	display: inline-block;
	margin: 1.5em 0;
	padding:10px 13px;
	min-width: 120px;
	max-width: 100%;
	color: #393939;
	font-size: 12px;
	background: #e1f0fa;
	box-sizing: border-box;
	border-radius: 15px;
}
.fukidashi_top:before {
	content: "";
	position: absolute;
	top: -30px;
	left: 50%;
 	margin-left: -15px;
	border: 15px solid transparent;
	border-bottom: 15px solid #e1f0fa;
}
.fukidashi_photo {
	position: relative;
	display: inline-block;
	margin: 1.5em 0;
	padding:10px 13px;
	min-width: 120px;
	max-width: 100%;
	color: #393939;
	font-size: 25px;
	background: #e1f0fa;
	box-sizing: border-box;
	border-radius: 15px;
}
.fukidashi_photo:before {
	content: "";
	position: absolute;
	top: -30px;
	left: 50%;
	margin-left: -15px;
	border: 15px solid transparent;
	border-bottom: 15px solid #e1f0fa;
}
@media (max-width: 768px) {
.fukidashi_photo {
	position: relative;
	display: inline-block;
	margin: 1.5em 0;
	padding:10px 13px;
	min-width: 334px;
	max-width: 100%;
	color: #393939;
	font-size: 12px;
	background: #e1f0fa;
	box-sizing: border-box;
	border-radius: 15px;
}
.fukidashi_photo:before {
	content: "";
	position: absolute;
	top: -30px;
	left: 50%;
	margin-left: -15px;
	border: 15px solid transparent;
	border-bottom: 15px solid #e1f0fa;
}
}

.fukidashi_right {
	position: relative;
	display: inline-block;
	margin: 0 15px 0 0;
	padding: 7px 10px;
	min-width: 120px;
	max-width: 100%;
	color: #393939;
	font-size: 14px;
	background: #e1f0fa;
	border-radius: 15px;
}
.fukidashi_right:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 100%;
	margin-top: -15px;
	border: 15px solid transparent;
	border-left: 15px solid #e1f0fa;
}
.fukidashi_right2 {
	position: relative;
	display: inline-block;
	margin: 0 13px 0 0;
	padding: 7px 10px;
	min-width: 120px;
	max-width: 100%;
	color: #393939;
	font-size: 14px;
	background: #e1f0fa;
	border-radius: 15px;
}
.fukidashi_right2:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 100%;
	margin-top: -15px;
	border: 15px solid transparent;
	border-left: 15px solid #e1f0fa;
}
.fukidashi_left {
	position: relative;
	display: inline-block;
	margin: -15px 0 8px -107px;
	padding: 5px 18px;
	min-width: 120px;
	max-width: 100%;
	color: #393939;
	font-size: 12px;
	background: #e1f0fa;
	border-radius: 15px;
}
.fukidashi_left:before {
	content: "";
	position: absolute;
	top: 50%;
	left: -15px;
	margin-top: -5px;
	border: 5px solid transparent;
	border-right: 10px solid #e1f0fa;
}
.fukidashi_left2 {
	position: relative;
	display: inline-block;
	margin: -15px 0 8px -95px;
	padding: 5px 18px;
	min-width: 120px;
	max-width: 100%;
	color: #393939;
	font-size: 12px;
	background: #e1f0fa;
	border-radius: 15px;
}
.fukidashi_left2:before {
	content: "";
	position: absolute;
	top: 50%;
	left: -15px;
	margin-top: -5px;
	border: 5px solid transparent;
	border-right: 10px solid #e1f0fa;
}
.fukidashi_left3 {
	position: relative;
	display: inline-block;
	margin: -3px 0 1.5em 20px;
	padding: 15px 18px;
	min-width: 120px;
	max-width: 100%;
	color: #393939;
	font-size: 14px;
	background: #e1f0fa;
	border-radius: 15px;
}
.fukidashi_left3:before {
	content: "";
	position: absolute;
	top: 50%;
	left: -30px;
	margin-top: -15px;
	border: 15px solid transparent;
	border-right: 15px solid #e1f0fa;
}
.fukidashi_left4 {
	position: relative;
	display: inline-block;
	margin: 40px 0 1.5em -60px;
	padding: 15px 18px;
	min-width: 120px;
	max-width: 100%;
	color: #393939;
	font-size: 14px;
	background: #e1f0fa;
	border-radius: 15px;
}
.fukidashi_left4:before {
	content: "";
	position: absolute;
	top: 50%;
	left: -30px;
	margin-top: -15px;
	border: 15px solid transparent;
	border-right: 15px solid #e1f0fa;
}


/* calender
---------------------------------------------------- */

table tbody th.event1 {
	background-color: #FBE5D6;
	text-align: center;
}
table tbody th.event2 {
	background-color: #FEF2CC;
	text-align: center;
}
table tbody th.event3 {
	background-color: #E2F0D9;
	text-align: center;
}
table tbody th.event4 {
	background-color: #DEEBF7;
	text-align: center;
}
table span.event1 {
	font-size: 0.9em;
	color: #666666;
	display: block;
}
table span.event2 {
	font-size: 0.9em;
	color: #666666;
	display: block;
}
table span.event3 {
	font-size: 0.9em;
	color: #666666;
	display: block;
}
table span.event4 {
	font-size: 0.9em;
	color: #666666;
	display: block;
}



/* 画像の上　文字
---------------------------------------------------- */
.example {
	position: relative;
}
.example p {
	position: absolute;
	top: 85%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	margin:0;
	padding:20px;
	/*文字の装飾は省略*/
}
.example img {
	width: 100%;
}
@media (max-width: 768px) {
.example {
	position: relative;
}
.example p {
	position: absolute;
	top: 80%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	margin:0;
	padding:20px;
	/*文字の装飾は省略*/
}
.example img {
	width: 100%;
}

}
/* web font
---------------------------------------------------- */
.wf-sawarabigothic {
	font-family: "Sawarabi Gothic";
}

/* table 修正
---------------------------------------------------- */
.table > thead > tr > th, .table > thead > tr > td, .table > tbody > tr > th, .table > tbody > tr > td, .table > tfoot > tr > th, .table > tfoot > tr > td {
	padding: 8px;
	line-height: 1.5;
	vertical-align:middle;
	border-top: 1px solid #ddd;
}
#content table th {
	padding: 4px;
	line-height: 1.5;
	vertical-align: middle;
}


#content table.tblFull.center th , #content table.tblFull.center td {
	vertical-align: middle;
}

#content table.tblFull td.td_bottom{
		border-bottom: 1px solid #dcdcdc;
	}


#content .res_table table.tblFull td.center{
	text-align: center;
}

@media (max-width: 767px) {
	#content .res_table table.tblFull td.center {
		text-align: left;
	}
}




/* リンク decoration 修正
---------------------------------------------------- */
#content h5 a {
	text-decoration:  none;
}




/* ----------------------------------------
 * header-nav
 * --------------------------------------- */
#content .container_nav ul li, #content .container_nav ol li {
	line-height: 1.2;
}
#content .container_nav ul, #content .container_nav ol {
	margin: 0;
	margin-bottom: 0;
}
#content .container_nav ul {
	margin: 0;
	padding-left: 0;
}
.container_nav {
	margin-right: auto;
	margin-left: auto;
	padding-right: 15px;
	padding-left: 15px;
}
.header-nav .container {
	margin-right: auto;
	margin-left: auto;
	padding-right: 15px;
	padding-left: 15px;
}
.header-nav ul {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0;
	padding: 5px 0;
	list-style: none;
	-webkit-box-pack: justify;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.header-nav a, .header-nav a:link, .header-nav a:visited {
	text-decoration: none;
	color: #fff;
	background-color: #FF69B4;
}
.header-nav a.back_orange, .header-nav a.back_orange:link, .header-nav a.back_orange:visited {
	text-decoration: none;
	color: #fff;
	background-color: #FFA500;
}
.header-nav a.back_blue, .header-nav a.back_blue:link, .header-nav a.back_blue:visited {
	text-decoration: none;
	color: #fff;
	background-color: #000080;
}
.header-nav a {
	font-size: 1rem;
	position: relative;
	display: block;
	padding: 5px;
	text-align: center;
	background: #fff;
	box-sizing: border-box;
	text-decoration: none;
	margin: 0 5px;
	font-weight: 600;
	-webkit-box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);
	-moz-box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);
	box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);
	-webkit-tap-highlight-color: transparent;
	transition: .3s ease-out;
}
.header-nav a:after, :before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	text-decoration: none;
}
.header-nav a:hover{
	background-color: #FF69B4;
	color: #fff;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}

.header-nav a.back_orange:hover{
	background-color: #CE8500;
	color: #fff;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}
.header-nav a.back_blue:hover{
	background-color: #3131B1;
	color: #fff;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}
.header-nav .container {
	padding-right: 12px;
	padding-left: 12px;
}
.header-nav a:after {
	display: block;
	height: 0px;
	margin-top: 3px;
	margin-bottom: 3px;
	content: '';
}
.header-nav li {
	padding: 5px 3px;
	text-align: center;
	-webkit-box-flex: 1;
	-moz-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
}
@media screen and (max-width: 979px){
	.header-nav a {
		font-size: 0.9rem;
		text-align: center;
	}
}
@media screen and (max-width: 767px){
	.header-nav li {
		width: 50%;
		-webkit-box-flex: initial;
		-moz-box-flex: initial;
		-ms-flex: initial;
		flex: initial;
	}
	.header-nav a:after {
		position: absolute;
		top: 50%;
		right: 5px;
		width: 10px;
		margin-top: -4px;
	}
}
@media screen and (max-width: 480px){
	.header-nav li {
		width: 50%;
		-webkit-box-flex: initial;
		-moz-box-flex: initial;
		-ms-flex: initial;
		flex: initial;
	}
	.header-nav a {
		font-size: 0.9rem;
		text-align: center;
	}
}

#container h4[id] {
	margin-top: 20px;
	padding-top: 0px;
}
#content h4.box1{
	font-size:1.2em; 
	color: #505050;/*文字色*/
	padding: 0.5em 0.5em 0.5em 1.5em;/*文字周りの余白*/
	text-indent: -1.5em;
	line-height: 1.3;/*行高*/
	background: #e1f0fa;/*背景色*/
	vertical-align: middle;/*上下中央*/
	border-radius: 0px 0px 0px 0px;/*左側の角を丸く*/
	margin:5px 0;
}
#content h4.box1:before {
	font-size:1.6em; 
	content: '●';
	color: white;
	margin:8px 5px;
	text-shadow: -1px -1px 1px #fff, -1px -1px 1px #414141;
}


/* ----------------------------------------
 * ページ内リンク
 * --------------------------------------- */

span.link-t-a {
	position: relative;
	top: 100px;/*左の数値を変えると、上下に調整します*/
	display: block;
}
@media (max-width: 768px) {
span.link-t-a {
	position: relative;
	top: 100px;/*左の数値を変えると、上下に調整します*/
	display: block;
}
}


/* ----------------------------------------
 * bootstrap panel 調整
 * --------------------------------------- */
.panel {
	margin-bottom: 0px;
	margin-top: 10px;
}
.panel h4, .panel .h4{
	margin-top: 0px;
	margin-bottom: 0px;
}
@media (max-width: 768px) {
.panel {
	margin-bottom: 0px;
	margin-top: 5px;
}
}
.panel-info {
	border-color: #6FBCF6;
}
.panel-info > .panel-heading {
	color: #fff;
	background-color: #6FBCF6;
	border-color: #6FBCF6;
}
.panel-info > .panel-heading + .panel-collapse > .panel-body {
	border-top-color: #6FBCF6;
}
.panel-info > .panel-heading .badge {
	color: #fff;
	background-color: #6FBCF6;
}
.panel-info > .panel-footer + .panel-collapse > .panel-body {
	border-bottom-color: #6FBCF6;
}
.panel-yellow {
	border-color: #F5C53A;
}
.panel-yellow > .panel-heading {
	color: #fff;
	background-color: #F5C53A;
	border-color: #F5C53A;
}
.panel-yellow > .panel-heading + .panel-collapse > .panel-body {
	border-top-color: #F5C53A;
}
.panel-yellow > .panel-heading .badge {
	color: #fff;
	background-color: #F5C53A;
}
.panel-yellow > .panel-footer + .panel-collapse > .panel-body {
	border-bottom-color: #F5C53A;
}
.panel-green {
	border-color: #97C143;
}
.panel-green > .panel-heading {
	color: #fff;
	background-color: #97C143;
	border-color: #97C143;
}
.panel-green > .panel-heading + .panel-collapse > .panel-body {
	border-top-color: #97C143;
}
.panel-green > .panel-heading .badge {
	color: #fff;
	background-color: #97C143;
}
.panel-green > .panel-footer + .panel-collapse > .panel-body {
	border-bottom-color: #97C143;
}







/* order_btn
---------------------------------------------------- */

#order_btn {
	position: fixed;
	bottom: 100px;
	right: 0;
	font-size:1.1em;
	z-index:5;
}
#order_btn a {
	background: rgba(0,0,128,0.90);
	text-decoration: none;
	color: #fff;
	width: 200px;
	padding: 15px;
	text-align: center;
	display: block;
	-webkit-border-radius: 5px 0 0 5px;
	   -moz-border-radius: 5px 0 0 5px;
	        border-radius: 5px 0 0 5px;
}
#order_btn a:hover {
	text-decoration: none;
	background: #3131B1;
}
@media (max-width: 768px) {
	#order_btn {
		position: fixed;
		bottom: 100px;
		right: 10px;
		font-size: 0.8em;
	}
	#order_btn a {
		background: #000080;
		text-decoration: none;
		border: 1px solid #fff;
		color: #fff;
		width: 80px;
		height: 80px;
		padding: 14px;
		text-align: center;
		display: block;
		-webkit-border-radius: 50%;
		   -moz-border-radius: 50%;
		        border-radius: 50%;
	}
	#order_btn a:hover {
		text-decoration: none;
		background: #000080;
	}
	.menu-button {
	position: absolute;
	right: 0px;
	top: 0px;
	}
}



.section {
  margin-left: -10px;
  margin-right: -10px;
}


/** 02. Video responsive
**************************************************************** **/
.movie-wrap {
	position: relative;
	padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
	height: 0;
	overflow: hidden;
}

.movie-wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	max-width: 1140px;
	max-height: 680px;
	z-index: 0!important;
}


/** 13. Place text next to the image
**************************************************************** **/
.SideBySide p {
	display:inline-block;
	vertical-align:middle; /*縦方向の揃え位置を指定*/
}

.SideBySide .img-fluid{
	display:inline-block;
}

div.SideBySide {
	display:inline-block;
	vertical-align:middle; /*縦方向の揃え位置を指定*/
}


