@charset "UTF-8";

/* HTML要素に font-size: 62.5%; を指定することで 1rem = 10px になります。
   未設定の場合は、以下の1行をHTMLか共通CSSの冒頭に追加してください。
   html { font-size: 62.5%; } 
*/

/* *********************-********************* */
/* =1: base element */
/* *********************-********************* */
body {
  background: #FFFFFF url(/assets/img/static/common/bg_body.gif) repeat-x left top;
  color: #000;
  line-height: 1;
}

h1, h2, h3, h4, h5, h6, div, p, pre, ul, ol, dl, dt, dd, address, form, blockquote {
  line-height: 1.6;
}

/* =link setting */
/* a:link, a:visited {
  color: #778899;
  text-decoration: underline;
} */
/* a:hover, a:active {
  color: #1e90ff;
  text-decoration: none;
} */

/* *********************-********************* */
/* =2: layout */
/* *********************-********************* */
#wrapper {
  width: 96.0rem;
  margin: 0 auto;
  background-color: #FFFFFF;
}

#header, #content, #nav, #footer {
  width: 96.0rem;
  background: #FFFFFF;
}

#header { position: relative; }

#main {
  float: left;
  width: 75.0rem;
  margin-inline: auto;
}

#sub {
  float: right;
  width: 19.0rem;
}

#footer {
  background: #FFFFFF url(/assets/img/static/static/_common/bg_nav_b.gif) repeat-x;
}

/* *********************-********************* */
/* =3: header */
/* *********************-********************* */
p#tagline {
  padding: 2.0rem 0 0 0.5rem;
  font-size: 0.9rem;
}

#assist-nav {
  position: absolute;
  top: 5.0rem;
  right: 0.5rem;
}

#assist-nav ul li {
  display: inline;
  padding-right: 0.5rem;
}

#assist-nav ul li img { vertical-align: middle; }

p#logo-s {
  position: absolute;
  top: 1.8rem;
  right: 1.0rem;
}

/* *********************-********************* */
/* =4: nav */
/* *********************-********************* */
#nav {
  clear: both;
  padding-top: 0.8rem;
  padding-bottom: 0.5rem;
}

#nav ul li {
  float: left;
  width: auto;
}

/* *********************-********************* */
/* =5: content */
/* *********************-********************* */
ol#path {
  clear: both;
  padding: 1.0rem 1.0rem 1.5rem 1.0rem;
  font-size: 0.9rem;
}

ol#path li {
  display: inline;
  list-style-type: none;
  padding-left: 1.5rem;
  background: #fff url(/assets/img/static/staticpage/common/arrow_1.gif) no-repeat 0.4em 50%;
}

ol#path li#firstlink {
  padding-left: 0;
  background-image: none;
}

/* *********************-********************* */
/* =6: main */
/* *********************-********************* */
#main p { margin: 1.2rem 0; }

#main h1 {
  margin-bottom: 1.5rem;
  padding: 2.5rem 2.0rem 2.0rem 2.0rem;
  background: #F2F2F2;
  color: #4A0607;
  font-size: 2.5rem; /* 160%相当 */
  line-height: 1.0;
}

#main h2 {
  clear: both;
  margin: 2.0rem 0 1.0rem;
  padding-bottom: 0.3rem;
  padding-left: 2.0rem;
  border-bottom: 0.3rem solid #1058A6;
  background: #FFFFFF url(/assets/img/static/common/dot_1.gif) no-repeat 2px 0.3em;
  color: #330000;
  font-size: 1.8rem; /* 120%相当 */
}

#main h3, #main h4 {
  clear: both;
  padding: 0.5rem 0.5rem 0.5rem 2.0rem;
  color: #330000;
}

#main h3 { background: #f5f5f5 url(/assets/img/static/common/dot_3.gif) no-repeat 5px 50%; }
#main h4 {
  border-bottom: 0.1rem solid #CCCCCC;
  background: #FFFFFF url(/assets/img/static/common/dot_3.gif) no-repeat 5px 50%;
}

.set-first, .set-second { float: left; width: 36.5rem; }
.set-second { float: right; }
.set-txt, .set-txt2 { float: left; width: 52.0rem; }
.set-txt_b { float: left; width: 75.0rem; margin-bottom: 2.0rem; }
.set-fig { float: right; width: 20.0rem; }
.set-txt1 { float: right; width: 41.0rem; }
.set-fig1 { float: left; width: 20.0rem; }

#main .set-fig p, #main .set-fig1 p, #main p.fig {
  color: #666666;
  font-size: 0.9rem;
}

#main .set-fig p img, #main .set-fig1 p img {
  margin-bottom: 0.5rem;
  width: 20.0rem;
}

p#pagetop {
  clear: both;
  width: 96.0rem;
  padding-top: 3.0rem;
  text-align: right;
}

/* list */
#main ul li {
  padding: 0 0 0.3rem 2.0rem;
  background: url(/assets/img/static/common/dot_2.gif) no-repeat 5px 0.5em;
  color: #4A0607;
}
#main ol { margin-left: 3.0rem; }

