@charset "UTF-8";
/* 
  @media (min-width: 576px) {
    }
  @media (min-width: 768px) {　タブレット用
     }
  @media (min-width: 992px) { タブレット/pc用
     }
  @media (min-width: 1200px) { pc
     }
*/
/* ==== */
.btn-secondary:hover {
  color: #fff;
  background-color: #707070;
  border-color: #8f9fd3; }
.row {justify-content: center;}
#wrapper {
  position: relative;}

@media (max-width: 767px) {
  #message .title_conts {padding-top: 0;}
}

#message > .container { width: 1554px;}
.box-riyo,
.box-biyo { padding: 40px 35px;}
.box-riyo,
.box-biyo { background-color: rgba(251, 251, 251, 0.9);}
@media (min-width: 768px) {
  .box-riyo {
    width: 744px;}
 .box-biyo {
    width: 750px;}
  .box-riyo p,
  .box-biyo p {
    font-size: 1.8rem;
   /* line-height: 2.2;  */}
  .box-riyo {margin: 0 0 0 auto;}
  .box-biyo {margin: 0 0 auto 0;}
}

#message h2 img {
  width: 170px;
  height: auto;
  padding-bottom: 1rem;}
#message h4 {
  line-height: 2.4rem;
  font-size: 1.8rem;
  font-weight: 700;
  padding-bottom: 1rem;}
#riyo, #biyo {
  position: relative;}
#riyo h4 { color:#325DDF;}
#biyo h4 { color:#FF0000;}
#biyo img {
    margin-right: 0;
    margin-left: auto;
  display: block;}

.img_introduction {
  display: inline-block;
  width: 100%;
  color: #fff;
  border-top:solid 1px #fff;
  padding-bottom: 1rem;
  text-align: end;}
#riyo > img,
#biyo > img {
  position: relative;
  top: 0;}
.layer_box {
  padding: 0;}
@media (min-width: 768px) {
  #riyo > img {
  margin-bottom: 180px;}
  #biyo > img {
  margin-bottom: 500px;}
  .layer_box {
  position: absolute;
  top: 242px;
  right: 0;
  left: 0;}
}

/* 企業理念 */
#philosophy {
  background-color: rgba(0, 123, 255, 0.2);
  background: url("../images/cuttwin_animation.gif") no-repeat;
  background-size: cover;
  background-position: center center;
  padding-top: 10rem;
  padding-bottom: 10rem;}
#philosophy .container {
  padding: 5rem;
  background-color: rgba(255, 252, 243, 0.7);}
#philosophy .txt_conts {
  padding-bottom: 2rem;
  text-align: left;}
@media (min-width: 768px) {
  #philosophy .txt_conts {
    text-align: center;}
}
.chart_item {
  font-size: 12px;
  color: rgba(123,123,123,1.00);}

/* 企業情報 */
#information .txt_conts {
  padding-bottom: 5rem;}

@media (min-width: 768px) {
  #information .row {
    justify-content: space-around;}
  #information .row .tbl_base {
    flex: 0 1 44%;
    width: 44%;}}

#information .tbl_base {
  width: 100%;
  margin-bottom: 5rem;}
#information .tbl_base tr {
  border-bottom: 1px solid #C0C7D9;}
#information .tbl_base tr:first-child {
  border-top: 1px solid #C0C7D9;}
#information .tbl_base tr td:first-child {
  padding-left: .5em;
  font-weight: bold;
  width: 11rem;}
#information .tbl_02 tr td:first-child {
  padding-left: .5em;
  font-weight: bold;
  width: 13rem;}
#information .tbl_base tr td {
  padding: .5rem 0;
  vertical-align: top !important;}
#information .tbl_01 {
  margin-bottom: 4rem;}

/* 沿革 */
#history {
  padding-top: 10rem;
  background-color: #bdc8ea;}
#history table.tbl_base.tbl_history {
  width: 100%;
  max-width: 80rem;
  margin: auto;}
.tbl_history .tbl_txt {
  padding-left: 1rem;}
.tbl_txt img {
  width: 400px;
  max-width: 100%;
  padding: 1rem;}
.tbl_history tr td {
  padding: .5rem 0;
  position: relative;
  vertical-align: top !important;}
.tbl_history tr td:first-child {
  border-right: 1px solid #2e467c;
  font-weight: bold;
  width: 10rem;}
@media (min-width: 576px) {
  .tbl_history tr td:first-child {
    width: 7em;}
}
.tbl_history tr td:first-child::after {
  content: '●';
  color: #2e467c;
  position: absolute;
  top: 0.3em;
  right: -0.4em;}
.tbl_pointTxt {
  text-align: left;
  color: #fff;
  font-weight: bold;}
.tbl_pointTxt span {
  background-color: #F00;
  font-size: 2.4rem;
  padding: .3em;
  margin-left: 4rem;
  border-radius: 25px;}
