@charset "UTF-8";

h4.bplan-4 {
  color:#fff;
  font-weight: bold;
  font-size: 4em;
  text-align:center;
  letter-spacing: 0.2rem;
  text-indent: 0.2rem;
  margin:0 0 0.8em;
  padding:0;
}

.bplan-5 {
  color:#fff;
  font-weight: bold;
  font-size: 3em;
  text-align:center;
  letter-spacing: 0.2rem;
  text-indent: 0.2rem;
  margin:0;
  padding:0.5rem 0;
  background:rgba(201,46,41,0.7);
  border-radius:100vh;
  border:none;
}
.bplan-5 span {
  font-size:0.8em;
  vertical-align:middle;
}
.bplan-6 {
  color:#fff;
  font-weight: bold;
  font-size: 2em;
  text-align:center;
  letter-spacing: 0.2rem;
  text-indent: 0.2rem;
  margin:0;
  padding:0.5rem 0;
  background:rgba(201,46,41,1);
  border-radius:100vh;
  border:none;
}

#bplan-mainbox {
  width:100%;
  max-width:1000px;
  height:100%;
  aspect-ratio: 16 / 9;
  margin:0 auto;
  position: relative;
  background: linear-gradient(rgba(0, 0, 0, 0.1),  rgba(0, 0, 0, 0.3)),  url("/images/company/b-plan/main.jpg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
#bplan-mainbox img {
  width:100%;
  height:auto;
}
.mainbox_inner {
  min-width:70%;
  position: absolute;
  top:42%;
  left: 50%;
  margin:0;
  padding:0;
  transform: translate(-50%,-50%);
}
.bplan-box {
  width:100%;
  height:auto;
  font-size:16px;
  text-align:center;
  margin:0;
  padding:5rem 0;
  overflow:hidden;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.bplan-box p {
  font-size:2em;
  font-weight:bold;
  color:#232684;
  margin:2rem 0 1rem 0;
  padding:0;
  text-align:center;
}
.bplan-box p span {
  font-size:0.7em;
  font-weight:normal;
  display:block;
}
.bplan-box p.toob {
  font-size: 30vw;
  font-weight:bold;
  color:#3d3d3d;
  margin:50px 0 0;
  padding:0;
  text-align:center;
  line-height:1;
}
.bplan-box p.toom {
  font-size:8vw;
  font-weight:bold;
  color:#3d3d3d;
}
.bplan-box p.toom span {
  font-size:8vw;
  font-weight:bold;
  color:#c92e29;
  display:inline-block;
  margin:0;
  padding:0;
}
/*.bplan-box:not(:last-of-type){
  border-bottom:1px solid #ccc;
}*/

.bplan-box-inner {
  width:70%;
  height:auto;
  line-height:1.8;
  text-align:left;
  margin:0 auto;
  padding:0;
  overflow:hidden;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.bplan-box-inner ul,
.bplan-box-inner ol {
  position: relative;
  margin: 0;
  padding: 0
}
.bplan-box-inner ol li {
  list-style: none;
  list-style-position: outside;
  padding-left: 1.25em;
  margin-bottom:0.5rem;
}
.bplan-box-inner ol li span {
  position: absolute;
  left: 0;
  margin: 0;
}
.bplan-box-inner ul li {
  list-style: none;
  padding-left: 1em;
  margin:0;
  text-indent:-0.5em;
  font-size:1.5em;
}
.bplan-box-inner ul li::before {
  font-family: "Font Awesome 5 Free";
  content: "\f0da";
  font-weight: 900;
  margin-right:0.2em;
}

.bplan-box-list {
	width: 100%;
	margin: 0 auto;
	padding: 0;
}

.card-container {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 15px;
	padding: 0;
	box-sizing: border-box;
}

.card {
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
	padding: 15px;
	text-align: center;
	transition: transform 0.2s, box-shadow 0.2s;
	border:1px solid #ddd;
	font-weight:bold;
	color:#3d3d3d;
}
.card p {
  font-size:1.5em;
  margin:0;
  padding:0;
}
.card span {
  color:#c92e29;
  font-size:100%;
  display:inline-block;
}

/*-------お客様満足度欄-------*/
ol.customer-s {
  list-style: none;
  counter-reset: list-counter;
  margin-bottom:50px;
}

ol.customer-s li {
  counter-increment: list-counter;
  position: relative;
  background-color:#3d3d3d;
  color:#fff;
  font-size:1.5em;
  font-weight:bold;
  padding:0.5em 0.5em 0.5em 2em;
  margin:0.5px 0;
}
ol.customer-s li:nth-child(3) { padding-left:1.5em; }

ol.customer-s li::before {
  content: "①";
  font-family: Arial, sans-serif;
  position: absolute;
  left: 0.5em;
}

ol.customer-s li:nth-child(2)::before { content: "②"; }
ol.customer-s li:nth-child(3)::before { content: "③"; }
ol.customer-s li:nth-child(4)::before { content: "④"; }
ol.customer-s li:nth-child(5)::before { content: "⑤"; }
ol.customer-s li:nth-child(6)::before { content: "⑥"; }
ol.customer-s li:nth-child(7)::before { content: "⑦"; }
ol.customer-s li:nth-child(8)::before { content: "⑧"; }
ol.customer-s li:nth-child(9)::before { content: "⑨"; }
ol.customer-s li:nth-child(10)::before { content: "⑩"; }

.next-stage {
  background-color:#3d3d3d;
  color:#fff;
  font-size:1.5em;
  font-weight:bold;
  text-align:center;
  padding:0.5em;
  margin:1em 0;
  border-radius:100vh;
  border:none;
}
.next-arrow {
  font-size: 3rem;
  color:#3d3d3d;
  text-align:center;
  animation: fadeMoveDown 1.5s infinite ease-in-out;
}
@keyframes fadeMoveDown {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: translateY(20px);
    opacity: 0;
  }
}
.next-stage-b {
  color:#c92e29;
  font-size:1.5em;
  font-weight:bold;
  text-align:center;
  padding:0.5em;
  margin:1em 0;
  border-bottom:2px solid #c92e29;
}

/*-------3つの施策欄-------*/
.measures {
  width:100%;
  display:flex;
  justify-content: space-between;
  padding:0;
  margin:1em 0;
  border:1px solid #232684;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.measures_l {
  display: flex;
  align-items: center;
  width:30%;
  padding:0.5em;
  margin:0;
  background-color:#232684;
  color:#fff;
  font-weight:bold;
  font-size:2em;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.measures_r {
  width:70%;
  padding:0.5em;
  margin:0;
  color:#3d3d3d;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}


@media screen and (max-width: 768px){
h4.bplan-4 {
  font-size: 1.6em;
}

.bplan-5,
.bplan-6 {
  font-size: 1.2em;
}

#bplan-mainbox {
  width:100%;
  max-width:100%;
  height:auto;
  margin-top:50px;
}
.bplan-box p {
  font-size:1.3em;
}

.bplan-box-inner {
  width:100%;
}

.bplan-box p.toob {
  margin:20px 0 0;
}

.card-container {
	grid-template-columns: 50% 1fr;
}

ol.customer-s li,
.next-stage,
.next-stage-b,
.measures_l,
.bplan-box-inner ul li {
  font-size:1em;
}
}

.mt-100 {margin-top:100px!important;}