@charset "utf-8";
body {
	font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
	font-size: 14px;
	line-height: 1.42857143;
	color: #333;
	background-color: #fff;
	margin: 0;
}

.maxWidth {
	display: block;
	max-width: 1200px;
	margin: 0 auto;
}

.text-d {
	color: #333;
}

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/* SPACE */
.mg-0 { margin: 0 !important;}
.mgt-0 { margin-top: 0 !important;}
.mgr-0 { margin-right: 0 !important;}
.mgb-0 { margin-bottom: 0 !important;}
.mgl-0 { margin-left: 0 !important;}
.mgy-0 { margin-top: 0 !important; margin-bottom: 0 !important;}
.mgx-0 { margin-right: 0 !important; margin-left: 0 !important;}
.mg-5 { margin: 5px !important;}
.mgt-5 { margin-top: 5px !important;}
.mgr-5 { margin-right: 5px !important;}
.mgb-5 { margin-bottom: 5px !important;}
.mgl-5 { margin-left: 5px !important;}
.mgy-5 { margin-top: 5px !important; margin-bottom: 5px !important;}
.mgx-5 { margin-right: 5px !important; margin-left: 5px !important;}
.mg-10 { margin: 10px !important;}
.mgt-10 { margin-top: 10px !important;}
.mgr-10 { margin-right: 10px !important;}
.mgb-10 { margin-bottom: 10px !important;}
.mgl-10 { margin-left: 10px !important;}
.mgy-10 { margin-top: 10px !important; margin-bottom: 10px !important;}
.mgx-10 { margin-right: 10px !important; margin-left: 10px !important;}
.mg-15 { margin: 15px !important;}
.mgt-15 { margin-top: 15px !important;}
.mgr-15 { margin-right: 15px !important;}
.mgb-15 { margin-bottom: 15px !important;}
.mgl-15 { margin-left: 15px !important;}
.mgy-15 { margin-top: 15px !important; margin-bottom: 15px !important;}
.mgx-15 { margin-right: 15px !important; margin-left: 15px !important;}
.pg-0 { padding: 0 !important;}
.pgt-0 { padding-top: 0 !important;}
.pgr-0 { padding-right: 0 !important;}
.pgb-0 { padding-bottom: 0 !important;}
.pgl-0 { padding-left: 0 !important;}
.pgy-0 { padding-top: 0 !important; padding-bottom: 0 !important;}
.pgx-0 { padding-right: 0 !important; padding-left: 0 !important;}
.pg-5 { padding: 5px !important;}
.pgt-5 { padding-top: 5px !important;}
.pgr-5 { padding-right: 5px !important;}
.pgb-5 { padding-bottom: 5px !important;}
.pgl-5 { padding-left: 5px !important;}
.pgy-5 { padding-top: 5px !important; padding-bottom: 5px !important;}
.pgx-5 { padding-right: 5px !important; padding-left: 5px !important;}
.pg-10 { padding: 10px !important;}
.pgt-10 { padding-top: 10px !important;}
.pgr-10 { padding-right: 10px !important;}
.pgb-10 { padding-bottom: 10px !important;}
.pgl-10 { padding-left: 10px !important;}
.pgy-10 { padding-top: 10px !important; padding-bottom: 10px !important;}
.pgx-10 { padding-right: 10px !important; padding-left: 10px !important;}
.pg-15 { padding: 15px !important;}
.pgt-15 { padding-top: 15px !important;}
.pgr-15 { padding-right: 15px !important;}
.pgb-15 { padding-bottom: 15px !important;}
.pgl-15 { padding-left: 15px !important;}
.pgy-15 { padding-top: 15px !important; padding-bottom: 15px !important;}
.pgx-15 { padding-right: 15px !important; padding-left: 15px !important;}

