/*//////////////////////////////////////////////////////////////////////////////////////////*/
/* COMMON STYLE SETTING */
/*//////////////////////////////////////////////////////////////////////////////////////////*/
body{
	font-family: 'Lato', Helvetica, Verdana, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	font-weight:300;
	color: #333;
	background-color: #1A68B1;
	line-height: 1.7;
}

.page{
	background-color: #fff;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
	min-height: 100svh;
}

a{
	color: #1A68B1;
}
a:hover{
	color: #1A68B1;
}

h2, .h2,
h3, .h3{
	font-weight: bold;
	margin-top: 0px;
	margin-bottom: 15px;
}

h2 .icon, .h2 .icon,
h3 .icon, .h3 .icon {
	color: #5cc5ef;
}

h2, .h2{
	font-size: 1.6em;
	text-align: center;
	margin-bottom: 20px;
}

h3, .h3{
	font-size: 1.4em;
}

p {
	margin: 0 0 15px;
}

ul{
	padding-left: 16px;
	list-style: none;
	line-height: 1.8;
}

ul.has-bullet{
	list-style: disc;
	margin-left: 1rem;
}

dt, dd{
	line-height: inherit;
}

dl dd{
	margin-bottom: 20px;
}

.row {
    margin-left: 0;
    margin-right: 0
}


/**
 * PAGE COMMON MODULES
 */

.content-block{
	background: transparent;
	padding: 0 0 30px;
    flex-grow: 1;
}

.content-block img{
	margin-bottom: 15px;
}

.content-block{
	background: transparent;
	padding: 0 0 30px;
}

.content-block .form-horizontal{
	max-width: none;
}

article{
	margin-bottom: 40px;
	border-bottom: 1px solid #EEE;
	padding-bottom: 15px;
}
article:last-child{
	border-bottom: none;
	margin-bottom: 0;
}

 .centering{
	text-align: center;
}
 .centering a:hover{
	 text-decoration: none;
 }

 .red{	 color: #F00;}
 .green{ color: #393;}

/* BUTTON */
.btn{
	margin-bottom: 20px;
	-webkit-transition: all 300ms cubic-bezier(0, 0.5, 0.5, 1);
	-moz-transition: all 300ms cubic-bezier(0, 0.5, 0.5, 1);
	-o-transition: all 300ms cubic-bezier(0, 0.5, 0.5, 1);
	transition: all 300ms cubic-bezier(0, 0.5, 0.5, 1);
	box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26);
 }

.btn-large{
	font-size:1.4em;
}

.btn-primary{
	background-color: #1A68B1;
	border-color: #1A68B1;
	color: #FFF;
}

.btn-primary:hover{
	background-color: #5cc5ef;
	border-color: #5cc5ef;
}

.btn-primary:hover,
.btn-primary:focus{
	color: #FFF;
}

/* FORM */
form{
	max-width: 600px;
	margin: 0 auto 15px;
}

form .checkbox input[type="checkbox"]{
	position: static;
	margin-left: 0;
}

.form-horizontal .form-group{
	margin: 0;
}


/* TABLE */
thead th,caption{
	text-align: left;
	font-size:1.2em;
	padding: 8px;
	color: #FFF;
	background-color: #1A68B1;
}

th{
	font-weight: bold;
	white-space: nowrap;
}

td .help-inline{
	display: inline-block;
	padding-top: 2px;
	padding-left: 4px;
}

td .form-control{
	width: 200px;
	display: inline-block;
}

td h3{
	font-size: 1em;
}

.table .d-flex{
	display: flex;
	align-items: start;
	flex-wrap: wrap;
}

.table-type1{
	margin: 0 auto 15px;
}

.table-type1 th,
.table-type1 td{
	padding: 4px 8px;
	border-bottom: 8px solid #FFF;
}

.table-type1 th{
	background-color: #d06969 !important;
	color: #FFF;
	line-height: 2;
	vertical-align: middle !important;
}

.table-seminar{
	margin: 0 auto;
	text-align: left;
	width: 100%;
	margin-bottom: 15px;
	background-color: #FFF;
}

.table-seminar .title{
	background-color: #1A68B1;
	font-weight: bold;
	padding: 2px 4px;
	text-align: left;
	color: #FFF;
}
.table-seminar th{
	background-color: #5cc5ef;
	white-space: normal;
	padding: 2px;
	text-align: center;
	font-weight: normal;
	max-width: 80px;
}

.table-seminar td{
	padding: 2px 4px;
}

.table-seminar .reserve{
	background-color: #84a3cb !important;
	text-align: center;
	color: #FFF;
	font-weight: normal;
}

.table-seminar .reserve label{
	margin-bottom: 0;
}

/* BARCODE */
.barcode table {
	width: 290px;
	height: 220px;
	border: 1px #808080 solid;
	float: none;
	margin: 0 auto 15px;
}

.barcode th {
	border: 1px #808080 solid;
	background-color: #333 !important;
	text-align: center;
	color: #FFF;
	height: 40px;
}

.barcode td {
	border: 1px #808080 solid;
	padding: 10px 5px 0;
}

.barcode h2 {
	font-size: 18px;
	margin-bottom: 10px;
}


/* PAGE TOP BUTTON */
#toTop {
    display: none;
    position  : fixed;
    right     : 20px;
    left      : auto !important;
    top       : auto;
    bottom    : 20px;
    cursor    : pointer;
    font-size      : 20px;
    background: #5cc5ef;
    padding   : 16px 20px;
    color     : #fff;
	transition: box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	transition-delay: 0.2s;
	box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26)
}


