/**
 * BxSlider v4.0 - Fully loaded, responsive content slider
 * http://bxslider.com
 *
 * Written by: Steven Wanderski, 2012
 * http://stevenwanderski.com
 * (while drinking Belgian ales and listening to jazz)
 *
 * CEO and founder of bxCreative, LTD
 * http://bxcreative.com
 */



/** RESET AND LAYOUT
===================================*/

.bx-wrapper {
	position: relative;
	margin: 0 0 60px;
	padding: 0;
	*zoom: 1;
}

.bx-wrapper img {
	width: 100%;
	display: block;
}

/** THEME
===================================*/

.bx-wrapper .bx-viewport {
	-moz-box-shadow: 0 0 5px #ccc;
	-webkit-box-shadow: 0 0 5px #ccc;
	box-shadow: 0 0 5px #ccc;
	border: solid #fff 5px;
	left: -5px;
	background: #fff;
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
	position: absolute;
	bottom: -30px;
	width: 100%;
}

/* LOADER */

.bx-wrapper .bx-loading {
	min-height: 50px;
	background: url(images/bx_loader.gif) center center no-repeat #fff;
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2000;
}

/* PAGER */

.bx-wrapper .bx-pager {
	text-align: center;
	font-size: .85em;
	font-family: Arial;
	font-weight: bold;
	color: #666;
	padding-top: 20px;
}

.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
	display: inline-block;
	*zoom: 1;
	*display: inline;
}

.bx-wrapper .bx-pager.bx-default-pager a {
	background: #969696;
	text-indent: -9999px;
	display: block;
	width: 10px;
	height: 10px;
	margin: 0 5px;
	outline: 0;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
	background: #456a87;
}

/* DIRECTION CONTROLS (NEXT / PREV) */

.bx-wrapper .bx-prev {
	left: 10px;
	background: url(images/controls.png) no-repeat 0 -31px;
}

.bx-wrapper .bx-next {
	right: 10px;
	background: url(images/controls.png) no-repeat -43px -31px;
}

.bx-wrapper .bx-prev:hover {
	background-position: 0 1px;
}

.bx-wrapper .bx-next:hover {
	background-position: -43px 1px;
}

.bx-wrapper .bx-controls-direction a {
	position: absolute;
	top: 50%;
	margin-top: -16px;
	outline: 0;
	width: 32px;
	height: 32px;
	text-indent: -9999px;
	z-index: 9999;
}
/*
.bx-wrapper .bx-controls-direction a.disabled {
	display: none;
}
*/
/* AUTO CONTROLS (START / STOP) */

.bx-wrapper .bx-controls-auto {
	text-align: center;
}

.bx-wrapper .bx-controls-auto .bx-start {
	display: block;
	text-indent: -9999px;
	width: 10px;
	height: 11px;
	outline: 0;
	background: url(images/controls.png) -86px -11px no-repeat;
	margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active {
	background-position: -86px 0;
}

.bx-wrapper .bx-controls-auto .bx-stop {
	display: block;
	text-indent: -9999px;
	width: 9px;
	height: 11px;
	outline: 0;
	background: url(images/controls.png) -86px -44px no-repeat;
	margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active {
	background-position: -86px -33px;
}

/* PAGER WITH AUTO-CONTROLS HYBRID LAYOUT */

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
	text-align: left;
	width: 80%;
}

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
	right: 0;
	width: 35px;
}

/* IMAGE CAPTIONS */

.bx-wrapper .bx-caption {
	position: absolute;
	bottom: 0;
	left: 0;
	background: #666\9;
	background: rgba(80, 80, 80, 0.75);
	width: 100%;
}

.bx-wrapper .bx-caption span {
	color: #fff;
	font-family: Arial;
	display: block;
	font-size: .85em;
	padding: 10px;
	word-break: keep-all
}


.image-table-container {
  display: flex;
  gap: 20px;
  align-items: flex-start;
  margin: 30px 0;
  margin-left: 60px;
}

.image-table-container img {
  max-width: 600px;
  height: auto;
}

.image-table-container table {
  border-collapse: collapse;
}