@media (min-width: 576px) {
   .tbl_pointTxt span {
     margin-left: 6rem;
  }
}
.tbl_pointTxt td:first-child {
  border: none!important;}
.tbl_pointTxt td:first-child::after {
  content: ''!important;}
.tbl_pointTxt span::after {
  content: '店舗達成';
  font-size: 1.4rem;
  font-weight: normal;}
.box_tbl_history {
  padding: 5rem 2rem;
  background-color: #fff;
  margin-bottom: 10rem;}


/* グラフ */
#shopData { margin-top: 2rem;}
#shopData .title_conts {
  font-size: 2.6rem;
  color: #f00;
  padding-top: 6rem;
  margin-bottom: 4rem;}
#shopData .title_tenpo span {
  background-color: #F00;
  color: #fff;
  padding: .2em 1em;
  border-radius: 25px;
  font-size: 1.6rem;
  font-weight: 900;}
#shopData .title_conts span {
  color: #000; }
#shopData .title_tenpo {
  text-align: center;
  line-height: 0;
  letter-spacing: 2px;
  margin-bottom: 4rem;}
#shopData .title_tenpo .number {
  font-size: 5rem;
  color: #fff;
  padding: 0 1rem;
  text-shadow    : 
     2px  2px 1px #f00,
    -2px  2px 1px #f00,
     2px -2px 1px #f00,
    -2px -2px 1px #f00,
     2px  0px 1px #f00,
     0px  2px 1px #f00,
    -2px  0px 1px #f00,
     0px -2px 1px #f00; }

@media (min-width: 768px) {
  #shopData { margin: 0 10%;}
  #shopData .title_tenpo span {
    padding: .2em 2em;
    font-size: 2rem;}
  #shopData .title_tenpo .number {
    font-size: 7rem;}
}


/* 組織図 */
#soshiki {
  text-align: center;
  padding-bottom: 8rem;}
#soshiki .txt_conts {
  padding-bottom: 3rem;}


/* 事業戦略 */
#strategy {
  background: url("../images/company/img_philosophy_bg.jpg") center center no-repeat;
  background-size: cover;
  padding: 100px 15px;}
@media (min-width: 768px) {
  #strategy {
    margin-bottom: -20px;}}
#strategy .container {
  background-color:rgba(255,252,252,.7);
  padding: 5rem 3rem;}
@media (min-width: 768px) {
  #strategy .container {
  padding: 5rem 8rem;
  width: 70rem;}}



/* 見出しの飾り */

.bg_txt {position: relative;}

#message .bg_txt::before {
  content: '';
  display: block;
  max-width: 85%;
  width: 1000px;
  height: 700px;
  margin: 0 auto;
  background-image: url("../images/company/img_messageTxt_bg.png");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  right: 0;
  left: 0;
  top: -6rem;
  z-index: -10;}

#information .bg_txt::before {
  content: '';
  display: block;
  max-width: 90%;
  width: 1000px;
  height: 700px;
  margin: 0 auto;
  background-image: url("../images/company/img_informationTxt_bg.svg");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  right: 0;
  left: 0;
  top: -6rem;
  z-index: -10;}



@media (min-width: 768px) {
  #information .bg_txt::before  {
    content: '';
    max-width: 80%;
    left: 20%;
    margin: 0 auto;
    top: 0rem; }
  #information .bg_txt::before {
    top: -12rem;}

}
@media (min-width: 1100px) { 
  #information .bg_txt::before  {
    top: 0rem; }}




.top_p { font-size: 3rem; color: #000; line-height: 2.2; padding-top: 1rem; font-family: "nsjpr"; font-weight: bold; letter-spacing:0; }
@media (min-width: 768px) {
.top_p { font-size: 5.8rem; }
.layer_box { position: relative; top: 0; margin-top: -240px;}
}
.ttl-01 {font-size: 2.2rem;}
@media (max-width: 575px) {.ttl-01 {font-size: 1.6rem; letter-spacing:-0.02em;}}

@media (min-width: 768px){.box-riyo { width: 730px;}}
#philosophy .txt_conts { text-align: left; text-indent: -2em; padding-left: 3em; text-align: justify; }
#strategy {margin-bottom: 450px;}
footer { margin-top: -500px;}
@media (min-width: 768px){
  footer {margin-top: -700px;}
  #strategy {margin-bottom: 200px;}
}

 .tbl_txt　 .bank dt {float: left;}
　.tbl_txt　 .bank dd {margin-left: 10.5em;} 

@media (max-width: 575px) {
　.tbl_txt　 .bank dd {font-size: 1em;} 
}



/* iphoneSE対策 */
@media (max-width: 320px) {
	#information .tbl_base tr td { 
    font-size: .8em;}
	.tbl_history tr td {
    font-size: .8em;
    letter-spacing: 0;}
	.tbl_history tr td:first-child {
	width: 7em;}
	.box_tbl_history {
    padding: 5rem 1rem;}




}