@charset "utf-8";
/* ==========================================================================
Utility
========================================================================== */
/* device
--------------------------------------------------------- */
.u-pc {
  display: block !important;
}
.u-sp {
  display: none !important;
}
@media screen and (max-width:767px){
  .u-pc {
    display: none !important;
  }
  .u-sp {
    display: block !important;
  }
}
/* vertical-align
--------------------------------------------------------- */
.u-va-t{
  vertical-align: top !important;
}
.u-va-m{
  vertical-align: middle !important;
}
.u-va-b{
  vertical-align: bottom !important;
}

/* border
--------------------------------------------------------- */
/* border-radius */
.u-br-4{
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  -ms-border-radius: 4px;
}
.u-br-8{
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  -ms-border-radius: 8px;
}
.u-br-12{
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
  border-radius: 12px;
  -ms-border-radius: 12px;
}
.u-br-16{
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  border-radius: 16px;
  -ms-border-radius: 16px;
}

/* border-none */
.u-br-0{
  border: none;
}
.u-br-t-0{
  border-top: none;
}
.u-br-r-0{
  border-right: none;
}
.u-br-b-0{
  border-bottom: none;
}
.u-br-l-0{
  border-left: none;
}

/* clearfix
--------------------------------------------------------- */
.u-cf{
  *zoom: 1;
}
.u-cf:after{
  display: table;
  clear: both;
  content: '';
}
.clearfix:after {
  display: block;
  content: "";
  clear: both;
}

/* display
--------------------------------------------------------- */
.u-d-tb{
  display: table !important;
}
.u-d-tbc{
  display: table-cell !important;
}
.u-d-b{
  display: block !important;
}
.u-d-ib{
  display: inline-block !important;
}
.u-d-n{
  display: none !important;
}

/* float
--------------------------------------------------------- */
.u-fl-l{
  float: left !important;
}
.u-fl-r{
  float: right !important;
}

/* font-size
--------------------------------------------------------- */
.u-fz-10{
  font-size: .625rem !important;
}
.u-fz-12{
  font-size: .75rem !important;
}
.u-fz-14{
  font-size: .875rem !important;
}
.u-fz-16{
  font-size: 1rem !important;
}
.u-fz-18{
  font-size: 1.125rem !important;
}
.u-fz-20{
  font-size: 1.25rem !important;
}
.u-fz-22{
  font-size: 1.375rem !important;
}
.u-fz-24{
  font-size: 1.5rem !important;
}
.u-fz-26{
  font-size: 1.625rem !important;
}
.u-fz-large {
  font-size: 120%;
}
.u-fz-mini {
  font-size: 80%;
}

/* margin
--------------------------------------------------------- */
/* auto margin */
.u-m-c{
  margin-right: auto !important;
  margin-left: auto !important;
}

/* Top margin */
.u-mt-0{
  margin-top: 0 !important;
}
.u-mt-8{
  margin-top: 8px !important;
}
.u-mt-16{
  margin-top: 16px !important;
}
.u-mt-24{
  margin-top: 24px !important;
}
.u-mt-32{
  margin-top: 32px !important;
}
.u-mt-40{
  margin-top: 40px !important;
}
.u-mt-48{
  margin-top: 48px !important;
}
.u-mt-56{
  margin-top: 56px !important;
}
.u-mt-64{
  margin-top: 64px !important;
}

/* Right margin */
.u-mr-0{
  margin-right: 0 !important;
}
.u-mr-8{
  margin-right: 8px !important;
}
.u-mr-16{
  margin-right: 16px !important;
}
.u-mr-24{
  margin-right: 24px !important;
}
.u-mr-32{
  margin-right: 32px !important;
}
.u-mr-40{
  margin-right: 40px !important;
}
.u-mr-48{
  margin-right: 48px !important;
}
.u-mr-56{
  margin-right: 56px !important;
}
.u-mr-64{
  margin-right: 64px !important;
}

/* Bottom margin */
.u-mb-0{
  margin-bottom: 0 !important;
}
.u-mb-8{
  margin-bottom: 8px !important;
}
.u-mb-16{
  margin-bottom: 16px !important;
}
.u-mb-24{
  margin-bottom: 24px !important;
}
.u-mb-32{
  margin-bottom: 32px !important;
}
.u-mb-40{
  margin-bottom: 40px !important;
}
.u-mb-48{
  margin-bottom: 48px !important;
}
.u-mb-56{
  margin-bottom: 56px !important;
}
.u-mb-64{
  margin-bottom: 64px !important;
}

/* Left margin */
.u-ml-0{
  margin-left: 0 !important;
}
.u-ml-8{
  margin-left: 8px !important;
}
.u-ml-16{
  margin-left: 16px !important;
}
.u-ml-24{
  margin-left: 24px !important;
}
.u-ml-32{
  margin-left: 32px !important;
}
.u-ml-40{
  margin-left: 40px !important;
}
.u-ml-48{
  margin-left: 48px !important;
}
.u-ml-56{
  margin-left: 56px !important;
}
.u-ml-64{
  margin-left: 64px !important;
}

/* misc
--------------------------------------------------------- */
.u-ws-nowrap{
  white-space: nowrap;
}
.u-mx-img{
  max-width: 100%;
}
.u-tx-inside{
  margin-left: 1em;
  text-indent: -1em;
}
.u-tx-inside1-5{
  margin-left: 1.25em;
  text-indent: -1.25em;
}

