@charset "UTF-8";
/*--------------------------------------------------
  reset
--------------------------------------------------*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  font-weight:normal;/* Yutaka added */
  vertical-align: baseline;
}
body {
  line-height:1;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
/* Nobu added */
table, tr, th, td, caption {
  vertical-align: middle;
  text-align:left;
}
img {
  vertical-align: top;
  font-size:0;
  line-height: 0;
  max-width: 100%;
  margin: auto;
}
textarea{
  vertical-align: top;
}
/*--------------------------------------------------
  body
--------------------------------------------------*/
html {
  font-size: 62.5%;
}
body {
  color: #333;
  font-size: 14px;
  font-family: 'Noto Sans JP', sans-serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  letter-spacing: 0.05em;
  line-height: 1.9;
}
a {
  text-decoration: none;
  color: #333;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
p a {
  color: #e2b14a;
}
a:hover {
  opacity: 0.7;
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=80)";
}

body, html {
  /* important */
  height: 100%;
}

.pc-only {
  display: block !important;
}
span.pc-only {
  display: inline-block !important;
}
.sp-only {
  display: none !important;
}


.cf:after {
  content: "";
  clear: both;
  display: block;
}

.txt {
  line-height: 1.8em;
}
.td-under:hover {
  text-decoration: underline
}

@media screen and (max-width: 768px){
/*--------------------------------------------------
  body
--------------------------------------------------*/
  body {
        color: #333;
        font-size : 14px;
        font-family: 'Noto Sans JP', sans-serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
        letter-spacing: 0.06em;
  }
.pc-only {
  display: none !important;
}
.sp-only {
  display: block !important;
}


.txt {
        line-height: 1.5em;
  }
}



/*--------------------------------------------------
  font
--------------------------------------------------*/
.f-eng {
  font-family: 'Roboto', sans-serif;
}

.f-bold {
  font-weight: bold;
}

/*--------------------------------------------------
  color
--------------------------------------------------*/
.color01 {
  color: #e2b14a;
}

.color02 {
  color: #f76e15;
}
.color03 {
  color: #3182d3;
}
.color04 {
  color: #1358ae;
}
.color05 {
  color: #fff224;
}
.color06 {
  color: #fb761e;
}

.color07 {
  color: #b80101;
}
.color08 {
  color: #f4400f;
}
.color09 {
  color: #666;
}

.color10 {
  color: #f3400e;
  font-weight: bold;
}


.hide {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}


/*--------------------------------------------------
  background
--------------------------------------------------*/
/*--------------------------------------------------
  ofi
--------------------------------------------------*/
.ofi-cover {
  object-fit: cover;
  font-family: 'object-fit: cover';
}
.ofi-cover-top {
  object-fit: cover;
  object-position: 50% 0%;
  font-family: 'object-fit: cover; object-position: 50% 0%;';
}
.ofi-cover-bottom {
  object-fit: cover;
  object-position: 50% 100%;
  font-family: 'object-fit: cover; object-position: 50% 100%;';
}
.ofi-cover-right {
  object-fit: cover;
  object-position: 100% 60%;
  font-family: 'object-fit: cover; object-position: 100% 60%;';
}

.ofi-contain {
  object-fit: contain;
  font-family: 'object-fit: contain';
}
