﻿@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: 768px) {
	.op_768off {
		height: 0px;
		line-height: 0px;
	}
}
/* --------------------------------------------------
	ヘッダー
-------------------------------------------------- */
/* レスポンシブメニュー　 */
/* 正方形（土台） */
#panel-btn {
	display: inline-block;
	position: relative;
	width: 50px;
	height: 50px;
	/*background: #0f5380;*/
	background-color: transparent;
	float: right;
	z-index: 100;
	/*margin-right:-15px;*/
	/*
	display: flex;
	align-items: center;
*/
}
#panel-btn-icon {
	/*	color:white;*/
	color: rgb(70, 165, 93);
	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:white;*/
	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: #3DA782;
	transition: .2s;
}
/* 開いた時 */
#panel-btn-icon:before, #panel-btn-icon:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 14px;
	height: 2px;
	background: #3DA782;
	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%;
	/*    height: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: rgb(70, 165, 93);
	margin: 13px auto;
	text-align: center;
}
#menu li:hover {
	width: 80%;
	background-color: #9f8266;
	margin: 13px auto;
	text-align: center;
}
#menu li a {
	color: white;
	font-size: 1.4em;
	text-decoration: none;
	display: block;
	padding: 15px;
}
/* レスポンシブメニューで孫メニューを開く */
.bpts_sp_magomenu_check {
	display: none;
}
.bpts_sp_magomenu_label {
	background: #E5F3E8;
	color: #46a55d;
	display: block;
	margin-bottom: 1px;
	padding: 10px;
}
.bpts_sp_magomenu_content {
	height: 0;
	opacity: 0;
	padding: 0 10px;
	transition: .2s;
	visibility: hidden;
}
.bpts_sp_magomenu_check:checked + .bpts_sp_magomenu_label + .bpts_sp_magomenu_content {
	height: auto;
	opacity: 1;
	padding: 10px 0;
	visibility: visible;
}
.bpts_sp_magomenu_content_li li {
	border-bottom: 1px solid #E4E4E4;
	transition: .0s;
}
.bpts_sp_magomenu_content_li li a {
	padding: 10px 10px;
	display: block;
}
.bpts_sp_magomenu_content_li li:hover {
	background: #E7E7E7;
}

/* レスポンシブメニュー　 */
.bpts_header_menu {
	display: none;
}
.pc_none { display: block !important; }
.sp_none { display: none !important; }
@media (max-width: 905px) {
	.bpts_header_menu {
		display: inherit;
	}
	.sp_none a img, #zone_header_all {
		display: none;
	}
	.pc_none { display: none !important; }
	.sp_none { display: block !important; }
}
.bpts_responsive_flex {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 5px;
}
.bpts_responsive_flex img {
	max-width: 360px!important;
	width: 100%;
}
.bpts_responsive_flex#nav-drawer {
	margin: 0 0 0 auto;
}
/* メインロゴ　 */
.bpts_header_logo {
	text-align: center;
	width: auto;
	padding-top: 18px;
}
@media (max-width: 768px) {
	.bpts_header_logo {
		padding-top: 30px;
	}
}

.bpts_spnavi_label{
	padding: .3em 1em;
	margin:1em;
	border: 1px solid #3DA782;
	text-decoration: none;
}

.bpts_spnavi_label a{
	display: block;
}

/* ナビゲーション　 */
.bpts_header_navi {
	box-sizing: border-box;
	text-align: right;
	padding-top: 10px;
	position: relative;
}
.bpts_header_navi p {
	font-size: 1.2em;
	font-weight: bold;
	letter-spacing: 0.06em;
	color: #fff;
}
.bpts_header_navi a {
	display: inline-block;
	font-size: .7em;
	font-weight: normal;
	padding: 0;
	color: #fff;
	}