/* padding
--------------------------------------------------------- */
/* Top padding */
.u-pt-0{
  padding-top: 0 !important;
}
.u-pt-8{
  padding-top: 8px !important;
}
.u-pt-16{
  padding-top: 16px !important;
}
.u-pt-24{
  padding-top: 24px !important;
}
.u-pt-32{
  padding-top: 32px !important;
}
.u-pt-40{
  padding-top: 40px !important;
}
.u-pt-48{
  padding-top: 48px !important;
}
.u-pt-56{
  padding-top: 56px !important;
}
.u-pt-64{
  padding-top: 64px !important;
}

/* Right padding */
.u-pr-0{
  padding-right: 0 !important;
}
.u-pr-8{
  padding-right: 8px !important;
}
.u-pr-16{
  padding-right: 16px !important;
}
.u-pr-24{
  padding-right: 24px !important;
}
.u-pr-32{
  padding-right: 32px !important;
}
.u-pr-40{
  padding-right: 40px !important;
}
.u-pr-48{
  padding-right: 48px !important;
}
.u-pr-56{
  padding-right: 56px !important;
}
.u-pr-64{
  padding-right: 64px !important;
}

/* Bottom padding */
.u-pb-0{
  padding-bottom: 0 !important;
}
.u-pb-8{
  padding-bottom: 8px !important;
}
.u-pb-16{
  padding-bottom: 16px !important;
}
.u-pb-24{
  padding-bottom: 24px !important;
}
.u-pb-32{
  padding-bottom: 32px !important;
}
.u-pb-40{
  padding-bottom: 40px !important;
}
.u-pb-48{
  padding-bottom: 48px !important;
}
.u-pb-56{
  padding-bottom: 56px !important;
}
.u-pb-64{
  padding-bottom: 64px !important;
}

/* Left padding */
.u-pl-0{
  padding-left: 0 !important;
}
.u-pl-8{
  padding-left: 8px !important;
}
.u-pl-16{
  padding-left: 16px !important;
}
.u-pl-24{
  padding-left: 24px !important;
}
.u-pl-32{
  padding-left: 32px !important;
}
.u-pl-40{
  padding-left: 40px !important;
}
.u-pl-48{
  padding-left: 48px !important;
}
.u-pl-56{
  padding-left: 56px !important;
}
.u-pl-64{
  padding-left: 64px !important;
}

/* position
--------------------------------------------------------- */
.u-pos-a{
  position: absolute !important;
}
.u-pos-r{
  position: relative !important;
}

/* text-align
--------------------------------------------------------- */
.u-ta-l{
  text-align: left !important;
}
.u-ta-c{
  text-align: center !important;
}
.u-ta-r{
  text-align: right !important;
}

/* text-decoration
--------------------------------------------------------- */
.u-fw-n{
  font-weight: normal !important;
}
.u-fw-b{
  font-weight: 500 !important;
}
.u-fw-700{
  font-weight: 700 !important;
}
.u-td-u{
  text-decoration: underline !important;
}

/* font-color
--------------------------------------------------------- */
.u-fc-blue {
  color: #1A466A !important;
}
.u-fc-orange {
  color: #C92706 !important;
}
.u-fc-green {
  color: #2696A5 !important;
}
.u-fc-red {
  color: #D41052 !important;
}
.u-fc-purple {
  color: #6A22A8 !important;
}

/* text-truncate
--------------------------------------------------------- */
.u-tt{
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-wrap: normal;
  /* for IE 8/9 */
}

/* width
--------------------------------------------------------- */
.u-w-auto{
  width: auto !important;
}
.u-maw-full{
  max-width: 100% !important;
}
.u-maw-half{
  max-width: 50% !important;
}

/* アニメーション */
.sa {
  opacity: 0;
  transition: all 1s ease;
}
.sa.show {
  opacity: 1;
  transform: none;
}
.sa--lr {
  transform: translate(-50px, 0);
}
.sa--rl {
  transform: translate(50px, 0);
}
.sa--up {
  transform: translate(0, 50px);
}
.sa--down {
  transform: translate(0, -50px);
}
.sa--scaleUp {
  transform: scale(.9);
}
.sa--scaleDown {
  transform: scale(1.5);
}
.sa--rotateL {
  transform: rotate(180deg);
}
.sa--rotateR {
  transform: rotate(-180deg);
}
.u-bg-gray {
  background-color: #eaeaea;
}
.u-roboto {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
}

:root {
  --color-green: #258193;
  --color-blue: #3079B5;
  --color-blue2: #26629D;

  --fz-10: .625rem;
  --fz-11: .6875rem;
  --fz-12: .75rem;
  --fz-13: .8125rem;
  --fz-14: .875rem;
  --fz-15: .9375rem;
  --fz-16: 1rem;
  --fz-17: 1.0625rem;
  --fz-18: 1.125rem;
  --fz-19: 1.1875rem;
  --fz-20: 1.25rem;
  --fz-21: 1.3125rem;
  --fz-22: 1.375rem;
  --fz-23: 1.4375rem;
  --fz-24: 1.5rem;
  --fz-25: 1.5625rem;
  --fz-26: 1.625rem;
  --fz-27: 1.6875rem;
  --fz-28: 1.75rem;
  --fz-29: 1.8125rem;
  --fz-30: 1.875rem;
  --fz-31: 1.9375rem;
  --fz-32: 2rem;
  --fz-33: 2.0625rem;
  --fz-34: 2.125rem;
  --fz-35: 2.1875rem;
  --fz-36: 2.25rem;
  --fz-37: 2.3125rem;
  --fz-38: 2.375rem;
  --fz-39: 2.4375rem;
  --fz-40: 2.5rem;
  --fz-41: 2.5625rem;
  --fz-42: 2.625rem;
  --fz-43: 2.6825rem;
  --fz-44: 2.75rem;

  --fw-normal: normal;
  --fw-bold: 600;
}