@charset "UTF-8";
/* Property　CSS Document */



  a.bright:hover img {
	/*filter: grayscale(1);*/
	filter: brightness(60%) saturate( 1 );
	-webkit-filter: brightness(60%) saturate( 1 );
	
 }
 
 
 .match { /* match height */
 }
 
/* ========================================================================== 
:: Spacer CSS
========================================================================== */ 

.p-spacer {
	clear: both;
	position: relative;
	border: none;
	padding: 0;
	margin: 0;
}
.p-spacer-xlg {
	height: 150px;
}
.p-spacer-lg {
	height: 100px;
}
.p-spacer-md {
	height: 80px;
}

.p-spacer-sm {
	height: 50px;
}

.p-spacer-xs {
		height: 30px;
	}

.spacer-s {
  height: 10px;
}

@media screen and (max-width: 479px) {	
	
	.p-spacer-xlg {
		height: 70px;
	}
	.p-spacer-lg {
		height: 60px;
	}
	.p-spacer-md {
		height: 50px;
	}
	.p-spacer-sm {
		height: 30px;
	}
	
	.p-spacer-xs {
		height: 20px;
	}
	
	.p-spacer-xxs {
		height: 20px;
	}
	.spacer-s {
		height: 5px;
	}
}

/* ==========================================================================
TEXT Style
========================================================================== */

.p-serif {
	/*font-family: 'Noto Serif', serif !important;*/
	font-family: "Times New Roman", Times, serif !important;
	font-weight:400;
}

.p-serif-noto {
	font-family: 'Noto Serif', serif !important;
	font-weight:normal;
}

.p-serif3 {
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif !important;
}

.p-sans-serif {
	font-family: 'Noto Sans JP', sans-serif !important;
	font-weight:normal;
}

.p-left{
}


@media screen and (max-width: 479px) {
	
	.p-left{
		text-align:left !important;
	}
}

.text-85{
	font-size:85% !important;
}

.text-90{
	font-size:90% !important;
}
.text-110{
	font-size:110% !important;
}
.text-120{
	font-size:120% !important;
}
.text-130{
	font-size:130% !important;
}
.text-140{
	font-size:140% !important;
}
.text-150{
	font-size:150% !important;
}


/* ==========================================================================
UL LI
========================================================================== */

ul.list-disc li{
	list-style:disc;
	margin-left:20px;
	margin-bottom:10px;
}

ul.list-disc-xs li{
	list-style:disc;
	margin-left:20px;
	margin-bottom:0px;
	font-size:90%;
}

ul.list-inline{
	padding:0;
}

ul.list-inline li{
	padding-right:0px;
}

ol.list-num li{
	list-style:decimal;
	margin-left:1em;
	line-height:20px;
}


/* ==========================================================================
ICON
========================================================================== */

.p-icon-star{
	
}
.p-icon-star:before {
	font-family: 'icofont';
	speak: none;
	font-style: normal;
	font-weight: bold;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	content: "\f0e5";
    margin-right: 3px;
	color:#ea5550;
}

/*
.p-icon-trans:before {
	font-family: 'icofont';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	content: "\f0fa";
    margin-right: 3px;
	color:#7d7b83;
}
*/

/* ==========================================================================
:::well ::: Flexible Box
========================================================================== */



.well-yellow {
	color: #6f5436;
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #fcf8e3;
  border: 1px solid  #faebcc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
}

.well-white {
	background-color:#FFF;
	min-height: 20px;
  padding: 10px;
  margin-bottom: 20px;
  border: 1px solid  #FFF;
  border-radius: 4px;
   -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .0);
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .0);

}
.well-white p{
	vertical-align: middle;
}



.flexiblebox {
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
 align-items: center; /* 縦方向中央揃え */
 -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
 justify-content: center; /* 横方向中央揃え */
}

/* ==========================================================================
H LINE
========================================================================== */