.bpts_header_navi ul{
	position: absolute;
	display: flex;
	bottom: 0;
	right: 0;
}
.bpts_header_navi ul li{
	border:1px solid #fff;
	margin-right: -1px;/* 線の重なり無効 */
	margin-bottom: -1px;
}
.bpts_header_navi ul li a{
	padding: .5em;
	font-size: .8em;
	transition: .4s;
	width: 100px;
	text-align: center;
}
.bpts_header_navi ul li a:hover{
	text-decoration: none;
	background: #256C53;
}
.bpts_header_navi ul li:last-child{
	background: #256C53;
}
@media (max-width: 905px) {
	.bpts_header_navi {
		width: auto;
		max-width: 770px;
		margin: 0 auto 0px;
		padding: 0;
	}
	.bpts_header_navi ul{
		display: none;
	}
}
/* お電話はこちら */
.bpts_header_tel:before{
	content:  url("https://icongr.am/entypo/phone.svg?size=25px&color=ffffff");
	vertical-align: middle;
	padding-right: 5px;
}
.bpts_header_tel {
	font-size: 1.5em!important;
}
.bpts_header_tel a{
	font-size: .55em;
	display: inline-block;
	background: #FFDA82;
	padding: .3em .3em;
	text-align: center;
	vertical-align: middle;
	transition: .4s;
	box-sizing: border-box;
	color: #6C531D;
	letter-spacing: .02em;
}
.bpts_header_tel a:hover{
	background: #7EF5C6;
}
.bpts_header_tel a span:after{
	content:  url("https://icongr.am/entypo/triangle-right.svg?size=13px&color=6C531D");
	vertical-align: middle;
}
@media (max-width: 768px) {
	.bpts_header_tel{
		display: none;
	}
}

/* レスポンシブメニュー　 */
.bpts_header_menu {
	display: none;
}
@media (max-width: 905px) {
	.bpts_header_menu {
		display: inherit;
	}
}

