@charset 'utf-8';



/*---------------------------------------------------------
 
---------------------------------------------------------*/


/* 汎用スタイル
---------------------------------------------------------*/
.u-red {
  color: #de3f3e;
}

.u-pc {
  display: block;
}
img.u-pc {
 display: inline-block; 
}
.u-sp {
  display: none;
}

.u-clearfix:after {
  content: " ";
  clear: both;
  display: block;
}

.u-clear-none {
  clear: none !important;
  overflow: hidden;
}

.u-font14 { font-size: 0.875rem; }
.u-font15 { font-size: 0.9375rem; }
.u-font16 { font-size: 1rem; }
.u-font18 { font-size: 1.125rem; }
.u-font20 { font-size: 1.25rem; }

.u-bold { font-weight: bold; }


/* Margin */
.u-m0 {
  margin: 0 !Important;
}
.u-m0a {
  margin: 0 auto !Important;
}
.u-mt0 {
  margin-top: 0 !Important;
}
.u-mt5 {
  margin-top: 5px !Important;
}
.u-mt10 {
  margin-top: 10px !Important;
}
.u-mt15 {
  margin-top: 15px !Important;
}
.u-mt20 {
  margin-top: 20px !Important;
}
.u-mt25 {
  margin-top: 25px !Important;
}
.u-mt30 {
  margin-top: 30px !Important;
}
.u-mt35 {
  margin-top: 35px !Important;
}
.u-mt40 {
  margin-top: 40px !Important;
}
.u-mt45 {
  margin-top: 45px !Important;
}
.u-mt50 {
  margin-top: 50px !Important;
}
.u-mb0 {
  margin-bottom: 0 !Important;
}
.u-mb5 {
  margin-bottom: 5px !Important;
}
.u-mb10 {
  margin-bottom: 10px !Important;
}
.u-mb15 {
  margin-bottom: 15px !Important;
}
.u-mb20 {
  margin-bottom: 20px !Important;
}
.u-mb25 {
  margin-bottom: 25px !Important;
}
.u-mb30 {
  margin-bottom: 30px !Important;
}
.u-mb35 {
  margin-bottom: 35px !Important;
}
.u-mb40 {
  margin-bottom: 40px !Important;
}
.u-mb45 {
  margin-bottom: 45px !Important;
}
.u-mb50 {
  margin-bottom: 50px !Important;
}
.u-ml0 {
  margin-left: 0 !Important;
}
.u-ml5 {
  margin-left: 5px !Important;
}
.u-ml10 {
  margin-bottom: 10px !Important;
}
.u-ml15 {
  margin-bottom: 15px !Important;
}
.u-mb20 {
  margin-bottom: 20px !Important;
}
.u-mb25 {
  margin-bottom: 25px !Important;
}
.u-mb30 {
  margin-bottom: 30px !Important;
}
.u-mb35 {
  margin-bottom: 35px !Important;
}
.u-mb40 {
  margin-bottom: 40px !Important;
}
.u-mb45 {
  margin-bottom: 45px !Important;
}
.u-mb50 {
  margin-bottom: 50px !Important;
}
.u-mr0 {
  margin-right: 0 !Important;
}
.u-mr5 {
  margin-right: 5px !Important;
}
.u-mr10 {
  margin-right: 10px !Important;
}
.u-mr15 {
  margin-right: 15px !Important;
}
.u-mr20 {
  margin-right: 20px !Important;
}
.u-mr25 {
  margin-right: 25px !Important;
}
.u-mr30 {
  margin-right: 30px !Important;
}
.u-mr35 {
  margin-right: 35px !Important;
}
.u-mr40 {
  margin-right: 40px !Important;
}
.u-mr45 {
  margin-right: 45px !Important;
}
.u-mr50 {
  margin-right: 50px !Important;
}