/**
 *  PAGE UNIQUE MODULE
 */

/* PRIVACY POLICY */
.policy-area {
  text-align: left;
  max-width: 700px;
  height: 350px;
  overflow-y: scroll;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  border: 1px solid #CCC;
  padding: 10px 10px;
  margin: 10px auto 20px;
}

.policy-area h4{
	font-weight: bold;
	font-size: 1.5rem;
}

/* FAQ */
.faq-area ol{
	padding-left: 20px;
	margin-bottom: 30px;
}

.faq-area dt{
	padding: 4px 8px;
	background-color: #1A68B1;
	color: #FFF;
	margin-bottom: 8px;
	font-weight: normal;
}

/* FlOW ARROW */
.flow { padding-bottom: 15px;}

.breadcrumb {
	padding: 0;
	margin: 0 auto;
	background: none;
  	border-radius: 0;
	list-style: none;
	overflow: hidden;
	line-height: 1;
	display: inline-block;
}
.breadcrumb > li + li:before { content: none;}
.breadcrumb li { float: left;}
.breadcrumb li a {
	color: #FFF;
	text-decoration: none;
	padding: 10px 0 10px 30px;
	background-color:#d06969;
	position: relative;
	display: block;
	float: left;
	font-weight: bold;
}
.breadcrumb li:first-child a {padding-left: 10px; }
.breadcrumb li a:before {
	content: " ";
	display: block;
	width: 0;
	height: 0;
	border-top: 50px solid transparent;
	border-bottom: 50px solid transparent;
	border-left: 15px solid white;
	position: absolute;
	top: 50%;
	margin-top: -50px;
	margin-left: 1px;
	left: 100%;
	z-index: 1;
}
.breadcrumb li a:after {
	content: " ";
	display: block;
	width: 0;
	height: 0;
	border-top: 50px solid transparent;
	border-bottom: 50px solid transparent;
	border-left: 15px solid #d06969;
	position: absolute;
	top: 50%;
	margin-top: -50px;
	left: 100%;
	z-index: 2;
}
.breadcrumb li:last-child a {
	padding-right: 10px;
}

/*.breadcrumb li:last-child a {
	background: white !important;
	pointer-events: none;
	cursor: default;
}
.breadcrumb li:last-child a:after { border: 0; }*/
.breadcrumb li.active a{
	background-color: #fff;
	color: #d06969;
}
.breadcrumb li.active a:after{ border-left: #FFF;}
.breadcrumb li.active a:before{ margin-left: 0;}



/**
 *  HEADER
 */

.main-header{
	margin-bottom: 40px;
}

#logo {
    padding: 10px 0 15px;
	clear: both;
	text-align: center;
}
#logo img{
	width: 100%;
	max-width: 350px;
}

/* PRIMARY  NAVI */
.primary-nav{
	padding: 8px;
	text-align: right;
	color: #FFF;
	background-color: #1A68B1;
	display: inline-block;
	border-radius: 0px 0px 4px 4px;
	transition: box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	transition-delay: 0.2s;
	box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26);
	float: right;
}

.primary-nav ul{
	margin-bottom: 0;
}

.primary-nav li{
	display: inline;
}

.primary-nav a{
	color: #FFF;
}

/* GLOBAL NAVI */
#main-nav{
	/*background: #985125;*/
	border-bottom:4px solid #1A68B1;
}

#main-nav .container{
	padding: 0;
}

.navbar {
    min-height: 0;
    margin-bottom: 0;
		background-color: #fff;
}

#main-nav .navbar-nav {
	margin-bottom: -4px;
	border-left: 1px solid #FFF;
	border-right: 1px solid #FFF;
}

.navbar-nav > li {
    float: none;
    width :1%;
    display: table-cell;
		border-left: 1px solid #FFF;
		border-right: 1px solid #FFF;
}

