@charset "utf-8";
/* --------------------------------------------------
	基本定義
-------------------------------------------------- */
.bpts_both {
	clear: both;
	font-size: 0px;
	line-height: 0px;
}
/* スペーサー　 */
.bpts_spacer_h5 {
	margin: 0px;
	padding: 0px;
	width: 100%;
	height: 5px;
}
.bpts_spacer_h7 {
	margin: 0px;
	padding: 0px;
	width: 100%;
	height: 7px;
}
.bpts_spacer_h10 {
	margin: 0px;
	padding: 0px;
	width: 100%;
	height: 10px;
}
.bpts_spacer_h15 {
	margin: 0px;
	padding: 0px;
	width: 100%;
	height: 15px;
}
.bpts_spacer_h20 {
	margin: 0px;
	padding: 0px;
	width: 100%;
	height: 20px;
	line-height: 20px;
}
.bpts_spacer_h30 {
	margin: 0px;
	padding: 0px;
	width: 100%;
	height: 30px;
	line-height: 20px;
}
.bpts_spacer_h40 {
	margin: 0px;
	padding: 0px;
	width: 100%;
	height: 40px;
	line-height: 20px;
}
.bpts_spacer_h80 {
	margin: 0px;
	padding: 0px;
	width: 100%;
	height: 80px;
	line-height: 20px;
}
.bpts_spacer_h30_onoff {
	margin: 0px;
	padding: 0px;
	width: 100%;
	height: 30px;
	line-height: 20px;
}
/* 768以下になったらスペーサーの高さをゼロにするオプション*/
.op_768off {}
@media (max-width: 960px) {
	.op_768off {
		height: 0px;
		line-height: 0px;
	}
}
/* --------------------------------------------------
	ヘッダー
-------------------------------------------------- */
/* レスポンシブメニュー　 */
/* 正方形（土台） */
#panel-btn {
	display: inline-block;
	position: relative;
	width: 50px;
	height: 50px;
	background-color: transparent;
	float: right;
	z-index: 100;
}
#panel-btn-icon {
	/*	color:white;*/
	color: rgb(237, 144, 39);
	text-align: center;
	line-height: 3em;
	text-indent: -0.8em;
	font-size: 0.6em;
}
/* 上下の線 */
#panel-btn-icon:before, #panel-btn-icon:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 14px;
	height: 2px;
	background: rgb(237, 144, 39);
	transition: .3s;
}
#panel-btn-icon:before {
	margin-top: -6px;
}
#panel-btn-icon:after {
	margin-top: 3px;
}
/* 真ん中の線 */
#panel-btn-icon {
	display: block;
	position: absolute;
	top: 40%;
	left: 50%;
	width: 14px;
	height: 2px;
	margin: -1px 0 0 -7px;
	/*  background: white;*/
	background: rgb(237, 144, 39);
	transition: .2s;
}
/* 開いた時 */
#panel-btn-icon:before, #panel-btn-icon:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 14px;
	height: 2px;
	background: rgb(237, 144, 39);
	transition: .3s;
}
#panel-btn-icon:before {
	margin-top: -5.5px;
}
#panel-btn-icon:after {
	margin-top: 3px;
}
/* 閉じた時 */
#panel-btn .close {
	background: transparent;
}
#panel-btn .close:before, #panel-btn .close:after {
	margin-top: 0;
}
#panel-btn .close:before {
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
#panel-btn .close:after {
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
}
/* ドロワーメニュー（クリック後） */
#panel {
	display: none;
	background-color: rgba(255, 255, 255, 0.7);
	position: absolute;
	top: 0px;
	right: 0;
	width: 100%;
	padding: 60px 0 20px 20px;
	z-index: 50;
	text-align: center;
}
.peke {
	background-position: -35px 0;
}
.drawr {
	display: none;
	background-color: rgba(255, 0, 0, 0.6);
	position: absolute;
	top: 0px;
	right: 0;
	width: 260px;
	padding: 60px 0 20px 20px;
	z-index: 100;
}
#menu li {
	width: 80%;
	background-color: #3351a3;
	margin: 13px auto;
	text-align: center;
}
#menu li:hover {
	width: 80%;
	background-color: rgb(237, 123, 49);
	margin: 13px auto;
	text-align: center;
}
#menu li a {
	color: white;
	font-size: 1.4em;
	text-decoration: none;
	display: block;
	padding: 15px;
}
/* メインロゴ　 */
.bpts_header_logo {
	text-align: center;
	width: auto;
	padding-top: 18px;
}
@media (max-width: 960px) {
	.bpts_header_logo {
		padding-top: 30px;
	}
}
/* ナビゲーション　 */
.bpts_header_navi {
	box-sizing: border-box;
	margin: 10px auto 8px auto;
	width: 95%;
	max-width: 380px;
	padding: 15px;
	text-align: center;
}
.bpts_header_navi p {
	font-size: 12px;
	color: rgb(35, 54, 109); /*テキスト用暗紺*/
}
.bpts_header_navi a {
	padding: 10px;
}
.bpts_header_navi a:not(:first-of-type) {
	margin-left: 10px;
}
@media (min-width: 769px) {
	.bpts_header_navi a, .bpts_header_navi a:link, .bpts_header_navi a:visited {
		color: #2d287f; /*テキスト用暗紺*/
	}
	.bpts_header_navi a:hover {
		color: white;
		background: #2d287f;
		background: #2d287f;
		border-radius: 3px;
		text-decoration: none;
	}
	.bpts_header_navi a:active {
		color: #2d287f; /*テキスト用暗紺*/
	}
}
@media (max-width: 960px) {
	.bpts_header_navi {
		width: auto;
		max-width: 320px;
		margin: 0 auto;
		padding: 3px;
		background-color: rgba(35, 53, 109, 0.59);
	}
	.bpts_header_navi a {
		box-sizing: border-box;
		padding-left: 20px;
		color: white;
		background: url("/en/image/common/icon-sidemenu.png") center left no-repeat;
		background-size: 15px;
	}
	.bpts_header_navi a:not(:first-of-type) {
		margin-left: 1%;
	}
}
/* お電話はこちら */
.bpts_header_tel {
	margin: 25px auto 8px auto;
	width: 95%;
	max-width: 380px;
	padding: 1px 0px;
	text-align: center;
	border-radius: 3px;
	background-color: rgba(66, 55, 47, 0.70);
}
/* レスポンシブメニュー　 */
.bpts_header_menu {
	display: none;
}
@media (max-width: 960px) {
	.bpts_header_menu {
		display: inherit;
	}
}
/* --------------------------------------------------
	Flexboxの各設定
-------------------------------------------------- */
/* ========= flexの作成 ============*/
/*　(1)flex（レスポンシブで横並びを解除する） */
.bpts_flexbox_onoff {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}
/* (2)レスポンシブで横並びを解除しない */
.bpts_flexbox_noblock {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}
/* -------------(1)折り返す時のカスタマイズ ------------*/
/* ========= 折り返しの有無 ============*/
/* 折り返したいとき */
.bpts_flexbox_onoff.wrap {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
/* ========= 揃え位置 ============*/
/* 両端ぞろえにしたいとき */
.bpts_flexbox_onoff.justify {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
/* センターに集めたいとき */
.bpts_flexbox_onoff.center {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
/* 左（先頭）揃えにしたいとき */
.bpts_flexbox_onoff.start {
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
}
/* 右揃え（最後）揃えにしたいとき */
.bpts_flexbox_onoff.end {
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}
/* ========= 縦に積む ============*/
/* 縦に並べる */
.bpts_flexbox_nobloc.column {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
}
/* ========= 中の要素の位置 ============*/
/* 要素を上下中央に寄せる */
.bpts_flexbox_onoff.item_center {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
/* 要素を下に寄せる */
.bpts_flexbox_onoff.item_end {
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}
/* ========= その他 ============*/
/* flexで揃えた要素に5pxずつのmarginを加えるとき */
.bpts_flexbox_onoff.plus_5px div {
	margin: 5px;
}
@media (max-width: 960px) {
	/* レスポンシブでflexを解除する */
	.bpts_flexbox_onoff {
		display: block;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
}
/* -------------(2)折り返さない時のカスタマイズ ------------*/
/* ========= 揃え位置 ============*/
/* 両端ぞろえにしたいとき */
.bpts_flexbox_noblock.justify {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
/* センターに集めたいとき */
.bpts_flexbox_noblock.center {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
/* 左（先頭）揃えにしたいとき */
.bpts_flexbox_noblock.start {
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
}
/* 右揃え（最後）揃えにしたいとき */
.bpts_flexbox_noblock.end {
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}
/* ========= 中の要素の位置 ============*/
/* 要素を上下中央に寄せる */
.bpts_flexbox_noblock.item_center {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
/* 要素を下に寄せる */
.bpts_flexbox_noblock.item_end {
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}
/* --------------------------------------------------
	リキッドなシングル横帯バナー
-------------------------------------------------- */
.bpts_singlebanner {
	margin: 10px auto;
	width: 100%;
	text-align: center;
}
.op_w100pct {
	width: 100%;
}
.op_w90pct {
	width: 90%;
}
.op_w80pct {
	width: 80%;
}
.op_w60pct {
	width: 60%;
}
.op_w50pct {
	width: 50%;
}
.bpts_singlebanner img {
	margin: 0px auto;
	width: 100%;
}
/* --------------------------------------------------
	いろいろなパーツ
-------------------------------------------------- */
.bpts_alignedlist {
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	margin: 0px;
}
.bpts_alignedlist li {
	float: left;
	width: 16em;
}
/* --------------------------------------------------
	フッター
-------------------------------------------------- */
.bpts_footer {
	max-width: 900px;
	margin: 0 auto;
}
.bpts_footer_wrapper {
	margin-top: 0;
	padding: 2em;
	background-color: rgba(40, 40, 120, 1.0) /*濃紺*/ ;
	/*.wrapper_fullbgと同様*/
	box-sizing: border-box;
	margin-left: -1000px;
	margin-right: -1000px;
	padding-left: 1000px;
	padding-right: 1000px;
}
.bpts_footer_wrapper img {
	max-width: 500px;
}
.add {
	color: #fff;
	margin-left: 4.4em;
	line-height: 1.5;
	margin-top: 1em;
}
.add span{
	font-size: .9em;
}
@media (max-width: 960px) {
	.add {
        margin-left: 15%;
	}
}
/* ページトップ　*/
.bpts_footer_pagetop {
	display: none;
	position: fixed;
	bottom: 10px;
	right: 0;
	z-index: 998;
	height: auto;
	text-align: right;
	padding: 0;
	margin: 0 20px 0 0;
}
.bpts_footer_pagetop a img {
	max-width: 75px;
	width: 100%;
}
@media (max-width: 1218px) {
	.bpts_footer_pagetop {
		display: block;
		position: fixed;
		bottom: 10px;
		right: 10px;
		z-index: 998;
		height: auto;
		width: 100%;
		text-align: center;
		padding: 0;
		margin: 0;
	}
	.bpts_footer_pagetop a img {
		width: 75px;
	}
}
.bpts_footer_address {
	margin-top: 0;
}
/* コピーライト　*/
.bpts_footer_copyright {
	/*overflow: hidden;*/
	font-size: 10px;
	color: rgb(45, 71, 143);
	text-align: center;
	clear: both;
	padding: 10px;
	background: white;
}
@media (min-width: 960px) { /*PCのみ*/
	.bpts_footer {
		margin-top: 15px;
	}
	.bpts_footer_wrapper img.for_sf {
		display: none;
	}
}
@media (max-width: 960px) {
	.bpts_footer {
		font-size: 0.8em;
	}
	.bpts_footer_wrapper {
		float: none;
		/*.wrapper_fullbgの解除*/
		margin-left: 0;
		margin-right: 0;
		padding-left: 0;
		padding-right: 0;
		padding: 20px;
		height: auto;
	}
	.bpts_footer_wrapper img {
		max-width: 100%;
	}
	.bpts_footer_wrapper img.for_pc {
		display: none;
	}
	.bpts_footer_wrapper img.for_sf {
		display: block;
	}
	.bpts_footer_pagetop {
		float: none;
		width: 100%;
		/*.wrapper_fullbgの解除*/
		margin-left: 0;
		margin-right: 0;
		padding-left: 0;
		padding-right: 0;
		text-align: center;
	}
	#zone_footer { /*pagetopで隠れる分の調整*/
		background-position: center 70px;
	}
}
/* --------------------------------------------------
	ボタン
-------------------------------------------------- */
/*　リンクボタン　*/
.bpts_btn_link01 {
	display: inline-block;
	overflow: hidden;
	padding: 5px 5px 5px 25px;
	border-radius: 5px;
	background: url(../image/common/icon-arrow-linkbtn.png) #F1F5F5 no-repeat 4px center;
	vertical-align: middle;
}
/*　PC表示時任意の場所で改行　*/
.bpts_br_pc::before {
	content: "\A";
	white-space: pre;
}
@media (max-width: 769px) {
	/*　PC表示時任意の場所で改行をレスポンシブ時解除　*/
	.bpts_br_pc::before {
		display: none;
	}
	/*　レスポンシブ時任意の場所で改行　*/
	.bpts_br::before {
		content: "\A";
		white-space: pre;
	}
}
/*　PC非表示　レスポンシブ非表示（インライン)　*/
.bpts_none_pc {
	display: none;
}
/*　レスポンシブ非表示　PC非表示（インライン)　*/
.bpts_none_sp {
	display: inline;
}
@media (max-width: 769px) {
	/*　PC非表示　レスポンシブ非表示（インライン)　*/
	.bpts_none_pc {
		display: inline;
	}
	/*　レスポンシブ非表示　PC非表示（インライン)　*/
	.bpts_text_none_sp {
		display: none;
	}
}


/* --------------------------------------------------
	グラデーションボタン
-------------------------------------------------- */
 .bpts_linkbtn_grad {
 	flex: 1 1 auto;
 	margin: 10px;
 	padding: .7em 2em;
 	text-align: center;
 	text-transform: uppercase;
 	transition: 0.5s;
 	background-size: 200% auto;
 	color: #fff !important;
 	text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
 	box-shadow: 0 0 20px #eee;
 	border-radius: 10px;
 	display: inline-block;
 }
 .bpts_linkbtn_grad span {
 	display: block;
 }
 .bpts_linkbtn_grad span:before {
 	content: url(https://icongr.am/material/chevron-right.svg?size=20&color=ffffff);
 	vertical-align: -3px;
 }
 .bpts_linkbtn_grad:hover {
 	background-position: right center;
 }
 .bpts_linkbtn_grad.blue {
 	background-image: linear-gradient(to right, #46ABC4 0%, #52C3DF 51%, #46ABC4 100%);
 }
 .bpts_linkbtn_grad.green {
 	background-image: linear-gradient(to right, #7BBC42 0%, #8DD44F 51%, #7BBC42 100%);
 }
 .bpts_linkbtn_grad.pink {
 	background-image: linear-gradient(to right, #EC2491 0%, #E372AF 51%, #EC2491 100%);
 }
 .bpts_linkbtn_grad.navy {
 	background-image: linear-gradient(to right, #333366 0%, #3366cc 51%, #333366 100%);
 }



 /* --------------------------------------------------------
Q&A・クリックすると開く（CSSのみで設定） 
-----------------------------------------------------------*/
 .bpts_qaa_qa *, .bpts_qaa_qa *:after, .bpts_qaa_qa *:before {
 	-webkit-box-sizing: border-box;
 	box-sizing: border-box;
 }
 .bpts_qaa_qa {
 	overflow-x: hidden;
 	margin: 0 auto;
 	color: #606060;
 }
 .bpts_qaa_qa .bpts_qaa_actab {
 	padding: 20px 0;
 	border-bottom: 1px dotted #cccccc;
 }
 .bpts_qaa_qa label {
 	position: relative;
 	display: block;
 	width: 100%;
 	margin: 0;
 	padding: 10px 10px 0 48px;
 	cursor: pointer;
 }
 .bpts_qaa_qa .bpts_qaa_actab-content {
 	line-height: 1.5em;
 	letter-spacing: 0.05em;
 	color: #6A6A6A; /*回答部分の文字色*/
 	position: relative;
 	overflow: hidden;
 	height: 0;
 	margin: 0 40px;
 	padding: 0 14px;
 	-webkit-transition: 0.4s ease;
 	transition: 0.4s ease;
 	opacity: 0;
 }
 .bpts_qaa_qa .bpts_qaa_actab input[type=checkbox]:checked ~ .bpts_qaa_actab-content {
 	height: auto;
 	padding: 14px;
 	opacity: 1;
 }
 .bpts_qaa_qa .bpts_qaa_plus {
  color: #8097C4; /*プラスマークの色*/
  font-size: 2.4em;
  line-height: 100%;
  position: absolute;
  z-index: 5;
  margin: 3px 0 0 10px;
  -webkit-transition: 0.2s ease;
  transition: 0.2s ease;
 }
 .bpts_qaa_qa .bpts_qaa_actab input[type=checkbox]:checked ~ .bpts_qaa_plus {
 	-webkit-transform: rotate(45deg);
 	transform: rotate(45deg);
 }
 .bpts_qaa_qa .bpts_qaa_actab input[type=checkbox] {
 	display: none;
 }
/* ボタン */
a.bpts_btn_fuwa {
	text-decoration: none!important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  margin: .5em;
  padding: .5em 5em .5em 2em;
  max-width: 400px;
	color: #343083!important;
  border:1px solid #343083;
  transition: 0.3s;
border-radius: 100px;
}
a.bpts_btn_fuwa::before {
  content: '';
  position: absolute;
  top: calc(50% - 2px);
  right: 1em;
  transform: translateY(calc(-50% - 2px)) rotate(30deg);
  width: 12px;
  height: 1px;
  background-color: #343083;
  transition: 0.3s;
}
a.bpts_btn_fuwa::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
  width: 35px;
  height: 1px;
  background-color: #343083;
  transition: 0.3s;
}
a.bpts_btn_fuwa:hover {
  text-decoration: none;
  background-color: #DFE1F4;
}
a.bpts_btn_fuwa:hover::before, a.bpts_btn_fuwa:hover::after {
  right: 0;
}