/* Padding */
.u-p0 {
  padding: 0 !Important;
}
.u-p5 {
  padding: 5px !Important;
}
.u-p10 {
  padding: 10px !Important;
}
.u-p15 {
  padding: 15px !Important;
}
.u-p20 {
  padding: 20px !Important;
}
.u-p25 {
  padding: 25px !Important;
}
.u-pt0 {
  padding-top: 0 !Important;
}
.u-pt5 {
  padding-top: 5px !Important;
}
.u-pt10 {
  padding-top: 10px !Important;
}
.u-pt15 {
  padding-top: 15px !Important;
}
.u-pt20 {
  padding-top: 20px !Important;
}
.u-pt25 {
  padding-top: 25px !Important;
}
.u-pt30 {
  padding-top: 30px !Important;
}
.u-pt35 {
  padding-top: 35px !Important;
}
.u-pt40 {
  padding-top: 40px !Important;
}
.u-pt45 {
  padding-top: 45px !Important;
}
.u-pt50 {
  padding-top: 50px !Important;
}
.u-pb0 {
  padding-bottom: 0 !Important;
}
.u-pb5 {
  padding-bottom: 5px !Important;
}
.u-pb10 {
  padding-bottom: 10px !Important;
}
.u-pb15 {
  padding-bottom: 15px !Important;
}
.u-pb20 {
  padding-bottom: 20px !Important;
}
.u-pb25 {
  padding-bottom: 25px !Important;
}
.u-pb30 {
  padding-bottom: 30px !Important;
}
.u-pb35 {
  padding-bottom: 35px !Important;
}
.u-pb40 {
  padding-bottom: 40px !Important;
}
.u-pb45 {
  padding-bottom: 45px !Important;
}
.u-pb50 {
  padding-bottom: 50px !Important;
}
.u-pl0 {
  padding-left: 0 !Important;
}
.u-pl5 {
  padding-left: 5px !Important;
}
.u-pl10 {
  padding-left: 10px !Important;
}
.u-pl15 {
  padding-left: 15px !Important;
}
.u-pl20 {
  padding-left: 20px !Important;
}
.u-pl25 {
  padding-left: 25px !Important;
}
.u-pl30 {
  padding-left: 30px !Important;
}
.u-pl35 {
  padding-left: 35px !Important;
}
.u-pl40 {
  padding-left: 40px !Important;
}
.u-pl45 {
  padding-left: 45px !Important;
}
.u-pl50 {
  padding-left: 50px !Important;
}
.u-pr0 {
  padding-right: 0 !Important;
}
.u-pr5 {
  padding-right: 5px !Important;
}
.u-pr10 {
  padding-right: 10px !Important;
}
.u-pr15 {
  padding-right: 15px !Important;
}
.u-pr20 {
  padding-right: 20px !Important;
}
.u-pr25 {
  padding-right: 25px !Important;
}
.u-pr30 {
  padding-right: 30px !Important;
}
.u-pr35 {
  padding-right: 35px !Important;
}
.u-pr40 {
  padding-right: 40px !Important;
}
.u-pr45 {
  padding-right: 45px !Important;
}
.u-pr50 {
  padding-right: 50px !Important;
}

/* Align */
.u-tac {
  text-align: center !Important;
}
.u-tal {
  text-align: left !Important;
}
.u-tar {
  text-align: right !Important;
}

.u-clearfix:after {
  content: ".";
  display: block;
  height: 0;
  visibility: hidden;
  overflow: hidden;
}



/* form
-----------------------------------------*/
.u-require {
  margin: 0 0 0 6px;
  padding: 0 7px;
  color: #fff;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1;
  border-radius: 3px;
  background: #de3f3e;
  white-space: nowrap;
}
.u-form-input01 {
  width: 500px;
  height: 40px;
  border-radius: 3px;
  border: 1px solid #ccc;
  padding: 0 5px;
}
.u-form-textarea01 {
  width: 500px;
  height: 100px;
  padding: 5px;
  border-radius: 3px;
  border: 1px solid #ccc;
}
.u-form-select01 {
  width: 300px;
  height: 40px;
  border-radius: 3px;
  border: 1px solid #ccc;
}

.u-form-radio {
  cursor: pointer;
  position: relative;
}
.u-form-radio:after {
  position: absolute;
  top: 50%;
  left: 0;
  padding: 0;
  width: 15px;
  height: 15px;
  margin-top: -8px;
  background-color: #FFF;
  border: 2px solid #cdcdcd;
  border-radius: 50%;
  vertical-align: middle;
  content: "";
  box-sizing: border-box;
}
.u-form-radio.checked:after {
  border: 4px solid #1752b7;
}
.u-form-radio input {
  margin: -7px 0 0px 1px;
  padding:0;
  position: absolute;
  top: 50%;
  left: 0;
}
.u-form-radio input:focus {
  outline-width: 2px;
  outline-style: dotted;
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
  .u-form-radio input:focus {
    outline-style: solid;
  }
}
.u-form-radio span {
  padding-left: 25px;
}

.u-form-check {
  position: relative;
  cursor: pointer;
}
.u-form-check:after {
  position: absolute;
  top: 50%;
  left: 0;
  padding: 0;
  width: 15px;
  height: 15px;
  margin-top: -8px;
  background-color: #FFF;
  border: 2px solid #cdcdcd;
  vertical-align: middle;
  content: "";
  box-sizing: border-box;
}
.u-form-check.checked:after {
  background: url(/common/200000044.png) no-repeat center center #fff;
}
.u-form-check input {
  margin: -7px 0 0px 1px;
  padding:0;
  position: absolute;
  top: 50%;
  left: 0;
}
.u-form-check input:focus {
  outline-width: 2px;
  outline-style: dotted;
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
  .u-form-check input:focus {
    outline-style: solid;
  }
}
.u-form-check span {
  padding-left: 25px;
}
.u-btn-confirmation,
.u-btn-modify,
.u-btn-link {
  text-align: center;
}
.u-btn-confirmation input,
.u-btn-modify input,
.u-btn-link a {
  border: none;
  border-radius: 5px;
  cursor: pointer;
  font-size: 1rem;/* 16px */
  font-weight: bold;
  min-width: 220px;
  min-height: 50px;
  display: inline-block;
  margin: 0 auto;
  padding: 14px 55px 12px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.u-btn-confirmation input,
.u-btn-link a {
  background: #1752b7;
  box-shadow: 0 -3px 0 #002f7b inset;
  color: #FFF;
  text-decoration: none;
}
.u-btn-modify input {
  background: #fff;
  box-shadow: 0 -3px 0 #ccc inset;
  border: 1px solid #ccc;
}
.u-btn-confirmation input:hover,
.u-btn-modify input:hover,
.u-btn-link a:hover {
  box-shadow: none;
}
.u-text-outside-pc,
.u-text-out {
  display: block;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}