.navbar-nav > li > a {
    padding: 0;
    white-space: nowrap;
    text-align: center;
		border-bottom:4px solid #1A68B1;
}

.navbar{
	border: none;
}

.navbar-header{
	width: 100%;
}

/*.navbar-nav > li:last-child {
	border: none;
}*/

.navbar-nav > li i.icon {
	font-size: 2em;
	display: block;
	margin-bottom: 4px;
}

.navbar-nav > li ul i.icon {
	font-size: 1em;
	display: inline;
	margin-right: 4px;
}

.navbar-nav > li > a {
	line-height: 1.7;
	padding: 12px 8px 10px;
	-webkit-transition: all 300ms cubic-bezier(0, 0.5, 0.5, 1);
	-moz-transition: all 300ms cubic-bezier(0, 0.5, 0.5, 1);
	-o-transition: all 300ms cubic-bezier(0, 0.5, 0.5, 1);
	transition: all 300ms cubic-bezier(0, 0.5, 0.5, 1);
	margin-bottom: 0;
}

/*.navbar .navbar-nav > li > a{
	color: #FFF;
}*/

.navbar .navbar-nav > li > a:hover,
.navbar .navbar-nav > li > a:focus{
	color: #5cc5ef;
	border-bottom-color: #5cc5ef;
	background-color: transparent;
}

.navbar .navbar-nav >.active > a,
.navbar .navbar-nav >.active > a:hover,
.navbar .navbar-nav >.active > a:focus{
	/*color: #c83a48;*/
	/*border-bottom-color: #c83a48;*/
}

.navbar .navbar-nav >.open > a,
.navbar .navbar-nav >.open > a:hover,
.navbar .navbar-nav >.open > a:focus{
	color: #5cc5ef;
	/*border-bottom-color: #c83a48;*/
	background-color: transparent;
}

.navbar-nav .open .dropdown-menu > li > a{
	padding: 10px;
}

/* USER NAME */
.username{
	background-color: #EEE;
	padding: 12px 0 10px ;
	color: #1A68B1;
	font-size: 1.2em;
}

.username p{
	margin-bottom: 0;
}


/**
 *  FOOTER
 */

.footer-block{
	background: transparent;
	padding: 16px 0px;
	background-color: #EEE;
}

.footer-block nav > ul{
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: center;
}

.footer-block nav  > ul > li{
	display: inline-block;
	line-height: 2.4;
	font-size: 12px;
}

.footer-block nav > ul > li:after{
	content: " ｜ ";
}

.footer-block nav > ul > li:last-child:after{
	content: "";
}

.copyright-block{
	background: #1A68B1;
	line-height:60px;
	color:#fff;
	text-align: center;
}

.copyright-block .container{
	padding: 0 30px;
}

.copyright-block a{
	color:#fff;
	display: inline-block;
}
/**
 * SLIDEIN NAVIGATION
 */

#slidemenu{
  display: none;
 }


#slidemenu{
/* background-color: #EEE; */
background: #1A68B1;
color: #FFF;
font-size: 1.2em;
height: 100%;
overflow: hidden;
position: relative;
}

#slidemenu ul{
	position: absolute;
	padding-left: 0;
	width: 100%;
}

#slidemenu .dropdown-menu li a{
	color: #000;
}

#slidemenu li{
	/* border-bottom: 1px #CCC solid; */
	text-align: center;
}

#slidemenu li .icon{
	color: #FFF;
}

#slidemenu .icon{
	margin-right: 2px;
}

#slidemenu a,#slidemenu .nav-group{
	padding: 10px 15px;
	color: #fff;
	display: block;
  font-size: 18px;
  line-height: 1.8;
}

#slidemenu .nav-group a{
	display: inline;
	padding: 0;
}

#slidemenu.show {
 position: fixed;
	top: 0;
	left: 0;
	right: 0;
 height: 87%;
 padding-top: 50px;
 min-width: 320px;
 z-index: 1100;
 }/***追加***/

 .sub-menu{
  background: rgba(0,0,0,.2);
 }/***追加***/

  .sub-menu a{
  font-size: 85% !important;
  text-align: left;
  margin-left: 3rem;
  }/***追加***/

 /* TOGGLE BUTTON */
 .navbar-toggle {
   position: fixed;
   top: 0;
   right: 0;
   /* float: left; */
   margin: 0;
	 background: #1A68B1;
	 background-image    :none;
	 border   :0;
	 border-radius   :0;
	 z-index: 1100;
   height: 40px;
   width: 100%;
   color: #FFF !important;
   text-decoration: none !important;
   font-weight: bold;
 }

 /* .navbar-toggle .left {
	 float: left
 } */

 .navbar-toggle .icon-bar {
   background-color: #FFF;
   display: block;
   width:30px;
   height: 4px;
   position: absolute;
   transition: all .4s;
 }

  .navbar-toggle .icon-bar:nth-of-type(1) {
	top: 10px;
	right: 1rem;
}

  .navbar-toggle .icon-bar:nth-of-type(2) {
	top: 15px;
	right: 1rem;
 }
  .navbar-toggle .icon-bar:nth-of-type(3) {
	top: 24px;
	right: 1rem;
 }