.h-line{
	position: relative;
	padding-bottom: .5em;
	border-bottom: 3px solid #a3d6cc;

}
.h-line:after {
	position: absolute;
	bottom: -3px;
	left: 0;
	z-index: 2;
	content: '';
	width: 20%;
	height: 3px;
	background-color: #00ac97;
}

.h3-line,
.h4-line{
	font-size: 24px;
	position: relative;
	padding-bottom: .3em;
	border-bottom: 4px solid #ccc;
	/*color:#111;*/
	letter-spacing:1px;
	font-weight:bold;
	padding-top:10px;
}

.h4-line {
	font-size:20px;
	padding-top:0px;
}

.h3-line:after,
.h4-line:after {
	position: absolute;
	bottom: -4px;
	left: 0;
	z-index: 2;
	content: '';
	width: 20%;
	height: 4px;
	background-color: #00ac97;
}

.p-first{
}

.p-first:first-letter {
	margin-right: 0em;
	font-size: 1.5em;
}

@media screen and (max-width: 479px) {
	
	.p-first:first-letter {
	margin-right: 0em;
	font-size: 100%;
}
}

.h3-line span{
	font-size:75%;
	font-weight:normal;
	margin-left:10px;
	color:rgba(0,0,0,0.6);
	letter-spacing:0;
}

/* ==========================================================================
H line
========================================================================== */