.bpts_responsive_flex {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
/*	padding: 15px;
*/}
.bpts_responsive_flex#nav-drawer {
	margin: 0 0 0 auto;
}
/*================================
　　　レスポンシブメニュー
　　　左から出てくるタイプ
=================================*/
#nav-drawer {
	position: relative;
}
/*チェックボックス等は非表示に*/
.nav-unshown {
	display: none;
}
/*アイコンのスペース*/
#nav-open {
	display: inline-block;
	width: 36px;
	height: 24px;
	vertical-align: middle;
	background: white;
	padding: 14px 5px 0 0;
}
/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span, #nav-open span:before, #nav-open span:after {
	position: absolute;
	height: 5px; /*線の太さ*/
	width: 40px; /*長さ*/
	border-radius: 1px;
	background: #46a55d;
	display: block;
	content: '';
	cursor: pointer;
}
#nav-open span:before {
	bottom: -10px;
}
#nav-open span:after {
	bottom: -20px;
}
/*閉じる用の薄黒カバー*/
#nav-close {
	display: none; /*はじめは隠しておく*/
	position: fixed;
	z-index: 99;
	top: 0; /*全体に広がるように*/
	left: 0;
	width: 100%;
	height: 100%;
	background: black;
	opacity: 0;
	transition: .3s ease-in-out;
}
/*中身*/
#nav-content {
	overflow: auto;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999; /*最前面に*/
	width: 85%; /*右側に隙間を作る*/
	max-width: 330px; /*最大幅*/
	height: 100%;
	background: #fff; /*背景色*/
	transition: .3s ease-in-out; /*滑らかに表示*/
	-webkit-transform: translateX(-105%);
	transform: translateX(-105%); /*左に隠しておく*/
}
/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
	display: block; /*カバーを表示*/
	opacity: .5;
}
#nav-input:checked ~ #nav-content {
	-webkit-transform: translateX(0%);
	transform: translateX(0%); /*中身を表示*/
	box-shadow: 6px 0 25px rgba(0, 0, 0, .15);
}
/* ホームに戻るボタン */
.bpts_responsive_navi_home a {
	font-size: 1.1em;
	padding: 25px 13px 5px 10px;
	color: white !important;
	font-family: 'Noto Sans JP', 'ヒラギノ角ゴシック', 'メイリオ', sans-serif;
	display: block;
	background:#3DA782;
}
.bpts_responsive_navi_top {
	background: #3DA782;
	padding: 4px;
	text-align: center;
	font-size: .9em;
}
.bpts_responsive_navi_top a {
	color: #fff !important;
	font-family: 'Noto Sans JP', 'ヒラギノ角ゴシック', 'メイリオ', sans-serif;
	margin-right: 15px;
	font-weight: bold;
}
/* メニューの１パネル */
.bpts_responsive_navi_liblock li a {
	background: hsla(0, 0%, 0%, 0.7);
	padding: 17px;
	font-family: 'Noto Serif JP', serif;
	display: block;
	border-bottom: 1px solid #fff;
	color: #fff !important;
}
.bpts_responsive_navi_liblock li a:hover {
	background: hsla(0, 0%, 45%, 0.82);
	transition: 0.4s;
}
/* --------------------------------------------------
	リキッドの時のFlexboxのOn/Off機能を持つコンテナ
-------------------------------------------------- */
.bpts_flexbox_onoff {
	display: flex;
	/*	justify-content: center;	*/ /*IEでずれるため削除*/
}
@media (max-width: 768px) {
	.bpts_flexbox_onoff {
		display: block;
		justify-content: center;
	}
}
/* --------------------------------------------------
	リキッドなシングル横帯バナー
-------------------------------------------------- */
.bpts_singlebanner {
	margin: 10px auto;
	width: 100%;
	text-align: center;
}
.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_footer {
	max-width: 900px;
	margin: 0 auto;
}
.bpts_footer_wrapper {
	text-align: center;
	height: 260px;
	padding: 50px;
	box-sizing: border-box;
	margin-left: -1000px;
	margin-right: -1000px;
	padding-left: 1000px;
	padding-right: 1000px;
	background: rgba(159,204,154,1.00);
	margin-top: -1px;
}
.bpts_footer_innner{
	background: #fff;
	width: 100%;
	padding-bottom: 25px;
	border-radius: 2px;
}
.bpts_footer_repeat_img {
	background: url("../image/common/bg-footer.png");
	background-repeat: repeat-x;
	width: 100vw;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	height: 426px;
}
/* ページトップ　*/
.bpts_footer_pagetop {
	position: fixed;
	bottom: 0px;
	right: 0px;
	z-index: 1;
	height: auto;
	width: 100%;
	text-align: right;
	margin-right: 15px;
}
.bpts_footer_pagetop a img {
	width: 90px;
	background: rgba(61,167,130,0.8);
}
.bpts_footer_tel{
	font-weight: bold;
	color: rgba(61,167,130,1.00);
	font-size: 1.2em;
}
/* コピーライト　*/
.bpts_footer_copyright {
	/*overflow: hidden;*/
	font-size: .7em;
	color: #3DA782;
	text-align: center;
	clear: both;
	padding: 10px;
	background: white;
	letter-spacing: .05em;
}
@media (min-width: 769px) { /*PCのみ*/
	.bpts_footer {
		padding-top: 15px;
	}
}
@media (max-width: 768px) {
	.bpts_footer {
		font-size: 0.8em;
		text-align: center;
	}
	.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_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;
	}
}

/* ボタン */
.btn_circle {
	position: relative;
	z-index: 1;
	overflow: hidden;
	width: 160px;
	padding: 1em;
	cursor: pointer;
	line-height: 1.4;
	transition: color 0.3s cubic-bezier(0.02,0.01,0.47,1),transform 0.3s cubic-bezier(0.02,0.01,0.47,1);
	color: #ffffff;
	border: none;
	border-width: 0;
	border-color: transparent;
	border-radius: 100px;
	background: #3DA782;
}
.btn_circle:after, .btn_circle:before {
	position: absolute;
	z-index: -1;
	right: 0;
	bottom: 0;
	width: 100px;
	height: 100px;
	content: '';
	transition: transform 0.15s cubic-bezier(0.02,0.01,0.47,1),opacity 0.15s cubic-bezier(0.02,0.01,0.47,1);
	-webkit-transform: translate(100%,-25%) translateZ(0);
	        transform: translate(100%,-25%) translateZ(0);
	opacity: 0;
	border-radius: 50%;
	background: #009688;
}
.btn_circle:after, .btn_circle:before {
	background: #ffffff;
}
.btn_circle:hover {
	transition: all 0.5s cubic-bezier(0.02,0.01,0.47,1);
	-webkit-transform: scale(1.1) translateZ(0);
	        transform: scale(1.1) translateZ(0);
	color: #ffffff;
	box-shadow: 0 1px 8px rgba(0,0,0,0.3);
}
.btn_circle:hover:before {
	transition: transform 0.2s cubic-bezier(0.02,0.01,0.47,1),opacity 0.2s cubic-bezier(0.02,0.01,0.47,1);
	-webkit-transform: translate3d(50%,0,0) scale(0.9);
	        transform: translate3d(50%,0,0) scale(0.9);
	opacity: 0.15;
}
.btn_circle:hover:after {
	transition: transform 0.2s cubic-bezier(0.02,0.01,0.47,1) 0.05s,opacity 0.2s cubic-bezier(0.02,0.01,0.47,1) 0.05s;
	-webkit-transform: translate(50%) scale(1.1);
	        transform: translate(50%) scale(1.1);
	opacity: 0.25;
}
.btn_circle:active {
	opacity: 0.5;
}
.btn_circle:focus {
	color: #ffffff;
}

