/* ---------------------------------------- */
/* ---------------------------------------- */
/* ---------------------------------------- */
#main .intro-image {
  background-position: center center;
  background-size: cover; }
  @media screen and (max-width: 640px) {
    #main .intro-image {
      /* sp */
      height: 220px; } }
  @media screen and (min-width: 641px) and (max-width: 800px) {
    #main .intro-image {
      /* tablet */
      height: 420px; } }
  @media screen and (min-width: 801px) and (max-width: 1023px) {
    #main .intro-image {
      /* tablet */
      height: 500px; } }
  @media screen and (min-width: 1024px) {
    #main .intro-image {
      /* pc */
      background-position: center 0;
      height: 600px; } }
  @media screen and (min-width: 1024px) {
    #main .intro-image {
      /* pc */
      height: 640px; } }
#main section {
  padding-top: 80px;
  margin-bottom: 0; }
@media screen and (max-width: 640px) {
  #main {
    /* sp */ }
    #main section {
      padding-top: 30px;
      margin-bottom: 0; } }
#main section.line-top {
  padding-top: 80px;
  background: url(/assets/images/common/line_dot.png) repeat-x left top; }
  @media screen and (max-width: 640px) {
    #main section.line-top {
      /* sp */
      padding-top: 40px; } }
#main p {
  margin-bottom: 40px; }
  @media screen and (max-width: 640px) {
    #main p {
      /* sp */
      margin-bottom: 20px; } }
@media screen and (max-width: 640px) {
  #main {
    /* sp */ }
    #main .center p {
      text-align: left; }
      #main .center p br {
        display: none; } }
#main .box5 {
  margin-bottom: 40px; }
  @media screen and (max-width: 640px) {
    #main .box5 {
      /* sp */
      margin-bottom: 20px; } }

/* ---------------------------------------- */
.topic {
  margin: 40px 0 80px 0; }
  @media screen and (max-width: 640px) {
    .topic {
      /* sp */
      margin: 40px 0 40px 0; } }
  .topic .bg {
    position: relative;
    background: url(/assets/images/common/bg_dot_02.gif);
    padding: 0 0 40px 0; }
    @media screen and (max-width: 640px) {
      .topic .bg {
        /* sp */
        padding: 0 0 20px 0; } }
    .topic .bg .tit {
      position: relative;
      top: -40px;
      width: 80px;
      height: 80px;
      margin: 0 auto;
      background: url(/assets/images/dept/feature/common/img_topic.png);
      text-indent: -999em; }
      @media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
        .topic .bg .tit {
          background: url(/assets/images/dept/feature/common/img_topic@2x.png);
          background-size: 80px 80px; } }

/* ---------------------------------------- */
.cnavi {
  background: url(/assets/images/common/bg_dot_06.gif);
  padding: 40px 0 0 0;
  margin-bottom: 80px; }
  @media screen and (max-width: 640px) {
    .cnavi {
      /* sp */
      padding: 20px 0 0 0;
      margin-bottom: 20px; } }
  .cnavi ul {
    margin: 0;
    padding-bottom: 40px; }
    @media screen and (max-width: 640px) {
      .cnavi ul {
        /* sp */
        padding-bottom: 20px; } }
    .cnavi ul li {
      margin-bottom: 20px; }
      @media screen and (max-width: 640px) {
        .cnavi ul li {
          /* sp */
          margin-bottom: 10px; } }
      .cnavi ul li:last-child {
        margin: 0;
        padding: 0; }
      .cnavi ul li figure {
        margin: 0;
        height: auto;
        margin: 0 auto; }
        @media screen and (min-width: 641px) and (max-width: 1023px) {
          .cnavi ul li figure {
            /* tablet */
            max-width: 75%; } }
        @media screen and (min-width: 1024px) {
          .cnavi ul li figure {
            /* pc */
            max-width: 640px; } }
      .cnavi ul li.current img {
        box-sizing: border-box;
        border: solid 1px #69cac6;
        border-radius: 4px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px; }

/* ---------------------------------------- */