.has-lines{
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.has-lines:before,
.has-lines:after{
  content: '';
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 1px;
  background: #7d7b83;
  min-width: 20px;
  display: inline-block;
  vertical-align: middle;
}
.has-lines:before {
  margin-right: 8px;
}
.has-lines:after{
  margin-left: 8px;
}

@media screen and (max-width: 479px) {
	.has-lines:before,
	.has-lines:after {
		margin-right: 0px;
		margin-left: 0px;
		display: none;
	}
}

.has-fade{
	color:#444;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.has-fade:before,
.has-fade:after{
  content: '';
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 1px;
  background: #7d7b83;
  min-width: 20px;
  display: inline-block;
  vertical-align: middle;
	
}
.has-fade:before {
  margin-right: 15px;
  background: -webkit-linear-gradient(-45deg, transparent, #ccc 10%, #ccc 90%, transparent);
	background: linear-gradient(-45deg, transparent, #999 10%, #ccc 90%, transparent);
}
.has-fade:after{
  margin-left: 15px;
  background: -webkit-linear-gradient(-45deg, transparent, #ccc 10%, #ccc 90%, transparent);
	background: linear-gradient(-45deg, transparent, #ccc 10%, #999 90%, transparent);
}

@media screen and (max-width: 479px) {
	
	.has-fade{
		display:block;
		/*padding-top:15px;*/
	}
	
	.has-fade:before,
	.has-fade:after {
		margin-right: 0px;
		 display: none;
	}
	
}

.has-lines-left{
	margin-bottom:20px;
	font-weight:bold;
}

.has-lines-left{
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: left;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}


.has-lines-left:after {
  content: '';
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 1px;
  min-width: 20px;
  display: inline-block;
  vertical-align: middle;
  background: -webkit-linear-gradient(left, #818078, transparent);
	background: linear-gradient(to right, #818078, transparent);
}

.has-lines-left:after {
  margin-left: 15px;
}

@media screen and (max-width: 479px) {
	
	.has-lines-left{
		font-size:100%;
		display:block;
	}
	
	.hhas-lines-left:after{
		margin-right: 0px;
		 display: none;
		 background:none;
	}
	
}

/* ==========================================================================
Oblic
========================================================================== */


.has-oblic{
	margin:20px 0px;
	font-weight:bold;
}

.has-oblic{
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: left;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}


.has-oblic:after {
  content: '';
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 6px;
  min-width: 20px;
  display: inline-block;
  vertical-align: middle;
  background: url(../img/core-img/hr-oblic.png) repeat-x 0 0;
}

.has-oblic:after {
  margin-left: 5px;
}

@media screen and (max-width: 479px) {
	
	.has-oblic{
		font-size:100%;
	}
	
	.has-oblic:after{
		margin-right: 0px;
		 display: none;
	}

}


/* ==========================================================================
Helper Classes
========================================================================== */



hr {
  margin-top: 20px;
  margin-bottom: 20px;
  border: 0;
  border-top: 1px solid rgba(92,63,62,0.2);
}

hr.hr-white {
	border-top: 1px solid rgba(255,255,255,0.5);
}

hr.space10,
hr.space20,
hr.space30{
	border-left: 0;
	border-right: 0;
	border-bottom: 0;
	border-top: 1px dotted #ccc;
}

hr.space10 {
	margin-top: 10px;
	margin-bottom: 30px;
}

hr.space20 {
	margin-top: 20px;
	margin-bottom: 20px;
}

hr.space30 {
	margin-top: 30px;
	margin-bottom: 30px;
}

hr.hr-dot{
	border-top: 1px dotted rgba(255, 255, 255, 0.5);
	border-bottom: 1px dotted rgba(255, 255, 255, 0.1);
}


/* ========================================================================== 
:: TEXT CSS
========================================================================== */ 

	.p-white{
		color:#FFF !important;
	}
	
	
	.p-facebook{
		color:#3D5A98;
	}
	
	.p-letter-spacing {
	letter-spacing: 1px;
}

.color-pink,
	.p-pink{
		color:#de82a7;
}

.color-pink{
		color:#e95388 !important;
}


	
.color-red,
.p-red{
	color:#D33F3F !important;
	font-weight:500;
}

.color-green{
	color:#00ac97;
	font-weight:500;
}

.p-orange{
	color:rgba(243,111,21,1.00);
	font-weight:500;
}

.p-violet{
	color:#5a4498;
}

.p-price{
	color: #D33F3F;
	font: 700 120% "Lucida Console", Monaco, monospace;
	margin-left: 0.5em;
	font-family: Arial, Helvetica, sans-serif;
}


/* ========================================================================== 
LABEL
========================================================================== */

.label-red{
	background-color:#e8383d;
}

.label-green{
	background-color:#00947a;
}

.label-blue{
	background-color:#003f8e;
}

.label-sepia{
	background-color:#622d18;
}

/* ========================================================================== 
BTN
========================================================================== */

.btn-md {
	padding: 12px 40px;
}

@media screen and (max-width: 479px) {
	
	.btn-md {
	padding: 12px 12px;
	}
	
}


.btn-0 {
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	-ms-border-radius: 0px;
	-o-border-radius: 0px;
	border-radius: 0px;
}
.radius {
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	-ms-border-radius: 4px;
	-o-border-radius: 4px;
	border-radius: 4px;
}

.radius0 {
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	-ms-border-radius: 0;
	-o-border-radius: 0;
	border-radius: 0;
}

/* ==========================================================================
Button & Label COLOR
========================================================================== */

/*--------------------------------- DEFAULT */
/*
.btn-default {
  background-color: rgba(255, 255, 255, 0.5);
  border-color: rgba(178,146,58,0.8); 
}

.btn-default.focus {
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}
.btn-default:hover {
  background-color: #5C3F3E !important;
  border-color: #5C3F3E;
}
*/
/*
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  background-color: #e6e6e6;
  border-color: #adadad;
}

.btn-default ,
.btn-default.focus,
.btn-default:hover,
.btn-default:active {
	color: #333;
}
*/

/*---------------------------------alpha */

.btn-alpha {
	box-shadow: none !important;
	border: 1px solid rgba(255, 255, 255, .8)  !important;
	background: rgba(200, 200, 200, 0.1);
	color: rgba(255, 255, 255, 1.0);
}

.btn-alpha:hover, .btn-alpha:active, .btn-alpha:focus {
	border: 1px solid rgba(255, 255, 255, .5) !important;
	background: rgba(0, 0, 0, .6);
	color: rgba(255, 255, 255, 1.0);
}

/*---------------------------------BLACK */
.btn-black,
.label-black {
	background-color: #333;
}

.btn-black:hover,
.btn-black:focus,
.label-black[href]:hover,
.label-black[href]:focus {
	background-color: #000;
}

/*---------------------------------BLUE */
.btn-blue,
.label-blue {
	background-color: #428bca;
}
.btn-blue:hover,
.btn-blue:focus,
.label-blue[href]:hover,
.label-blue[href]:focus {
	background-color: #3071a9;
}

/*---------------------------------GREEN */
.btn-green,
.label-green {
	background-color: #5cb85c;
}
.btn-green:hover,
.btn-green:focus,
.label-green[href]:hover,
.label-green[href]:focus {
	/*background-color: #449d44;*/
    background-color: #282e3c;
}

/*---------------------------------CYAN */
.btn-cyan,
.label-cyan {
	background-color: #28bbf8;
	border-radius: 0;
}

.btn-cyan:hover,
.btn-cyan:focus,
.label-cyan[href]:hover,
.label-cyan[href]:focus {
  background-color: #282e3c;
}


/*---------------------------------PINK */
.btn-pink{
    background-color: #de82a7;
}

.btn-pink:hover,
.btn-pink:focus{
    background-color: #e95388;
}


/*---------------------------------ORANGE */
.btn-orange,
.label-orange {
  background-color: #ed6d46;
}
.btn-orange:hover,
.btn-orange:focus,
.label-orange[href]:hover,
.label-orange[href]:focus {
  background-color: #ec971f;
}

/*---------------------------------RED */
.btn-red,
.label-red {	
  background-color: #d9534f;
  /*border:1px solid #d9534f;*/
}
.btn-red:hover,
.btn-red:focus,
.label-red[href]:hover,
.label-red[href]:focus {
    /*background-color: #c9302c;*/
    background-color: #282e3c;
}

.btn-black, .btn-blue, .btn-green, .btn-cyan, .btn-orange, .btn-red, .btn-pink,
.label-black, .label-blue, .label-green, .label-cyan, .label-orange, .label-red{
	color: #fff;
}

.btn-black:hover, .btn-blue:hover, .btn-green:hover, .btn-cyan:hover, .btn-orange:hover, .btn-red:hover,.btn-pink:hover,
.btn-black:focus, .btn-blue:focus, .btn-green:focus, .btn-cyan:focus, .btn-orange:focus, .btn-red:focus {
	color: #fff;
}


/*--------------------------------- BOOT CLOUR */
/*
.btn-primary {
	background: #28bbf8;
}
.btn-success {
	background: #00e195;
}
.btn-danger {
	background: #e02745;
}
.btn-info {
	background: #0bbff2;
}
.btn-warning {
	background: #ffd042;
}
.btn-primary, .btn-success, .btn-info, .btn-warning, .btn-danger {
	border-color: transparent;
}
*/

.btn-default:hover, .btn-default:active, .btn-default:focus,
.btn-primary:hover, .btn-primary:active, .btn-primary:focus,
.btn-success:hover, .btn-success:active, .btn-success:focus,
.btn-info:hover, .btn-info:active, .btn-info:focus,
.btn-warning:hover, .btn-warning:active, .btn-warning:focus,
.btn-danger:hover, .btn-danger:active, .btn-danger:focus  {
	background: #282e3c;
	color: #ffffff;
}

/*
.label-amber {
  background-color: rgba(178,146,58,1.0);
}
*/

.label-border {
	border: 1px solid rgba(92,63,62,0.7);
	color: rgba(92,63,62,1.00);
	vertical-align: text-top;
}

.label-pink {
  background-color: #ea618e;
}

.label-blue {
  background-color: #003f8e;
}
.label-yellow {
  background-color: #fac559;
}

/*
==========================================================================
:: Lebel Phone
==========================================================================
*/

.label-phone {
	font: 500 20px "Lucida Console", Monaco, monospace;
	margin-right:24px;
}

.label-phone::before {
    content: 'お問合せ';
    font-size: 12px;
    font-weight: normal;
	padding: 4px 1.5em;
    line-height: 1.0;
    margin-right: 5px;
    display: block;
	color: #FFF;
    border-radius: 2px;
	background-color: #4753a2;
    float: left;
}

.label-phone i {
	color:#666;
}


/* ========================================================================== 
:: row  margine
========================================================================== */ 

/*------------------------------------------------
.row L＋R Margine = 0 
------------------------------------------------*/

.row--nopadding {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/*------------------------------------------------
Inside L＋R　Padding：0
------------------------------------------------*/

.row--nopadding > [class*="col-"] {
  padding-left: 0 !Important;
  padding-right: 0 !Important;
}

/*------------------------------------------------*/
/* COL padding BASE
------------------------------------------------*/
.row--padding{
	padding-left: 5px !Important;
	padding-right: 5px !Important;
}

.row--padding > [class*="col-"] {
  padding-left: 5px !Important;
  padding-right: 5px !Important;
}

@media screen and (max-width: 479px) {	
.xs--padding,
.row--padding{
	padding-left: 5px !Important;
	padding-right: 5px !Important;
}

}

.nopadding {
	padding: 0px !important;
	margin: 0px !important;
}



/* ==========================================================================
Margin　
========================================================================== */

.mt {
	margin-top: 50px;
}
.mb {
	margin-bottom: 50px;
}
.mtb {
	margin-top: 50px;
	margin-bottom: 50px;
}

.mtb20 {
	margin-top: 20px;
	margin-bottom: 20px;
}
.mtb30 {
	margin-top: 30px;
	margin-bottom: 30px;
}
.mtb100 {
	margin-top: 100px;
	margin-bottom: 100px;
}
.mA10{
	margin:10px;
}

.mT0{
	margin-top: 0px!important;
}
.mT10{
	margin-top:10px;
}

.mT20{
	margin-top:20px;
}

.mT30{
	margin-top:30px;
}
.mT40 {
	margin-top: 40px;
}
.mT50 {
	margin-top: 50px;
}

.mB0{
	margin-bottom:0px !important;
}

.mB10{
	margin-bottom:10px !important;
}
.mB15{
	margin-bottom:15px !important;
}
.mB20{
	margin-bottom:20px;
}

.mR10{
	margin-right:10px;
}

.mR15{
	margin-right:15px;
}

.mR20{
	margin-right:20px;
}

.mL10{
	margin-left:10px;
}

.mL15{
	margin-left:15px;
}

.mL20{
	margin-left:20px;
}



.float-left{
	float: left;
}

.float-right{
	float: right;
	
}

/*
==========================================================================
TABLE
==========================================================================
*/

table.table-size-xs th,
table.table-size-xs td {
	font-size:13px !important;
}

table.brwsr1,
table.brwsr2 {
    font-size: 14px;
    border-spacing: 0px 1px;
	margin-bottom:15px;
	border: 1px solid #5893b1;
}

table.brwsr1 > thead > tr > th,
table.brwsr1 > tbody > tr > th,
table.brwsr1 > tfoot > tr > th,
table.brwsr1 > thead > tr > td,
table.brwsr1 > tbody > tr > td,
table.brwsr1 > tfoot > tr > td {
  vertical-align: middle;
  border-top: 1px solid #5893b1;
}
 
table.brwsr1 th,
table.brwsr2 th {
    vertical-align: middle !important;
    text-align: left;
	font-weight:normal;
    /*color: #fff;*/
	
	padding-left:15px !important;
}
 
table.brwsr1 td,
table.brwsr2 td { 
    vertical-align: middle !important;
	background: #FFF;
	 text-align: left;
	 color:#000;
	 border: #5893b1 1px solid;
	 padding-left:15px;
}

@media screen and (max-width: 479px) {
	table.brwsr1 th,
	table.brwsr2 th ,
	table.brwsr1 td,
	table.brwsr2 td { 
	padding-left:5px !important;
	}
}

table.brwsr2 > thead > tr > th,
table.brwsr2 > tbody > tr > th,
table.brwsr2 > tfoot > tr > th,
table.brwsr2 > thead > tr > td,
table.brwsr2 > tbody > tr > td,
table.brwsr2 > tfoot > tr > td {
  vertical-align: middle;
  border-top: 1px solid #a4c1d7;
}

table.brwsr2 th {
	border: #a4c1d7 1px solid;
}

table.brwsr2 td {
    background: #f9fcff;
	color: #333;
	border: #a4c1d7 1px solid;
}
 
 
table.brwsr1 th.r1,
table.brwsr2 th.r1 {
    background: #5893b1;
	color: #fff;
}
 
table.brwsr1 th.r2,
table.brwsr1 td.r2,
table.brwsr2 th.r2,
table.brwsr2 td.r2 {
    background: #7cacc2;
	color: #fff;
}

table.brwsr1 th.r3,
table.brwsr1 td.r3,
table.brwsr2 th.r3,
table.brwsr2 td.r3 {
    background: #eaf4ff;
	color: #000;
	/*border: #5893b1 1px solid;*/
}

.table .t-non{
	background: transparent;
	border:none !important;
}

table.brwsr1 th span.display,
table.brwsr1 td span.display,
table.brwsr2 th span.display,
table.brwsr2 td span.display {
	display:block;
	font-size:80%;
}


@media screen and (max-width: 479px) {
	
    table.brwsr1,
    table.brwsr2{
        border-top: 1px;
        
    }
    table.brwsr1 th,
	table.brwsr1 td,
	table.brwsr2 th,
	table.brwsr2 td {
		font-size:12px;
        border: 1px ;
	}
}


.table .t-center,
.table .t-center th,
.table .t-center td,
table.brwsr1 .t-center,
table.brwsr2 .t-center,
table.brwsr1 tr.t-center th,
table.brwsr2 tr.t-center th,
table.brwsr1 tr.t-center td,
table.brwsr2 tr.t-center td{
	text-align:center !important;
}

.table .t-right,
.table .t-right th,
.table .t-right td,
table.brwsr1 .t-right,
table.brwsr2 .t-right,
table.brwsr1 tr.t-right th,
table.brwsr2 tr.t-right th,
table.brwsr1 tr.t-right td,
table.brwsr2 tr.t-right td{
	text-align:right !important;
}

.table.table-sm th,
.table.table-sm td {
	font-size:13px !important;
	white-space:nowrap;
}


/* ========================================= 
::: Responsive Table
========================================= */

.reflow{}

.reflow th,
.reflow td {
    padding: 10px !important;
    empty-cells: hide;
    vertical-align: top;
    font-size: 13px;
}

.reflow th {
    white-space: nowrap;
    font-weight: bold;
    padding-left: 10px !important;
    padding-right: 15px!important;
}
.reflow td{
    padding-left: 20px;
}

@media screen and (max-width: 479px) {
    .reflow td.td-less{
        border-top: none;
        padding-top: 0 !important;
    }
}

.reflow ul {
    margin-left: 0;
    
}

.reflow ul li {
    margin-bottom: 0.5em;
    padding: 0px;
   
}

.reflow span{
    display: block;
}

@media screen and (max-width: 480px) {
    /* 本来のヘッダーを非表示 */
    .reflow {}
    .reflow thead {
        display: none;
    }
    /* セルを横幅100%に拡大 */
    .reflow th,
    .reflow td {
        float: left;
        clear: left;
        padding: 0px;
        width: 100%;
        /*border-width: 0 0 1px;*/
        text-align: left;
        font-weight: normal;
    }
    .reflow th {
        white-space: nowrap;
        padding-top: 5px;
        background: #EEE;
    }
    .reflow td {
        empty-cells: hide;
        border-bottom: 1px solid #FFF;   
        padding-left: 15px !important;  
        background: #FFF !important;
    }

    .reflow td.empty {
        display: none;
    }
    /* tr毎の境界を明確に */
    .reflow tr>td:first-child {
        margin-top: 0px;
    }
    .reflow tr>td:last-child {
        border-bottom: 1px solid #FFF;
    }
    .reflow tr:first-child>td:first-child {
        margin-top: 0;
    }
    .reflow ul {
        margin: 0px;
        padding: 0px;
    }
    .reflow ul li {

        padding: 0px;
  
    }
    .border-left {
        border-left: none;
    }
}
/*
==========================================================================
DL DT DD
==========================================================================
*/

.dl-inline-stay {
  margin-top: 0;
  margin-bottom: 0px;
}
.dl-inline-stay dt,
.dl-inline-stay dd {
  line-height: 1.42857143;
}
.dl-inline-stay dt {
  font-weight: bold;
  text-align: left;
}
.dl-inline-stay dd {
  margin-left: 0;
}


@media (min-width: 768px) {
  .dl-inline-stay dt {
    float: left;
    width: 160px;
    overflow: hidden;
    clear: left;
    
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .dl-inline-stay dd {
    margin-left: 180px;
  }
}


.dl-inline,
.dl-inline-s {
  margin-top: 0;
  margin-bottom: 15px;
}

.dl-inline dt,
.dl-inline dd,
.dl-inline-s dt,
.dl-inline-s dd {
  line-height: 25px;
 
}
.dl-inline dt ,
.dl-inline-s dt {
  font-weight: normal;
  text-align: left;
    overflow: hidden;
    clear: left;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.dl-inline dd,
.dl-inline-s dd {
  margin-left: 15px;
}



@media (min-width: 768px) {
  .dl-inline dt {
    float: left;
    width: 150px;
    overflow: hidden;
    clear: left;   
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .dl-inline dd {
    margin-left: 160px;
  }
  
   .dl-inline-s dt {
    float: left;
    width: 80px;
    overflow: hidden;
    clear: left;   
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .dl-inline-s dd {
    margin-left: 90px;
  }
 
}



/* ==========================================================================
HIDE
========================================================================== */

.sp-hide{
	display:block !important;
	}

@media only screen and (min-width : 320px) {
    .sp-hide{
		display:none !important;
	}
}
 

@media only screen and (min-width : 480px) {
		.sp-hide{
		display:none !important;
	}
}
 

@media only screen and (min-width : 768px) {

	.pc-hide{
		display:none !important;
	}
	.sp-hide{
		display:block !important;
	}

}

/* ==========================================================================
Language Switcher — shrink flag + label
========================================================================== */

.language_area .dropdown-menu {
	min-width: 140px;
	padding: 4px 0;
}

.language_area .dropdown-menu > li > a {
	padding: 6px 12px;
	font-size: 13px;
	line-height: 1.4;
	display: flex;
	align-items: center;
}

.language_area .dropdown-menu > li > a img {
	width: 18px;
	height: auto;
	margin-right: 8px;
	vertical-align: middle;
	border: 1px solid rgba(0,0,0,0.08);
	flex-shrink: 0;
}

html[dir="rtl"] .language_area .dropdown-menu > li > a img {
	margin-right: 0;
	margin-left: 8px;
}

/* ==========================================================================
Vegas snapshot-baked background images — override inline left offset
that was hardcoded for the snapshot viewport (1440px). Use translateX(-50%)
so the image stays centered at any viewport width.
========================================================================== */

img.vegas-background {
	left: 50% !important;
	right: auto !important;
	inset: 0 auto auto 50% !important;
	transform: translateX(-50%);
}