.company-image {    /* 画像の要素 */
  width: 550px;     /* 画像の大きさ */     
  height: auto;     /* 高さ調整 */
  border: 1px solid #ccc;  /* 枠線 */
}

.company-table {
  border-collapse: collapse; /* セルの隙間を狭める */
  font-size: 15px;           /* 文字サイズ */
  min-width: 300px;          /* 表の最小幅を300pxに固定 */
}

.company-table th,
.company-table td {
  border: none;                     /* ボーダーをリセット */         
  border-bottom: 1px solid #ccc;  /* 下線のみをグレーで表示 */ 
  padding: 30px;                    /* セル内の余白 */
  text-align: left;                 /* 左寄せ */
  vertical-align: top;              /* 上揃え */
}

.centered-image-wrapper {
  display: flex;                /* Flexboxを使用 */
  justify-content: center;      /* 横方向に中央寄せ */
  align-items: center;          /* 縦方向に中央寄せ */
  margin: 30px 0;               /* 上下に30pxの余白 */
}

.centered-image {    /* 画像 */ 
  width: 1100px;     /* 基本の表示幅 */ 
  max-width: 100%;   /* 親要素より大きくならないように制限 */
  height: auto;      /* 縦横比を保ったまま高さを自動調整 */
}

.padding-left-20px {
  padding-left: 20px !important; /* 左側に20pxのパディングを設定 */
}                                /* !importantを使用し、他のルールより優先してこのスタイルを適用 */

.head-border {      /* 線と線の間の中心に文字　*/
    display: flex;
    align-items: center;
}

.head-border:before,
.head-border:after {
    content: "";
    height: 3px;   /* 線の太さ　*/
    flex-grow: 1; /* スペースの広さ　*/
    background-color: #065490;
}

.head-border:before {
    margin-right: 1rem;  /* 線と文字の間の余白　*/
}

.head-border:after {
    margin-left: 1rem;   /* 左余白　*/
}

/* 
.padding-left-large {   左余白 
  padding-left: 350px;
}  */

.row2 {
  display: flex;            /*配置調整用フレックスボックス*/
  align-items: baseline;    /*高さ揃え*/
  margin-bottom: 0;         /*下余白を0*/
}

.label {
  display: flex;               /*配置調整用フレックスボックス*/
  justify-content: flex-end;   /*右端に寄せ(ラベル)*/
  width: 130px;                /*130pxに固定*/
  font-weight: bold;           /*太字*/
  font-size: 14px;
  white-space: nowrap;         /*途中で改行しないようにする*/
  text-align: right;           /*右端に寄せ(テキスト)*/
  color: #000;
  margin: 0;                  /*外側の余白0*/
  padding: 0;                 /*内側の余白0*/
} 

.content {
  flex: 1;
  font-size: 15px;
  line-height: 1.6;
  padding-left: 6px;
  white-space: normal;
  word-break: keep-all; /*単語の途中で折り返さない(･で折り返す)*/
  min-width: 0;
  margin: 0;
  padding: 0;
}

.label, .content { /*フォント揃える*/
  font-family: 'font-hiragino font-weight-500';
  font-size: 15px;
  line-height: 1.6;
  font-weight: 500;
  color: #000;
}

.nowrap-comma-break {
  white-space: nowrap;
  word-break: keep-all;
}

.nowrap-comma-break wbr::after {
  content: '';
}

/*,折り返し*/
.customer-block {
  display: flex;
  flex-direction: column;
  font-family: Geneva, Arial, sans-serif;
  font-size: 13px;
  line-height: 1.2;/*1.8*/
}

.customer-row {
  display: flex;
  align-items: flex-start;
  margin-bottom: 4px;
}

.customer-label {
  width: 170px; /* ラベル幅を統一して : を揃える */
  text-align: right;
  padding-right: 15px;
  white-space: nowrap;
  font-weight: bold;
}

.customer-content {
  flex: 1;
  word-break: break-word;
  white-space: nowrap; /* スペースで改行しない */
}

.customer-content wbr::after {
  content: ", ";
  white-space: pre;
}