/*header .menu a { width: 12.5%; height: 85px;}
header .menu .category1 { background-image: url('/menu-icons/icon-1.png'); border-top-color: #FF0000;}
header .menu .category2 { background-image: url('/menu-icons/icon-2.png'); border-top-color: #FF82D9;}
header .menu .category3 { background-image: url('/menu-icons/icon-3.png'); border-top-color: #7DBEDC;}
header .menu .category4 { background-image: url('/menu-icons/icon-4.png'); border-top-color: #A0C83C;}
header .menu .category5 { background-image: url('/menu-icons/icon-5.png'); border-top-color: #603813;}
header .menu .category6 { background-image: url('/menu-icons/icon-6.png'); border-top-color: #787878;}
header .menu .category7 { background-image: url('/menu-icons/icon-7.png'); border-top-color: #1D8440;}
header .menu .category8 { background-image: url('/menu-icons/icon-8.png'); border-top-color: #EC9081;}*/
@media print, screen and (min-width: 768px) {
header .menu a { width: 12.5%; height: 85px;}
header .menu .category1 { background-image: url('/menu-icons/icon-1.png'); border-top-color: #FF0000;}
header .menu .category2 { background-image: url('/menu-icons/icon-2.png'); border-top-color: #FF82D9;}
header .menu .category3 { background-image: url('/menu-icons/icon-3.png'); border-top-color: #7DBEDC;}
header .menu .category4 { background-image: url('/menu-icons/icon-4.png'); border-top-color: #A0C83C;}
header .menu .category5 { background-image: url('/menu-icons/icon-5.png'); border-top-color: #603813;}
header .menu .category6 { background-image: url('/menu-icons/icon-6.png'); border-top-color: #787878;}
header .menu .category7 { background-image: url('/menu-icons/icon-7.png'); border-top-color: #1D8440;}
header .menu .category8 { background-image: url('/menu-icons/icon-8.png'); border-top-color: #EC9081;}
}
@media only screen and  (max-width: 767px) {
header .toggle a { padding: 0px 2px !important;}
header .menu a { width: 25%; height: 40px; display: table; width: 100%;}
header .menu .category1 { border-top-color: #FF0000;}
header .menu .category2 { border-top-color: #FF82D9;}
header .menu .category3 { border-top-color: #7DBEDC;}
header .menu .category4 { border-top-color: #A0C83C;}
header .menu .category5 { border-top-color: #603813;}
header .menu .category6 { border-top-color: #787878;}
header .menu .category7 { border-top-color: #1D8440;}
header .menu .category8 { border-top-color: #EC9081;}
header .menu h2 { display: table-cell; vertical-align: middle; font-size: 12px;}
}
header .toggle{ display: flex !important}
header .mobile-menu { display: none !important}

.textblock {
	display: inline-block;
}

.ImgPc {
	width: 100%;
	text-align: center;
	margin: 10px 0;
}
.ImgSp {
	width: 100%;
	text-align: center;
	margin: 10px 0;
}
@media print, screen and (min-width: 768px) {
.ImgSp {
	display: none;
}
}
@media only screen and  (max-width: 767px) {
.ImgPc {
	display: none;
}
}

input,
button,
select,
textarea {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}
a {
	color: #337ab7;
	text-decoration: none;
}
a:hover,
a:focus {
	color: #23527c;
	text-decoration: underline;
}
a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}
a:focus {
	outline: 5px auto -webkit-focus-ring-color;
	outline-offset: -2px;
}
.clearboth {
	font-size: 1px;
	height: 1px;
	line-height: 1px;
	clear: both;
}
.menu .item h2 {
	color: #337ab7;
	text-decoration: none;
}

figure {
	margin: 0;
}

header .menu .item {
	text-align: center;
}

.search .input-group {
	width: 100%;
	max-width: 480px;
}
.input-group-btn:last-child>.btn, .input-group-btn:last-child>.btn-group {
	z-index: 2;
	margin-left: -1px;
}
.input-group .form-control:last-child, .input-group-addon:last-child, .input-group-btn:first-child>.btn-group:not(:first-child)>.btn, .input-group-btn:first-child>.btn:not(:first-child), .input-group-btn:last-child>.btn, .input-group-btn:last-child>.btn-group>.btn, .input-group-btn:last-child>.dropdown-toggle {
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}
.btn-default {
	text-shadow: 0 1px 0 #fff;
	background-image: -webkit-linear-gradient(top,#fff 0,#e0e0e0 100%);
	background-image: -o-linear-gradient(top,#fff 0,#e0e0e0 100%);
	background-image: -webkit-gradient(linear,left top,left bottom,from(#fff),to(#e0e0e0));
	background-image: linear-gradient(to bottom,#fff 0,#e0e0e0 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	background-repeat: repeat-x;
	border-color: #dbdbdb;
	border-color: #ccc;
}

.tdmargin2 td, th {
	margin: 2px !important;
	padding: 0px !important;
	display: inline-block;
}

/* 丸囲み文字 <span class="maru_em maru_red1">あ</span> */
.maru_half {
	font-family: Meiryo;
    border-radius: 50%;
	font-size: 75%;
    line-height: 1em;
    padding-top: 0.1em;
    padding-left: 0.5em;
    padding-right: 0.5em;
}
.maru_em {
	font-family: Meiryo;
    border-radius: 50%;
	font-size: 75%;
    line-height: 1em;
    padding-top: 0.1em;
    padding-left: 0.35em;
    padding-right: 0.35em;
}
.maru_red1 {
      color: red;
      border: 1px solid red;
}
.maru_red2 {
      color: #fff;
      border: 1px solid red;
      background: red;
}
.maru_blue1 {
      color: blue;
      border: 1px solid blue;
}
.maru_blue2 {
      color: #fff;
      border: 1px solid blue;
      background: blue;
}

/* テーブル */
.tabledl dl {
	display:flex;
	flex-wrap: wrap;
	border: 1px solid #666;
	border-top: none;
}
.tabledl dt {
	width: 25%;
	padding: 10px;
	box-sizing: border-box;
	border-top: 1px solid #666;
	text-align: center;
}
.tabledl dd {
	padding: 10px;
	margin: 0;
	border-left: 1px solid #666;
	border-top: 1px solid #666;
	width: 75%;
	box-sizing: border-box;
}
@media screen and (max-width: 768px) {
	.tabledl dl {
		flex-flow: column nowrap;
	}
	.tabledl dt, .tabledl dd{
		width: 100%;
	}
	.tabledl dd {
		border-left: none;
	}
}

/* Tenmei */
.Tenmei {
	display: inline-block;
}
.TenmeiBack {
	display: block;
	padding-bottom: 5px;
	border-bottom: #666 solid 2px;
}

/* MenuBack */
.MenuBack {
	display: block;
	padding: 5px 0;
	margin: 5px 0;
	border: 2px solid #666;
	border-right: 0;
	border-left: 0;
}

/* PresentBack */
.PresentBack {
	display: block;
	background: #FFFBC7;
	padding: 10px;
}

/* Text */
.text-red{ color: #F00;}
.text200p{ font-size: 200%;}
.text190p{ font-size: 190%;}
.text180p{ font-size: 180%;}
.text170p{ font-size: 170%;}
.text160p{ font-size: 160%;}
.text150p{ font-size: 150%;}
.text140p{ font-size: 140%;}
.text130p{ font-size: 130%;}
.text120p{ font-size: 120%;}
.text110p{ font-size: 110%;}
.text90p{ font-size: 90%;}
.text80p{ font-size: 80%;}
.text70p{ font-size: 70%;}
.text60p{ font-size: 60%;}
.text50p{ font-size: 50%;}

/* Image 100% */
.imgW100p {
    width: 100%;
}
.imgH100p {
    height: 100%;
}
.imgMW100p {
    max-width: 100%;
}
.imgMH100p {
    max-height: 100%;
}
.imgMWH100p {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}
.imgMWH100pT {
	max-width: 100%;
	max-height: 100%;
	object-fit: cover;
}

/* Image object-fit */
.ofi img {
	border: 0;
	background: #eee;
}
.ofi-cover {
	object-fit: cover;
	object-position: 50% 50%;
	font-family: 'object-fit: cover; object-position: 50% 50%;';
}
.ofi-contain {
	object-fit: contain;
	font-family: 'object-fit: contain;';
}

/* 正方形 */
.aspect-container {
    position: relative;
    width: 100%;
}
.aspect-container:before {
    content:"";
    display: block;
    padding-top: 100%;
}
/* 3x4四角 */
.aspect-container3x4 {
    position: relative;
    width: 100%;
}
.aspect-container3x4:before {
    content:"";
    display: block;
    padding-top: 133%;
}
/* 4x3四角 */
.aspect-container4x3 {
    position: relative;
    width: 100%;
}
.aspect-container4x3:before {
    content:"";
    display: block;
    padding-top: 75%;
}
/* 4x2四角 */
.aspect-container2x1 {
    position: relative;
    width: 100%;
}
.aspect-container2x1:before {
    content:"";
    display: block;
    padding-top: 50%;
}
/* 四角内BOX */
.aspect-content {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
	text-align: center;
}

/* col 高さ揃え <div class="row row-eq-height"> */
.row-eq-height {
    display: flex;
    flex-wrap: wrap;
}

/* col 隙間を削除 */
.no-gutters {
	margin: 0;
	padding: 0;
}
 
.no-gutters　> .col,
.no-gutters　> [class*="col-"] {
	margin: 0;
	padding: 0;
}

/* マウスオーバー オーバーレイ キャプション */
.imgCaption {
	width: 100%;
	height: 100%;
	overflow: hidden;
	margin: 10px 8px 10px 16px;
	position: relative;
}
.imgCaption .caption {
	font-size: 90%;
	text-align: center;
	color: #fff;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}
.imgCaption .mask {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;	/* マスクを表示しない */
	background-color: rgba(0,0,0,0.4);
	-webkit-transition: all 0.6s ease;
	transition: all 0.6s ease;
}
.imgCaption:hover .mask {
	opacity: 1;	/* マスクを表示する */
	padding-top: 10px;	/* ホバーで下にずらす */
	padding-right: 10px;
	padding-left: 10px;
}

/* ↓フキダシ用↓ */
.cp_qa *, .cp_qa *:after, .cp_qa *:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cp_qa dt,.cp_qa dd {
	position: relative;
	padding: 0.5em;
	box-shadow: 0px 1px 1px rgba(0,0,0,0.2);
	border-radius: 0.3em;
}
.cp_qa dt {
	margin: 0 60px 10px 60px;
	background: #ffe0b2;
	font-weight: normal !important;
}
.cp_qa dd {
	margin: 0 60px 10px 60px;
	background: #b2ebf2;
	font-weight: normal !important;
}
/* 吹き出し▶︎ */
.cp_qa dt::before,.cp_qa dd::before{
	position: absolute;
	z-index: 99;
	top: 0.5em;
	display: inline-block;
	width: 0;
	height: 0;
	content: '';
	border-style: solid;
}
/* 質問吹き出し▶︎ */
.cp_qa dt::before {
	left: -1em;
	border-width: 8px 16px 8px 0;
	border-color: transparent #ffe0b2 transparent transparent;
}
/* 答え吹き出し▶︎ */
.cp_qa dd::before {
	right: -1em;
	border-width: 8px 0 8px 16px;
	border-color: transparent transparent transparent #b2ebf2;
}
/* ?!アイコン */
.cp_qa dt::after,.cp_qa dd::after {
	font-size: 2.5em;
	position: absolute;
	top: 0;
	color: #000000;
	display: inline-block;
	width: 60px;
	height: 60px;
}
/* ?アイコン */
.cp_qa dt::after {
	left: -70px;
	margin: 0;
	padding: 0;
	content: '';
}
/* !アイコン */
.cp_qa dd::after {
	right: -70px;
	margin: 0;
	padding: 0;
	content: '';
}
.cp_qa dt.staff01::after, .cp_qa dd.staff01::after {
	background: url(/img/staff_icon/staff_01.png);
	background-size: contain;
}
.cp_qa dt.staff02::after, .cp_qa dd.staff02::after {
	background: url(/img/staff_icon/staff_02.png);
	background-size: contain;
}
.cp_qa dt.staff03::after, .cp_qa dd.staff03::after {
	background: url(/img/staff_icon/staff_03.png);
	background-size: contain;
}
.cp_qa dt.staff04::after, .cp_qa dd.staff04::after {
	background: url(/img/staff_icon/staff_04.png);
	background-size: contain;
}
.cp_qa dt.staff05::after, .cp_qa dd.staff05::after {
	background: url(/img/staff_icon/staff_05.png);
	background-size: contain;
}
.cp_qa dt.staff06::after, .cp_qa dd.staff06::after {
	background: url(/img/staff_icon/staff_06.png);
	background-size: contain;
}
.cp_qa dt.staff07::after, .cp_qa dd.staff07::after {
	background: url(/img/staff_icon/staff_07.png);
	background-size: contain;
}
.cp_qa dt.staff08::after, .cp_qa dd.staff08::after {
	background: url(/img/staff_icon/staff_08.png);
	background-size: contain;
}
.cp_qa dt.staff09::after, .cp_qa dd.staff09::after {
	background: url(/img/staff_icon/staff_09.png);
	background-size: contain;
}
.cp_qa dt.staff10::after, .cp_qa dd.staff10::after {
	background: url(/img/staff_icon/staff_10.png);
	background-size: contain;
}
.cp_qa dt.staff11::after, .cp_qa dd.staff11::after {
	background: url(/img/staff_icon/staff_11.png);
	background-size: contain;
}
.cp_qa dt.staff12::after, .cp_qa dd.staff12::after {
	background: url(/img/staff_icon/staff_12.png);
	background-size: contain;
}
/* ↑フキダシ用↑ */