.show .navbar-toggle{
	/* background-color: #d1a64d; */
	height: 40px;
}

.show .navbar-toggle .icon-bar{
	background-color: #fff;
  position: absolute;
}/***追加***/

.show .navbar-toggle .icon-bar:nth-of-type(1) {
  -webkit-transform: translateY(10px) rotate(-45deg);
  transform: translateY(10px) rotate(-45deg);
}/***追加***/

.show .navbar-toggle .icon-bar:nth-of-type(2) {
  opacity: 0;
}/***追加***/

.show .navbar-toggle .icon-bar:nth-of-type(3) {
  -webkit-transform: translateY(-7px) rotate(45deg);
  transform: translateY(-7px) rotate(45deg);
}/***追加***/

.dl-low dt{
	margin-bottom: .5rem;
}/* **追加** */
.dl-low dd{
	padding-left: 2em;
	border-bottom: 1px #CCC dashed;
	padding-bottom: 15px;
    margin-bottom: 15px;
}/* **追加** */
.dl-low ol{
	padding-left: 1.5em;
}/* **追加** */

/**
 * RESPONSIVE
 */

@media (min-width: 1022px) {
	.container {
	  width: 100rem;
	}
}

@media (max-width: 797px) {
	.primary-nav {
	  padding: 2px 12px 4px;
	}

	.primary-nav.navbar-default .navbar-collapse{
		border: none;
	}

	.primary-nav .navbar-toggle{
		display: inline-block;
		padding: 8px 0;
		margin: 0;
	}

	.primary-nav nav{
		box-shadow:none;
		font-size: 1.2em;
	}

	#logo{
		margin-top: 0;
	}

	.navbar-nav {
	  float: left;
	  margin: 0;
	}

	.navbar-nav .open .dropdown-menu{
		position: absolute;
		top: 100%;
		left: 0;
		z-index: 1000;
		float: left;
		min-width: 160px;
		background-color: #fff;
		border: 1px solid #ccc;
		border: 1px solid rgba(0,0,0,0.15);
		border-radius: 4px;
		-webkit-box-shadow: 0 6px 12px rgba(0,0,0,0.175);
		box-shadow: 0 6px 12px rgba(0,0,0,0.175);
		background-clip: padding-box;
	}

	.col-md-12,.col-xs-12{
		padding: 0;
	}

	.policy-area {
		margin: 0 24px 15px;
	}

	#category-list li,
	.faq-area ol li{
		margin-bottom: 8px;
	}

	.form-inline .form-group {
	  display: inline-block;
	}
}

@media (max-width: 598px) {
  ul {
    padding-left: 0;
  }
	#toTop{
		padding: 4px 10px;
	}

	.main-header {
		margin-bottom: 28px;
	}

	.navbar .navbar-nav>li>a{
		font-size: 0.72em;
		padding: 6px 8px 4px;
	}

	.table-rsp th, .table-rsp td{
		  width: 100%;
		  display: list-item;
		  padding: 2px 0;
		  word-break: break-all;
		  word-wrap: break-word;
		  list-style: none;
	}

	/*table th{
		background-color: #f0dfa4 !important;
	}*/

	table thead th{
		background-color: #1A68B1 !important;
	}

	table td{
		background: none !important;
	}

}

@media (max-width: 510px) {
	.copyright-block .container{
		font-size: 0.82em;
	}

	td .form-control{
		width: 100%;
	}

	.breadcrumb li a{
	  font-size: 0.82em;
	  padding: 10px 0 8px 24px;
	}

	h2{font-size: 1.4em;}

	/* グローバルナビはみ出し対策 */
	.navbar .navbar-nav > li > a {
		width: 60px;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
		margin: 0 auto;
	}
	.navbar-nav .open .dropdown-menu{
		width: 170px;
	}
	.navbar-nav .open .dropdown-menu a{
		white-space: normal;
	}
	.table select{
		max-width: 260px;
		overflow: hidden;
	}

}

/* 印刷用 */
@media print{
  #main-nav, #toTop, .fa{
		display: none !important;
	}
	#logo img{
		width: 350px;
	}
}