/* *********************-********************* */
/* =7: submenu */
/* *********************-********************* */
.sub-menu {
  width: 19.0rem;
  margin-bottom: 1.0rem;
  padding-bottom: 1.0rem;
  background: #F2F2F2 url(../img/common/bg_sub.gif) no-repeat left bottom;
}

.sub-menu ul li {
  padding: 0 0.9rem 0.2rem 2.6rem;
  background: #F2F2F2 url(../img/common/arrow_2.gif) no-repeat 15px 0.5em;
}

#sub-migusa {
  margin-bottom: 1.0rem;
  padding: 1.0rem;
  border-top: 0.4rem solid #dcdcdc;
  border-bottom: 0.4rem solid #dcdcdc;
  background: #FFFFFF url(../img/common/bg_sub-migusa.gif) repeat-y left top;
}

#sub-mark {
  width: 14.0rem;
  margin-top: 3.0rem;
  margin-left: 3.0rem;
  font-size: 0.9rem;
}

/* *********************-********************* */
/* =8: footer */
/* *********************-********************* */
#footer ul { padding-top: 1.5rem; }
#footer ul li { float: left; padding-right: 0.5rem; }
address { padding-bottom: 2.0rem; font-style: normal; text-align: right; }

/* *********************-********************* */
/* =9: table */
/* *********************-********************* */
#main table.basic {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  border-top: 0.1rem solid #CCCCCC;
  border-bottom: 0.1rem solid #CCCCCC;
  border-collapse: collapse;
}

#main table.basic th, #main table.basic td {
  padding: 0.5rem;
  border: 0.1rem solid #CCCCCC;
}

/* *********************-********************* */
/* clearfix */
/* *********************-********************* */
#content::after, #nav::after, .section-lv2::after, .section-lv3::after, .set::after {
  content: "";
  display: block;
  clear: both;
}

/* *********************-********************* */
/* nav-btn */
/* *********************-********************* */
.nav-btn {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  height: 3.5rem;
  text-decoration: none;
}

.nav-btn li {
  line-height: 3.5rem;
  text-align: center;
}

.nav-btn a {
  display: block;
  font-size: 1.3rem;
  color: #000;
  text-decoration: none;
}

.campaign-btn { margin-top: -3.0rem; }
.campaign-btn img { width: 28.0rem; }

/* *********************-********************* */
/* kakomi */
/* *********************-********************* */
.kakomi-contents { max-width: 75.0rem; }
.kakomi-grid {
  display: grid;
  grid-template-columns: 1fr 35.0rem;
  column-gap: 3.0rem;
}

.kakomi-grid-cp {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 3.0rem;
}

.kakomi .item-name {
  margin-bottom: 1.0rem !important;
  padding-bottom: 0.5rem;
  border-bottom: 0.3rem solid #E5DCCC;
  font-size: 2.2rem;
  font-weight: bold;
}

.kakomi ul li {
  padding: 0 1.0rem 0.3rem 1.5rem;
  background: #FFFFFF url(/assets/img/static/common/dot_2.gif) no-repeat 5px 0.5em;
  font-size: 0.9rem;
}

.kakomi .photo {
  display: block;
  width: 20.0rem;
  height: 20.0rem;
  border: 0.5rem solid #F3F3E2;
  margin-bottom: 1.0rem;
}

.kakomi-alert h3 {
  padding: 0.6rem 1.0rem;
  font-size: 2.0rem;
  text-align: center;
  background: #BC0003 !important;
  color: #fff !important;
}

/* オプション */
.flex-col3_op, .op-col3 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-gap: 2.0rem;
  margin: 1.0rem 0 0;
  width: 100%;
  max-width: 75.0rem;
}

/* PC/SP 切り替え表示 */
.pc { display: block !important; }
.sp { display: none !important; }

/* *********************-********************* */
/* Responsive Settings (Breakpoint: 767px) */
/* *********************-********************* */
@media screen and (max-width: 767px) {
  #wrapper, #header, #content, #nav, #footer, #main, #sub, p#pagetop {
    width: 100% !important;
    float: none !important;
    margin-inline: 2.0rem;
  }

  .kakomi-grid, .kakomi-grid-cp {
    grid-template-columns: 1fr !important;
    row-gap: 2.0rem;
  }

  .flex-col3_op, .op-col3 {
    grid-template-columns: 1fr 1fr !important;
    grid-gap: 2.0rem;
  }

  .flex-col3_op .br-sp, .op-col3 .br-sp {
    display: none;
  }

  /* PC/SP 切り替え表示 */
  .pc { display: none !important; }
  .sp { 
    display: block !important;
    margin-left: auto;
    margin-right: auto;
  }
  
  /* レイアウトのリセット */
  .set-first, .set-second, .set-txt, .set-txt2, .set-txt_b, .set-fig, .set-txt1, .set-fig1 {
    width: 100% !important;
    float: none !important;
  }
}