@charset 'UTF-8';
/* =========================================================================================================================================== */
/*
/* ページ別CSSファイル読み込み
/*
/* =========================================================================================================================================== */
@import url('mypage.css');
@import url('listhorse.css');


/* =========================================================================================================================================== */
/*
/* サイト共通デザイン
/*
/* =========================================================================================================================================== */
* {
  box-sizing: border-box;
}
html {
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
}
body{
  position: relative;
  margin: 0;
  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  font-size: 16px;
  font-size: 1.6rem; 
  line-height: 22px;
}
body.menu_open {
  overflow: hidden;
}
img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
button {
  cursor: pointer;
  background: none;
  border: none;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
select {
-webkit-appearance: none;/* ベンダープレフィックス(Google Chrome、Safari用) */
-moz-appearance: none; /* ベンダープレフィックス(Firefox用) */
appearance: none; /* 標準のスタイルを無効にする */
}
::-ms-expand { /* select要素のデザインを無効にする（IE用） */
display: none;
}

:root {
  --blue: #4591ce;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : パディング
/* セレクタ : .mb-XX
/*----------------------------------------------------------*/
.mb-0 {
  margin-bottom: 0 !important;
}
.mb-10 {
  margin-bottom: 10px !important;
}
.mb-20 {
  margin-bottom: 20px !important;
}
.mb-30 {
  margin-bottom: 30px !important;
}
.mb-40 {
  margin-bottom: 40px !important;
}
.mb-50 {
  margin-bottom: 50px !important;
}
.mb-60 {
  margin-bottom: 60px !important;
}
.mb-70 {
  margin-bottom: 70px !important;
}
.mb-80 {
  margin-bottom: 80px !important;
}
.mb-90 {
  margin-bottom: 90px !important;
}
.mb-100 {
  margin-bottom: 100px !important;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : パディング
/* セレクタ : .mt-XX
/*----------------------------------------------------------*/
.mt-0 {
  margin-top: 0 !important;
}
.mt-10 {
  margin-top: 10px !important;
}
.mt-20 {
  margin-top: 20px !important;
}
.mt-30 {
  margin-top: 30px !important;
}
.mt-40 {
  margin-top: 40px !important;
}
.mt-50 {
  margin-top: 50px !important;
}
.mt-60 {
  margin-top: 60px !important;
}
.mt-70 {
  margin-top: 70px !important;
}
.mt-80 {
  margin-top: 80px !important;
}
.mt-90 {
  margin-top: 90px !important;
}
.mt-100 {
  margin-top: 100px !important;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : パディング
/* セレクタ : .pb-XX
/*----------------------------------------------------------*/
.pb-0 {
  padding-bottom: 0 !important;
}
.pb-10 {
  padding-bottom: 10px !important;
}
.pb-20 {
  padding-bottom: 20px !important;
}
.pb-30 {
  padding-bottom: 30px !important;
}
.pb-40 {
  padding-bottom: 40px !important;
}
.pb-50 {
  padding-bottom: 50px !important;
}
.pb-60 {
  padding-bottom: 60px !important;
}
.pb-70 {
  padding-bottom: 70px !important;
}
.pb-80 {
  padding-bottom: 80px !important;
}
.pb-90 {
  padding-bottom: 90px !important;
}
.pb-100 {
  padding-bottom: 100px !important;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : パディング
/* セレクタ : .pt-XX
/*----------------------------------------------------------*/
.pt-0 {
  padding-top: 0 !important;
}
.pt-10 {
  padding-top: 10px !important;
}
.pt-20 {
  padding-top: 20px !important;
}
.pt-30 {
  padding-top: 30px !important;
}
.pt-40 {
  padding-top: 40px !important;
}
.pt-50 {
  padding-top: 50px !important;
}
.pt-60 {
  padding-top: 60px !important;
}
.pt-70 {
  padding-top: 70px !important;
}
.pt-80 {
  padding-top: 80px !important;
}
.pt-90 {
  padding-top: 90px !important;
}
.pt-100 {
  padding-top: 100px !important;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : パディング
/* セレクタ : .pr-XX
/*----------------------------------------------------------*/
.pr-0 {
  padding-right: 0 !important;
}
.pr-10 {
  padding-right: 10px !important;
}
.pr-20 {
  padding-right: 20px !important;
}
.pr-30 {
  padding-right: 30px !important;
}
.pr-40 {
  padding-right: 40px !important;
}
.pr-50 {
  padding-right: 50px !important;
}
.pr-60 {
  padding-right: 60px !important;
}
.pr-70 {
  padding-right: 70px !important;
}
.pr-80 {
  padding-right: 80px !important;
}
.pr-90 {
  padding-right: 90px !important;
}
.pr-100 {
  padding-right: 100px !important;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : 横幅
/* セレクタ : .width-XX
/*----------------------------------------------------------*/
.width-full {
  width: 100% !important;
}
.width-100p {
  display: block;
  width: calc(100% - 40px) !important;
  margin: 0 auto;
}
.width-10 {
  width: 10px !important;
}
.width-20 {
  width: 20px !important;
}
.width-30 {
  width: 30px !important;
}
.width-40 {
  width: 40px !important;
}
.width-50 {
  width: 50px !important;
}
.width-60 {
  width: 60px !important;
}
.width-70 {
  width: 70px !important;
}
.width-80 {
  width: 80px !important;
}
.width-90 {
  width: 90px !important;
}
.width-100 {
  width: 100px !important;
}
.width-110 {
  width: 110px !important;
}
.width-120 {
  width: 120px !important;
}
.width-130 {
  width: 130px !important;
}
.width-140 {
  width: 140px !important;
}
.width-150 {
  width: 150px !important;
}
.width-160 {
  width: 160px !important;
}
.width-170 {
  width: 170px !important;
}
.width-180 {
  width: 180px !important;
}
.width-190 {
  width: 190px !important;
}
.width-200 {
  width: 200px !important;
}
.width-210 {
  width: 210px !important;
}
.width-220 {
  width: 220px !important;
}
.width-230 {
  width: 230px !important;
}
.width-240 {
  width: 240px !important;
}
.width-250 {
  width: 250px !important;
}
.width-260 {
  width: 260px !important;
}
.width-270 {
  width: 270px !important;
}
.width-280 {
  width: 280px !important;
}
.width-290 {
  width: 290px !important;
}
.width-300 {
  width: 300px !important;
}
.width-310 {
  width: 310px !important;
}
.width-320 {
  width: 320px !important;
}
.width-330 {
  width: 330px !important;
}
.width-340 {
  width: 340px !important;
}
.width-350 {
  width: 350px !important;
}
.width-360 {
  width: 360px !important;
}
.width-370 {
  width: 370px !important;
}
.width-380 {
  width: 380px !important;
}
.width-390 {
  width: 390px !important;
}
.width-400 {
  width: 400px !important;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : 横幅
/* セレクタ : .max-width-XX
/*----------------------------------------------------------*/
.max-width-100 {
  max-width: 100px !important;
}
.max-width-110 {
  max-width: 110px !important;
}
.max-width-120 {
  max-width: 120px !important;
}
.max-width-130 {
  max-width: 130px !important;
}
.max-width-140 {
  max-width: 140px !important;
}
.max-width-150 {
  max-width: 150px !important;
}
.max-width-160 {
  max-width: 160px !important;
}
.max-width-170 {
  max-width: 170px !important;
}
.max-width-180 {
  max-width: 180px !important;
}
.max-width-190 {
  max-width: 190px !important;
}
.max-width-200 {
  max-width: 200px !important;
}
.max-width-210 {
  max-width: 210px !important;
}
.max-width-220 {
  max-width: 220px !important;
}
.max-width-230 {
  max-width: 230px !important;
}
.max-width-240 {
  max-width: 240px !important;
}
.max-width-250 {
  max-width: 250px !important;
}
.max-width-260 {
  max-width: 260px !important;
}
.max-width-270 {
  max-width: 270px !important;
}
.max-width-280 {
  max-width: 280px !important;
}
.max-width-290 {
  max-width: 290px !important;
}
.max-width-300 {
  max-width: 300px !important;
}
.max-width-310 {
  max-width: 310px !important;
}
.max-width-320 {
  max-width: 320px !important;
}
.max-width-330 {
  max-width: 330px !important;
}
.max-width-340 {
  max-width: 340px !important;
}
.max-width-350 {
  max-width: 350px !important;
}
.max-width-360 {
  max-width: 360px !important;
}
.max-width-370 {
  max-width: 370px !important;
}
.max-width-380 {
  max-width: 380px !important;
}
.max-width-390 {
  max-width: 390px !important;
}
.max-width-400 {
  max-width: 400px !important;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : H1
/* セレクタ : h1
/*----------------------------------------------------------*/
h1 {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#4591ce+0,2f3395+100 */
 /* background: rgb(69,145,206); 
  background: -moz-linear-gradient(top,  rgba(69,145,206,1) 0%, rgba(47,51,149,1) 100%); 
  background: -webkit-linear-gradient(top,  rgba(69,145,206,1) 0%,rgba(47,51,149,1) 100%); 
  background: linear-gradient(to bottom,  rgba(69,145,206,1) 0%,rgba(47,51,149,1) 100%); 
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4591ce', endColorstr='#2f3395',GradientType=0 ); 
*/
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : H2
/* セレクタ : h2
/*----------------------------------------------------------*/

h2 {
  font-size: 1.4rem;
  height: 24px;
  font-weight: bold;
  text-align: center;
  line-height: 24px;
  color: white;
  background: #4591ce;
  background: -moz-linear-gradient(top, #4591ce 0%, #2f3395 100%);
  background: -webkit-linear-gradient(top, #4591ce 0%,#2f3395 100%);
  background: linear-gradient(to bottom, #4591ce 0%,#2f3395 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4591ce', endColorstr='#2f3395',GradientType=0 );
}
h2.green {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#64cc95+0,167042+100 */
  background: rgb(100,204,149); /* Old browsers */
  background: -moz-linear-gradient(top,  rgba(100,204,149,1) 0%, rgba(22,112,66,1) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top,  rgba(100,204,149,1) 0%,rgba(22,112,66,1) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom,  rgba(100,204,149,1) 0%,rgba(22,112,66,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#64cc95', endColorstr='#167042',GradientType=0 ); /* IE6-9 */
}
h2.red {
  padding: 5.5px 0;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.45;
  text-align: center;
  color: white;
  background: #d72240;
  height: auto;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : H2デザイン２
/* セレクタ : .h2_2
/*----------------------------------------------------------*/
.h2_2 {
  width: calc(100% - 40px);
  height: 39px;
  padding: 7.5px 14px;
  margin: 0 auto;
  background: #ba2b31;
  text-align: left;
  font-size: 16px;
  font-weight: bold;
  color: white;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : H2デザイン3
/* セレクタ : .h2_3
/*----------------------------------------------------------*/
.h2_3 {
  position: relative;
  font-weight: bold;
  border-top: solid 1px #d3d3d3;
  width: calc(100% - 40px);
  margin: 0 auto;
  border-bottom: solid 2px #555555;
  height: 44px;
  color: #373737;
  text-align: left;
  padding-left: 9px;
  padding-top: 9px;
  font-size: 16px;
  background: initial;
  background: -moz-linear-gradient(bottom, #ffffff 0%, #ffffff 29%, #ecedf0 100%);
  background: -webkit-linear-gradient(bottom, #ffffff 0%, #ffffff 29%, #ecedf0 100%);
  background: linear-gradient(to bottom, #ffffff 0%, #ffffff 29%, #ecedf0 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ecedf0',GradientType=0 );
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : H2デザイン4
/* セレクタ : .h2_4
/*----------------------------------------------------------*/
.h2_4,
.h2_4.red {  
  position: relative;
  color: #5d2915;
  background: none;
  text-align: left;
  width: calc(100% - 40px);
  height: auto;
  margin: 0 auto;
  margin-top: 22px;
  margin-bottom: 14px;
  font-size: 16px;
  padding-left: 40px;
  padding-top: 6px;
  padding-bottom: 2px;
  border-bottom: solid 2px #5d2915;
}
.h2_4.dot {
  border-bottom: dotted 2px #333333;
}
.h2_4::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../image/public/h2_4_icon.svg);
  width: 34px;
  height: 27px;
  left: 0;
  background-size: cover;
  background-repeat: no-repeat;
  top: 0;
}
.h2_4.blue::before {
  background-image: url(../image/public/h2_4_blue_icon.svg);
}
.h2_4.red::before {
  background-image: url(../image/public/h2_4_red_icon.svg);
}
.h2_4 .button {
  display: block;
  width: 20px;
  height: 2px;
  background: #5d2915;
  position: absolute;
  right: 8px;
  top: 18px;
}
.h2_4 .button::after {
  content: "";
  display: block;
  width: 20px;
  height: 2px;
  background: #5d2915;
  position: absolute;
  right: 0;
  top: 0;
  transform: rotate(90deg);
  transition: all 0.5s ease;
}
.h2_4.open .button::after {
  transform: none;
}
.h2_4+.h2_4_target {
  max-height: 0;
  overflow: hidden;
  transition: all 1s ease;
}
.h2_4.open+.h2_4_target {
  max-height: 2500px;
}
.h2_4 .new {
  display: inline-block;
  font-size: 1.2rem;
  padding: 0 8px;
  background-color: #AC0837;
  line-height: 1.75;
  color: white;
  margin-left: 5px;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : H2デザイン5
/* セレクタ : .h2_5
/*----------------------------------------------------------*/
/* デフォルトはグリーン */
.h2_5 {
  position: relative;
  font-weight: bold;
  width: 100%;
  margin: 0 auto;
  border-top: solid 2px #2d9600;
  border-bottom: solid 1px #d3d3d3;
  min-height: 44px;
  height: auto;
  color: #373737;
  text-align: left;
  padding-left: 10px;
  padding-top: 10px;
  padding-bottom: 7px;
  font-size: 18px;
  background: initial;
  background: -moz-linear-gradient(bottom, #ecedf0 0%, #ffffff 71%, #ffffff 100%); 
  background: -webkit-linear-gradient(bottom, #ecedf0 0%, #ffffff 71%, #ffffff 100%);
  background: linear-gradient(to bottom, #ecedf0 0%, #ffffff 71%, #ffffff 100%); 
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ecedf0', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
}
/* グレイ */
.h2_5.gray {
  border-top: solid 2px #555555;
}
/* ブルー */
.h2_5.blue {
  border-top: solid 2px #212288;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : H2デザイン6
/* セレクタ : .h2_6
/*----------------------------------------------------------*/
.h2_6 {
  position: relative;
  color: #5d2915;
  background: none;
  text-align: left;
  width: calc(100% - 40px);
  height: auto;
  margin: 0 auto;
  margin-top: 22px;
  margin-bottom: 6px;
  font-size: 16px;
  padding-left: 40px;
  padding-top: 6px;
  padding-bottom: 10px;
}
.h2_6::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../image/public/h2_4_icon.svg);
  width: 34px;
  height: 27px;
  left: 0;
  background-size: cover;
  background-repeat: no-repeat;
  top: 0;
}
.h2_6::after {
  content: "";
  background-image: url(../image/public/line.gif);
  display: block;
  width: 100%;
  height: 4px;
  left: 0;
  position: absolute;
  bottom: 0;
}

.h2_6.blue::before {
  background-image: url(../image/public/h2_4_blue_icon.svg);
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : H2デザイン6
/* セレクタ : .h2_7
/*----------------------------------------------------------*/
.h2_7 {
  width: calc(100% - 40px);
  margin: 0 auto;
  text-align: left;
  height: 24px;
  background: #ffffff;
  background: -moz-linear-gradient(top, #ffffff 0%, #e9e4e3 100%);
  background: -webkit-linear-gradient(top, #ffffff 0%,#e9e4e3 100%);
  background: linear-gradient(to bottom, #ffffff 0%,#e9e4e3 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e9e4e3',GradientType=0 );
  border: solid 1px #dededf;
  position: relative;
}
.h2_7 .inner{
  width: 260px;
  background: #1e2679;
  background: -moz-linear-gradient(left, #1e2679 0%, #2e52a3 100%);
  background: -webkit-linear-gradient(left, #1e2679 0%,#2e52a3 100%);
  background: linear-gradient(to right, #1e2679 0%,#2e52a3 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1e2679', endColorstr='#2e52a3',GradientType=1 );
  height: 24px;
  padding-left: 20px;
  position: absolute;
  left: -1px;
  top: -1px;
  line-height: 24px;
}
.h2_7 .inner::before {
  content: "";
  position: absolute;
  height: 15px;
  width: 7px;
  border-left: solid 3px white;
  top: 4px;
  border-right: solid 1px white;
  box-sizing: border-box;
  left: 8px;
}

.h2_7 .inner::after {
  content: "";
  display: block;
  position: absolute;
  top: 0px;
  right: -12px;
  box-sizing: border-box;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 12px 0 12px 12px;
  border-color: transparent transparent transparent #2e51a3;
}

.h2_7.green {
  background: #ffffff;
  background: -moz-linear-gradient(top, #ffffff 0%, #e9e4e3 100%);
  background: -webkit-linear-gradient(top, #ffffff 0%,#e9e4e3 100%);
  background: linear-gradient(to bottom, #ffffff 0%,#e9e4e3 100%);
}
.h2_7.green .inner {
  background: #22931a;
  background: -moz-linear-gradient(left, #1e7935 0%, #32a32e 100%);
  background: -webkit-linear-gradient(left, #1e7935 0%, #32a32e 100%);
  background: linear-gradient(to right, #1e7935 0%, #32a32e 100%);
}
.h2_7.green .inner::after {
  border-color: transparent transparent transparent #32a32e;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : H3デザイン1
/* セレクタ : .h3_1
/*----------------------------------------------------------*/
.h3_1 {
  line-height: 22px;
  padding: 0 20px;
  font-size: 16px;
  font-weight: bold;
  color: #21238a;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : H3デザイン2
/* セレクタ : .h3_2
/*----------------------------------------------------------*/
.h3_2 {
  width: calc(100% - 40px);
  font-size: 16px;
  font-weight: bold;
  color: #206B00;
  padding-left: 8px;
  margin-bottom: 15px;
  border-left: 5px solid #206B00;
  border-bottom: 1px solid #206B00;
  margin: 0 auto;
  margin-top: 20px;
}
/* ブルー */
.h3_2.blue {
  border-left: 5px solid #212288;
  border-bottom: 1px solid #212288;
  color: #212288;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : H3デザイン3
/* セレクタ : .h3_3
/*----------------------------------------------------------*/
.h3_3 {
  font-size: 16px;
  line-height: 22px;
  font-weight: bold;
  padding: 0 20px;
  padding-top: 20px;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : H3デザイン4
/* セレクタ : .h3_4
/*----------------------------------------------------------*/
.h3_4 {
  position: relative;
  font-size: 16px;
  line-height: 22px;
  font-weight: bold;
  padding: 0 20px;
  padding-top: 20px;
  padding-left: 35px;
}
.h3_4::before {
  position: absolute;
  content: "■";
  color: #d6003f;
  font-size: 13px;
  left: 20px;
  top: 21px;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : H3デザイン2
/* セレクタ : .h3_5
/*----------------------------------------------------------*/
.h3_5 {
  position: relative;
  width: calc(100% - 40px);
  font-size: 16px;
  font-weight: bold;
  color: #206B00;
  padding-left: 8px;
  border-left: 5px solid #2c9200;
  margin: 0 auto;
  margin-top: 20px;
  line-height: 1;
  margin-bottom: 25px;
}
.h3_5::after {
  content: "";
  width: 100%;
  border-bottom: dotted 1px #8f8f8f;
  display: block;
  position: absolute;
  left: -5px;
  bottom: -10px;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : H3デザイン4
/* セレクタ : .h3_6
/*----------------------------------------------------------*/
.h3_6 {
  position: relative;
  font-size: 16px;
  line-height: 22px;
  font-weight: bold;
  padding: 0 20px;
  padding-top: 20px;
  padding-left: 35px;
  color: #333333;
}
.h3_6::before {
  position: absolute;
  content: "■";
  color: #333333;
  font-size: 13px;
  left: 20px;
  top: 21px;
  
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : H3デザイン4
/* セレクタ : .h3_7
/*----------------------------------------------------------*/
.h3_7 {
  width: calc(100% - 40px);
  margin: 0 auto;
  height: 34px;
  line-height: 34px;
  text-align: center;
  background: #00713a;
  background: -moz-linear-gradient(top, #00713a 0%, #008f3d 100%);
  background: -webkit-linear-gradient(top, #00713a 0%,#008f3d 100%);
  background: linear-gradient(to bottom, #00713a 0%,#008f3d 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00713a', endColorstr='#008f3d',GradientType=0 );
  color: white;
  font-size: 14px;
  font-weight: bold;
  border-radius: 3px;
  border: solid 2px white;
  box-shadow: 0 0 3px #d8d8d8;
}
.h3_7.blue {
  background: #005da3;
  background: -moz-linear-gradient(top, #005da3 0%, #0071b7 100%);
  background: -webkit-linear-gradient(top, #005da3 0%,#0071b7 100%);
  background: linear-gradient(to bottom, #005da3 0%,#0071b7 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#005da3', endColorstr='#0071b7',GradientType=0 );
}

.h3_7.blue.balloon {
  margin-bottom: 10px;
  position: relative;
  box-shadow: unset;
  border: unset;
}

.h3_7.blue.balloon::after {
  content: "";
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  border-top: solid 12px #0071b7;
  border-left: solid 9px transparent;
  border-right: solid 9px transparent;
  z-index: 2;
  left: 0;
  right: 0;
  margin: auto;
  bottom: -11px;
}

.h3_7 p {
  background-color: #dd003e;
  display: inline-block;
  line-height: 20px;
  padding: 0 3px;
  margin-right: 3px;
  font-size: 12px;
  font-weight: normal;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : H3デザイン8
/* セレクタ : .h3_8
/*----------------------------------------------------------*/
.h3_8 {
  width: calc(100% - 40px);
  margin: 0 auto;
  border-top: solid 2px #928b88;
}

.h3_8 .inner {
  display: inline-block;
  background-color: #928b88;
  color: #ffffff;
  font-size: 14px;
  padding: 1px 15px;
  font-weight: bold;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : H3デザイン9
/* セレクタ : .h3_9
/*----------------------------------------------------------*/
.h3_9 {
  width: calc(100% - 40px);
  margin: 0 auto;
  height: 34px;
  line-height: 34px;
  text-align: center;
  background: #0162ac;
  color: white;
  font-size: 14px;
  font-weight: bold;
}

.h3_9.red {
  background-color: #dd003e;
}
/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : ヘッダー
/* セレクタ : #masthead
/*----------------------------------------------------------*/
#masthead {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  position: fixed;
  width: 100%;
  height: 77px;
  background-color: white;
  z-index: 100;
}
/* ロゴ */
#masthead .logo {
  flex: 1 0 0%;
  width: auto;
  height: 100%;
  padding-right: 10px;
  padding-left: 10px;
  display: flex;
  justify-content: start;
  align-items: center;
}
#masthead .logo img {
  max-width: 284px;
  display: block;
}

/* ログアウトボタン */
#masthead.non_logout_btn #logout_btn {
  display: none;
}
#masthead #logout_btn a {
  color: #333333;
  font-size: 12px;
  padding-top: 32px;
  display: block;
}

/* 会員ページボタン */
#masthead #login_btn {
  width: 98px;
  height: 30px;
  line-height: 20px;
  font-size: 12px;
  margin-top: 21px;
  text-align: center;
  font-weight: bold;
  padding: 5px 0;
  padding-right: 12px;
  background: #21238a;
  color: white;
  position: relative;
  cursor: pointer;
}
#masthead.non_login_btn #login_btn {
  display: none;
}
#masthead #login_btn i {
  display: none;
}
#masthead #login_btn::before {
  content: "";
  position: absolute;
  display: block;
  height: 1px;
  width: 12px;
  right: 10px;
  top: 15px;
  background: white;
}
#masthead #login_btn::after {
  content: "";
  position: absolute;
  display: block;
  width: 12px;
  height: 1px;
  right: 10px;
  top: 15px;
  background: white;
  transform: rotate(90deg);
  transition: all 0.5s ease;
}
.login_open #masthead #login_btn::after {
  transform: rotate(0deg);
}
/* グロナビ開閉ボタン */
#masthead #globalnavi_btn {
  width: 68px;
  padding: 26px 20px;
}
#masthead #globalnavi_btn span {
  position: relative;
  display: block;
  width: 100%;
  height: 2px;
  background-color: #685f5c;
  top: 10px;
  transition: all 0.5s ease;
}
#masthead #globalnavi_btn span::before,
#masthead #globalnavi_btn span::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: #685f5c;
  transition: all 0.5s ease;
}
#masthead #globalnavi_btn span::before { top: -9px; }
#masthead #globalnavi_btn span::after  { top: 9px;  }

body.menu_open #masthead #globalnavi_btn span {
  width: 0;
}
body.menu_open #masthead #globalnavi_btn span::before,
body.menu_open #masthead #globalnavi_btn span::after {
  width: 28.3px;
  left: 0;
  top: 0;
}
body.menu_open #masthead #globalnavi_btn span::before {
  transform: rotate(45deg);
}
body.menu_open #masthead #globalnavi_btn span::after {
  transform: rotate(-45deg);
}
/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : グローバルナビ
/* セレクタ : #globalnavi
/*----------------------------------------------------------*/
#globalnavi {
  position: fixed;
  top: 77px;
  width: 100%;
  background: white;
  max-height: 0;
  overflow: hidden;
  z-index: 999;
}
.menu_open #globalnavi {
  max-height: calc(100vh - 100px);
  overflow-y: scroll;
  transition: all 1s ease;
}
#globalnavi > ul {
  width: 260px;
  padding-top: 3px;
  margin: 0 auto;
  font-size: 1.6rem;
  padding-bottom: 16px;
}
#globalnavi > ul > li {
  padding-bottom: 4px;
}
#globalnavi > ul > li > a {
  display: block;
  font-size: 18px;
  padding-left: 5px;
  font-weight: normal;
  text-decoration: none;
  color: #333333;
  padding-top: 3px;
  line-height: 36px;
}
#globalnavi > ul > li.has_submenu > a {
  position: relative;
  padding-left: 29px;
}
#globalnavi > ul > li.has_submenu > a::before {
  content: "";
  position: absolute;
  display: block;
  width: 13px;
  height: 1px;
  top: 22px;
  left: 7px;
  background: #333333;
}
#globalnavi > ul > li.has_submenu > a::after {
  content: "";
  position: absolute;
  display: block;
  width: 13px;
  height: 1px;
  top: 22px;
  left: 7px;
  background-color: #333333;
  transform: rotate(-90deg);
  transition: all 0.5s ease;
}
#globalnavi > ul > li.sp_submenu_open > a::after {
  transform: rotate(0deg);
}

/* サブメニュー */
#globalnavi .submenu {
  font-size: 1.6rem;
  line-height: 2.8rem;
  max-height: 0;
  overflow: hidden;
  transition: all 1s ease;
}
#globalnavi .sp_submenu_open .submenu {
  max-height: 100vh;
}
#globalnavi .submenu > li > a {
  display: block;
  padding-left: 48px;
  text-decoration: none;
  color: #333333;
  font-size: 16px;
  line-height: 36px;
}

/* グロナビヘッター */
#globalnavi .gnavi_footer {
  padding-top: 16px;
}
#globalnavi .gnavi_footer .row1 {
  display: flex;
  justify-content: center;
  width: 100%;
  height: 61px;
  background: #f1f1f1;
  align-items: center;
}
/* 1行目 */
#globalnavi .gnavi_footer .row1 li {
  margin: 0 15px;
}
#globalnavi .gnavi_footer .row1 li a .fas {
  font-size: 11px;
  width: 18px;
  height: 18px;
  display: inline-block;
  top: -3px;
  position: relative;
  line-height: 18px;
  text-align: center;
  margin-right: 6px;
  background: #2d9500;
  border-radius: 50%;
  color: white;
}
#globalnavi .gnavi_footer .row1 li a {
  display: block;
  text-decoration: none;
  color: #333333;
}
/* 2行目 */
#globalnavi .gnavi_footer .row2 li {
  text-align: center;
  padding-top: 14px;
  padding-bottom: 40px;
}
#globalnavi .gnavi_footer .row2 li a {
  text-decoration: none;
  color: #202289;
  font-size: 12px;
  display: inline-block;
  line-height: 0.9;
  border-bottom: solid 1px #202289;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : メイン
/* セレクタ : #mastmain
/*----------------------------------------------------------*/
#mastmain {
  padding-top: 77px;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : フッター
/* セレクタ : #mastfoot
/*----------------------------------------------------------*/
#mastfoot .copyright {
  text-align: center;
  font-size: 12px;
  margin-top: 20px;
  border-top: solid 1px #cfcfcf;
  padding-top: 9px;
  color: #9a9a9a;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : ファーストビュー
/* セレクタ : #firstview
/*----------------------------------------------------------*/
.firstview {
  width: 100%;
  height: 149px;
  background-image: url('../image/home/firstview_image1.jpg');
  background-position: left top;
  background-repeat: no-repeat;
  background-size: cover;
}
/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : ログインフォーム
/* セレクタ : .blk_login
/*----------------------------------------------------------*/
.blk_login {
/*  max-width: 440px; */
  margin: 0 auto;
  background: #f3f0f2;
  margin-top: 20px;
  margin-bottom: 22.5px;
  width: calc(100% - 40px);
}
.blk_login h2 {
  padding: 0;
  height: 27px;
  line-height: 27px;
  font-size: 14px;
  font-weight: bold;
  color: white;
  background: #21238a;
  text-align: center;  padding-top: 12px;
  padding-top: 0;
}
.blk_login form {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 345px;
  margin: 0 auto;
  padding: 0 10px;
  padding-bottom: 10px;
  background: #f3f0f2;
}
.blk_login form input[type="text"],
.blk_login form input[type="password"] {
  display: block;
  width: calc((100% - 85px) / 2);
  height: 30px;
  border: solid 1px #a0a0a0;
  color: #838383;
  padding-left: 10px;
  font-size: 16px;
  margin-top: 10px;
}
.blk_login form .btn_submit button {
  display: block;
  width: 75px;
  height: 30px;
  border: solid 1px #d02a32;
  border-radius: 1px;
  background: #e08080;
  background: -moz-linear-gradient(bottom, #f2b2b6 0%, #db535d 45%, #d22733 45%, #d62735 100%);
  background: -webkit-linear-gradient(bottom, #f2b2b6 0%, #db535d 45%, #d22733 45%, #d62735 100%);
  background: linear-gradient(to bottom, #f2b2b6 0%, #db535d 45%, #d22733 45%, #d62735 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2b2b6', endColorstr='#d62735',GradientType=0 );
  font-size: 14px;
  font-weight: bold;
  color: white;
  margin-top: 10px;
  padding: 0;
  line-height: 28px;
}
.blk_login .autologin {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding: 0px;
  padding-top: 10px;
  padding-left: 3px;
}
.blk_login .autologin input[type="checkbox"] {
  display: none;
/*
  position: absolute;
  -ms-transform: scale(1.1, 1.1);
  -webkit-transform: scale(1.1, 1.1);
  transform: scale(1.1, 1.1);
  display: block;
  margin: 0;
  top: 0;
*/
}
.blk_login .autologin label {
  display: block;
  font-size: 10px;
  line-height: 1;
  padding-left: 13px;
}
.blk_login .autologin label .fas {
  position: absolute;
  left: 0;
  width: 14px;
  border: solid 1px #a0a0a0;
  height: 14px;
  text-align: center;
  line-height: 13px;
  background: white;
  top: 7px;
  color: white;
}
.blk_login .autologin input:checked + label .fas {
  color: #838383;
}
.blk_login .reminder {
  position: relative;
  font-size: 10px;
  line-height: 1;
  padding-top: 10px;
  padding-left: 13px;
}
.blk_login .reminder img {
  position: absolute;
  height: 14px;
  width: auto;
  vertical-align: bottom;
  top: 7px;
  left: 0;
}
.blk_login .firsttime {
  position: relative;
  text-align: center;
  font-size: 10px;
  line-height: 1;
  padding-top: 10px;
  padding-left: 14px;
}
.blk_login .firsttime img {
  position: absolute;
  height: 14px;
  width: auto;
  vertical-align: bottom;
  top: 8px;
  left: 0;
}

#globallogin {
  max-height: 0;
  overflow: hidden;
}
.login_open #globallogin {
  max-height: 150px;
  transition: all 0.5s ease;
}

#globallogin.wdfull {
  width: 100%;
  margin: 0;
/*  padding: 22px 0; */
  max-width: none;
  position: fixed;
  top: 77px;
}
#globallogin.wdfull form {
  padding-top: 22px;
  padding-bottom: 22px;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : 下矢印
/* セレクタ : .blk_arrow_down
/*----------------------------------------------------------*/
.blk_arrow_down {
  width: 11px;
  height: 7px;
  margin: 0 auto;
  margin-top: 5px;
  margin-bottom: 20px;
  background-color: #cccccc;
  position: relative;
  
}
.blk_arrow_down::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 13px 10.5px 0 10.5px;
  border-color: #cccccc transparent transparent transparent;
  position: absolute;
  bottom: -13px;
  left: -5px;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : アイコン
/* セレクタ : .blk_icon
/*----------------------------------------------------------*/
.blk_icon {
  display: block;
  border-radius: 50%;
  background-color: #676767;
  font-size: 10px;
  width: 14px;
  height: 14px;
  text-align: center;
  line-height: 14px;
  color: white;
  font-weight: bold;
  margin-right: 4px;
  float: left;
  margin-top: 3px;
}
.blk_icon.red {
  background-color: #cf043e;
  color: white !important;
}
.blk_icon.blue {
  background-color: #000fd6;
  color: white !important;
}
.blk_icon.r90 {
  transform: rotate(90deg);
  vertical-align: middle;
}
/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : テキスト
/* セレクタ : .blk_text
/*----------------------------------------------------------*/
.blk_text {
  width: calc(100% - 40px);
  margin: 0 auto;
  font-size: 14px;
  line-height: 22px;
  padding: 10px 0;
}
.blk_text.fs12,
.blk_text .fs12 {
  font-size: 12px;
}
.blk_text.fs16,
.blk_text .fs16 {
  font-size: 16px;
}
.blk_text a {
  color: #21238a;
}
.blk_text.right {
  text-align: right;
}
.blk_text.center {
  text-align: center;
}
.blk_text.red,
.blk_text .red {
  color: #D6003F;
}
.blk_text.blue,
.blk_text .blue {
  color: #000fd6;
}
.blk_text.blue2,
.blk_text .blue2 {
  color: #1F60A8;
}
.blk_text.green,
.blk_text .green {
  color: #206B00;
}
.blk_text.green2,
.blk_text .green2 {
  color: #2D9500;
}
.blk_text.gray,
.blk_text .gray {
  color: #778899;
}
.blk_text.bold,
.blk_text .bold {
  font-weight: bold;
}
.blk_text.underline,
.blk_text .underline {
  text-decoration: underline;
}

.blk_text.asterisk {
  position: relative;
  padding-left: 1em !important;
}
.blk_text.asterisk::before {
  content: "※";
  position: absolute;
  left: 0;
}
.blk_text img {
  width: auto;
  vertical-align: middle;
}

.blk_text .arrow {
  position: relative;
  padding-left: 1em;
}
.blk_text .arrow::before {
  content: "▲";
  font-size: 10px;
  transform: rotate(90deg);
  position: absolute;
  left: 0;
}
.blk_text .green-bg {
  background: #1f6c1b;
  color: #ffffff;
  padding: 2px 5px;
}
.blk_text .red-bg {
  background: #be0c2b;
  color: #ffffff;
  padding: 2px 5px;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : テキスト
/* セレクタ : .blk_text_r
/*----------------------------------------------------------*/
.blk_text_r {
  width: calc(100% - 40px);
  margin: 0 auto;
  font-size: 14px;
  line-height: 22px;
  padding: 10px 0;
  text-align: right;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : 本文コンテンツ
/* セレクタ : .blk_content
/*----------------------------------------------------------*/
.blk_content {
  padding: 0 20px;
  font-size: 14px;
  line-height: 1.6;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : 日付（更新）
/* セレクタ : .blk_update
/*----------------------------------------------------------*/
.blk_update {
  padding: 0 20px;
  padding-top: 10px;
  margin-bottom: -22px;
  font-size: 14px;
  text-align: right;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : 戻るボタン
/* セレクタ : .blk_back
/*----------------------------------------------------------*/
.blk_back a {
  display: block;
  color: black;
  padding: 20px;
  text-decoration: underline;
  text-align: center;
  font-size: 14px;
}
.blk_back a .fas {
  padding-right: 4px;
  font-size: 15px;
  padding-top: 4px;
  color: #279903;
}
.blk_back.blue a,
.blk_back.blue a .fas {
  color: #313392;
}
.blk_back.red a .fas {
  color: #cf043e;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : ボックス
/* セレクタ : .blk_box
/*----------------------------------------------------------*/
.blk_box {
  margin-top: 10px;
  margin-bottom: 10px;
  padding: 12px;
  background-color: #F2F0F1;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : ボックス2
/* セレクタ : .blk_box2_blue
/*----------------------------------------------------------*/
.blk_box2_blue {
  width: calc(100% - 40px);
  padding: 10px;
  border: 1px solid #C7BDBA;
  background-color: #F2F0F1;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  color: #333333;
  margin: 20px auto;
}
.blk_box2_blue.left {
  text-align: left;
}
.blk_box2_blue .normal {
  font-weight: normal;
}
.blk_box2_blue .red {
  color: #D6003F;
}
.blk_box2_blue .blk_button {
  padding-top: 0;
  padding-bottom: 10px;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : ボックス2
/* セレクタ : .blk_box2_green
/*----------------------------------------------------------*/
.blk_box2_green {
  width: calc(100% - 40px);
  padding: 10px;
  border: 1px solid #C7BDBA;
  background-color: #e8f8e6;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  color: #333333;
  margin: 20px auto;
}
.blk_box2_green.left {
  text-align: left;
}
.blk_box2_green .normal {
  font-weight: normal;
}
.blk_box2_green .red {
  color: #D6003F;
}
.blk_box2_green .blk_button {
  padding-top: 0;
  padding-bottom: 10px;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : 複合ボックス3
/* セレクタ : .blk_box3
/*----------------------------------------------------------*/
.blk_box3 {
  width: calc(100% - 40px);
  margin: 0 auto;
}
.blk_box3 > div {
  padding: 10px;
  border: 1px solid #C7BDBA;
}  
.blk_box3 > div:nth-child(n+2) {
  border-top: none;
}
.blk_box3 .box_green {
  background-color: #e8f8e6;
  font-size: 16px;
  font-weight: bold;
  color: #206B00;
}
.blk_box3 .box_blue {
  background-color: #E3E4FB;
  font-size: 16px;
  font-weight: bold;
  color: #6F3824;
}
.blk_box3 .box_content > h3,
.blk_box3 .box_content > div {
  width: 100%;
}
.blk_box3 button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 300px;
  margin: 0 auto;
  height: 30px;
}

.blk_box3 button.red {
  background-color: #d72240;
  color: #ffffff;
  border: solid 1px #d02a32;
  border-radius: 1px;
  background: #e08080;
  background: -moz-linear-gradient(bottom, #f2b2b6 0%, #db535d 45%, #d22733 45%, #d62735 100%);
  background: -webkit-linear-gradient(bottom, #f2b2b6 0%, #db535d 45%, #d22733 45%, #d62735 100%);
  background: linear-gradient(to bottom, #f2b2b6 0%, #db535d 45%, #d22733 45%, #d62735 100%);
}

.blk_box3 button.blue {
  color: #ffffff;
  border: solid 1px #1125a8;
  border-radius: 1px;
  background: #0e22a5;
  background: -moz-linear-gradient(bottom, #0e22a5 0%, #0a1a9a 45%, #1e33b8 45%, #7382de 100%);
  background: -webkit-linear-gradient(bottom, #0e22a5 0%, #0a1a9a 45%, #1e33b8 45%, #7382de 100%);
  background: linear-gradient(to bottom, #7382de 0%, #1e33b8 45%, #0a1a9a 45%, #0e22a5 100%);
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : ボックス4
/* セレクタ : .blk_box4_green
/*----------------------------------------------------------*/
.blk_box4_green {
  width: calc(100% - 40px);
  margin: 0 auto;
  background-color: #e8f8e6;
  border: solid 1px #c6beba;
  padding: 15px;
  font-size: 14px;
}
.blk_box4_green .center {
  text-align: center;
}
.blk_box4_green .f16 {
  font-size: 16px;
  line-height: 24px;
}
.blk_box4_green .bold {
  font-weight: bold;
}
.blk_box4_green .bar {
  width: 100%;
  border-top: solid 1px #c6beba;
  margin: 15px 0;
}
.blk_box4_green .blk_text {
  padding-top: 0;
  padding-bottom: 0;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : ボックス5
/* セレクタ : .blk_box5
/*----------------------------------------------------------*/
.blk_box5 {
  width: calc(100% - 40px);
  margin: 0 auto;
  border: solid 2px #DEDEDE;
  padding: 10px;
}

.blk_box5 .h3_red {
  background-color: #dc404b;
  color: #ffffff;
  font-size: 14px;
  padding: 5px 10px;
  font-weight: bold;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : 画像
/* セレクタ : .blk_image
/*----------------------------------------------------------*/
.blk_image {
  width: calc(100% - 40px);
  margin: 0 auto;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : ページャー
/* セレクタ : .blk_pager
/*----------------------------------------------------------*/
.blk_pager {
  width: calc(100% - 40px);
  margin: 0 auto;
  margin-top: 20px;
}
.blk_pager .number {
  font-size: 12px;
  line-height: 16px;
  color: #2D9500;
}

.blk_pager .posts {
  display: flex;
  justify-content: flex-end;
}

.blk_pager .posts li a {
  width: 23px;
  line-height: 24px;
  margin-right: 2px;
  text-decoration: none;
  display: block;
  background-color: #695E5B;
  text-align: center;
  color: white;
  font-size: 14px;
}

.blk_pager .posts li.selected a {
  background-color: #2D9500;
}

.blk_pager .posts li.prev a {
  width: 60px;
}

.blk_pager .posts li.first a {
  width: 70px;
  color: #695E5B;
  background-color: white;
}

.blk_pager .posts li.next a {
  width: 60px;
}

.blk_pager .posts li.last a {
  width: 70px;
  color: #695E5B;
  background-color: white;
}

.blk_pager.blue .number {
  font-size: 12px;
  line-height: 16px;
  color: #287AC0;
}

.blk_pager.blue .posts li.selected a {
  background-color: #287AC0;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : 馬情報
/* セレクタ : .blk_uma
/*----------------------------------------------------------*/
.blk_uma {
  display: flex;
  justify-content: start;
  width: calc(100% - 40px);
  margin: 0 auto;
  margin-top: 20px;
}

.blk_uma .icon {
    width: 60px;
    padding-right: 10px;
}

.blk_uma .info {
    width: calc(100% - 60px);
    display: flex;
}

.blk_uma .info .name {
    font-size: 16px;
    font-weight: bold;
    color: #602716;
}
.blk_uma .info .name.gray {
    color: #9B8E8A;
}

.blk_uma .info .name .foreign::before {
  content: "外";
  color: #fff;
  font-size: 13px;
  background-color: #252189;
  display: inline-block;
  width: 20px;
  height: 20px;
  line-height: 20px;
  border-radius: 50%;
  text-align: center;
  margin-right: 5px;
}

.blk_uma .info .name img {
  width: auto;
}
.blk_uma .info .tag {
  font-weight: normal;
  margin-left: 5px;
  font-size: 11px;
  border: solid 1px;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 17px;
  padding: 0 5px;
  background-color: #f2f0f1;
  margin-top: 12px;
}
.blk_uma .info .text {
    font-size: 14px;
    line-height: 22px;
    color: #602716;
}

.blk_uma .info .text.new::before {
    content: "New";
    background-color: #d6003f;
    display: inline-block;
    color: white;
    padding: 0 3px;
    font-size: 12px;
    height: 18px;
    line-height: 18px;
    margin-right: 3px;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : ランキング
/* セレクタ : .blk_uma
/*----------------------------------------------------------*/
.blk_record {
  width: calc(100% - 40px);
  margin: 0 auto;
  margin-top: 20px;
  max-width: 330px;
}

.blk_record ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  row-gap: 10px;
}

.blk_record ul li .baloon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 70px;
  height: 17px;
  font-size: 12px;
  border-radius: 3px;
  border: solid 1px #2c9100;
  background: #22931a;
  background: linear-gradient(to bottom, #62c358 0%, #30a429 45%, #22931a 45%, #29940b 100%);
  color: white;
  position: relative;
  margin: 0 auto;
  margin-bottom: 5px;
}

.blk_record ul li .text {
  font-size: 14px;
  font-weight: bold;
  text-align: center;
}

.blk_record ul li .baloon::before {
  content: "";
  display: block;
  width: 7px;
  height: 5px;
  background-color: #2c9100;
  position: absolute;
  bottom: -5px;
  clip-path: polygon(0 0, 50% 100%,100% 0);
}

.blk_record ul li.total {
  grid-column: 1/3;
}

.blk_record ul li.total .baloon {
  background: #9d8f90;
  background: linear-gradient(to bottom, #d5d1d0 0%, #9d8f90 45%, #837576 45%, #948888 100%);
  border-color: #918787;
}

.blk_record ul li.total .baloon::before {
  background-color: #918787;
}

.blk_record ul li.first .baloon {
  background: #e08080;
  background: linear-gradient(to bottom, #f2b2b6 0%, #db535d 45%, #d22733 45%, #d62735 100%);
  border-color: #d02a32;
}

.blk_record ul li.first .text {
  color: #d02a32;
}

.blk_record ul li.first .baloon::before {
  background-color: #d02a32;
}

.blk_record ul li.other .baloon {
  background: #9d8f90;
  background: linear-gradient(to bottom, #713b28 0%, #703824 45%, #5b2d1d 45%, #7a3a23 100%);
  border-color: #5b2d1d;
}

.blk_record ul li.other .baloon::before {
  background-color: #5b2d1d;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : 罫線
/* セレクタ : .lst_article1
/*----------------------------------------------------------*/
.lst_article1 {
  width: calc(100% - 40px);
  margin: 0 auto;
  padding-top: 20px;
}
.lst_article1 li {
  border-bottom: dotted 1px #e0e3df;
  padding: 10px;
}
.lst_article1 li:nth-child(even){
  background-color: #e8f8e6;
}
.lst_article1 li .title {
  font-size: 16px;
  font-weight: bold;
  padding-bottom: 5px;
}
.lst_article1 li .text {
  font-size: 14px;
  line-height: 22px;
}
.lst_article1 li .image {
  width: 100%;
  max-width: 280px;
  margin: 0 auto;
  padding: 10px 0;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : 罫線
/* セレクタ : .blk_line
/*----------------------------------------------------------*/
.blk_line {
  background-image: url(../image/public/line.gif);
  width: calc(100% - 40px);
  height: 4px;
  margin: 0 auto;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : ボタン
/* セレクタ : .blk_button
/*----------------------------------------------------------*/
.blk_button {
  padding: 20px 0;
}
.blk_button a {
  display: block;
  width: 150px;
  height: 30px;
  border: solid 1px #d02a32;
  border-radius: 1px;
  background: #e08080;
  background: -moz-linear-gradient(bottom, #f2b2b6 0%, #db535d 45%, #d22733 45%, #d62735 100%);
  background: -webkit-linear-gradient(bottom, #f2b2b6 0%, #db535d 45%, #d22733 45%, #d62735 100%);
  background: linear-gradient(to bottom, #f2b2b6 0%, #db535d 45%, #d22733 45%, #d62735 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2b2b6', endColorstr='#d62735',GradientType=0 );
  font-size: 14px;
  font-weight: bold;
  color: white;
  margin-top: 10px;
  padding: 0;
  line-height: 28px;
  text-align: center;
  margin: 0 auto;
  text-decoration: none;
}
.blk_button.blue a {
  border: solid 1px #1125a8;
  background: #0e22a5;
  background: -moz-linear-gradient(bottom, #0e22a5 0%, #0a1a9a 45%, #1e33b8 45%, #7382de 100%);
  background: -webkit-linear-gradient(bottom, #0e22a5 0%, #0a1a9a 45%, #1e33b8 45%, #7382de 100%);
  background: linear-gradient(to bottom, #7382de 0%, #1e33b8 45%, #0a1a9a 45%, #0e22a5 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7382de', endColorstr='#0e22a5',GradientType=0 );
}
.blk_button.blue2 a {
  border: solid 1px #1125a8;
  background: #287ac0;
}


.blk_button.green a {
  border: solid 1px #2c9100;
  background: #22931a;
  background: -moz-linear-gradient(bottom, #29940b 0%, #22931a 45%, #30a429 45%, #62c358 100%);
  background: -webkit-linear-gradient(bottom, #29940b 0%, #22931a 45%, #30a429 45%, #62c358 100%);
  background: linear-gradient(to bottom, #62c358 0%, #30a429 45%, #22931a 45%, #29940b 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7382de', endColorstr='#29940b',GradientType=0 );
}
.blk_button.gray a {
  background: #9d8f90;
  background: linear-gradient(to bottom, #d5d1d0 0%, #9d8f90 45%, #837576 45%, #948888 100%);
  border-color: #918787;
}
.blk_button.brown a {
  background: #703824;
  background: linear-gradient(to bottom, #713b28 0%, #703824 45%, #5b2d1d 45%, #7a3a23 100%);
  border-color: #5b2d1d;
}
.blk_button.small a {
  font-size: 12px;
  height: 25px;
  line-height: 25px;
  width: 130px;
}
.blk_button.w230 a {
  width: 230px;
}
.blk_button.w240 a {
  width: 240px;
}
.blk_button.w250 a {
  width: 250px;
}
.blk_button.w260 a {
  width: 260px;
}
.blk_button.w270 a {
  width: 270px;
}
.blk_button.w280 a {
  width: 280px;
}
.blk_button.w290 a {
  width: 290px;
}
.blk_button.w300 a {
  width: 300px;
}
.blk_button.inline {
  display: inline;
  padding-left: 10px;
}
.blk_button.inline a {
  display: inline-block;
}

.blk_button.btns a {
  display: inline-block;
  margin-right: 10px;
}

.blk_button.btns.right {
  text-align: right;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : フォーム
/* セレクタ : .blk_form
/*----------------------------------------------------------*/
.blk_form {
  width: calc(100% - 40px);
  margin: 0 auto;
}
.blk_form label {
  display: block;
  color: #206B00;
  font-size: 14px;
}

.blk_form.blue label {
  color: #21238A;
}
.blk_form label.sub,
.blk_form.blue label.sub {
  color: #333;
}
.blk_form label .comment {
  color: #287AC0;
}
.blk_form label .required {
  color: #D6003F;
}
.blk_form .error {
  font-size: 12px;
  color: #D6003F; 
}
.blk_form .grid {
  display: grid;
  grid-template-columns: 75px 1fr;
  align-items: baseline;
}

.input_wrapper {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 20px;
}

.input_wrapper.col2 {
  grid-template-columns: repeat(2,1fr);
}

.blk_form input[type="datetime-local"],
.blk_form input[type="date"],
.blk_form input[type="password"],
.blk_form input[type="text"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
  
  width: 100%;
  max-width: 578px;
  border: solid 1px #c8c8c8;
  height: 39px;
  background-color: #f1f1f1;
  font-size: 16px;
  padding: 10px;
  margin-bottom: 20px;
}
.blk_form .select_wrapper {
  position: relative;
  margin-bottom: 11px;
}
.blk_form .select_wrapper::after {
  content: "▼";
  position: absolute;
  right: 12px;
  font-size: 12px;
  top: 10px;
  color: #554b49;
}
.blk_form select {
  
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
  
  width: 100%;
  max-width: 578px;
  border: solid 1px #c8c8c8;
  height: 43px;
  background-color: #f1f1f1;
  font-size: 16px;
  padding: 10px;
  margin-bottom: 20px;
}
.blk_form .radio_wrapper {
  display: flex;
  flex-wrap: wrap;
  column-gap: 10px;
  padding-bottom: 20px;
}

.blk_form .radio_item {
  display: flex;
  padding: 5px 0px;
}
.blk_form .radio_item input[type="text"] {
  width: 30px;
  height: 24px;
  margin-bottom: 0;
  margin-left: 10px;
  margin-right: 5px;
}
.blk_form .radio_item span {
  font-size: 14p;
  color: #21238A;
}
.blk_form .type {
  font-size: 14px;
}
.blk_form textarea {
  width: 100%;
  max-width: 578px;
  border: solid 1px #c8c8c8;
  background-color: #f1f1f1;
  font-size: 16px;
  padding: 10px;
  margin-bottom: 20px;
}

.blk_form .buttons {
  display: flex;
  justify-content: center;
}
.blk_form button {
  display: block;
  width: 150px;
  height: 30px;
  border: solid 1px #d02a32;
  border-radius: 1px;
  background: #e08080;
  background: -moz-linear-gradient(bottom, #f2b2b6 0%, #db535d 45%, #d22733 45%, #d62735 100%);
  background: -webkit-linear-gradient(bottom, #f2b2b6 0%, #db535d 45%, #d22733 45%, #d62735 100%);
  background: linear-gradient(to bottom, #f2b2b6 0%, #db535d 45%, #d22733 45%, #d62735 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2b2b6', endColorstr='#d62735',GradientType=0 );
  font-size: 14px;
  font-weight: bold;
  color: white;
  padding: 0;
  line-height: 28px;
  text-align: center;
  margin: 0 auto;
  text-decoration: none;
  margin-bottom: 20px;
}
.blk_form button.back {
  border: solid 1px #594e4d;
  border-radius: 1px;
  background: #e08080;
  background: -moz-linear-gradient(bottom, #5d5251 0%, #5b504f 45%, #685b5a 45%, #968887 100%);
  background: -webkit-linear-gradient(bottom, #5d5251 0%, #5b504f 45%, #685b5a 45%, #968887 100%);
  background: linear-gradient(to bottom, #968887 0%, #685b5a 45%, #5b504f 45%, #5d5251 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#968887', endColorstr='#5d5251',GradientType=0 );
}
.blk_form button.none {
  border: solid 1px #c3c0bf;
  background: #c5c1c0;
  background: -moz-linear-gradient(bottom, #c2bdbd 0%, #c6c2c2 45%, #cbc6c5 45%, #e0dcdb 100%);
  background: -webkit-linear-gradient(bottom, #c2bdbd 0%, #c6c2c2 45%, #cbc6c5 45%, #e0dcdb 100%);
  background: linear-gradient(to bottom, #c2bdbd 0%, #c6c2c2 45%, #cbc6c5 45%, #e0dcdb 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#c2bdbd', endColorstr='#e0dcdb',GradientType=0 );
}

.blk_form button.green {
  border: solid 1px #2c9100;
  background: #22931a;
  background: -moz-linear-gradient(bottom, #29940b 0%, #22931a 45%, #30a429 45%, #62c358 100%);
  background: -webkit-linear-gradient(bottom, #29940b 0%, #22931a 45%, #30a429 45%, #62c358 100%);
  background: linear-gradient(to bottom, #62c358 0%, #30a429 45%, #22931a 45%, #29940b 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7382de', endColorstr='#29940b',GradientType=0 );
}
.blk_form button.w230 {
  width: 230px;
}
.blk_form .buttons button {
  margin: 0 10px;
  margin-bottom: 20px;
}
.blk_form .blk_text {
  width: 100%;
  padding: 0;
  padding-bottom: 20px;
}
.blk_form .blk_input_text {
  font-size: 16px;
  padding-bottom: 20px;
  padding-left: 10px;
}
.blk_form .blk_input_text .bold {
  font-weight: bold;
}

.blk_form .date_wrapper {
  display: grid;
  column-gap: 10px;
  grid-template-columns: repeat(3, 1fr);
}

.blk_form .date_wrapper.datetime {
  grid-template-columns: repeat(4, 1fr);
}

.blk_form .date_item {
  position: relative;
}

.blk_form .date_item::after {
  content: "▼";
  font-size: 10px;
  line-height: 10px;
  position: absolute;
  display: block;
  right: 5px;
  top: 16px;
  pointer-events: none;
}

.blk_form .type2 select {
  font-size: 14px;
  padding: 5px;
  padding-right: 20px;
  height: auto;
}
.blk_form .select_wrapper.type2::after {
  right: 4px;
  top: 4px;
  font-size: 10px;
}

.blk_form .box {
  border: solid 1px #c8c8c8;
  padding: 10px;
  margin-bottom: 20px;
}

.blk_form .agree {
  position: relative;
  padding: 10px 0;
  padding-left: 1.5em;
  border-top: solid 2px #c8c8c8;
  border-bottom: solid 2px #c8c8c8;
  margin-bottom: 20px;
}

.blk_form .agree input {
  position: absolute;
  left: 0;
}

.blk_form .checkbox_wrapper {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: flex-start;
  column-gap: 6px;
  padding-bottom: 5px;
}

.blk_form .checkbox_wrapper input {
  margin-top: 4px;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : テーブル
/* セレクタ : .table_1
/*----------------------------------------------------------*/
.table_1 {
  width: calc(100% - 40px);
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin: 0 auto;
  margin-top: 20px;
  border-bottom: solid 1px #C7BDBA;
}
.table_1 .title {
  width: 100%;
  font-size: 16px;
  font-weight: bold;
  padding: 5px;
  color: #206B00;
  background-color: #E8F8E6;
  border-left: solid 1px #C7BDBA;
  border-right: solid 1px #C7BDBA;
  border-top: solid 1px #C7BDBA;
}
.table_1.blue .title {
	color: #6F3824;
  background-color: #E3E4FB;
}
.table_1 .th {
  width: 90px;
  font-size: 14px;
  font-weight: bold;
  padding: 5px;
  color: #333333;
  border-left: solid 1px #C7BDBA;
  border-right: solid 1px #C7BDBA;
  border-top: solid 1px #C7BDBA;
  line-height: 1.3;
  background: #E3DEDC;
}
.table_1.green .th {
  color: #206B00;
  background-color: #E8F8E6;
}
.table_1.blue .th {
	color: #6F3824;
  background-color: #E3E4FB;
}
.table_1.th_w100 .th {
  width: 100px;
}
.table_1 .td {
  width: calc(100% - 90px);
  font-size: 14px;
  font-weight: normal;
  padding: 5px;
  color: #333333;
  border-right: solid 1px #C7BDBA;
  border-top: solid 1px #C7BDBA;
  line-height: 1.3;
}
.table_1.th_w100 .td {
  width: calc(100% - 100px);
}
.table_1 .td.bold {
  font-weight: bold;
}
.table_1 .red {
	color: #d6003f;
}
.table_1 .blue {
  color: #287AC0;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : テーブル
/* セレクタ : .table_2
/*----------------------------------------------------------*/
.table_2 {
  width: calc(100% - 40px);
  margin: 0 auto;
  padding-top: 10px;
}
.table_2 .th {
  font-size: 14px;
  font-weight: bold;
}
.table_2 .td {
  padding-left: 20px;
  font-size: 14px;
  padding-bottom: 7px;
}
.table_2 .td .red_b {
  font-weight: bold;
  color: #D6003F;
}
.table_2 .td a {
  color: #21238A;
}
.table_2 .f16 {
  font-size: 16px;
}
.table_2 .bold {
  font-weight: bold;
}
.table_2 .red {
  color: #d6003f;
}
.table_2 .green {
  color: #206B00;
}
.table_2 .blue {
  color: #287AC0;
}

.table_2 .table_1 {
  width: calc(100% - 20px);
  margin-top: 0;
  margin-left: 20px;
}
.table_2 .blk_box3 {
  width: calc(100% - 20px);
  margin-top: 20px;
  margin-left: 20px;
}
.table_2 .blk_box3 .box_green {
  padding: 5px;
}
.table_2 .blk_box3 .box_blue {
  padding: 5px;
}
.table_2 .lst_1 > li {
  padding-left: 35px;
}
.table_2 .lst_1 > li::before {
  left: -8px;
}
.table_2 .h3_6 {
  padding-left: 20px;
  padding-top: 5px;
  padding-right: 0;
  font-size: 14px;
}
.table_2 .h3_6::before {
  left: 0;
  top: 11px;
}

/* =========================================================================================================================================== */
/* 【部品】
/* 名前     : リスト デザイン1 かっこ付き
/* セレクタ : .lst_1
/* =========================================================================================================================================== */
.lst_1 {
  counter-reset: cnt 0;  
}
.lst_1.red {
  color: #D6003F;
}
.lst_1.bold {
  font-weight: bold;
}
.lst_1 > li{
  position: relative;
  padding-left: 49px;
  list-style-type:none;
  list-style-position:inside;
  counter-increment: cnt;
}
.lst_1 > li::before{
  display: marker;
  content: "（ " counter(cnt) " ）";
  position: absolute;
  left: 0;
}


/* =========================================================================================================================================== */
/* 【部品】
/* 名前     : リスト デザイン2 どっと付き
/* セレクタ : .lst_2
/* =========================================================================================================================================== */
.lst_2 {
  counter-reset: cnt 0;  
}
.lst_2.blue {
  color: #287AC0;
}
.lst_2.f14 {
  font-size: 14px;
}
.lst_2.pdt5 li {
  padding-top: 5px;
}

.lst_2 > li{
  position: relative;
  padding-left: 20px;
  list-style-type:none;
  list-style-position:inside;
  counter-increment: cnt;
}
.lst_2 > li::before{
  display: marker;
  content: counter(cnt) ". ";
  position: absolute;
  left: 0;
}
.lst_2 > li.asterisk::before{
  content: "※"
 }
.lst_2 li .red {
  color: #D6003F;
}
/* サブ */
.lst_2 ul > li.asterisk::before{
  content: "※";
  position: absolute;
  left: 0;
 }
.lst_2 ul > li{
  position: relative;
  padding-left: 20px;
  list-style-type:none;
  list-style-position:inside;
  counter-increment: cnt;
}
.lst_2 ul > li.red {
  color: #D6003F;
}


/* =========================================================================================================================================== */
/* 【部品】
/* 名前     : リスト デザイン3 二重丸付き
/* セレクタ : .lst_3
/* =========================================================================================================================================== */
.lst_3 {
  width: calc(100% - 40px);
  margin: 0 auto;
  font-size: 14px;
}
.lst_3 > li{
  position: relative;
  padding-left: 20px;
  padding-bottom: 20px;
}
.lst_3 > li::before{
  content: "◎";
  position: absolute;
  display: block;
  left: 0;
}
.lst_3 .sublist > li {
  position: relative;
  padding-left: 17px;
}
.lst_3 .sublist > li::before{
  content: "■";
  position: absolute;
  display: block;
  left: 0;
}


/* =========================================================================================================================================== */
/* 【部品】
/* 名前     : リスト デザイン４ 四角付き
/* セレクタ : .lst_4
/* =========================================================================================================================================== */
.lst_4 {
  counter-reset: cnt 0;
  font-size: 14px;
}
.lst_4.pdt5 li {
  padding-top: 5px;
}

.lst_4 > li{
  position: relative;
  padding-left: 20px;
  list-style-type:none;
  list-style-position:inside;
  counter-increment: cnt;
}
.lst_4 > li::before{
  content: "■";
  position: absolute;
  left: 0;
  font-size: 16px;
}
.lst_4 > li.asterisk::before{
  content: "※"
 }
.lst_4 li .red {
  color: #D6003F;
}
/* サブ */
.lst_4 ul > li.asterisk::before{
  content: "※";
  position: absolute;
  left: 0;
 }
.lst_4 ul > li{
  position: relative;
  padding-left: 20px;
  list-style-type:none;
  list-style-position:inside;
  counter-increment: cnt;
}
.lst_4 > li.red {
  color: #D6003F;
}
.lst_4 > li.red.asterisk::before{
  color: #D6003F;
}
.lst_4 > li.blue {
  color: #287AC0;
}
.lst_4 > li.blue.asterisk::before{
  color: #287AC0;
}


/* =========================================================================================================================================== */
/* 【部品】
/* 名前     : リスト デザイン５ ドット
/* セレクタ : .lst_5
/* =========================================================================================================================================== */
.lst_5 {
  font-size: 14px;
}

.lst_5 li {
  padding-left: 1.5em;
  position: relative;
}
.lst_5 li.red {
  color: #D6003F;
}
.lst_5 li.bold {
  font-weight: bold;
}
.lst_5 li::before {
  content: "・";
  position: absolute;
  left: 0;
}

/* =========================================================================================================================================== */
/* 【部品】
/* 名前     : リスト デザイン6
/* セレクタ : .lst_6
/* =========================================================================================================================================== */
.lst_6 li {
  font-size: 14px;
  position: relative;
  padding-left: 21px;
}

.lst_6 li::before {
  content: "▲";
  font-size: 10px;
  display: flex;
  position: absolute;
  width: 16px;
  height: 16px;
  background-color: #cf043e;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  color: #ffffff;
  transform: rotate(90deg);
  left: 0;
  top: 2px;
}

/* =========================================================================================================================================== */
/* 【部品】
/* 名前     : リスト デザイン7
/* セレクタ : .lst_7
/* =========================================================================================================================================== */
.lst_7 {
  counter-set: cnt 0;
}

.lst_7 li {
  counter-increment: cnt 1;
  font-size: 14px;
  position: relative;
  padding-left: 2em;
}

.lst_7 li::before {
  content: "※"counter(cnt);
  position: absolute;
  display: block;
  left: 0;
}

/* =========================================================================================================================================== */
/* 【部品】
/* 名前     : リスト デザイン8
/* セレクタ : .lst_8
/* =========================================================================================================================================== */
.lst_8 {
  width: calc(100% - 40px);
  margin: 0 auto;
  margin-top: 15px;
  margin-bottom: 30px;
}
.lst_8 li {
  position: relative;
  padding-bottom: 6px;
  border-bottom: 1px dotted #aaaaaa;
  width: 100%;
  display: block;
  padding-top: 10px;
  font-size: 14px;
  padding-left: 5px;
  padding-right: 5px;
}
.lst_8 li:nth-child(even) {
  background-color: #e8f8e6;
}
.lst_8 li a {
  color: #21238A;
  font-size: 14px;
  font-weight: bold;
  text-decoration: none;
}
.lst_8 li .title {
    font-weight: bold;
    padding-bottom: 5px;
}
.lst_8 li .title span {
  position: relative;
}
.lst_8 li .title span.new::before {
    content: "New";
    background-color: #d6003f;
    display: inline-block;
    color: white;
    padding: 0 3px;
    font-size: 12px;
    height: 18px;
    line-height: 18px;
    margin-right: 3px;
}
.lst_8 li .title img {
  width: auto;
}
.lst_8 li .info {
  font-size: 12px;
  line-height: 1.6;
  padding-bottom: 5px;
  color: #602716;
}
.lst_8 li .update {
  color: #287AC0;
  padding-bottom: 5px;
}
.lst_8 li .report {
  padding-top: 3px;
}
.lst_8 li .report i {
  color: #D6003F;
  font-size: 13px;
  margin-right: 4px;
}
.lst_8 li .report a {
  font-weight: normal;
  text-decoration: underline;
}

.lst_8.top-border li:first-child {
  border-top: 1px dotted #aaaaaa;
}

/* =========================================================================================================================================== */
/* 【部品】
/* 名前     : リスト デザイン9 丸付き
/* セレクタ : .lst_9
/* =========================================================================================================================================== */
.lst_9 {
  width: calc(100% - 40px);
  margin: 0 auto;
  font-size: 14px;
}
.lst_9 > li{
  position: relative;
  padding-left: 20px;
}
.lst_9 > li::before{
  content: "○";
  position: absolute;
  display: block;
  left: 0;
}
.lst_9 > li.asterisk::before{
  content: "※";
}
.lst_9 > li.red {
  color: #d6003f;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前   : ボタン群
/* セレクタ : .lst_buttons
/*----------------------------------------------------------*/
.lst_buttons {
  padding-top: 4px;
  padding-bottom: 38px;
  width: 220px;
  margin: 0 auto;
}
/* type1 */
.lst_buttons .type1 {
  padding-bottom: 5px;
}
.lst_buttons .type1 a {
  position: relative;
  display: inline-block;
  margin-top: 4px;
  background: #313392;
  padding-left: 30px;
  padding-right: 18px;
  padding-top: 9px;
  padding-bottom: 6px;
  text-decoration: none;
  font-size: 14px;
  color: white;
}
.lst_buttons .type1 a::before,
.lst_buttons .type1 a::after {
  content: "";
  width: 7px;
  height: 1px;
  background: white;
  display: block;
  position: absolute;
  left: 17px;
}
.lst_buttons .type1 a::before {
  top: 16px;
  transform: rotate(36deg);
}
.lst_buttons .type1 a::after {
  top: 20px;
  transform: rotate(-36deg);
}

/* type2 */
.lst_buttons .type2 a {
  font-size: 14px;
  color: #21238a;
  text-decoration: none;
  padding-top: 8px;
  display: block;
}
.lst_buttons .type2 a .fas {
  padding-right: 6px;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : 投稿リスト
/* セレクタ : .lst_posts
/*----------------------------------------------------------*/
.lst_posts {
  padding-bottom: 21px;
}
/* デフォルトはグリーン */
.lst_posts h2 {
  position: relative;
  font-weight: bold;
  border-top: solid 1px #d3d3d3;
  width: calc(100% - 40px);
  margin: 0 auto;
  border-bottom: solid 2px #2d9600;
  height: 44px;
  color: #373737;
  text-align: left;
  padding-left: 37px;
  padding-top: 10px;
  font-size: 18px;
  background: initial;
  background: -moz-linear-gradient(bottom, #ffffff 0%, #ffffff 29%, #ecedf0 100%); 
  background: -webkit-linear-gradient(bottom, #ffffff 0%, #ffffff 29%, #ecedf0 100%);
  background: linear-gradient(to bottom, #ffffff 0%, #ffffff 29%, #ecedf0 100%); 
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ecedf0',GradientType=0 ); /* IE6-9 */
}
.lst_posts h2 span {
  font-size: 12px;
  font-weight: normal;
  position: absolute;
  right: 0;
  top: 12px;
  display: flex;
  justify-content: start;
  align-items: center;
}

.lst_posts h2 span img {
  width: 10px;
  height: 10px;
  margin-right: 4px;
}
/* グレイ */
.lst_posts.gray h2 {
  border-bottom: solid 2px #555555;
}
.lst_posts h2::before {
  content: "";
  background-image: url(../image/public/lst_posts_h2_icon.svg);
  display: block;
  position: absolute;
  width: 20px;
  height: 21px;
  left: 10px;
  transform: rotate(180deg);
  background-repeat: no-repeat;
  background-size: contain;
  top: 10px;
}
.lst_posts .posts article a { 
  display: block;
  width: calc(100% - 40px);
  font-size: 1.4rem;
  line-height: 1.45;
  margin: 0 auto;
  padding-top: 9px;
  padding-left: 10px;
  padding-bottom: 8px;
  border-bottom: 1px dotted #333333;
  text-decoration: none;
  color: #343434;
}
.lst_posts .posts article:last-child a { 
  border-bottom: none;
  padding-bottom: 1px;
}
.lst_posts .posts article .day {
  font-weight: normal;
  padding-top: 3px;
  font-size: 14px;
}
.lst_posts .posts article .name { 
  font-size: 14px;
  font-weight: normal;
  color: #21238a;
  padding-top: 1px;
}
.lst_posts .posts article .name img {
  width: 10px;
  height: 10px;
  display: inline-block;
  margin-right: 3px;
  transform: translate(0, -50%);
}
.lst_posts .posts article .name .new { 
  display: inline-block;
  font-size: 1.2rem;
  padding: 0 8px;
  background-color: #AC0837;
  line-height: 1.75;
  color: white;
  margin-left: 5px;
}
.lst_posts .more a {
  display: block;
  color: black;
  padding: 0 20px;
  text-decoration: underline;
  text-align: right;
  font-size: 14px;
}
.lst_posts .more a .fas {
  padding-right: 4px;
  font-size: 15px;
  padding-top: 4px;
  color: #279903;
}
.lst_posts .back a {
  display: block;
  color: black;
  padding: 20px;
  text-decoration: underline;
  text-align: center;
  font-size: 14px;
}
.lst_posts .back a .fas {
  padding-right: 4px;
  font-size: 15px;
  padding-top: 4px;
  color: #279903;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : バナーリスト
/* セレクタ : .lst_banners
/*----------------------------------------------------------*/
.lst_banners {
  padding-top: 7px;
}
/*--------------- */
/* タイプ１
/*--------------- */
.lst_banners {
  width: calc(100% - 40px);
  margin: 0 auto;
}
.lst_banners li a {
  display: block;
  width: 100%;
  padding-bottom: 14px;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : メニューリスト
/* セレクタ : .lst_menu
/*----------------------------------------------------------*/
.lst_menu {
  width: calc(100% - 40px);
  margin: 0 auto;
  margin-top: 15px;
  margin-bottom: 30px;
}
.lst_menu li a {
  padding-bottom: 6px;
  text-decoration: none;
  border-bottom: 1px dotted #aaaaaa;
  width: 100%;
  display: block;
  padding-top: 10px;
  font-size: 14px;
}
.lst_menu li a::before {
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  padding-left: 2px;
  padding-right: 5px;
  color: #206B00;
}
.lst_menu li.has_next a {
  border-bottom: none;
}
.lst_menu li.next a {
  padding-left: 20px;
  padding-top: 5px;
  padding-bottom: 3px;
  border-bottom: none;
}
.lst_menu li.next.final a {
  border-bottom: 1px dotted #aaaaaa;
}
.lst_menu.blue li a::before {
  color: #313392;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : メニューリスト
/* セレクタ : .lst_menu2
/*----------------------------------------------------------*/
.lst_menu2 {
  width: calc(100% - 40px);
  margin: 0 auto;
  margin-top: 15px;
  margin-bottom: 15px;
}
.lst_menu2 li a {
  position: relative;
  padding-bottom: 7px;
  text-decoration: none;
  width: 100%;
  display: block;
  padding-top: 5px;
  font-size: 14px;
  line-height: 1.2;
  padding-left: 20px;
}
.lst_menu2 li a::before {
  position: absolute;
  left: 10px;
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #d6003f;
}



/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : メニューリスト
/* セレクタ : .lst_menu3
/*----------------------------------------------------------*/
.lst_menu3 {
  width: calc(100% - 40px);
  margin: 0 auto;
  padding: 10px;
  background: #F2F0F1;
  border: 1px solid #C7BDBA;
}
.lst_menu3 li {
  font-size: 14px;
  padding-bottom: 7px;
}
.lst_menu3 li::before {
  content: "▼";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  background-color: #ce053e;
  width: 16px;
  height: 16px;
  font-size: 10px;
  padding: 0;
  text-align: center;
  line-height: 16px;
  border-radius: 50%;
  color: white;
  display: inline-block;
  margin-right: 5px;
  transform: rotate(-90deg);
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : メニューリスト
/* セレクタ : .lst_menu4
/*----------------------------------------------------------*/
.lst_menu4 {
  width: calc(100% - 40px);
  margin: 0 auto;
  margin-top: 15px;
  margin-bottom: 30px;
}
.lst_menu4 li {
  position: relative;
  padding-bottom: 6px;
  border-bottom: 1px dotted #aaaaaa;
  width: 100%;
  display: block;
  padding-top: 10px;
  font-size: 14px;
  padding-left: 23px;
  padding-right: 5px;
}
.lst_menu4 li:nth-child(even) {
  background-color: #e8f8e6;
}
.lst_menu4 li::before {
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  background-color: #ce053e;
  text-align: center;
  border-radius: 50%;
  color: white;
  display: block;
  position: absolute;
  height: 16px;
  width: 16px;
  padding: 0;
  line-height: 16px;
  left: 5px;
  top: 12px;
}
.lst_menu4 li a {
  color: #21238A;
  font-size: 14px;
  font-weight: bold;
  text-decoration: none;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : メニューリスト
/* セレクタ : .lst_menu5
/*----------------------------------------------------------*/
.lst_menu5 {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 1px;
}
.lst_menu5 li a {
  font-size: 14px;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 24px;
  text-decoration: none;
  color: white;
  background-color: #695e5b;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : メニューリスト
/* セレクタ : .lst_menu6
/*----------------------------------------------------------*/
.lst_memu6 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
}

.lst_memu6 li a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  font-size: 14px;
  color: #333333;
  text-decoration: none;
  aspect-ratio: 174/59;
  background-image: url(../image/public/ecatalog_btn_s.png);
  background-size: contain;
  background-repeat: no-repeat;
  font-weight: bold;
  padding-top: 26px;
}

.lst_memu6.center {
  display: flex;
  justify-content: center;
}
.lst_memu6.center li {
  width: 100%;
  max-width: 200px;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : メニューリスト
/* セレクタ : .lst_menu7
/*----------------------------------------------------------*/
.lst_memu7 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  font-size: 14px;
  gap: 1px;
}

.lst_memu7 li a {
  width: 100%;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #C7BDBA;
  background-color: #F2F0F1;
  border-radius: 4px;
  text-decoration: none;
  color: #333333;
}
.lst_memu7 .current a {
  border: solid 1px #1125a8;
  background: #287ac0;
  color: #ffffff;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : メニューリスト
/* セレクタ : .lst_menu8
/*----------------------------------------------------------*/
.lst_menu8 .main {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
}

.lst_menu8 .main li a {
  font-size: 14px;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 24px;
  text-decoration: none;
  color: #21238A;
}

.lst_menu8 .main li a.current {
  color: #D6003F;
  background-color: #EBE7E6;
}

.lst_menu8 .sub {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  background-color: #EBE7E6;
  padding: 5px;
}

.lst_menu8 .sub li {
  width: calc(100% / 4);
}

.lst_menu8 .sub li a {
  font-size: 14px;
  text-align: center;
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  color: #21238A;
  padding: 3px;
}

.lst_menu8 .sub li a.current {
  background-color: #D0C8C6;
  color: #D6003F;
  font-weight: bold;
}

.lst_menu8 .sub li a.blue {
  border: solid 1px #1125a8;
  background: #0e22a5;
  background: -moz-linear-gradient(bottom, #0e22a5 0%, #0a1a9a 45%, #1e33b8 45%, #7382de 100%);
  background: -webkit-linear-gradient(bottom, #0e22a5 0%, #0a1a9a 45%, #1e33b8 45%, #7382de 100%);
  background: linear-gradient(to bottom, #7382de 0%, #1e33b8 45%, #0a1a9a 45%, #0e22a5 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7382de', endColorstr='#0e22a5',GradientType=0 );
  font-size: 12px;
  color: #fff;);
  height: 20px;
  margin-top: 3px;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : QAリスト
/* セレクタ : .lst_qa
/*----------------------------------------------------------*/
.lst_qa {
  font-size: 14px;
  line-height: 22px;
  width: calc(100% - 40px);
  margin: 0 auto;  
}
.lst_qa  > li {
  padding-bottom: 15px;
  margin-top: -90px;
  padding-top: 90px;
}
.lst_qa > li .question,
.lst_qa > li .answer {
  position: relative;
  padding: 5px 0;
  padding-left: 43px;
  padding-right: 5px;
}
.lst_qa > li .question {
  background-color: #E8F8E6;
}
.lst_qa.blue > li .question {
  background-color: #E3E4FB;
}
.lst_qa > li .question::before,
.lst_qa > li .answer::before {
  position: absolute;
  font-size: 12px;
  left: 3px;
  top: 7px;
  color: white;
  line-height: 1;
  padding: 2px;
}
.lst_qa > li .question::before {
  content: "質問";
  background-color: #21238a;
}

.lst_qa > li .answer::before{
  content: "答え";
  background-color: #d22732;
}
.lst_qa > li .question::after,
.lst_qa > li .answer::after {
  content: "";
  position: absolute;
  top: 7px;
  left: 31px;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 8px;
}
.lst_qa > li .question::after {
  border-color: transparent transparent transparent #21238a;
}
.lst_qa > li .answer::after {
  border-color: transparent transparent transparent #d22732;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : 馬アルバム
/* セレクタ : .lst_uma_album 
/*----------------------------------------------------------*/
.lst_uma_album {
  width: calc(100% - 40px);
  margin: 0 auto;
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  padding-top: 20px;
}

.lst_uma_album li {
  width: 100%;
  max-width: 320px;
}
.lst_uma_album .red {
  color: #d6003f;
}
.lst_uma_album li .name {
  font-size: 14px;
}

.lst_uma_album li .image {
  padding: 5px;
  background-color: #f2f0f1;
}
.lst_uma_album li .image iframe {
  width: 100%;
  height: 100%;
  vertical-align: bottom;
}

.lst_uma_album li .update {
  font-size: 12px;
  color: #287AC0;
  padding-bottom: 20px;
}

.lst_uma_album li .update.new {
  background-color: #d6003f;
  display: inline-block;
  color: white;
  padding: 0 3px;
  font-size: 12px;
  height: 18px;
  line-height: 18px;
  margin-right: 3px;
}
.lst_uma4 .recent .title img {
  width: auto;
  margin-right: 5px;
}
.lst_uma_album li .name .retired {
  font-size: 12px;
  background-color: #602716;
  color: white;
  padding: 0 15px;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : 馬アルバム
/* セレクタ : .lst_uma_album2
/*----------------------------------------------------------*/
.lst_uma_album2 {
  width: calc(100% - 40px);
  margin: 0 auto;
}

.lst_uma_album2 li {
  padding: 10px;
  background-color: #F2F0F1;
  margin-bottom: 20px;
}

.lst_uma_album2 li .image {
  padding-bottom: 10px;
}

.lst_uma_album2 li .name {
  font-size: 14px;
  font-weight: bold;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : 馬フォト掲示板
/* セレクタ : .lst_uma_photo 
/*----------------------------------------------------------*/
.lst_uma_photo {
  width: calc(100% - 40px);
  margin: 0 auto;
}

.lst_uma_photo li {
  padding: 30px 10px 10px;
  background-image: url(../image/public/list_box.jpg);
  background-size: cover;
  aspect-ratio: 232 / 315;
  margin-bottom: 20px;
}

.lst_uma_photo li .th {
  font-size: 12px;
}

.lst_uma_photo li .td {
  font-size: 14px;
}

.lst_uma_photo li .image {
  padding-bottom: 10px;
  max-height: 53%;
  height: 100%;
}
.lst_uma_photo li .image a {
  display: block;
  width: 100%;
  height: 100%;
}

.lst_uma_photo li .image a img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.lst_uma_photo li .race .th img {
  width: 24px;
}

.lst_uma_photo li .race, 
.lst_uma_photo li .name {
  display: grid;
  grid-template-columns: 35px 1fr;
  padding-bottom: 5px;
}
.lst_uma_photo li .td.new::before {
  content: "New";
  background: #be0c2b;
  color: #ffffff;
  padding: 1px 5px;
  margin-right: 5px;
}

.lst_uma_photo li .date {
  display: grid;
  grid-template-columns: 45px 1fr;
  padding-bottom: 5px;
  padding-top: 5px;
  border-top: dotted 1px;
}
.lst_uma_photo li .user {
  display: grid;
  grid-template-columns: 45px 1fr;
  padding-bottom: 5px;
}
.lst_uma_photo li .edit {
  display: flex;
  justify-content: end;
  font-size: 14px;
  column-gap: 10px;
}
.lst_uma_photo li .edit a {
  color: #D6003F;
  text-decoration: none;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : 馬フォト掲示板コメント
/* セレクタ : .lst_uma_photo_comment
/*----------------------------------------------------------*/
.lst_uma_photo_comment {
  width: calc(100% - 40px);
  margin: 0 auto;
  margin-top: -10px;
  background-color: #e8f8e6;
  padding: 10px;
  padding-top: 20px;
  font-size: 12px;
  line-height: 1.5;
}

.lst_uma_photo_comment li {
  background-color: #ffffff;
  border: solid 1px #d3d3d3;
  padding: 10px;
  margin-bottom: 10px;
}

.lst_uma_photo_comment li .title {
  font-weight: bold;
  padding-bottom: 5px;
}
.lst_uma_photo_comment li .title img {
  width: auto;
  margin-right: 5px;
}
.lst_uma_photo_comment li .date .new {
  background: #be0c2b;
  color: #ffffff;
  padding: 1px 5px;
  margin-right: 5px;
}
.lst_uma_photo_comment li .user {
  border-bottom: dotted 1px;
  padding-bottom: 5px;
  margin-bottom: 5px;
}

.lst_uma_photo_comment li .edit {
  display: flex;
  justify-content: end;
  column-gap: 10px;
}

.lst_uma_photo_comment li .edit a {
  color: #D6003F;
  text-decoration: none;
}

.lst_uma_photo_comment.none {
  background-color: unset;
}

.lst_uma_photo_comment.none li {
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  color: #D6003F;
  border: none;
  padding: 0;
}

.lst_uma_photo_comment li.more {
  background-color: unset;
  border: unset;
  text-align: center;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : 馬リスト
/* セレクタ : .lst_uma
/*----------------------------------------------------------*/
.lst_uma {
  width: calc(100% - 40px);
  margin: 0 auto;
  font-size: 14px;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.lst_uma .day {
  width: 100px;
  text-align: right;
}

.lst_uma input[type="checkbox"] {
  width: 15px;
  margin-left: 0;
}

.lst_uma .name {
  width: calc(100% - 118px);
  margin-bottom: 8px;
  color: #333333;
}
.lst_uma .name a {
  color: #2B2F94;
  text-decoration: none;
  font-weight: bold;
}
.lst_uma .name.red a {
  color: #D6003F;
}
.lst_uma .name.gray a {
  color: #9B8E8A;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : 馬リスト
/* セレクタ : .lst_uma2
/*----------------------------------------------------------*/
.lst_uma2 {
  font-size: 14px;
  width: calc(100% - 40px);
  margin: 0 auto;
}

.lst_uma2 li {
  display: grid;
  grid-template-columns: 30px 65px 1fr;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : 馬リスト
/* セレクタ : .lst_uma3
/*----------------------------------------------------------*/
.lst_uma3 {
  width: calc(100% - 40px);
  margin: 10px auto;
  font-size: 14px;
  line-height: 18px;
  border-top: dotted 1px;
}

.lst_uma3 li {
  border-bottom: dotted 1px;
  padding: 7px 0px;
}

.lst_uma3 .name a {
  font-weight: bold;
  text-decoration: none;
}

.lst_uma3 .name {
  padding-bottom: 3px;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : 馬リスト
/* セレクタ : .lst_uma4
/*----------------------------------------------------------*/
.lst_uma4 {
  width: calc(100% - 40px);
  margin: 0 auto;
}

.lst_uma4 li {
  border-bottom: 1px dotted #aaaaaa;
  padding-bottom: 10px;
  margin-bottom: 10px;
}

.lst_uma4 figure {
  background-color: #f2f0f1;
  padding: 5px;
  margin-bottom: 8px;
}

.lst_uma4 figcaption {
  text-align: center;
  font-size: 12px;
  padding-top: 5px;
}

.lst_uma4 .favorite {
  display: flex;
  justify-content: flex-end;
  font-size: 12px;
  column-gap: 5px;
  color: #999999;
  line-height: 1;
  padding-bottom: 8px;
}

.lst_uma4 .favorite .regist {
  border-right: solid 1px;
  padding-right: 5px;
}

.lst_uma4 .name {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-size: 14px;
  font-weight: bold;
  padding-bottom: 5px;
}

.lst_uma4 .name .num {
  padding-right: 5px;
}

.lst_uma4 .name .foreign::before {
  content: "外";
  color: #fff;
  font-size: 10px;
  background-color: #252189;
  display: inline-block;
  width: 16px;
  height: 16px;
  line-height: 16px;
  border-radius: 50%;
  text-align: center;
  margin-right: 5px;
}
.lst_uma4 .name .tag {
  font-weight: normal;
  margin-left: 5px;
  font-size: 11px;
  border: solid 1px;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 17px;
  padding: 0 5px;
  background-color: #f2f0f1;
}

.lst_uma4 .rest {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding-bottom: 7px;
}

.lst_uma4 .rest .text {
  font-size: 12px;
  font-weight: bold;
  padding-right: 5px;
  width: 50px;
  height: 15px;
  line-height: 1;
}

.lst_uma4 .rest .text.full {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #d6003f;
  color: #ffffff;
  font-weight: normal;
  width: 40px;
  margin-right: 10px;
}

.lst_uma4 .rest .bar {
  display: flex;
  justify-content: flex-start;
}

.lst_uma4 .rest .bar > div {
  width: 16px;
  height: 15px;
  border-right: solid 1px #ffffff;
  background-color: #f2f0f1;
}

.lst_uma4 .rest .bar .yes {
  background-color: #313392;
}
.lst_uma4 .rest.le20 .text {
  color: #c92a3c;
}
.lst_uma4 .rest.le20 .bar .yes {
  background-color: #cf043e;
}

.lst_uma4 .info {
  background-color: #E3E4FB;
  font-size: 12px;
  line-height: 16px;
  padding: 8px;
  margin-bottom: 5px;
}

.lst_uma4 .recent {
  font-size: 12px;
  line-height: 16px;
}

.lst_uma4 .recent .title {
  font-weight: bold;
  padding-bottom: 2px;
  color: #287AC0;
}

.lst_uma4 .recent .title .new {
  content: "new";
  background-color: #d6003f;
  display: inline-block;
  color: white;
  padding: 0 3px;
  font-size: 12px;
  height: 18px;
  line-height: 18px;
  margin-right: 3px;
}
.lst_uma4 .recent .title span {
  font-weight: normal;
}

/* green */
.lst_uma4.green .info {
  background-color: #e8f8e6;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : 画像リスト
/* セレクタ : .lst_image1
/*----------------------------------------------------------*/
.lst_image1 {
  display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}
.lst_image1 li {
  max-width: 300px;
  margin: 0 auto;
}

.lst_image1 li figure {
  padding-bottom: 5px;
}

.lst_image1 li p {
  font-size: 14px;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : リンクボタン
/* セレクタ : .btn_link2
/*----------------------------------------------------------*/
.btn_link2 {
  display: block;
/*  height: 55px; */
  padding: 2px;
  border-radius: 10px;
  background: rgb(255,250,248);
  background: -moz-linear-gradient(top, rgba(255,250,248,1) 0%, rgba(168,165,142,1) 100%);
  background: -webkit-linear-gradient(top, rgba(255,250,248,1) 0%,rgba(168,165,142,1) 100%);
  background: linear-gradient(to bottom, rgba(255,250,248,1) 0%,rgba(168,165,142,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fffaf8', endColorstr='#a8a58e',GradientType=0 );
  text-decoration: none;
}
.btn_link2.wd100 {
  max-width: 100px;
}
.btn_link2 .inner {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.25;
  color: #554B49;
  width: 100%;
  height: 100%;
  background-color: white;
  border-radius: 8px;
  padding: 4.5px 10px;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : リンクボタン
/* セレクタ : .btn_link3
/*----------------------------------------------------------*/
.btn_link3 {
  display: block;
  height: 32px;
  padding: 1px;
  border-radius: 8px;
  text-decoration: none;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#fffaf8+0,a8a58e+100 */
  background: rgb(255,250,248); /* Old browsers */
  background: -moz-linear-gradient(top,  rgba(255,250,248,1) 0%, rgba(168,165,142,1) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top,  rgba(255,250,248,1) 0%,rgba(168,165,142,1) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom,  rgba(255,250,248,1) 0%,rgba(168,165,142,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fffaf8', endColorstr='#a8a58e',GradientType=0 ); /* IE6-9 */
  color: #554B49;
}
.btn_link3 .inner {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: 1.3rem;
  letter-spacing: 0.1em;
  color: #554B49;
  width: 100%;
  height: 100%;
  border-radius: 7px;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ccc8b6+100 */
  background: rgb(255,255,255); /* Old browsers */
  background: -moz-linear-gradient(top,  rgba(255,255,255,1) 0%, rgba(204,200,182,1) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(204,200,182,1) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(204,200,182,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ccc8b6',GradientType=0 ); /* IE6-9 */
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : テーブル
/* セレクタ : .table1
/*----------------------------------------------------------*/
.table1 {
  width: calc(100% - 40px);
  margin: 0 auto;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding-bottom: 21px;
}
.table1 .th {
  width: 100%;
  height: 27px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: 16px;
  background-color: #554B49;
  color: white;
}
.table1 .td_c2 {
  display: flex;
  justify-content: center;
  text-align: center;
  align-items: center;
  width: 100%;
  height: 40px;
  border: solid 1px #554B49;
  border-bottom: none;
  font-size: 15px;
}
.table1 .td {
  width: 50%;
  min-height: 26px;
  display: flex;
  justify-content: center;
  text-align: center;
  align-items: center;
  font-size: 14px;
  letter-spacing: 0.1em;
  border: solid 1px #554B49;
  border-bottom: none;
  background-color: white;
}
.table1 .td:nth-last-child(-n+2){
  border-bottom: solid 1px #554B49;
}
.table1 .td.gray {
  background-color: #EBEBEB;
}
.table1 .td:nth-of-type(even) {
  border-left: none;
}
.table1 span.blue {
  color: #2B2F94;
}
.table1 span.bgred {
  display: inline-block;
  padding: 2px 3px;
  line-height: 1;
  color: white;
  background-color: #AC0837;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : テーブル
/* セレクタ : .table2
/*----------------------------------------------------------*/
.table2 {
  overflow: hidden;
  max-height: 42px;
  width: calc(100% - 40px);
  margin: 0 auto;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding-bottom: 9px;
  transition: all 1s ease;
}
.table2.open {
  max-height: 400px;
}
.table2 .th {
  cursor: pointer;
  position: relative;
  width: 100%;
  height: 41px;
  margin-bottom: 7px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding-left: 42px;
  font-size: 1.4rem;
  color: white;
  background: rgb(40,120,68);
  background: -moz-linear-gradient(left, rgba(40,120,68,1) 0%, rgba(95,176,123,1) 100%);
  background: -webkit-linear-gradient(left, rgba(40,120,68,1) 0%,rgba(95,176,123,1) 100%);
  background: linear-gradient(to right, rgba(40,120,68,1) 0%,rgba(95,176,123,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#287844', endColorstr='#5fb07b',GradientType=1 );
}
.table2 .th::before {
  content: "＋";
  position: absolute;
  display: block;
  left: 14px;
  font-size: 1.3rem;
}

.table2 .td {
  width: 149px;
  min-height: 27px;
  border: solid 1px #554B49;
  border-top: none;
  display: flex;
  justify-content: center;
  text-align: center;
  align-items: center;
  font-size: 1.4rem;
  background-color: white;
}
.table2 .td.gray {
  background-color: #EBEBEB;
}
.table2 .td.first {
  height: 41px;
  border: solid 1px #554B49;
}

.table2 .td2 {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  width: calc(100% - 149px);
  min-height: 27px;
  font-size: 1.4rem;
  border-right: solid 1px #554B49;
  border-bottom: solid 1px #554B49;
  background-color: white;
}
.table2 .td2.gray {
  background-color: #EBEBEB;
}
.table2 .td2.first {
  height: 41px;
  border: solid 1px #554B49;
  border-left: none;
}

.table2 span.blue {
  color: #2B2F94;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : テーブル
/* セレクタ : .table3
/*----------------------------------------------------------*/
.table_div { 
  overflow-x: scroll;  
  width: calc(100% - 10px);
/*  height: 500px; */
  margin: 0 auto;
}
.table3,
.table3 th,
.table3 td {
  box-sizing: content-box;
}

.table3.nowrap {
  white-space: nowrap;
}
.table3 {
  width: 1060px;
  margin: 0 auto;
/*  width: 1000px; */
  border: solid 1px #BAAFAC;
  font-size: 12px;
  table-layout: fixed;
  word-wrap: break-word;
  border-collapse: collapse;
}
.table3 thead th {
  height: 40px;
/*   padding: 0 10px; */
  vertical-align: middle;
  border-right: solid 1px #BAAFAC;
  border-bottom: solid 1px #BAAFAC;
  color: #1f6c1b;
}
.table3 thead tr {
  background-color: #e8f8e7;
}

.table3.blue thead th {
  color: #5d2915;
}
.table3.blue thead tr {
  background: #e3e5fa;
}

.table3 thead th:nth-child(1) { width: 37px; }
.table3 thead th:nth-child(2) { width: 200px; }
.table3 thead th:nth-child(3) { width: 200px; }
.table3 thead th:nth-child(4) { width: 200px; }
.table3 thead th:nth-last-child(-n+7) { width: 70px; }

.table3 tbody td.name {
  position: relative;
}
.table3 tbody td input[type="checkbox"] {
  position: absolute;
  left: 4px;
  top: 6px;
}
.table3 tbody tr {
  background-color: white;
  min-height: 51px;
}
.table3 tbody tr.suspension {
  background-color: #6a5f5b;
}
.table3 tbody tr.full {
  background-color: #dad4d4;
}
.table3 tbody tr.less20 .number {
  background-color: red;
  color: white;
}
.table3 tbody tr .name .diamond::before {
  content: "◆";
  color: #e5003e;
  font-size: 10px;
}
.table3 tbody tr .name .foreign::before {
  content: "外";
  color: #fff;
  font-size: 10px;
  background-color: #252189;
  display: inline-block;
  width: 16px;
  height: 16px;
  line-height: 16px;
  border-radius: 50%;
  text-align: center;
}
.table3 tbody tr .place .miho {
  color: #1f6c1b;
}
.table3 tbody tr .place .ritto {
  color: #155fab;
}
.table3 tbody tr .sex.male {
  background: #85bae2;
}
.table3 tbody tr .sex.female {
  background: #e5898b;
}
.table3 tbody tr .number.le50 {
  background:#98FB98;
}
.table3 tbody tr .limit {
  font-weight: bold;
  color: #2557b8;
}
.table3 tbody tr.suspension .sex {
  background-color: #6a5f5b;
}
.table3 tbody th,
.table3 tbody td {
  vertical-align: middle;
  text-align: center;
  border-right: solid 1px #BAAFAC;
  border-bottom: solid 1px #BAAFAC;
}
.table3 tbody td {
  padding: 5px 0;
}
.table3 tbody td:nth-child(2) div:nth-child(2)  {
  text-align: left;
  padding: 0 5px;
  padding-left: 23px;
}
.table3 tbody :nth-child(3),
.table3 tbody :nth-child(4) { 
  text-align: left;
  padding: 0 5px;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : テーブル
/* セレクタ : .table4
/*----------------------------------------------------------*/
.table4 {
  width: calc(100% - 40px);
  margin: 0 auto;
  margin-top: 3px;
}
.table4 .row {
  padding: 13px 20px;
  padding-bottom: 19px;
  border-top: solid 1px #d3d3d3;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  background: #f1f1f1;
}
.table4 .row:nth-child(even){
  background: white;
}
.table4 .row:last-child {
  border-bottom: solid 1px #d3d3d3;
}
.table4 h3 {
  width: 100%;
  padding-bottom: 5px;
}
.table4 h3 a {
  color: #21238a;
  font-size: 14px;
  font-weight: bold;
  line-height: 22px;
}
.table4 .td {
  width: calc(100% / 2);
  max-width: 173px;
  display: flex;
  justify-content: flex-start;
  padding-top: 0px;
}
.table4 .td .name {
  position: relative;
  font-size: 14px;
  color: #2060a8;
  line-height: 24px;
  width: 75px;
}
.table4 .td .name::after {
  content: ":";
  position: absolute;
  right: 0;
  font-size: 14px;
}
.table4 .td .value {
  width: calc(100% - 75px);
  padding-left: 6px;
}
.table4 .td .value a {
  font-size: 14px;
  line-height: 24px;
  text-decoration: none;
  color: #333333;
  display: inline-block;
}
.table4 .td .value a.new {
  background: #be0c2b;
  padding: 0px 5px;
  color: white;
  font-size: 12px;
  line-height: 18px;
}
.table4 .td .value a.new.green {
  background: #1f6c1b;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : テーブル
/* セレクタ : .table5
/*----------------------------------------------------------*/
.table5_div {
  width: calc(100% - 40px);
  margin: 0 auto;
}
.table5_inner {
  width: 10000px;
}
.table5 {
  width: auto;
  border-top: solid 1px #d3d3d3;
  border-left: solid 1px #d3d3d3;
}
.table5.nowrap {
  white-space: nowrap;
}
.table5 tr {
  border-bottom: solid 1px #d3d3d3;
}
.table5 tr.gray td {
  background-color: #E3DEDC;
}
.table5 tr.gray2 th,
.table5 tr.gray2 td {
  color: #6F3824;
  background-color: #d3d3d3;
}
.table5 tr.gray3 td {
  background-color: #6a5f5b;
}
.table5 tr.green td {
  background: #e8f8e6;
}
.table5 tr.yellow td {
  background: #FDFF63;
}
.table5 tr.yellow2 td {
  background: #FFF8BA;
}
.table5 tr th, .table5 tr td {
  border-right: solid 1px #d3c3c3;
  padding-left: 7px;
  padding-right: 7px;
}

.table5 tr th {
  text-align: center;
  line-height: 31px;
  color: #5d2915;
  font-size: 14px;
  background: #e3e5fa;
  vertical-align: middle;
}
.table5 tr th.row2 {
  line-height: 18px;
  padding: 5px 0;
}
.table5.green tr th {
  background: #e8f8e7;
  color: #1f6c1b;
}

.table5 tr .tate{
  writing-mode: vertical-rl;
}

.table5 tr th.gray {
  color: #333333;
  font-weight: bold;
  background-color: #E3DEDC;
}

.table5 tr td {
  font-size: 14px;
  line-height: 20px;
  padding-top: 5px;
  padding-bottom: 6px;
  vertical-align: middle;
  background-color: white;
}
.table5 tr td.name {
  padding-left: 9px;
  padding-right: 15px;
}
.table5 tr td.place {
  padding-left: 17px;
  padding-right: 17px;
}
.table5 tr td.place .miho {
  color: #1f6c1b;
}
.table5 tr td.place .ritto {
  color: #155fab;
}
.table5 tr td.gray {
  background-color: #f2f0f1;
}
.table5 tr td.blue {
  color: #333333;
  background-color: #88B9E4;
}
.table5 tr td.blue2 {
  background-color: #5290BB;
}
.table5 tr td.red2 {
  color: #333333;
  background-color: #E48888;
}
.table5 tr td.none {
  color: #d6003f;
  font-weight: bold;
}

.table5 tr td a {
  text-decoration: none;
  color: #333333;
}
.table5 tr td.name a {
  color: #21238a;
}
.table5 tr td.name img {
  width: auto;
}
.table5 tr td.new::before {
    content: "New";
    background-color: #d6003f;
    display: inline-block;
    color: white;
    padding: 0 3px;
    font-size: 12px;
    height: 18px;
    line-height: 18px;
    margin-right: 3px;
}

.table5 tr td .foreign::before {
  content: "外";
  color: #fff;
  font-size: 10px;
  background-color: #252189;
  display: inline-block;
  width: 16px;
  height: 16px;
  line-height: 16px;
  border-radius: 50%;
  text-align: center;
}
.table5 tr td .yusen::before {
  content: "■";
  color: #D6003F;;
  font-size: 10px;
  display: inline-block;
  transform: rotate(45deg);
}
.table5 tr td.new-jp::before {
    content: "最新";
    background-color: #d6003f;
    display: inline-block;
    color: white;
    padding: 0 3px;
    font-size: 12px;
    height: 18px;
    line-height: 18px;
    margin-right: 3px;
}
.table5 tr td.new-jp.green::before {
    background-color: #1f6c1b;
}
.table5 tr td.retired-jp::after {
    content: "引退";
    background-color: #602716;
    display: inline-block;
    color: white;
    padding: 0 12px;
    font-size: 12px;
    height: 18px;
    line-height: 18px;
    margin-left: 3px;
}

.table5 tr td.red {
  color: #d6003f;
}
.table5 tr td.bold {
  font-weight: bold;
}
.table5 tr td.td-red {
  color: #D6003F;
  background-color: #F5D4DE;
}
.table5 tr td.td-red2 {
  color: #FFFFFF;
  background-color: #D6003F;
}
.table5 tr td.td-red3 {
  background-color: #F5D4DE;
}
.table5 tr td.td-green {
  color: #333333;
  background-color: #BADCAB;
}
.table5 tr td.td-yellow {
  background-color: #FFF8BA;
}

.table5 tr td img {
  width: auto;
}
.table5 tr td span.blue {
  color: #025fb0;
}
.table5 tr td span.red {
  color: #d6003f;
}
.table5 tr td span.green {
  color: #2D9500;
}
.table5 tr td span.red {
  color: #C4003A;
}
.table5 tr td span.blue {
  color: #1F5FA8;
}
.table5 tr td span.bold {
  font-weight: bold;
}
.table5 tr td a {
  color: #2B2F94;
}

.table5 tbody tr .sex.male {
  background: #85bae2;
}
.table5 tbody tr .sex.female {
  background: #e5898b;
}
.table5 tbody tr .sex.sen {
  background: #5290BB;
}
.table5 tbody tr td.icon {
  width: 32px;
}

.table5.number {
  counter-set: cnt 0;
}

.table5.number tbody tr {
  counter-increment: cnt 1;
}

.table5.number tbody td:first-child::before{
  content: counter(cnt);
  display: inline-block;
  font-size: 10px;
  width: 16px;
  text-align: center;
  height: 16px;
  background-color: #21238a;
  color: #ffffff;);
  line-height: 16px;
  margin-right: 0.5em;
  border-radius: 50%;
  font-weight: bold;
}

.table5 .bar {
  display: flex;
  justify-content: flex-start;
}

.table5 .bar > div {
  width: 16px;
  height: 15px;
  border-right: solid 1px #ffffff;
  background-color: #f2f0f1;
}
.table5 .bar .yes {
  background-color: #313392;
}
.table5 .bar .yes.red {
  background-color: #cf043e;
}

.table5 tr th.blue {
  color: #ffffff;
  background-color: #025fb0;
}

.table5 tr th.red {
  color: #ffffff;
  background-color: #da023e;
}

.table5 .fs20 {
  font-size: 20px;
}
.table5 .fs20 i {
  font-size: 25px;
}
.table5 .center {
  text-align: center;
}
.table5 .right {
  text-align: right;
}

.table5 .blue2 {
  background-color: #edf4f9;
}
.table5 .blue2 i {
  color: #025fb0;
}
.table5 .orange {
  background-color: #ffc052;
}
.table5 .red3 {
  background-color: #fef7f9;
}
.table5 .red3 i {
  color: #D6003F;
}

.table5 .retired {
  font-size: 12px;
  background-color: #602716;
  color: white;
  padding: 2px 10px;
}

.table5 .cancel {
  font-size: 12px;
  background-color: #999999;
  color: white;
  padding: 2px 10px;
}

.table5 .fs18 {
  font-size: 18px;
}
/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : テーブル
/* セレクタ : .table6
/*----------------------------------------------------------*/
.table6 {
  width: 100%;
  overflow-x: auto;
  padding-bottom: 5px;
}
.table6 table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

.table6 td,
.table6 th {
  vertical-align: middle;
  text-align: center;
  white-space: nowrap;
  color: #333333;
  font-size: 14px;
  border: solid 1px #d3c3c3;
  padding: 1px 7px;
}

.table6 th {
  background-color: #f2f0f1;
  position: sticky;
  top: 0;
  left: 0;
  background: none;
  border-top: none;
  border-bottom: none;
  background: #f2f0f1;
}

.table6 th::before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: 100%;
  height: calc(100% - 1px);
  border: 1px solid #d3c3c3;
  z-index: -1;
}

.table6 tr:first-child th,
.table6 tr:first-child td {
  color: #1f6c1b;
  background-color: #e8f8e7;
}

.table6.blue tr:first-child th,
.table6.blue tr:first-child td {
  color: #6F3824;
  background-color: #E3E4FB;
}

/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : テーブルのヘッダー固定（tableを囲うdivに高さ指定）
/* セレクタ : .sticky_table
/*----------------------------------------------------------*/
.sticky_table thead th {
  /* 縦スクロール時に固定する */
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  /* tbody内のセルより手前に表示する */
  z-index: 3;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : トップへ
/* セレクタ : .gotop
/*----------------------------------------------------------*/
.gotop {
  text-align: center;
}
.gotop a {
  position: relative;
  text-decoration: none;
  color: #2B2F94;
}
.gotop a::before {
  position: absolute;
  content: "";
  background-image: url(../image/public/lst_banners_icon.png);
  background-size: contain;
  width: 24px;
  height: 24px;
  left: -24px;
  top: 0px;
}


/*----------------------------------------------------------*/
/* 馬検索
/*----------------------------------------------------------*/
.blk_search {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 13px 15px;
  width: calc(100% - 40px);
  margin: 0 auto;
  margin-bottom: 34px;
  background: #f3efee;
}
.blk_search.flex-start {
  justify-content: flex-start;
}
.blk_search h2 {
  width: 100%;
  padding-top: 5px;
  padding-left: 6px;
  padding-bottom: 5px;
  background: none;
  text-align: left;
  height: auto;
  font-size: 14px;
  color: #6b3a2c;
}
.blk_search .comment {
  font-size: 14px;
  color: #287AC0;
}
.blk_search .searchbutton {
  position: relative;
  text-align: right;
  font-weight: bold;
  font-size: 12px;
  padding-right: 23px;
  padding-top: 8px;
  color: #cf1e4f;
  line-height: 18px;
}
.blk_search .searchbutton::before {
  content: "";
  position: absolute;
  display: block;
  height: 1px;
  width: 12px;
  right: 10px;
  top: 16px;
  background: #cf1e4f;
}
.blk_search .searchbutton::after {
  content: "";
  position: absolute;
  display: block;
  width: 12px;
  height: 1px;
  right: 10px;
  top: 16px;
  background: #cf1e4f;
  transform: rotate(90deg);
  transition: all 0.5s ease;
}
.blk_search.open .searchbutton::after {
  transform: rotate(0deg);
}

.blk_search .searchbutton i {
  font-size: 16px;
}
/* 全幅＝wd4(4列分) */
.blk_search .wd4 {
  width: 100%;
}
.blk_search .wd2 {
  width: calc(100% / 2);
}
.blk_search .wd1 {
  width: calc(100% / 4);
}
.blk_search .text_wrapper {
  position: relative;
  margin-bottom: 11px;
}
.blk_search .radio_wrapper {
  position: relative;
  margin-bottom: 11px;
}
.blk_search .select_wrapper {
  position: relative;
  margin-bottom: 11px;
}
.blk_search .select_wrapper::after {
  content: "▼";
  position: absolute;
  right: 12px;
  font-size: 12px;
  top: 6px;
  color: #554b49;
}
.blk_search input[type="text"]{
  display: block;
  width: calc(100% - 10px);
  height: 35px;
  margin: 0 auto;
  border: solid 1px #a6a6a6;
  border-radius: 0;
  background-color: white;
  padding-left: 10px;
  font-size: 16px;
}
.blk_search select {
  display: block;
  width: calc(100% - 10px);
  height: 35px;
  margin: 0 auto;
  border: solid 1px #a6a6a6;
  border-radius: 0;
  background-color: white;
  padding-left: 10px;
  font-size: 16px;
}
.blk_search .button_wrapper button {
  font-size: 12px;
  width: 100%;
  max-width: 120px;
  height: 30px;
  margin: 0 auto;
  display: block;
  line-height: 30px;
  margin-top: 4px;
  font-weight: bold;
  background: #6f3824;
  color: white;
}
.blk_search .button_wrapper button.type2 {
  margin: 0 auto;
  max-width: none;
  height: 35px;
  width: calc(100% - 10px);
}
.blk_search.searchtext {
  overflow: hidden;
  max-height: 0;
  letter-spacing: 0.03em;
  width: 100%;
  margin: 0 auto;
  color: #AC0837;
  font-size: 12px;
  line-height: 19px;
  padding: 0 6px;
  transition: all 0.5s ease;
}
.blk_search.open .searchtext {
  max-height: 130px;
  padding-bottom: 10px;
}


/*----------------------------------------------------------*/
/* ポイント
/*----------------------------------------------------------*/
.blk_point {
  border: solid 2px #DEDEDE;
  width: calc(100% - 40px);
  margin: 0 auto;
  display: flex;
  justify-content: center;
  font-size: 14px;
  padding: 10px;
}

.blk_point .point .number {
  font-size: 18px;
  font-weight: bold;
  color: #D6003F;
}


/*----------------------------------------------------------*/
/* フォト掲示板詳細ページ
/*----------------------------------------------------------*/
.blk_photo {
  width: calc(100% - 40px);
  margin: 0 auto;
  padding: 10px;
  padding-top: 20px;
  border: solid 1px;
  box-shadow: 3px 3px 2px #ddd;
  position: relative;
}

.blk_photo::before {
  content: "";
  display: block;
  position: absolute;
  width: 11px;
  height: 11px;
  background-color: #702d11;
  border: solid 2px #000000;
  top: -7px;
  left: 0;
  right: 0;
  border-radius: 50%;
  margin: auto;
  box-shadow: 1px 1px 3px #666;
}

.blk_photo figure img {
  padding-bottom: 6px;
}

.blk_photo figure figcaption a {
  display: flex;
  justify-content: flex-end;
  font-size: 12px;
  margin-bottom: 10px;
}

.blk_photo figure figcaption a img {
  width: 14px;
  display: inline-block;
  margin-right: 4px;
  padding-bottom: 0;
  height: 14px;
  margin-top: 4px;
}

.blk_photo .info {
  padding-top: 10px;
}

.blk_photo .info .race {
  display: grid;
  grid-template-columns: 35px 1fr;
  font-size: 14px;
  font-weight: bold;
  color: #5C0000;
}

.blk_photo .info .race img {
  width: 30px;
  display: inline-block;
  margin-top: 2px;
}

.blk_photo .info .name .th {
  font-size: 12px;
  padding-right: 4px;
}

.blk_photo .info .name a {
  font-size: 14px;
  text-decoration: none;
}

.blk_photo .info .name {
  padding-bottom: 10px;
  border-bottom: 2px solid #5C0000;
  margin-bottom: 10px;
}

.blk_photo .info .date {
  font-size: 14px;
  font-weight: bold;
}

.blk_photo .info .user {
  font-size: 14px;
  font-weight: bold;
  padding-bottom: 5px;
}

.blk_photo .info .text {
  font-size: 14px;
  padding-bottom: 20px;
}

.blk_photo .info .edit {
  display: flex;
  justify-content: end;
  column-gap: 10px;
  font-size: 12px
}

.blk_photo .info .edit a {
  color: #D6003F;
  text-decoration: none;
}


/*----------------------------------------------------------*/
/* 【ページ別デザイン】
/* 名前     : 挨拶ページ
/* セレクタ : .page-greeting
/*----------------------------------------------------------*/
.page-greeting .blk_image {
  width: 189px;
  margin-top: 40px;
}

/*----------------------------------------------------------*/
/* 【ページ別デザイン】
/* 名前     : 挨拶ページ
/* セレクタ : .page-member_bosyu-cost
/*----------------------------------------------------------*/
.page-member_bosyu-cost .blk_image1 {
  max-width: 374px;
  margin-left: 20px;
}
.page-member_bosyu-cost .blk_image2 {
  width: calc(100% - 20px);
  margin-right: 0;
  margin-top: 20px;
}


/*----------------------------------------------------------*/
/* 【ページ別デザイン】
/* 名前     : 実績ページ
/* セレクタ : .page-plus_ruffian-history
/*----------------------------------------------------------*/
.page-plus_ruffian-history .table_1 {
  margin-top: 0;
  margin-bottom: 20px;
}
.page-plus_ruffian-history .table4 {
  padding-bottom: 20px;
}
.page-plus_ruffian-history .table4 .row {
  padding: 10px;
  font-size: 14px;
}

.page-plus_ruffian-history .h2_7 {
  margin-top: 20px;
}
.page-plus_ruffian-history .h3_6 {
  padding-top: 10px;
}
.page-plus_ruffian-history .h3_6::before {
  top: 10px;
}


/*----------------------------------------------------------*/
/* 【ページ別デザイン】
/* 名前     : マイページについて
/* セレクタ : .page-whats_mypage
/*----------------------------------------------------------*/
.page-whats_mypage .h2_7 {
  margin-top: 20px;
}
.page-whats_mypage .lst_2 {
  width: calc(100% - 40px);
  margin: 0 auto;
}

.page-whats_mypage .lst_2 > li {
  font-size: 14px;
  font-weight: bold;
  color: #333333;
  padding-bottom: 20px;
}
.page-whats_mypage .image1 { max-width: 720px; }
.page-whats_mypage .image2 { max-width: 186px; }
.page-whats_mypage .image3 { max-width: 578px; }


/*----------------------------------------------------------*/
/* 【ページ別デザイン】
/* 名前     : QAについて
/* セレクタ : .page-qa
/*----------------------------------------------------------*/
.page-qa .h3_4 {
  position: relative;
  z-index: -1;
  margin-top: -90px;
  padding-top: 110px;
}
.page-qa .h3_4::before {
  top: 111px;
}


/*----------------------------------------------------------*/
/* 【ページ別デザイン】
/* 名前     : 優勝記念の写真撮影ページ
/* セレクタ : .page-site-service-commemoration
/*----------------------------------------------------------*/
.page-site-service-commemoration .blk_image1 {
  max-width: 266px;
  margin-top: 20px;
}
.page-site-service-commemoration .blk_button1{
  padding-top: 0;
}
.page-site-service-commemoration .h3_2_1{
  margin-top: 0;
}


/*----------------------------------------------------------*/
/* 【ページ別デザイン】
/* 名前     : 牧場見学ページ
/* セレクタ : .page-site-service_ranch
/*----------------------------------------------------------*/
.page-site-service_ranch .blk_image1 {
  max-width: 266px;
  margin-top: 20px;
  margin-bottom: 20px;
}


/*----------------------------------------------------------*/
/* 【部品】
/* 名前     : モーダル
/* セレクタ : .modal
/*----------------------------------------------------------*/
.modal {
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  background-color: rgba(30,30,30,0.9);
  padding: 10px;
}

.modal__inner {
  background-color: #ffffff;
  padding: 10px;
  padding-top: 40px;
  position: relative;
}

.modal__close {
  position: absolute;
  width: 30px;
  height: 30px;
  top: 10px;
  right: 10px;
}

.modal__close::before,
.modal__close::after {
  content: "";
  width: 20px;
  height: 2px;
  background-color: #000000;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.modal__close::before {
  transform: rotate(45deg);
}
.modal__close::after {
  transform: rotate(-45deg);
}

.modal__title {
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  color: #D6003F;
  padding-bottom: 10px;
  border-bottom: solid 2px;
  margin-bottom: 20px;
}

.modal__body p {
  font-size: 14px;
  line-height: 1.5;
}

.modal__body p .red {
  color: #D6003F;
}

.modal__body p .bold {
  font-weight: bold;
}

.modal__body .radio-item {
  padding-bottom: 5px;
  font-weight: bold;
}

.modal__body ol.asterisk li {
  font-size: 14px;
  font-weight: normal;
}

.modal__body ol.asterisk li::before {
  content: "※";
}

.modal__btns {
  display: flex;
  justify-content: center;
  column-gap: 20px;
}

.modal__btns button {
  width: 120px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  font-weight: bold;
}

.modal__btns button.btn__blue {
  background-color: #212388;
  color: #ffffff;
}