/* 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 .bpts_qaa_actab {
	position: relative;
	overflow: hidden;
	width: 100%;
	margin: 30px 0 1em 0;
	color: #3EA080;
}
.bpts_qaa_qa .bpts_qaa_actab input {
	position: absolute;
	opacity: 0;
}
/*  質問  */
.bpts_qaa_qa label {
	font-weight: bold;
	line-height: 1.7;
	position: relative;
	display: block;
	margin: 0 0 0 0;
	padding: .5em 2em .5em 2.5em;
	cursor: pointer;
	text-indent: 1em;
	border-bottom: 2px solid #D8D8D8;
}
.bpts_qaa_qa input {
	position: absolute;
	opacity: 0;
}
.bpts_qaa_qa label:hover {
	transition: all 0.3s;
	color: #3EA080;
}
/* --質問の＋アイコン */
.bpts_qaa_qa .bpts_qaa_actab label::after {
	font-size: 1.7em;
	font-weight: bold;
	line-height: 1.6em;
	position: absolute;
	top: 0;
	left: 0;
	content: '+';
	display: inline-block;
	width: 2em;
	height: 2em;
	-webkit-transition: transform 0.4s;
	transition: transform 0.4s;
}
/* 答え */
.bpts_qaa_qa .bpts_qaa_actab .bpts_qaa_actab-content {
	position: relative;
	overflow: hidden;
	max-height: 0;
	padding: 0;
	-webkit-transition: max-height 0.2s;
	transition: max-height 0.2s;
	border-radius: 0 0 0.5em 0.5em;
}
.bpts_qaa_qa .bpts_qaa_actab .bpts_qaa_actab-content p {
	margin: .4em;
	color: #222;
}
/* 質問を開いた時の仕様 */
/* --答えの高さ */
.bpts_qaa_qa .bpts_qaa_actab input:checked ~ .bpts_qaa_actab-content {
	max-height: 400em;
}
/* 質問をクリックした時のアイコンの動き */
.bpts_qaa_qa .bpts_qaa_actab input:checked ~ label {
	color: #4CB19A;
}
/* 質問をクリックした時の+の動き */
.bpts_qaa_qa .bpts_qaa_actab input[type=checkbox]:checked + label::after {
	-webkit-transform: rotateZ(45deg);
	transform: rotateZ(45deg);
	-webkit-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
}

/* ======================================
	二色分割・hoverで色が引くパネルボタン 
=========================================*/
/* パネルを横並びにするエリア */
.bpts_mainarea_menupanel {
	display: flex;
	-webkit-flex-wrap: wrap; /* Safari etc. */
	-ms-flex-wrap: wrap; /* IE10        */
	flex-wrap: wrap;
	max-width: 1200px;
	width: 100%;
}
@media (max-width: 768px) {
	/* パネルを縦1列に積んでいく */
	.bpts_mainarea_menupanel {
		text-align: center;
		display: block;
		height: auto;
		margin:0 auto;
		margin-bottom: 30px;
	}
}
/* 一つのパネル */
li.bpts_btn_gradation {
	width: 40%;
	color: #FFF;
	text-decoration: none;
	font-size: 1.1em;
	text-align: left;
	margin: 7px;
	/* pxで指定するとグラデにならずパキッと色が割れる */
	background-image: linear-gradient(135deg, #1b7c59 0%, #1b7c59 200px, #3da782 0%, #3da782 40px);
	transition: .5s;
	background-size: 200%;
	border-radius: 4px;
	position: relative; /* aタグを全体にかける準備 */
	z-index: 1;
	height: 60px;
	padding: 1em 2em;
}
li.bpts_btn_gradation p {
	text-align: center;
	color: #fff;
	padding-top: 18px;
}
@media (max-width: 1024px) {
	li.bpts_btn_gradation {
		width: 35%;
	}
}

@media (max-width: 768px) {
	/* パネルを縦1列に積んでいく */
	li.bpts_btn_gradation {
		margin: 0 auto;
		margin-bottom: 10px;
		width: calc(100% - 110px);
	}
}
/* hoverで色が引く */
li.bpts_btn_gradation:hover {
	background-position: right center;
}
/* 全体にリンクをかける */
.bpts_btn_gradation a {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
/* spanの位置調整 */
.bpts_btn_gradation span {
	position: absolute;
	left: 20px;
	top: 15px;
	color: white;
}
@media (max-width: 768px) {
	/* 導入事例 */
	.sitetop_about_c h2 {
		font-size: 1.2em;
		letter-spacing: 0.05em;
	}
}
/* -------------目次ページの矢印つきボタン------------- */

ul.bpts_mokuji_button_flex{
	display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
	max-width: 600px;
	justify-content: space-between;
	margin: 0 auto;
	padding:10px;
}

ul.bpts_mokuji_button_flex li{
	width: 47%;
    
}

/* ボタン１こ分 */
.bpts_mokuji_button {
	width: 100%!important;
	padding: .6em .4em;
	position: relative;
	display: inline-block;
	background-color:white;
	border: 2px solid #41AD87;
	color: #41AD87;
	text-align: center;
	text-decoration: none;
	font-size: 1.1em;
	margin-bottom: 15px;
}

.bpts_mokuji_button::after {
	position: absolute;
	top: 50%;
	right: 2em;
	content: '';
	margin-top: -5px;
	border: 7px solid transparent;
	border-top-width: 5px;
	border-bottom-width: 5px;
	border-left-color: #41AD87;
	transition: all .2s;
}

.bpts_mokuji_button:hover::after {
	right: 1.5em;
}

@media (max-width: 769px) {
	
ul.bpts_mokuji_button_flex{
	display: block;
}

ul.bpts_mokuji_button_flex li{
	width: 95%;
}

/* ボタン１こ分 */
.bpts_mokuji_button {
	width: 100%;
}
    
.bpts_mokuji_button::after {
    border:none;
    }    
}


/* flex横並びボックス　２個のとき */

.bpts_flexbox{
	 display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
	
	-webkit-justify-content: space-between; /* Safari */
    justify-content: space-between;
}

.bpts_flexbox div{
	flex: 1;
}

@media (max-width: 769px) {
	.bpts_flexbox{
	display: block;
	}
.bpts_flexbox div{
	flex: initial;
}
}

/* 画像の下に文字が回り込まないとき用 */

.bpts_fleximg{
	display: flex;
	display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
}

.bpts_fleximg img{
	margin:0 15px 15px;
}

@media (max-width: 769px) {
.bpts_fleximg{
	display: block;
	float: left; /* レスポンシブ時はまわりこむ */

}

.bpts_fleximg img{
	float: left;
}

.bpts_fleximg:after { /* まわりこんだ後フロートを解除する */
  display: block;
  clear: both;
  content: "";
	margin-bottom: 30px;
}
}

/* 角丸ボタン */
.bpts_btn {
	text-align: center;
	margin-bottom: 40px;
}
.bpts_btn .btn_circle {
	max-width: 330px;
	width: calc(100% - 50px);
	font-size: 1.2em;
	display: block;
	color: #fff;
	margin:0 auto;
}


/*下に動く矢印*/
.bpts_cp_arrows *, .bpts_cp_arrows *:before, .bpts_cp_arrows *:after {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.bpts_cp_arrows {
	position: relative;
	display: flex;
	height: 100px;
	margin: 0 auto 40px auto;
	justify-content: center;
	align-items: center;
}
.bpts_cp_arrows .bpts_cp_arrow {
	position: absolute;
	left: 50%;
	width: 60px;
	height: 10px;
	-webkit-transform: scale(0.3);
	        transform: scale(0.3);
	-webkit-animation: arrow-move07 3s ease-out infinite;
	        animation: arrow-move07 3s ease-out infinite;
	opacity: 0;
}
.bpts_cp_arrows .bpts_cp_arrow:first-child {
	-webkit-animation: arrow-move07 3s ease-out 1s infinite;
	        animation: arrow-move07 3s ease-out 1s infinite;
}
.bpts_cp_arrows .bpts_cp_arrow:nth-child(2) {
	-webkit-animation: arrow-move07 3s ease-out 2s infinite;
	        animation: arrow-move07 3s ease-out 2s infinite;
}
.bpts_cp_arrows .bpts_cp_arrow:before,
.bpts_cp_arrows .bpts_cp_arrow:after {
	position: absolute;
	top: 0;
	width: 50%;
	height: 100%;
	content: '';
	border-radius: 2px;
	background: #41AD87;
}
.bpts_cp_arrows .bpts_cp_arrow:before {
	left: 1px;
	-webkit-transform: skewY(30deg);
	        transform: skewY(30deg);
}
.bpts_cp_arrows .bpts_cp_arrow:after {
	right: 1px;
	width: 50%;
	-webkit-transform: skewY(-30deg);
	        transform: skewY(-30deg);
}
@-webkit-keyframes arrow-move07 {
	25% {
		opacity: 0.6;
	}
	43.75% {
		-webkit-transform: translateY(1em);
		        transform: translateY(1em);
		opacity: 0.8;
	}
	62.5% {
		-webkit-transform: translateY(2em);
		        transform: translateY(2em);
		opacity: 1;
	}
	100% {
		-webkit-transform: translateY(3em) scale(0.5);
		        transform: translateY(3em) scale(0.5);
		opacity: 0;
	}
}
@keyframes arrow-move07 {
	25% {
		opacity: 0.6;
	}
	43.75% {
		-webkit-transform: translateY(1em);
		        transform: translateY(1em);
		opacity: 0.8;
	}
	62.5% {
		-webkit-transform: translateY(2em);
		        transform: translateY(2em);
		opacity: 1;
	}
	100% {
		-webkit-transform: translateY(3em) scale(0.5);
		        transform: translateY(3em) scale(0.5);
		opacity: 0;
	}
}

/* --------------------------------------------------
	矢印ボックス
-------------------------------------------------- */

.bpts_yajirushi_bottom_box {
	position: relative;
	background: #ffffff;
	border: 4px solid #e6e6e6;
	padding:20px;
	margin-bottom: 50px;
}

.bpts_yajirushi_bottom_box_end {
	position: relative;
	background: #ffffff;
	border: 4px solid #e6e6e6;
	padding:20px;
}

.bpts_yajirushi_bottom_box:after, .bpts_yajirushi_bottom_box:before {
width:100%;
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.bpts_yajirushi_bottom_box:after {
	border-color: rgba(255, 255, 255, 0);
	border-top-color: #ffffff;
	border-width: 20px;
	margin-left: -20px;
}
.bpts_yajirushi_bottom_box:before {
	border-color: rgba(230, 230, 230, 0);
	border-top-color: #e6e6e6;
	border-width: 26px;
	margin-left: -26px;
}


/* 中見出し */
.col_internal_chuumidashi_work02{
	font-size: 1.5em;
	padding-left:32px;
	line-height: 1.5em;
	color: #41AD87;
}


/* スマホ用 */

@media (max-width: 890px) {
	
.bpts_yajirushi_bottom_box {
	display: inline-block;
	text-align: left;
    padding: 10px 0 0 0px;
	width:100%;
	margin-bottom: 25px;
	}


.bpts_yajirushi_bottom_box_end {
	display: inline-block;
	text-align: left;
    padding: 10px 0 0 10px;
	width:calc(100% - 20px);
	margin-bottom: 25px;
}

/* 中見出し */
.col_internal_chuumidashi_work02{
	font-size: 1em;
	padding:10px 0 10px 10%;
	line-height: 1.2em;
}

}
	
