@charset "utf-8";

@media screen and (min-width: 1081px) {
  /* PC */
  .w1000 {
    width: 1000px;
    margin: 0 auto;
  }

  #header {
    height: inherit;
  }

  #header .menu {
    background-color: #031832;
  }

  #header .menu .snav {
    margin-right: 30px;
  }

  #header .menu .snav .search .search_container input[type="text"] {
    color: #031832;
    background: #fff;
  }

  #header
    .menu
    .snav
    .search
    .search_container
    input[type="text"]:focus
    + input[type="submit"] {
    background-image: url(/wp-content/themes/d-quest/images/btn_search_indigo.svg);
  }

  .fadeIn {
    /* opacity: 0; */
    transition: 0.5s;
  }

  .isAnimate {
    opacity: 1;
  }

  #main #lavel2 > .h2Wrap h2,
  #main #lavel3 > .h2Wrap h2 {
    width: 100%;
    background-color: #fff;
    text-align: center;
    font-size: 2.2rem;
    font-weight: 600;
    padding: 0;
    margin-bottom: 0;
  }

  #main #lavel2 > .h2Wrap,
  #main #lavel3 > .h2Wrap {
    width: 100%;
    height: 180px;
    display: table;
    text-align: center;
  }

  #main #lavel2 > .h2Wrap h2,
  #main #lavel3 > .h2Wrap h2 {
    line-height: 1;
    padding: 0;
    margin: 0;
    display: table-cell;
    vertical-align: middle;
  }

  #main #lavel4 > .h2Wrap h2 {
    background-color: #f3f3f3;
    margin-bottom: 70px;
    padding: 47px 0 53px;
    text-align: center;
    font-size: 2.2rem;
    font-weight: 600;
  }

  #main #lavel2 > .h2Wrap h2 span.subtitle1,
  #main #lavel3 > .h2Wrap h2 span.subtitle1,
  #main #lavel4 > .h2Wrap h2 span.subtitle1 {
    font-size: 1.4rem;
  }

  #main #lavel3 > .h2Wrap h2 span.subtitle1 {
    line-height: 3.4;
  }

  #main #lavel3 > .h2Wrap h2 span.subtitle2 {
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 2.2;
  }

  #main #lavel4 > .h2Wrap h2 span.subtitle1 {
    line-height: 3.4;
  }

  #main #lavel4 > .h2Wrap h2 span.subtitle2 {
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 2.2;
  }

  #main h2.type2 {
    background-color: #f3f3f3;
    padding: 73px 0;
    text-align: center;
    font-size: 2.2rem;
    font-weight: 600;
  }

  #main #news .contents-inner {
    width: 925px;
    margin: 0 auto;
  }

  .wp-pagenavi {
    margin: 68px 0;
    text-align: center;
  }

  .wp-pagenavi .pages {
    display: none;
  }

  .wp-pagenavi .page {
  }

  .wp-pagenavi .page,
  .wp-pagenavi .current {
    text-align: center;
    margin: 0px 6px;
    padding: 10px 18px;
    font-size: 1.5rem;
    /* width: 40px; */
    /* height: 40px; */
    /* display: block; */
  }

  .wp-pagenavi .page.larger {
  }

  .wp-pagenavi .current {
    background-color: #f3f3f3;
    font-weight: 600;
  }

  .wp-pagenavi .nextpostslink,
  .wp-pagenavi .previouspostslink {
    text-indent: -9999px;
    position: relative;
    display: inline-block;
    width: 10px;
  }

  .wp-pagenavi .nextpostslink {
    margin-right: 20px;
  }

  .wp-pagenavi .previouspostslink {
    margin-left: 20px;
  }

  .wp-pagenavi .nextpostslink:after,
  .wp-pagenavi .previouspostslink:after {
    content: "";
    position: absolute;
    vertical-align: middle;
    top: 8px;
    width: 7px;
    height: 7px;
    border-top: 2px solid #031832;
    border-right: 2px solid #031832;
    z-index: 2;
  }

  .wp-pagenavi .nextpostslink:after {
    right: 3px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }

  .wp-pagenavi .previouspostslink:after {
    left: 3px;
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
  }

  #main #news.bg-gray {
    padding-bottom: 60px;
    margin-bottom: 60px;
  }

  #main #news .contents-inner #list-category {
    margin-top: 5px;
    margin-bottom: 56px;
    /* margin-left: 9px; */
    text-align: center;
  }

  #main #news .contents-inner #list-category li {
    text-align: center;
    display: block;
    /* display: inline-block; */
    margin-right: 0;
    /* float: left; */
  }

  #main #news .contents-inner #list-category li ul li {
    margin-right: 5px;
    margin-bottom: 5px;
    float: left;
  }

  #main #news .contents-inner #list-category li:first-child {
    margin-left: 0;
  }

  #main #news .contents-inner #list-category li ul li:last-child {
    margin-right: 0;
  }

  #main #news .contents-inner #list-category li a {
    display: block;
    color: #cdd1d6;
    border: solid 2px #cdd1d6;
    padding: 8px 15px;
    float: left;
  }

  #main #news .contents-inner #list-category li.current-cat > a {
    color: #000000;
    border: solid 2px #000000;
  }

  #main #news .contents-inner #list-category li.current-cat > a:hover,
  #main #news .contents-inner #list-category li a:hover {
    color: #000000;
    border: solid 2px #000000;
    opacity: 1;
  }

  #main #news .contents-inner #list-news {
    margin: 0 20px 0px;
  }

  #main #news .contents-inner #list-news li {
    /* border-top: solid 1px #dddddd; */
    border-bottom: solid 1px #dddddd;
    padding: 25px 0 25px;
  }

  #main #news .contents-inner #list-news li:first-child {
    /* border: none; */
    padding-top: 0;
  }

  #main #news .contents-inner .data {
    font-size: 1.5rem;
    margin-right: 27px;
    position: relative;
    top: 1px;
    letter-spacing: 0.8px;
    display: block;
    float: left;
  }

  #main #news .contents-inner .cat {
  }

  #main #news .contents-inner .cat a {
    display: inline-block;
    font-size: 1.3rem;
    border: solid 1px #000;
    padding: 3px 11px;
    margin-bottom: 5px;
    display: block;
    float: left;
    margin: 0 5px 5px 0;
  }

  #main #news .contents-inner .title {
    padding-top: 20px;
    clear: both;
  }

  #main #news .contents-inner .title a {
    font-size: 1.5rem;
  }

  #main #news .contents-inner .articl_news {
    margin-top: 0px;
    margin-bottom: 100px;
  }

  #main #news .contents-inner .articl_news .title {
    font-size: 2.2rem;
    padding-bottom: 11px;
    border-bottom: solid 1px #000;
    line-height: 1.4;
    margin-bottom: 40px;
  }

  #main #news .contents-inner .articl_news .text {
    line-height: 1.8;
    margin-top: 19px;
    margin-bottom: 40px;
  }

  #main #news .contents-inner .articl_news .text p {
    margin-bottom: 25px;
  }

  #main #news .contents-inner .articl_news .text p:last-of-type {
    margin-bottom: 0;
  }

  #main #news .contents-inner .articl_news .wp-block-image {
    margin: 0 0 60px;
  }

  #main #news .contents-inner .articl_news .text a {
    text-decoration: underline;
  }

  #main #news .contents-inner .articl_news ul,
  #main #news .contents-inner .articl_news ol {
    margin-bottom: 40px;
  }

  #main #topics {
    line-height: 1.9;
  }

  #main #topics a {
    text-decoration: underline;
  }

  #main #topics .contents-inner ul,
  #main #topics .contents-inner ol {
    margin-top: 19px;
    margin-bottom: 19px;
  }

  #main #news .contents-inner .articl_news ul li,
  #main #topics .contents-inner .single-topics ul li {
    list-style-type: disc;
    list-style-position: outside;
    margin-left: 1.5em;
    margin-bottom: 0.5em;
    line-height: 1.5;
  }

  #main #news .contents-inner .articl_news ol li,
  #main #topics .contents-inner .single-topics ol li {
    list-style-type: decimal;
    list-style-position: inside;
  }

  #main #news .contents-inner .articl_news .link_back {
    text-align: center;
    margin-top: 75px;
  }

  #main #news .contents-inner .articl_news .link_back a {
    display: inline-block;
    border: solid 2px #092547;
    text-align: center;
    padding: 10px 40px;
  }

  #main #news .contents-inner .articl_news .link_back a strong {
    font-weight: 600;
  }

  #main #news .contents-inner .article h4,
  #main #topics .contents-inner .article h4 {
    border-bottom: none;
    padding-bottom: 0;
    margin-top: 60px;
    margin-bottom: 20px;
  }

  #main #news .contents-inner .article h4.posi-l,
  #main #news .contents-inner .article h5.posi-l,
  #main #topics .contents-inner .article h4.posi-l,
  #main #topics .contents-inner .article h5.posi-l {
    text-align: left;
  }

  #main #news .contents-inner .article h4.posi-r,
  #main #news .contents-inner .article h5.posi-r,
  #main #topics .contents-inner .article h4.posi-r,
  #main #topics .contents-inner .article h5.posi-r {
    text-align: right;
  }

  #main #news .contents-inner .article h4.posi-c,
  #main #news .contents-inner .article h5.posi-c,
  #main #topics .contents-inner .article h4.posi-c,
  #main #topics .contents-inner .article h5.posi-c {
    text-align: center;
  }

  #main #news .contents-inner .article h5 span,
  #main #topics .contents-inner .article h5 span {
    display: inline-block;
  }
  #main #news .contents-inner .article p,
  #main #topics .contents-inner .article p {
    margin-bottom: 20px;
  }

  #main #news .contents-inner .article strong,
  #main #topics .contents-inner .article strong {
    font-weight: bold;
  }
  #main #news .contents-inner .article em,
  #main #topics .contents-inner .article em {
    font-style: italic;
  }
  #main #news .contents-inner .article figcaption,
  #main #topics .contents-inner .article figcaption {
    font-size: 1.3rem;
  }

  #main #topics-multicolumn h3,
  #main #news h3 {
    text-align: center;
    font-size: 2.4rem;
    line-height: 1;
    font-weight: 600;
    margin-bottom: 0;
    color: #000;
    font-family: "Lato", sans-serif;
  }

  #main #news .last {
    display: none;
  }

  #main #topics-multicolumn h3 {
    margin-bottom: 41px;
  }

  #main #lavel2 .mv,
  #main #lavel3 .mv {
    width: 100%;
    height: 500px;
    background-size: cover;
    background-position: center center;
    position: relative;
    /* padding-top: 447px; */
    margin-bottom: 80px;
  }

  #main.compliance #lavel2 .mv,
  #main.compliance #lavel3 .mv {
    margin-bottom: 113px;
  }

  #main #lavel2.no-cnav .mv,
  #main #lavel3.no-cnav .mv {
    margin-bottom: 80px;
  }

  #main .mv.about-gdpr {
    background-image: url(/wp-content/themes/d-quest/images/mv_about-gdpr.jpg);
  }
  #main .mv.hotline-service {
    background-image: url(/wp-content/themes/d-quest/images/mv_hotline-service.jpg);
  }
  #main .mv.about-us {
    background-image: url(/wp-content/themes/d-quest/images/mv_about-us.jpg);
  }
  #main .mv.products-specific-services {
    background-image: url(/wp-content/themes/d-quest/images/mv_products-specific-services.jpg);
  }

  #main .cnav,
  #main .mv .cnav {
    background-color: #f3f3f3;
    position: absolute;
    bottom: 0;
    left: 50%;
  }

  #main .cnav {
    display: none;
  }

  #main .mv .cnav {
    background-color: #f3f3f3;
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
  }

  #main .mv.whistleblowing_b .cnav {
    width: 1000px;
    margin-bottom: -54px;
    margin-left: -500px;
  }

  #main .mv.compliance .cnav {
    width: 1000px;
    height: 70px;
    margin-bottom: -35px;
    margin-left: -500px;
  }

  #main .mv.aboutus .cnav {
    width: 1000px;
    height: 70px;
    margin-bottom: -35px;
    margin-left: -500px;
  }

  #main .mv .cnav ul {
    text-align: center;
    margin: 0 35px;
    padding: 25px 0 0;
    height: 106px;
    /* width: 880px; */
  }

  #main .mv .cnav li {
    display: inline-block;
    position: relative;
    padding-right: 18px;
    margin-right: 21px;
    margin-bottom: 10px;
    font-size: 1.4rem;
  }

  #main .mv .cnav li:last-child {
    margin-right: 0;
  }

  #main .mv .cnav li:after {
    content: "";
    position: absolute;
    vertical-align: middle;
    width: 6px;
    height: 6px;
    border-top: 1px solid #031832;
    border-right: 1px solid #031832;
    z-index: 2;
    top: 9px;
    right: 3px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    margin-left: -5px;
    margin-top: -4px;
  }

  #main .mv .cnav li.active a {
    color: #999999;
  }

  #main .mv .cnav li.active:after {
    border-top: 1px solid #999999;
    border-right: 1px solid #999999;
  }

  #main .mv .cnav li.active a:hover {
    opacity: 1;
  }

  #main #lavel2 .mv .cnav li.active a {
    color: #031832;
  }

  #main #lavel2 .mv .cnav li.active:after {
    border-top: 1px solid #031832;
    border-right: 1px solid #031832;
  }

  #main #lavel2 .mv_under .mv {
    margin-bottom: 10px;
  }

  #main #lavel2 .mv_under {
    margin-bottom: 60px;
  }

  #main #lavel2 .mv_under p {
    text-align: right;
    padding-right: 20px;
    font-size: 1.2rem;
    position: relative;
    top: -40px;
    color: #fff;
  }

  #main #lavel2 .contents {
    clear: both;
  }

  #main .contents .contents-inner {
    width: 1000px;
    margin: 0 auto;
  }

  #main .head h3,
  #main .head h4 {
    line-height: 1.4;
    text-align: center;
    font-weight: bold;
  }

  #main .head h3 {
    margin-bottom: 40px;
    font-size: 3rem;
  }

  #main .head h4 {
    margin-bottom: 20px;
    line-height: 1.6;
  }

  #main #lavel2 h4,
  #main #lavel3 h4 {
    font-size: 2.2rem;
  }

  #main .head h3 span.line,
  #main .head h4 span.line {
    font-weight: bold;
    background: linear-gradient(transparent 92%, #aa2f2f 92%);
  }

  #main .head h3 span.size-s {
    font-size: 1.6rem;
    font-weight: 600;
  }

  #main .head h4 span.size-s {
    font-size: 1.6rem;
  }

  #main #lavel4 .head h3,
  #main #lavel4 .head h4,
  #main #lavel5 .head h3,
  #main #lavel5 .head h4 {
    font-size: 3rem;
    font-weight: bold;
    letter-spacing: 0.075em;
    line-height: 140%;
  }

  #main #lavel4 .head h3 span,
  #main #lavel4 .head h4 span,
  #main #lavel5 .head h3 span,
  #main #lavel5 .head h4 span {
    font-size: 1.6rem;
    font-weight: bold;
  }

  #main .head .text {
    line-height: 2;
    margin-bottom: 47px;
    padding: 0 68px;
  }

  #main .head .text.center {
    text-align: center;
    margin-top: -40px;
  }

  #main .head h4 + .link {
    text-align: center;
    margin-bottom: 37px;
  }

  #main .head .link a {
    font-weight: bold;
    position: relative;
    padding-right: 12px;
  }

  #main .head .link a:after {
    content: "";
    position: absolute;
    vertical-align: middle;
    width: 6px;
    height: 6px;
    border-top: 2px solid #031832;
    border-right: 2px solid #031832;
    top: 6px;
    right: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }

  #main span.num {
    color: #fff;
    font-size: 2.1rem;
    font-weight: 600;
    text-align: center;
    background-color: #031832;
    border-radius: 24px;
    margin-right: 20px;
    padding: 8px 16px 9px;
    position: relative;
    top: -1px;
  }

  #main .help {
    margin-top: 75px;
    padding-top: 75px;
    padding-bottom: 111px;
  }

  #main .title_02 + .help {
    margin-bottom: 92px;
    margin-top: 61px;
    padding-top: 0;
    padding-bottom: 0;
  }

  #main h5.type1 {
    text-align: center;
    font-size: 2.6rem;
    font-weight: 600;
    position: relative;
    padding-bottom: 15px;
    margin-bottom: 35px;
  }

  #main h5.type1:after {
    content: "";
    position: absolute;
    width: 40px;
    height: 3px;
    background-color: #031832;
    left: 50%;
    bottom: 0;
    margin-left: -20px;
  }

  #main h5.type1 + .bg-gray {
    margin-top: 60px;
  }

  .help .contents-inner {
    width: 1000px;
    margin: 0 auto;
  }

  #main .help .box {
    width: 310px;
    float: left;
    margin-left: 35px;
    overflow: hidden;
  }

  #main .help .box:first-of-type {
    margin-left: 0;
  }

  #main .help .box .img .photoInner {
    width: 200%;
    margin: 0 -50% 20px;
    text-align: center;
  }

  #main .help .box img {
    margin-top: 0;
    height: 207px;
    width: auto;
  }

  #main .help .box .title {
    font-weight: bold;
    margin-bottom: 10px;
  }

  #main .help .box .text {
    margin-bottom: 20px;
  }

  #main .help .box .img {
    margin-bottom: 20px;
    position: relative;
  }

  #main .help .box .img .tag {
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #031832;
    color: #fff;
    text-align: center;
    font-size: 1.4rem;
    font-weight: 600;
    padding: 5px 11px;
  }

  #main .help .link {
    text-align: center;
    clear: both;
    padding: 27px 0 0;
  }

  #main .help .link a {
    border: solid 2px #0a2445;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    padding: 13px 14px 12px;
  }

  #main .help .link a strong {
    font-weight: bold;
  }

  #main .service .box {
    width: 50%;
    float: left;
  }

  #main .service .box .img {
    display: block;
    height: 464px;
    background-size: cover;
    background-position: center center;
    padding-top: 194px;
  }

  #main .service .box:nth-child(1) .img {
    background-image: url(/wp-content/themes/d-quest/images/bg_whistleblowing_business_01.jpg);
  }

  #main .service .box:nth-child(2) .img {
    background-image: url(/wp-content/themes/d-quest/images/bg_whistleblowing_business_02.jpg);
  }

  #main .service .box .img .title {
    font-size: 2.1rem;
    text-align: center;
    margin-bottom: 38px;
    font-weight: 600;
  }

  #main .service .box .img .title span {
    font-size: 3.6rem;
    font-weight: 600;
  }

  #main .service .box:nth-child(1) .title {
    color: #fff;
  }

  #main .service .box:nth-child(2) .title {
    color: #031832;
  }

  #main .service .box .img .btn {
    font-size: 1.4rem;
    font-weight: 600;
    text-align: center;
    display: block;
    margin: 0 auto;
    width: 176px;
    padding: 10px;
    border-radius: 5px;
  }

  #main .service .box:nth-child(1) .img .btn {
    color: #031832;
    background-color: #fff;
  }

  #main .service .box:nth-child(2) .img .btn {
    color: #fff;
    background-color: #031832;
  }

  #main .service .box .text {
    font-size: 1.5rem;
    padding: 30px 55px;
  }

  #main .otherlink {
    width: 100%;
    max-width: 1500px;
    margin: 70px auto 100px;
  }

  #main .otherlink .boxWrap {
    clear: both;
  }

  #main .otherlink .box {
    float: left;
    max-width: 375px;
    width: 25%;
  }

  #main .otherlink .box .img {
    background-color: #f3f3f3;
  }

  #main .otherlink .box .img img {
    width: 100%;
  }

  #main .otherlink .box .link {
    padding-top: 24px;
    padding-left: 18px;
    padding-right: 50px;
    padding-bottom: 30px;
    position: relative;
    background-color: #fff;
  }

  #main .otherlink .box .link a {
    font-size: 1.8rem;
    font-weight: 600;
  }

  #main .otherlink .box .link:after {
    content: "";
    position: absolute;
    vertical-align: middle;
    width: 8px;
    height: 8px;
    border-top: 2px solid #031832;
    border-right: 2px solid #031832;
    z-index: 2;
    top: 39px;
    right: 35px;
    right: 9%;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: -5px;
    margin-top: -4px;
  }

  #main.compliance .case_study + .otherlink {
    margin-top: 90px;
  }

  #main .box h5 {
    border-top: solid 2px #031832;
    border-bottom: solid 2px #031832;
    margin-bottom: 35px;
    padding: 18px 10px 18px;
    font-weight: 600;
    font-size: 2.4rem;
    line-height: 1.2;
  }

  #main.whistleblowing_b h5 span.num {
    margin-right: 20px;
  }

  #main h5 div {
    /* overflow: auto; */
    margin-top: -30px;
    margin-left: 65px;
    font-weight: 600;
  }

  #main .cause .box {
    margin-bottom: 54px;
  }

  #main .cause .box:last-child {
    margin-bottom: 0;
  }

  #main .cause .box img {
    margin-top: 5px;
    width: 450px;
  }

  #main .cause .box.photo-l img {
    float: left;
    margin-right: 50px;
  }

  #main .cause .box.photo-r img {
    float: right;
    margin-left: 50px;
  }

  #main .cause .box .box-contents {
    overflow: auto;
  }

  #main .cause .box .box-contents .title {
    margin-bottom: 15px;
    font-size: 1.8rem;
    font-weight: 600;
  }

  #main .cause .box .box-contents .text {
    /* margin-bottom: 20px; */
    line-height: 2;
    word-wrap: break-word;
  }

  #main .cause .link {
    margin-top: 19px;
  }

  #main .cause .link.center {
    margin: 20px auto 37px;
    text-align: center;
  }

  #main .cause .link li {
    line-height: 1.9;
  }

  #main .cause .link a,
  #main .service .link a {
    font-weight: 600;
    position: relative;
    padding-right: 15px;
  }

  #main .cause .link a:after,
  #main .service .link a:after {
    content: "";
    position: absolute;
    vertical-align: middle;
    width: 6px;
    height: 6px;
    border-top: 2px solid #031832;
    border-right: 2px solid #031832;
    z-index: 2;
    top: 12px;
    right: 3px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: -5px;
    margin-top: -4px;
  }

  #main .cause .box .box-contents .attention {
    font-size: 1.2rem;
    margin-top: 20px;
  }

  #main .feature .contents-inner {
    margin: 0 auto;
    width: 880px;
  }

  #main .feature {
    margin: 36px auto 0;
    width: 880px;
  }

  #main .feature .box {
    border-top: solid 1px #dddddd;
    padding: 5px 0 20px 18px;
  }

  #main .feature .box:last-child {
    /*border-bottom: solid 1px #dddddd;*/
  }

  #main .feature .box h5 {
    font-size: 2.1rem;
    font-weight: 600;
    margin-bottom: 0px;
    border: none;
    padding: 18px 10px 21px;
  }

  #main .feature .box .text {
    margin: 0 0 0 75px;
    line-height: 2;
    word-wrap: break-word;
  }

  #main .img-area {
    margin-top: 60px;
  }

  #main .img-area .contents-inner {
    width: 880px;
    margin: 0 auto;
  }

  #main .cts-body .contents-inner {
    margin: 0 auto;
    width: 880px;
  }

  #main .cts-other .contents-inner {
    margin: 0 auto;
    width: 880px;
  }

  #main .img-area + h5 {
    margin-top: 70px;
  }

  #main .btn-contact {
    display: block;
    width: 228px;
    margin: 0 auto;
    background-color: #031832;
    text-align: center;
    color: #fff;
    padding: 10px 15px;
    font-weight: 600;
    font-size: 1.5rem;
    margin-bottom: 50px;
  }

  #main .img-area + .text {
    margin-top: 60px;
  }

  #main .img-area + .btn-contact {
    margin-top: 40px;
    margin-bottom: 70px;
  }

  #main .table-type1 {
    width: 740px;
    margin: 55px auto 80px;
  }

  #main .table-type1 table {
    width: 100%;
  }

  #main .table-type1 thead th {
    color: #fff;
    background-color: #031832;
  }

  #main .table-type1 tbody td {
    background-color: #f3f3f3;
  }

  #main .table-type1 thead th,
  #main .table-type1 tbody td {
    border-right: solid 5px #fff;
    text-align: center;
    padding: 16px 0;
    border-top: solid 1px #031832;
    vertical-align: middle;
  }

  #main .table-type1 thead th:nth-child(1) {
    width: 170px;
  }

  #main .table-type1 thead th:nth-child(2) {
    width: 290px;
  }

  #main .table-type1 tbody td:nth-child(2) {
    text-align: left;
    padding: 0 10px 0 50px;
  }

  #main .table-type1 tbody td:nth-child(2) span {
    display: block;
    padding-right: 50px;
    width: 100px;
    float: left;
  }

  #main .table-type4 {
    width: 880px;
    margin: 55px auto 80px;
  }

  #main .table-type4 table {
    width: 100%;
  }

  #main .table-type4 tbody th,
  #main .table-type4 tbody td {
  }

  #main .table-type4 tbody th {
    width: 200px;
    border-top: solid 1px #031832;
    text-align: left;
    padding: 20px;
    font-size: 1.8rem;
    font-weight: bold;
  }

  #main .table-type4 tbody td {
    background-color: #f3f3f3;
    border-right: solid 5px #fff;
    padding: 16px 0 16px 30px;
    border-top: solid 1px #031832;
    vertical-align: middle;
  }

  #main .table-type4 tbody th:last-of-type,
  #main .table-type4 tbody td:last-of-type {
    border-bottom: solid 1px #031832;
  }

  #main .contents-inner + .box-imgL {
    margin-top: 45px;
    margin-bottom: 90px;
  }

  #main .box-imgL {
    width: 880px;
    margin: 40px auto 90px;
  }

  #main .box-imgL img {
    float: left;
    margin-right: 50px;
    margin-top: 10px;
    width: 450px;
  }

  #main .box-imgL .text {
    overflow: auto;
    line-height: 2;
  }

  #main .service {
    /* width: 1000px; */
    margin: 0 auto 50px;
    margin-top: 75px;
    /* padding-top: 75px; */
    clear: both;
  }

  #main .service:first-child {
    padding-top: 80px;
  }

  #main .service:last-child {
    margin-bottom: 0;
    padding-bottom: 60px;
  }

  #main .service.img-l img {
    float: left;
    margin-right: 50px;
    width: calc(50% - 50px);
  }

  #main .service.img-r img {
    float: right;
    margin-left: 50px;
    width: calc(50% - 50px);
  }

  #main .service .cts {
    width: 500px;
    float: left;
  }

  #main .service.img-l .cts {
    float: left;
  }

  #main .service.img-r .cts {
    float: right;
  }

  #main .service .link.out {
    width: 100%;
  }

  #main .service .link.out ul {
    width: 500px;
  }
  #main.compliance .mediadb .contact strong + .link {
    margin-top: 20px;
  }

  #main .service.img-l .link {
  }

  #main .service.img-r .link {
  }

  #main .service.img-l .link.out ul {
    float: right;
    margin-left: 500px;
  }

  #main .service.img-r .link.out ul {
    width: 500px;
    text-align: left;
  }

  #main .service .cts .title {
    color: #031832;
    font-weight: 600;
    font-size: 2.4rem;
    border-top: solid 2px #031832;
    border-bottom: solid 2px #031832;
    margin-bottom: 25px;
    padding: 15px 0 15px 10px;
  }

  #main .service .cts .subtitle {
    font-weight: 600;
    font-size: 1.8rem;
    line-height: 138.88%;
    margin: 25px 0 12px;
  }

  #main .service .cts .text {
    line-height: 2;
    margin-bottom: 20px;
  }
  #main .service .cts .text strong {
    font-weight: bold;
  }

  #main .service .cts .text .link {
    margin-top: 15px;
  }

  #main .service .cts .text .attention {
    font-size: 1.2rem;
    margin-top: 20px;
    line-height: 1.6;
  }
  #main .service .cts .text .kaigai-box {
    clear: both;
    margin-top: 20px;
  }
  #main .service .cts .text .kaigai-box:first-child {
    margin-top: 0;
  }
  #main .service .cts .text .kaigai-box p {
    line-height: 1.75;
    margin-bottom: 20px;
  }
  #main .service .cts .text .kaigai-box ul {
    display: inline-block;
  }
  #main .service .cts .text .kaigai-box ul li {
    border: none;
    width: inherit;
    float: inherit;
    line-height: 1.75;
    margin: 0;
    padding: 0;
  }
  #main .service .cts .text .kaigai-box > ul > li {
    font-size: 1.6rem;
  }
  #main .service .cts .text .kaigai-box > ul > li span {
    float: left;
    padding: 0;
    margin: 0;
  }
  #main .service .cts .text .kaigai-box ul li > ul {
    margin-top: 5px;
    display: block;
  }
  #main .service .cts .text .kaigai-box ul li > ul > li {
    font-size: 1.2rem;
    line-height: 1.75;
  }
  #main .service .cts .text .kaigai-box strong {
    display: block;
  }

  #main.compliance-kaigai .anchor_area-type1 {
    margin-top: 70px;
  }

  #main.compliance .distinction {
    margin-top: 40px;
    margin-left: 20px;
    margin-bottom: 35px;
  }

  #main.compliance .distinction ul {
    /* display: table; */
  }

  #main.compliance .distinction li div {
    display: table-cell;
    height: 85px;
    vertical-align: middle;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: left;
  }

  #main.compliance .distinction li {
    float: left;
    /* display: table; */
    width: 420px;
    border-bottom: solid 1px #dddddd;
    overflow: auto;
    margin-right: 20px;
  }

  #main.compliance .distinction li span {
    float: left;
    padding: 6px 16px 6px;
    margin-top: 20px;
    margin-left: 10px;
  }

  #main.compliance .distinction li:nth-child(2n) {
    margin-right: 0;
  }

  #main.compliance .distinction li:nth-child(1),
  #main.compliance .distinction li:nth-child(2) {
    border-top: solid 1px #dddddd;
  }

  #main.compliance .distinction .nav-toggle li {
    border: none;
  }

  #main .title-check {
    width: 270px;
    padding: 10px 18px;
    text-align: center;
    margin: 80px auto 0;
    border: solid 2px #092343;
    font-weight: bold;
    display: block;
  }

  #main.compliance .servicemenu {
    width: 880px;
    background-color: #f3f3f3;
    text-align: center;
    padding: 50px 0;
  }

  #main.compliance .servicemenu img {
    text-align: center;
    margin-left: 130px;
  }

  #main.compliance-kaigai .img-area2 {
    width: 880px;
    background-color: #f3f3f3;
    text-align: center;
    padding: 50px 0;
  }
  #main.compliance-kaigai .img-area2 img {
    text-align: center;
    margin-left: 130px;
  }

  #main.compliance .mediadb {
    margin-top: 70px;
    margin-bottom: 70px;
  }

  #main.compliance .mediadb .contact strong {
    font-weight: 600;
  }

  #main.compliance .mediadb .contact .btn-contact {
    margin: 10px 0 0 0;
  }

  #main.compliance .mediadb .contact .btn-contact span {
    position: relative;
    padding-right: 16px;
  }

  #main.compliance .mediadb .contact .btn-contact span:after {
    content: "";
    position: absolute;
    width: 7px;
    height: 7px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    z-index: 2;
    top: 50%;
    right: 3px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -4px;
  }

  #main.compliance .administration {
  }

  #main.compliance .administration .bg-blue {
    padding: 0;
  }

  #main.compliance .administration .contents-inner {
    width: 1100px;
    margin: 0 auto;
    padding: 40px 0px 70px;
  }

  #main.compliance .administration .title {
    font-size: 2.6rem;
    font-weight: 600;
    text-align: center;
    margin-bottom: 30px;
    line-height: 1.8;
  }

  #main.compliance .administration .title span {
    font-size: 1.5rem;
  }

  #main.compliance .administration .circle {
    background-color: #438bca;
    color: #fff;
    width: 260px;
    text-align: center;
    border-radius: 30px;
    margin: 0 auto 30px;
    padding: 6px;
    font-weight: 600;
  }

  #main.compliance .administration li {
    float: left;
    width: 332px;
    text-align: center;
    margin-right: 52px;
    position: relative;
  }

  #main.compliance .administration li:last-child {
    margin-right: 0;
  }

  #main.compliance .administration li:last-child:after {
    display: none;
  }

  #main.compliance .administration li:after {
    content: "";
    position: absolute;
    width: 16px;
    height: 16px;
    border-top: 4px solid #031832;
    border-right: 4px solid #031832;
    z-index: 2;
    top: 50%;
    right: -30px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -5px;
  }

  #main.compliance .administration li span {
    width: 130px;
    display: block;
    margin: 20px auto 0;
    padding: 6px 0;
    border: solid 2px #438bca;
    background-color: #fff;
    border-radius: 5px;
    color: #438bca;
    font-weight: 600;
  }

  #main.compliance .check-list {
    margin-top: 40px;
    margin-left: 20px;
    margin-bottom: 75px;
  }

  #main.compliance .check-list .contents-inner {
    width: 880px;
  }

  #main.compliance .check-list ul {
    /* display: table; */
  }

  #main.compliance .check-list li {
    float: left;
    display: table;
    width: 430px;
    border-bottom: solid 1px #dddddd;
    overflow: auto;
    margin-right: 20px;
    background-image: url(/wp-content/themes/d-quest/images/icon_checklist.png);
    background-repeat: no-repeat;
    background-position: 10px 23px;
    font-size: 1.8rem;
    font-weight: 600;
    padding: 20px 10px 16px 50px;
  }

  #main.compliance .check-list li span {
    float: left;
    padding: 6px 16px 6px;
    margin-top: 20px;
    margin-left: 10px;
  }

  #main.compliance .check-list li:nth-child(2n) {
    margin-right: 0;
  }

  #main.compliance .check-list li:nth-child(1),
  #main.compliance .check-list li:nth-child(2) {
    border-top: solid 1px #dddddd;
  }

  #main.compliance .check-list li.oneline {
    padding-top: 30px;
    padding-bottom: 30px;
    background-position: 10px 32px;
  }

  #main .price {
    overflow: hidden;
  }

  #main .price {
    padding-top: 25px;
    margin-bottom: 65px;
  }

  #main .price table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
    border-bottom: solid 1px #031832;
    padding-bottom: 1px;
  }

  #main .price thead th {
    background-color: #031832;
    color: #fff;
    text-align: center;
    padding: 20px 0;
    font-size: 1.4rem;
    position: relative;
    border-bottom: solid 1px #031832;
  }

  #main .price thead th:first-child {
    background-color: #fff;
    width: 430px;
    border-right: none;
    border-bottom: none;
  }

  #main .price thead th:nth-child(2) {
    width: 160px;
  }

  #main .price tbody tr {
    border-bottom: solid 1px #031832;
  }

  #main .price tbody {
    height: 100%;
    background-color: #f3f3f3;
  }

  #main .price tbody th,
  #main .price tbody td {
    vertical-align: middle;
    text-align: left;
    border-bottom: solid 1px #031832;
    overflow: hidden;
  }

  #main .price tbody th {
    font-size: 1.8rem;
    font-weight: 600;
    padding: 22px 30px 26px 30px;
    min-height: 75px;
    background-color: #fff;
  }

  #main .price tbody td {
    /* background-color: #f3f3f3; */
    height: 100%;
    text-align: center;
    padding: 16px;
    position: relative;
    /* border-right: solid 5px #fff; */
  }

  #main .price thead th:before,
  #main .price tbody td:before {
    content: "";
    position: absolute;
    border-right: solid 5px #fff;
    min-height: 100vh;
    height: 100%;
    bottom: 0px;
    right: 0;
  }

  #main .price thead th:last-child:before,
  #main .price tbody td:last-child:before {
    border-right: none;
  }

  #main .price .attention {
    text-align: right;
    font-size: 1.2rem;
  }

  #main .price tbody tr:first-child th {
    background-color: #fff;
    width: 430px;
  }

  #main.compliance .case_study {
    margin: 55px 0 0px 0;
  }

  #main.compliance .case_study + h5.type1 {
    margin-top: 60px;
  }

  #main.compliance .case_study .contents-inner {
    width: 880px;
  }

  #main.compliance .case_study dt {
    font-size: 2.2rem;
    font-weight: 600;
    border-bottom: solid 1px #031832;
    padding: 0 0 5px 0;
    margin-bottom: 20px;
  }

  #main.compliance .case_study dd {
    font-size: 1.5rem;
    margin-bottom: 50px;
    line-height: 1.8;
  }

  #main.compliance .case_study dd:last-child {
    margin-bottom: 0;
  }

  #main.compliance .cts-changsha {
    margin-top: 50px;
  }

  #main.compliance .cts-changsha .img-area .contents-inner {
    width: 1000px;
  }

  #main.compliance .cts-changsha .nav-toggle {
    width: 880px;
    padding-top: 30px;
    margin: 0 auto;
  }

  #main.compliance .cts-changsha .nav-toggle dt {
    border: solid 2px #000000;
    position: relative;
    font-size: 1.8rem;
    font-weight: 600;
    padding: 15px;
    cursor: pointer;
    margin-bottom: 20px;
  }

  #main.compliance .cts-changsha .nav-toggle dt::before,
  #main.compliance .cts-changsha .nav-toggle dt::after {
    position: absolute;
    top: 50%;
    right: 21px;
    margin-top: -3px;
    content: "";
    display: inline-block;
    width: 11px;
    height: 11px;
    border-top: 2px solid #000;
    transform: translateX(-50%);
    transition: 0.3s;
  }

  #main.compliance .cts-changsha .nav-toggle dt:after {
    right: 31px;
    transform: rotate(90deg);
    margin-top: -7px;
  }

  #main.compliance .cts-changsha .nav-toggle dt.close::after {
    display: none;
  }

  #main .mv .cnav.active .switch:after {
    display: none;
  }

  #main.compliance .cts-changsha .nav-toggle dd {
    display: none;
    margin: 35px 0 55px 0;
    padding: 0 25px;
  }

  #main.compliance .cts-changsha .nav-toggle dd ul {
    width: 400px;
    float: left;
    margin-right: 30px;
  }

  #main.compliance .cts-changsha .nav-toggle dd ul:last-child {
    margin-right: 0;
  }

  #main.compliance .cts-changsha .nav-toggle dd ul li {
    line-height: 1.45;
    margin-bottom: 12px;
  }

  #main.compliance .table-type4 td ul {
    float: left;
  }
  #main.compliance .table-type4 td ul:nth-of-type(1) {
    width: 195px;
  }
  #main.compliance .table-type4 td ul:nth-of-type(2) {
    width: 158px;
  }
  #main.compliance .table-type4 td ul:nth-of-type(3) {
    width: 155px;
  }
  #main.compliance .table-type4 td ul:nth-of-type(4) {
    width: 129px;
  }
  #main.compliance .table-type4 li {
    width: inherit;
    border: none !important;
  }

  #main .cts-other {
    padding: 80px 0 55px 0;
    margin-bottom: 100px;
  }

  #main .cts-other h6 {
    text-align: center;
    font-weight: 600;
    clear: both;
    font-size: 2.2rem;
  }

  #main .cts-other .cause {
    margin-bottom: 55px;
  }

  #main .cts-other .other-changsha {
    margin: 30px 0 60px;
  }

  #main .cts-other .other-changsha dt,
  #main .cts-other .other-changsha dd {
    float: left;
    border-bottom: solid 1px #dddddd;
    height: 60px;
    line-height: 60px;
  }

  #main .cts-other .other-changsha dt:first-of-type,
  #main .cts-other .other-changsha dd:first-of-type {
    border-top: solid 1px #dddddd;
  }

  #main .cts-other .other-changsha dt {
    width: 270px;
    font-weight: 600;
    padding: 0 30px;
  }

  #main .cts-other .other-changsha dd {
    width: 640px;
  }

  #main .cts-other .img-flow {
    margin: 20px 0;
  }

  #main .cts-other .other-steplist {
    margin: 30px 0 60px;
  }

  #main .cts-other .other-steplist:last-child {
    margin-bottom: 0;
  }

  #main .cts-other .other-steplist > li {
    border-bottom: solid 1px #dddddd;
    padding: 15px 0 43px 10px;
    margin-bottom: 28px;
  }

  #main .cts-other .other-steplist > li:first-child {
    border-top: solid 1px #dddddd;
    padding-top: 48px;
  }

  #main .cts-other .other-steplist .title,
  #main .cts-other .other-steplist .list {
    float: left;
  }

  #main .cts-other .other-steplist .title {
    font-size: 1.8rem;
    width: 300px;
    font-weight: 600;
  }

  #main .cts-other .other-steplist .list {
    width: 690px;
  }

  #main .cts-other .other-steplist .list .text {
    line-height: 1.85;
  }

  #main .cts-other .other-steplist li ul li {
    list-style-type: disc;
    line-height: 1.85;
    list-style: inside;
  }

  #main .cts-other .other-steplist .list .list-title {
    font-weight: 600;
    margin-top: 20px;
    margin-bottom: 5px;
  }

  #main .text-little {
    font-size: 1.3rem;
    color: #999999;
    margin-left: 10px;
  }

  #main.l2-sub .head .text {
    margin-bottom: 63px;
  }

  #main.l2-sub .text-eng {
    margin: 30px 0 10px 0;
    color: #999999;
    font-size: 1.3rem;
    line-height: 1.7;
  }

  #main.l2-sub .text-eng.bottom {
    clear: both;
    margin: 0 0 50px 0;
    padding-top: 56px;
    line-height: 1.9;
    color: #999999;
    font-size: 1.3rem;
  }

  #main.l2-sub .text.bottom {
    clear: both;
    margin: 0;
    padding-top: 56px;
    line-height: 1.9;
  }

  #main .delegate {
    margin-top: 50px;
    margin-bottom: 50px;
  }

  #main .delegate .photo {
    width: 220px;
    float: left;
    margin-right: 60px;
  }

  #main .delegate .photo img {
    width: 100%;
  }

  #main .delegate .info {
    float: left;
    margin-top: 17px;
    /*width: 720px;*/
    width: 600px;
  }

  #main .delegate .info .name,
  #main .delegate .info .name_eng {
    padding-left: 10px;
  }

  #main .delegate .info .name {
    border-left: solid 5px #aa2f2f;
    font-size: 1.3rem;
    font-weight: bold;
  }

  #main .delegate .info .name span {
    font-size: 2.4rem;
  }

  #main .delegate .info .name span.name_after {
    font-size: 2rem;
  }

  #main .delegate .info .name_eng {
    border-left: solid 5px #031832;
    font-size: 2.4rem;
    line-height: 1;
  }

  #main .delegate .info .occupation {
    font-size: 1.5rem;
    border-top: solid 1px #031832;
    padding-bottom: 17px;
    margin-top: 17px;
    padding-top: 18px;
  }

  #main .delegate .info .explanation {
    font-size: 1.2rem;
    padding-bottom: 17px;
  }

  #main .delegate .info .occupation_head {
    font-size: 1.5rem;
    padding-bottom: 10px;
  }

  #main .delegate .info .occupation_head span {
    font-size: 1.2rem;
  }

  #main .delegate .info .explanation p {
    margin-bottom: 5px;
  }

  #main .delegate .info .occupation span {
    color: #999999;
    font-size: 1.3rem;
  }

  #main.acfejapan .box-imgL {
    width: 1000px;
    margin-bottom: 0px;
  }

  #main.acfejapan .cts-other {
    margin-bottom: 80px;
    padding-bottom: 65px;
  }

  #main.acfejapan .cts-other .cause {
    margin-bottom: 0;
  }

  #main.acfejapan .cts-body {
    margin-bottom: 110px;
  }

  #main .list-column {
    margin-top: 60px;
    margin-bottom: 70px;
  }

  #main .list-column .box {
    float: left;
    width: 310px;
    margin-right: 35px;
  }

  #main .list-column .box:last-child {
    margin-right: 0;
  }

  #main .list-column .box .title {
    margin-top: 18px;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.7;
  }

  #main .list-column .box .title span {
    color: #999999;
    font-size: 1.3rem;
  }

  #main.acfejapan .price thead th:nth-child(1) {
    width: 700px;
  }

  #main.acfejapan .price thead th:nth-child(2),
  #main.acfejapan .price thead th:nth-child(3) {
    width: 160px;
  }

  #main.acfejapan .price tbody td {
    font-size: 1.4rem;
  }

  #main.acfejapan .price {
    margin-bottom: 40px;
  }

  #main .title-check {
    width: 460px;
  }

  #main .title-check span {
    background-image: url(/wp-content/themes/d-quest/images/icon_blank.png);
    background-repeat: no-repeat;
    background-position: right center;
    padding-right: 20px;
    font-weight: 600;
  }

  #main .cts-why {
  }

  #main .cts-why .contents-inner {
    width: 880px;
  }

  #main .cts-why h3 {
    font-size: 2.6rem;
  }

  #main .cts-why h3 {
    font-size: 2.6rem;
    font-weight: 600;
    position: relative;
    margin-bottom: 33px;
    padding-top: 5px;
    padding-bottom: 24px;
  }

  #main .cts-why h3:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0px;
    width: 80px;
    height: 3px;
    background-color: #aa2f2f;
  }

  #main .cts-why .text {
    line-height: 2;
    font-size: 1.5rem;
  }

  #main .cts-why .text + .img-area {
    margin-top: 70px;
  }

  #main .cts-why .img-area {
    margin-bottom: 40px;
  }

  #main .cts-why h4 {
    border-bottom: solid 1px #000;
    font-size: 2.2rem;
    font-weight: 600;
    padding-bottom: 5px;
    margin-bottom: 33px;
    margin-top: 70px;
  }

  #main .cts-why .attention li {
    font-size: 1.2rem;
  }

  #main .cts-why .text + .attention {
    margin-top: 10px;
    margin-bottom: 20px;
  }

  #main .cts-why .text p {
    margin-bottom: 16px;
  }

  #main .cts-why .text p strong {
    font-weight: 600;
  }

  #main .cts-why .text p:last-child {
    margin-bottom: 0;
  }

  #main .cts-why .box-case {
    margin-top: 20px;
    margin-bottom: 54px;
  }

  #main .cts-why .box-case .box {
    float: left;
    width: 284px;
    height: 203px;
    margin-right: 14px;
    background-color: #f3f3f3;
    padding-top: 20px;
  }

  #main .cts-why .box-case .box:last-child {
    margin-right: 0;
  }

  #main .cts-why .box-case .box .title {
    background-color: #031832;
    color: #fff;
    text-align: center;
    border-radius: 30px;
    margin: 0 auto 10px;
    padding: 3px 0;
    width: 240px;
    font-size: 1.8rem;
    font-weight: 600;
  }

  #main .cts-why .box-case .box .text {
    padding: 0 20px;
    line-height: 1.7;
  }

  #main .cts-why .box-risk li {
    float: left;
    width: 284px;
    background-color: #f3f3f3;
    margin: 0 14px 25px 0;
    padding: 24px 0;
    text-align: center;
    font-weight: 600;
    font-size: 1.8rem;
  }

  #main .cts-why .box-risk li:last-child {
    margin-right: 0;
  }

  #main .cts-why .box-imgR {
    margin-bottom: 40px;
  }

  #main .cts-why .box-imgR img {
    width: 320px;
    float: right;
    margin-left: 50px;
  }

  #main .cts-why .box-imgR .text {
    font-size: 1.5rem;
    overflow: auto;
  }

  #main .cts-why .box-imgR .text .title {
    font-weight: 600;
    margin-bottom: 10px;
    font-size: 1.8rem;
  }

  #main .cts-why .box-imgR + .text {
    margin-top: 50px;
  }

  #main.itmk .cts-body {
    margin-bottom: 110px;
  }

  #main.itmk .feature {
    margin-bottom: 75px;
  }

  #main.itmk h4 {
    font-size: 2.2rem;
    margin-bottom: 20px;
    line-height: 1.6;
    text-align: center;
    font-weight: bold;
  }

  #main.itmk .box-imgL {
    margin-bottom: 75px;
  }

  #main.itmk .delegate .photo {
    width: 220px;
  }

  #main.itmk .delegate .info {
    width: 600px;
  }

  #search .contents-inner {
    width: 1000px;
    margin: 0 auto 100px;
  }

  #search .consequence {
    margin-top: 30px;
    margin-bottom: 30px;
  }

  #search .box {
    border-bottom: 1px solid #efefef;
    padding: 40px 0;
  }

  #search .box:last-child {
    border-bottom: none;
  }

  #search .box .title,
  #search .box .url {
    margin-bottom: 10px;
  }

  #search .box .url {
    color: #666;
    font-size: 1.3rem;
    word-wrap: break-word;
  }

  #search .box .body {
    font-size: 1.5rem;
    color: #000;
  }

  #not_found {
  }

  #not_found .consequence {
    background: #f3f3f3;
    margin: 0;
    padding-bottom: 75px;
    padding-top: 95px;
    width: 100%;
  }

  #not_found .consequence .text {
    text-align: center;
  }

  #not_found .consequence .text > *:nth-child(1) {
    color: #031832;
    font-family: "Lato", sans-serif;
    font-size: 27px;
    font-weight: bold;
    line-height: 1;
  }

  #not_found .consequence .text > *:nth-child(2) {
    color: #031832;
    font-size: 18px;
    font-weight: bold;
    line-height: 32.4px;
    margin: 15px 0 0;
  }

  #not_found .consequence .text > *:nth-child(3) {
    color: #031832;
    font-size: 18px;
    line-height: 25.2px;
    margin: 15px 0 0;
  }

  #not_found .consequence .text > *:nth-child(4) {
    color: #031832;
    font-size: 16px;
    line-height: 25.2px;
    margin: 15px 0 0;
  }

  #not_found .consequence .text > div:nth-child(4) a {
    background: #fff;
    border: 2px solid #031832;
    display: block;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.075em;
    line-height: 1;
    margin: 22px auto 0;
    padding: 12px 10px;
    text-align: center;
    width: 100%;
    max-width: 186px;
  }

  #not_found .search {
    padding: 55px 0 0;
    text-align: center;
  }

  #not_found .search .text {
    padding-bottom: 17px;
    text-align: center;
  }

  #not_found .search .text > *:nth-child(1) {
    color: #031832;
    font-size: 18px;
    font-weight: bold;
    line-height: 32.4px;
  }

  #not_found .search .text > *:nth-child(2) {
    color: #031832;
    font-size: 14px;
    line-height: 32.4px;
  }

  #not_found .search .text > *:nth-child(2) br {
    display: none;
  }

  #not_found .search .search_container {
    margin: 0 auto;
    position: relative;
    z-index: 10;
    width: 100%;
    max-width: 500px;
  }

  #not_found .search .search_container input[type="text"] {
    border: none;
    height: 40px;
    padding: 2px 20px 0;
    width: 100%;
    background: #f5f5f5;
    border-radius: 40px;
    color: #031832 !important;
    display: block;
    outline: 0;
    cursor: pointer;
  }

  #not_found .search .search_container input[type="text"]::-ms-reveal,
  #not_found .search .search_container input[type="text"]::-ms-clear {
    visibility: hidden;
  }

  #not_found .search .search_container input[type="submit"] {
    cursor: pointer;
    border: none;
    background: transparent;
    color: #fff;
    position: absolute;
    width: 24px;
    height: 24px;
    right: 16px;
    top: 50%;
    outline: none;
    background-image: url(/wp-content/themes/d-quest/images/btn_search_indigo.svg);
    background-repeat: no-repeat;
    background-size: 16px 16px;
    background-position: center center;
    z-index: 30;
    transform: translateY(-50%);
  }

  #main.aboutus #lavel2 .bg1,
  #main.aboutus #lavel2 .bg2 {
    background-size: cover;
    background-repeat: no-repeat;
    /* padding: 85px 0 110px; */
  }

  #main.aboutus #lavel2 .bg1 {
    background-image: url(/wp-content/themes/d-quest/images/img_about_bg_01.jpg);
    margin-bottom: 70px;
    padding: 85px 0 110px;
  }

  #main.aboutus #lavel2 .bg2 {
    background-image: url(/wp-content/themes/d-quest/images/img_about_bg_02.jpg);
    padding: 100px 0 100px;
    margin-bottom: 100px;
  }

  #main.aboutus #lavel2 .bg1 .contents-inner,
  #main.aboutus #lavel2 .bg2 .contents-inner {
    margin: 0 auto;
  }

  #main.aboutus #lavel2 .bg1 .contents-inner {
    width: 880px;
  }

  #main.aboutus #lavel2 .bg2 .contents-inner {
    width: 1000px;
  }

  #main.aboutus #lavel2 .bg1 h4 {
    color: #fff;
    font-size: 4rem;
    font-family: "Lato", sans-serif;
    text-align: center;
    position: relative;
    padding-bottom: 10px;
  }

  #main.aboutus #lavel2 .bg1 h4:after {
    content: "";
    position: absolute;
    width: 40px;
    height: 3px;
    background-color: #fff;
    left: 50%;
    bottom: 0;
    margin-left: -20px;
  }

  #main.aboutus #lavel2 .bg1 h4 + .text {
    margin-top: 30px;
  }

  #main.aboutus #lavel2 .bg1 .text {
    color: #fff;
    font-weight: 600;
    text-align: center;
    margin-bottom: 60px;
  }

  #main.aboutus #lavel2 .bg1 .box-three {
    margin-bottom: 50px;
  }

  #main.aboutus #lavel2 .bg1 .img-area {
    width: 436px;
    margin: 0 auto 60px;
    /* text-align:center; */
  }

  #main.aboutus #lavel2 .bg1 .box-ft .box {
    float: left;
    width: 290px;
    padding: 10px 15px 0 15px;
    position: relative;
    /* margin-right: 20px; */
  }

  #main.aboutus #lavel2 .bg1 .box-ft .box:before,
  #main.aboutus #lavel2 .bg1 .box-ft .box:after {
    content: "";
    position: absolute;
    top: 0;
  }

  #main.aboutus #lavel2 .bg1 .box-ft .box:before {
    width: 1px;
    height: 120px;
    background-color: #fff;
    left: 0;
  }

  #main.aboutus #lavel2 .bg1 .box-ft .box:last-child:after {
    width: 1px;
    height: 120px;
    background-color: #fff;
    right: 0;
  }

  #main.aboutus #lavel2 .bg1 .box-ft .box .data {
    color: #031832;
    background-color: #fff;
    text-align: center;
    border-radius: 20px;
    width: 240px;
    margin: 0 auto 10px;
    font-weight: 600;
    font-family: "Lato", sans-serif;
  }

  #main.aboutus #lavel2 .bg1 .box-ft .box .text {
    color: #fff;
    margin-bottom: 0;
  }

  #main.aboutus #lavel2 .constitution {
    margin-bottom: 150px;
  }

  #main.aboutus #lavel2 .constitution .contents-inner {
    width: 1000px;
    margin: 0 auto;
  }

  #main.aboutus #lavel2 .constitution .img-area {
    background-color: #f3f3f3;
    margin-bottom: 30px;
    padding: 50px 0;
  }

  #main.aboutus #lavel2 .constitution .img-area img {
    margin: 0 auto;
  }

  #main.aboutus #lavel2 .constitution .box {
    background-color: #f3f3f3;
    padding: 30px 47px;
  }

  #main.aboutus #lavel2 .constitution .box dl {
    float: left;
    width: 450px;
  }

  #main.aboutus #lavel2 .constitution .box dl dt,
  #main.aboutus #lavel2 .constitution .box dl dd {
    float: left;
    line-height: 1.4;
  }

  #main.aboutus #lavel2 .constitution .box dl dt {
    width: 90px;
    font-weight: 600;
  }

  #main.aboutus #lavel2 .constitution .box dl dd {
    width: 350px;
  }

  #main.aboutus #lavel2 .constitution .box dl dd .title {
    font-size: 1.4rem;
    margin-bottom: 10px;
  }

  #main.aboutus #lavel2 .constitution .box dl dd .text {
    color: #999999;
    font-size: 1.4rem;
  }

  #main.aboutus #lavel2 .enterprise {
    margin-bottom: 50px;
  }

  #main.aboutus #lavel2 .enterprise .service .catch {
    font-weight: 600;
    margin-bottom: 10px;
  }

  #main.aboutus #lavel2 .enterprise .text.center {
    text-align: center;
  }

  #main.aboutus #lavel2 .dq_strong {
    margin-top: 50px;
  }

  #main.aboutus #lavel2 .dq_strong .box {
    background: rgba(255, 255, 255, 0.3);
    position: relative;
  }

  #main.aboutus #lavel2 .dq_strong .col1 .box {
    width: 1000px;
    margin-bottom: 30px;
    padding: 45px 60px;
  }

  #main.aboutus #lavel2 .dq_strong .col2 .box {
    float: left;
    width: 485px;
    height: 490px;
    margin-right: 30px;
  }

  #main.aboutus #lavel2 .dq_strong .col2 .box:last-child {
    margin-right: 0;
  }

  #main.aboutus #lavel2 .dq_strong .col1 .box .text {
    line-height: 1.7;
  }

  #main.aboutus #lavel2 .dq_strong .col2 .box .text {
    line-height: 1.8;
  }

  #main.aboutus #lavel2 .dq_strong .box .text {
    color: #fff;
  }

  #main.aboutus #lavel2 .dq_strong .box .title {
    color: #fff;
    position: absolute;
    font-size: 2.6rem;
    font-weight: 600;
    text-align: center;
    line-height: 1.5;
  }

  #main.aboutus #lavel2 .dq_strong .col1 .box .text {
    margin-left: 210px;
  }

  #main.aboutus #lavel2 .dq_strong .col1 .box:nth-child(1) .title {
    top: 60px;
    left: 70px;
  }

  #main.aboutus #lavel2 .dq_strong .col1 .box:nth-child(2) .title {
    top: 60px;
    left: 60px;
  }

  #main.aboutus #lavel2 .dq_strong .col2 .box:nth-child(1) .title {
    top: 50px;
    left: 60px;
    width: 400px;
  }

  #main.aboutus #lavel2 .dq_strong .col2 .box:nth-child(2) .title {
    top: 50px;
    left: 60px;
    width: 400px;
  }

  #main.aboutus #lavel2 .dq_strong .col1 .box:nth-child(1) .title img {
    width: 90px;
    margin-bottom: 35px;
  }

  #main.aboutus #lavel2 .dq_strong .col1 .box:nth-child(2) .title img {
    width: 105px;
    margin-bottom: 25px;
  }

  #main.aboutus #lavel2 .dq_strong .col2 .box:nth-child(1) .title img {
    width: 80px;
    float: left;
  }

  #main.aboutus #lavel2 .dq_strong .col2 .box:nth-child(2) .title img {
    width: 80px;
    float: left;
  }

  #main.aboutus #lavel2 .dq_strong .col1 .box .text {
    margin-left: 210px;
  }

  #main.aboutus #lavel2 .dq_strong .col2 .box .text {
    margin-left: 50px;
    margin-right: 50px;
    margin-top: 170px;
    font-size: 1.5rem;
  }

  #main.aboutus #lavel2 .dq_strong .col2 .box .title span {
    float: left;
    display: block;
    margin-top: 30px;
    margin-left: 60px;
  }

  #main.whistleblowing_b.domestic .img-area-1 .attent,
  #main.whistleblowing_b.overseas .img-area-1 .attent {
    margin-top: 10px;
    font-size: 1.5rem;
  }

  #main h3.h3-toggle {
    font-size: 2.2rem;
    font-weight: 600;
    margin-top: 24px;
    margin-bottom: 23px;
  }

  #main h3.h3-toggle:first-of-type {
    margin-top: 0;
  }

  #main #topics .searchbar {
    background-color: #031832;
    width: 100%;
    height: 80px;
    margin-bottom: 75px;
    position: relative;
    z-index: 1;
  }

  #main #topics .searchbar .search_container {
    position: relative;
  }

  #main #topics .searchbar .contents-inner {
    width: 550px;
    padding: 20px 0 0;
  }

  #main #topics .searchbar .search_container input[type="text"] {
    border: none;
    height: 40px;
    padding: 0 10px 0;
    width: 550px;
    background: #818c99;
    color: #031832;
    display: block;
    position: relative;
    z-index: 10;
    cursor: pointer;
    transition: 0.3s;
  }

  #main #topics .searchbar .search_container input::-ms-clear {
    visibility: hidden;
  }

  #main #topics .searchbar .search_container input[type="text"]:focus,
  #main #topics .searchbar .search_container input[type="text"].active {
    outline: 0;
    background: #fff;
  }

  #main
    #topics
    .searchbar
    .search_container
    input[type="text"]:focus
    + input[type="submit"] {
  }

  #main #topics .searchbar .search_container input[type="submit"] {
    cursor: pointer;
    border: none;
    background: none;
    color: #fff;
    position: absolute;
    width: 24px;
    height: 24px;
    right: 16px;
    top: 8px;
    outline: none;
    background-image: url(/wp-content/themes/d-quest/images/btn_search_indigo.svg);
    background-repeat: no-repeat;
    background-size: 16px 16px;
    background-position: center center;
    z-index: 30;
    /*display: none;*/
  }

  #main #topics .searchbar .search_container input[type="submit"].active {
    /*display: block;*/
  }

  #main
    #topics
    .searchbar
    .search_container
    input[type="text"]:-webkit-autofill {
    -webkit-transition: background-color 9999s;
    transition: background-color 9999s;
  }

  #main #topics .searchbar .search_container .icon {
    cursor: pointer;
    border: none;
    background: none;
    color: #fff;
    position: absolute;
    width: 24px;
    height: 24px;
    right: 16px;
    top: 4px;
    outline: none;
    background-image: url(/wp-content/themes/d-quest/images/btn_search.svg);
    background-repeat: no-repeat;
    background-size: 16px 16px;
    background-position: center center;
  }

  #main #topics .searchbar .search_container ::-webkit-input-placeholder {
    color: #fff;
  }

  #header .menu.scroll .snav .search .search_container input[type="text"] {
    color: #031832;
    background: #fff;
  }

  #header
    .menu.scroll
    .snav
    .search
    .search_container
    input[type="text"]:focus
    + input[type="submit"] {
    /*background-image: url(/wp-content/themes/d-quest/images/btn_search_indigo.svg);*/
  }

  #main #topics .contents-inner {
    width: 1000px;
    margin: 0 auto;
  }

  #main #topics h3 {
    font-size: 2.2rem;
    border-bottom: solid 1px #000;
    margin-bottom: 40px;
    padding-bottom: 8px;
  }

  #main #topics .list-topics .tpclist li {
    width: 310px;
    overflow: hidden;
    float: left;
    margin-right: 35px;
    /* margin-bottom: 60px; */
  }

  #main #topics .list-topics .tpclist li:nth-child(3n) {
    margin-right: 0;
  }

  #main #topics .list-topics .tpclist li:nth-last-child(1),
  #main #topics .list-topics .tpclist li:nth-last-child(2),
  #main #topics .list-topics .tpclist li:nth-last-child(3) {
    margin-bottom: 0;
  }

  #main #topics .list-topics .tpclist li .head {
    position: relative;
    width: 310px;
    margin-bottom: 13px;
  }

  #main #topics .list-topics .tpclist li .head .img {
  }

  #main #topics .list-topics .tpclist li .head .photoInner {
    width: 200%;
    margin: 0 -50%;
    text-align: center;
  }

  #main #topics .list-topics .tpclist li .head .img img {
    height: 207px;
    width: auto;
  }

  #main #topics .list-topics .tpclist li .head .cat {
    position: absolute;
    bottom: 0;
    left: 0;
  }

  #main #topics .list-topics .tpclist li .head .cat span {
    background-color: #031832;
    color: #fff;
    text-align: center;
    font-size: 1.4rem;
    padding: 4px 15px;
    display: inline-block;
  }

  #main #topics .list-topics .tpclist li .data {
    font-size: 1.2rem;
  }

  #main #topics .list-topics .tpclist li .title {
    font-size: 1.5rem;
    font-weight: 600;
  }

  #main #topics h4.tag {
    text-align: center;
    font-weight: 600;
    margin-bottom: 40px;
  }

  #main #topics h4.tag span {
    padding-left: 20px;
    background-image: url(/wp-content/themes/d-quest/images/icon_tag.png);
    background-repeat: no-repeat;
    background-position: left center;
    font-weight: 600;
    font-size: 1.8rem;
  }

  #main #topics .list-topics .taglist {
    text-align: center;
    width: 700px;
    margin: 0 auto 30px;
  }

  #main #topics .taglist li {
    display: inline-block;
    border: solid 1px #031832;
    border-radius: 4px;
    margin: 0 5px;
    padding: 5px 15px;
    font-size: 14px;
  }

  #main #topics .single-topics {
    margin-top: 81px;
  }

  #main #topics .single-topics .delegate {
    margin-bottom: 42px;
  }

  #main #topics .single-topics .head {
    margin-bottom: 33px;
  }

  #main #topics .single-topics .cat {
    margin-bottom: 16px;
  }

  #main #topics .single-topics .cat span {
    background-color: #031832;
    color: #fff;
    text-align: center;
    font-size: 1.4rem;
    padding: 6px 15px;
    font-weight: 600;
    display: inline-block;
  }

  #main #topics .single-topics .title {
    font-size: 2.8rem;
    font-weight: 600;
    margin-bottom: 0px;
    text-align: left;
    border-bottom: none;
  }

  #main #topics .single-topics .data {
    font-size: 1.5rem;
  }

  #main #topics .single-topics .img {
    margin-bottom: 30px;
    height: 500px;
    overflow: hidden;
  }

  #main #topics .single-topics .img img {
    width: 1000px;
    height: auto;
  }

  #main #topics .single-topics .taglist {
    margin-bottom: 77px;
    margin-left: 20px;
    padding-left: 28px;
    background-image: url(/wp-content/themes/d-quest/images/icon_tag.png);
    background-repeat: no-repeat;
    background-position: left center;
  }

  #main .article h4 {
    width: 100%;
    border-bottom: solid 1px #031832;
    text-align: left;
    font-size: 2.2rem;
    font-weight: 600;
    line-height: 1.3;
    padding-bottom: 11px;
    margin-bottom: 38px;
  }

  #main .article h5 {
    line-height: 1.5;
    font-size: 1.8rem;
    font-weight: 600;
    margin-bottom: 20px;
    position: relative;
  }

  #main .article h5 span {
    position: relative;
    padding-left: 15px;
    display: block;
    overflow: hidden;
    font-weight: 600;
  }

  #main .article h5 span:before {
    content: "";
    position: absolute;
    width: 5px;
    height: 84%;
    top: 8%;
    left: 0;
    background-color: #aa2f2f;
  }

  #main .article .text {
    margin-top: 39px;
    margin-bottom: 19px;
  }

  #main .article .text p {
    margin-bottom: 20px;
    line-height: 1.9;
    overflow: auto;
  }

  #main .article .text p:last-of-type {
    margin-bottom: 0;
  }

  #main .article .text .photo,
  #main .article .text.img-no .photo {
    display: none;
  }

  #main .article .text.img-r .photo {
    display: block;
    float: right;
    margin-left: 50px;
    width: 320px;
    height: 210px;
    overflow: hidden;
  }

  #main .article .text.img-l .photo {
    display: block;
    float: left;
    margin-right: 50px;
  }

  #main .article .text.img-free .photo {
    display: block;
    margin-bottom: 40px;
  }

  #main .article .text .photo .photoInner {
    margin: -3px 0;
    text-align: center;
  }

  #main .article .text .photo .photoInner img {
    height: auto;
    width: 320px;
  }

  #main .article .text.img-free .photo .photoInner img {
    width: inherit;
  }

  #main #topics .help {
    margin-top: 0;
    padding-top: 0;
    padding-bottom: 0;
  }

  #main.case .list-case {
  }

  #main.case .list-case .caselist li {
    width: 310px;
    overflow: hidden;
    float: left;
    margin-right: 35px;
    margin-bottom: 60px;
  }

  #main.case .list-case .caselist li:nth-child(3n) {
    margin-right: 0;
  }

  #main.case .list-case .caselist li .title {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 10px;
  }

  #main.case .list-case .caselist li .catch {
    font-size: 1.5rem;
    font-weight: 600;
  }

  #main.case .list-case .caselist li .head .img {
    width: 200%;
    margin: 0 -50% 20px;
    text-align: center;
  }

  #main.case .list-case .caselist li .head .img img {
    width: auto;
    height: 207px;
  }

  #main.case .single-case h3 {
    text-align: center;
    font-size: 3rem;
    font-weight: bold;
  }

  #main.case .single-case .head {
    margin-top: 60px;
    margin-bottom: 50px;
  }

  #main.case .single-case .head .photo {
    width: 450px;
    float: left;
    margin-right: 50px;
    overflow: hidden;
  }

  #main.case .single-case .head .photo .photoInner {
    width: 200%;
    margin: 0 -50% 20px;
    text-align: center;
  }

  #main.case .single-case .head .photo img {
    /* width: 100%; */
    height: 278px;
  }

  #main.case .single-case .head .info {
    float: left;
    margin-top: 17px;
    width: 500px;
  }

  #main.case .single-case .head .info .name,
  #main.case .single-case .head .info .name_eng {
    padding-left: 10px;
  }

  #main.case .single-case .head .info .name {
    border-left: solid 5px #aa2f2f;
    font-size: 1.3rem;
    font-weight: bold;
  }

  #main.case .single-case .head .info .name span {
    font-size: 2.4rem;
  }

  #main.case .single-case .head .info .name span.name_after {
    font-size: 2rem;
  }

  #main.case .single-case .head .info .name_eng {
    border-left: solid 5px #031832;
    font-size: 1.2rem;
    line-height: 1;
  }

  #main.case .single-case .head .info .occupation {
    font-size: 1.5rem;
    border-top: solid 1px #031832;
    padding-bottom: 17px;
    margin-top: 17px;
    padding-top: 18px;
  }

  #main.case .single-case .head .info .explanation {
    font-size: 1.5rem;
    padding-bottom: 17px;
  }

  #main.case .single-case .head .info .occupation_head {
    font-size: 1.5rem;
    padding-bottom: 10px;
    font-weight: 600;
  }

  #main.case .single-case .head .info .occupation_head span {
    font-size: 1.2rem;
  }

  #main.case .single-case .head .info .explanation p {
    margin-bottom: 5px;
  }

  #main.case .single-case .head .info .occupation span {
    color: #999999;
    font-size: 1.3rem;
  }

  #main .selectform_radio {
    background-color: #f3f3f3;
    padding: 14px 0px;
  }

  #main .selectform_radio a {
    display: block;
  }

  #main .selectform_radio .parts_radio_01 > * {
    width: calc(30% - 20px);
    margin: 0 0 0 0px;
    font-weight: 600;
  }

  #main .selectform_radio .parts_radio_01 span:nth-child(1) {
    display: block;
    width: 20%;
    margin-right: 5px;
  }

  #main .selectform_radio .parts_radio_01 span:nth-child(2) {
    margin-right: 12px;
  }

  #main .selectform_radio .parts_radio_01 span:nth-child(3) {
  }

  #main .selectform_radio .parts_radio_01 {
    margin: 0 0 0 120px;
  }

  #main .selectform_radio .parts_radio_01 span {
    font-weight: bold;
  }

  #main .selectform_radio .parts_radio_01 span input {
    -webkit-appearance: none;
    border: 1px solid #031832;
  }
  #main .table_05 .table_inner .block {
    float: left;
    margin-top: 10px;
    margin-right: 28px;
  }
  #main .table_05 .table_inner .no-pd-r {
    padding-right: 0;
  }
  #main .table_05 .table_inner .block img {
    width: 174px;
    margin-bottom: 10px;
  }
  #main .table_05 .table_inner .block:last-of-type {
    margin-right: 0;
  }
  #main .table_05 .table_inner .block span {
    line-height: 1.5;
  }
  #main .table_05 .table_inner .block .name {
    display: block;
    text-align: center;
  }
  #main .table_05 .table_inner .block .position {
    display: block;
    font-size: 1.4rem;
  }

  #main.about-gdpr .cts-body .text {
    margin-bottom: 45px;
    line-height: 1.95;
  }
  #main.about-gdpr .cts-body .text:last-child {
    margin-bottom: 0;
  }

  #main.about-us #preface {
    margin-bottom: 70px;
  }
  #main.about-us #preface .text {
    line-height: 1.9;
  }

  #main.about-us .title_01 .title_inner {
    /* border: none; */
  }
  #main.about-us .title_01 {
    /* margin: 0 0 0px; */
  }
  #main.about-us .table-type2 {
    margin: 0 0 75px;
  }
  #main.about-us .table-type2 tbody td:nth-child(2) {
    background-color: #fff;
    padding: 16px 20px;
    font-size: 1.4rem;
  }
  #main.about-us .table-type2 .table-type2-cell-type1-row > * {
    background-color: #fff;
  }
  #main.about-us .table-type2 tbody td {
    padding: 16px 20px 16px 15px;
  }
  #main .head h3 .little {
    font-size: 1.6rem;
    font-weight: 600;
  }

  #main.about-us #lavel2 .constitution .contents-inner {
    width: 1000px;
    margin: 0 auto;
  }
  #main.about-us #lavel2 .constitution .img-area {
    background-color: #f3f3f3;
    margin-bottom: 30px;
    padding: 50px 0;
  }

  #main.about-us #lavel2 .constitution .img-area img {
    margin: 0 auto;
  }

  #main.about-us #lavel2 .constitution .box {
    background-color: #f3f3f3;
    padding: 30px 47px;
  }

  #main.about-us #lavel2 .constitution .box dl {
    float: left;
    width: 450px;
  }

  #main.about-us #lavel2 .constitution .box dl dt,
  #main.about-us #lavel2 .constitution .box dl dd {
    float: left;
    line-height: 1.4;
  }

  #main.about-us #lavel2 .constitution .box dl dt {
    width: 120px;
    font-weight: 600;
  }

  #main.about-us #lavel2 .constitution .box dl dd {
    width: 320px;
  }

  #main.about-us #lavel2 .constitution .box dl dd .title {
    font-size: 1.4rem;
    margin-bottom: 10px;
  }

  #main.about-us #lavel2 .constitution .box dl dd .text {
    color: #999999;
    font-size: 1.4rem;
  }
  #main.about-us .table_01 {
    margin-bottom: 50px;
  }
  #main.about-us .contents .contents-inner {
   margin-bottom: 50px;
  }
  #main.products-specific-services .cts-body .img-area-1 .contents-inner {
    text-align: center;
  }
  #main.products-specific-services .text {
      margin-bottom:20px;
  }
}

@media screen and (max-width: 1080px) {
  /*
  ------------------------------------------------------
  ------------------------------------------------------
  ------------------------------------------------------
  SP
  ------------------------------------------------------
  ------------------------------------------------------
  ------------------------------------------------------
   */
  #main {
    padding-top: 58px;
    padding-bottom: 50px;
    display: block;
  }

  #main h2 {
    text-align: center;
    font-size: 1.8rem;
    font-weight: 600;
    margin: 30px 0 40px;
  }

  #main > #news {
    padding: 0;
  }

  #main #news .contents-inner {
    margin: 0px 30px;
  }

  #main #lavel2 > .h2Wrap h2 {
    font-size: 1.8rem;
    font-weight: 600;
  }

  #main #lavel3 > .h2Wrap h2 {
    margin: 20px 0;
    /* padding-bottom: 20px; */
  }

  #main #lavel4 > .h2Wrap h2 {
    /* background-color: #f3f3f3; */
    padding: 30px 0 0;
    margin-bottom: 25px;
    text-align: center;
    font-size: 2.2rem;
    font-weight: 600;
  }

  #main #lavel2 > .h2Wrap h2 span.subtitle1,
  #main #lavel3 > .h2Wrap h2 span.subtitle1,
  #main #lavel4 > .h2Wrap h2 span.subtitle1 {
    font-size: 1.2rem;
  }

  #main #lavel3 > .h2Wrap h2 span.subtitle1 {
    line-height: 2.6;
  }

  #main #lavel3 > .h2Wrap h2 span.subtitle2 {
    font-size: 1.2rem;
    line-height: 1;
  }

  #main #lavel4 > .h2Wrap h2 span.subtitle1 {
    line-height: 2.6;
  }

  #main #lavel4 > .h2Wrap h2 span.subtitle2 {
    font-size: 1.2rem;
    line-height: 1;
  }

  #main #news .contents-inner #list-category {
    background-color: #f2f2f2;
    position: relative;
    margin: 0 0 30px;
  }

  #main #news .contents-inner #list-category:after,
  #main #news .contents-inner #list-category:before {
    content: "";
    position: absolute;
    vertical-align: middle;
  }

  #main #news .contents-inner #list-category:before {
    width: 46px;
    height: 45px;
    background-color: #031832;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1;
  }

  #main #news .contents-inner #list-category:after {
    top: 19px;
    right: 19px;
    width: 7px;
    height: 7px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    z-index: 2;
  }

  #main #news .contents-inner #list-category.active:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 21px;
  }

  #main #news .contents-inner #list-category li {
    font-size: 1.3rem;
    position: relative;
    z-index: 10;
  }

  #main #news .contents-inner #list-category li a {
    display: block;
    padding: 13px 20px;
  }

  #main #news .contents-inner #list-category li ul {
    display: none;
  }

  #main #news .contents-inner #list-category.active li a.all {
    width: 46px;
    height: 45px;
    position: absolute;
    right: 0;
    text-indent: -9999px;
    z-index: 10;
  }

  #main #news .contents-inner #list-category li ul li:first-child {
    margin-right: 46px;
  }

  #main #news .contents-inner #list-news {
    margin: 30px 0 0;
    padding-top: 15px;
    border-top: solid 2px #000;
  }

  #main #news .contents-inner #list-news li {
    border-top: solid 1px #dddddd;
    border-bottom: solid 1px #dddddd;
    padding: 14px 0 10px;
  }

  #main #news .contents-inner #list-news li:first-child {
    border-top: none;
    /* padding-top: 0; */
  }

  #main #news .contents-inner .data {
    font-size: 1.2rem;
    margin-right: 15px;
  }

  #main #news .contents-inner .title {
    margin-top: 2px;
    font-size: 1.4rem;
    padding-top: 20px;
    clear: both;
  }

  .wp-pagenavi {
    margin: 40px 0 45px;
    text-align: center;
  }

  .wp-pagenavi .pages {
    display: none;
  }

  .wp-pagenavi .page {
  }

  .wp-pagenavi .page,
  .wp-pagenavi .current {
    text-align: center;
    margin: 0px 6px;
    padding: 10px 15px 9px;
    font-size: 1.5rem;
    line-height: 1;
    border: solid 1px #031832;
  }

  .wp-pagenavi .page.larger {
  }

  .wp-pagenavi .current {
    background-color: #f3f3f3;
    font-weight: 600;
    border: solid 1px #f3f3f3;
  }

  .wp-pagenavi .nextpostslink,
  .wp-pagenavi .previouspostslink {
    text-align: center;
    margin: 0px 6px;
    padding: 9px 19px 7px;
    font-size: 1.5rem;
    text-indent: -9999px;
    position: relative;
    display: inline-block;
    width: 10px;
    border: solid 1px #031832;
  }

  .wp-pagenavi .nextpostslink {
    margin-right: 20px;
  }

  .wp-pagenavi .previouspostslink {
    margin-left: 20px;
  }

  .wp-pagenavi .nextpostslink:after,
  .wp-pagenavi .previouspostslink:after {
    content: "";
    position: absolute;
    vertical-align: middle;
    top: 50%;
    left: 50%;
    width: 7px;
    height: 7px;
    border-top: 2px solid #031832;
    border-right: 2px solid #031832;
    z-index: 2;
  }

  .wp-pagenavi .nextpostslink:after {
    right: 3px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: -5px;
    margin-top: -4px;
  }

  .wp-pagenavi .previouspostslink:after {
    /* left: 3px; */
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
    margin-left: -3px;
    margin-top: -4px;
  }

  #main #topics {
    font-size: 14px;
  }

  #main #topics-multicolumn {
    margin-top: 0;
  }

  #main #topics-multicolumn h3,
  #main #news h3 {
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.3;
    font-weight: 600;
    font-family: "Lato", sans-serif;
    margin: 0 15px 30px;
  }

  #main #topics-multicolumn h3 {
    color: #fff;
    margin-bottom: 30px;
  }

  #main #news h2.type2 {
    margin: 45px 0;
  }

  #main #news h3 {
    margin-bottom: 23px;
  }

  #main #topics-multicolumn .link-footer {
    text-align: right;
    font-size: 1.3rem;
    color: #fff;
    padding-right: 15px;
    margin-right: 30px;
    padding-bottom: 35px;
    position: relative;
  }

  #main #topics-multicolumn .link-footer:before {
    content: "";
    position: absolute;
    top: 6px;
    right: 1px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }

  #main #topics-multicolumn .masonry {
    margin-bottom: 0px;
    padding-bottom: 5px;
  }

  #main #news .contents-inner #list-news {
  }

  #main #news .contents-inner #list-news li {
    /* border-top: solid 1px #dddddd; */
    border-bottom: solid 1px #dddddd;
    padding: 25px 0 25px;
  }

  #main #news .contents-inner #list-news li:first-child {
    /* border: none; */
    padding-top: 0;
  }

  #main #news .contents-inner .data {
    font-size: 1.2rem;
    margin-right: 15px;
    display: block;
    float: left;
    padding-top: 3px;
  }

  #main #news .contents-inner .cat a {
    font-size: 1.1rem;
    border: solid 1px #000;
    padding: 2px 6px;
    margin: 0 5px 5px 0;
    float: left;
  }

  #main #news .contents-inner .title a {
    font-size: 1.4rem;
  }

  #main #news .contents-inner .articl_news {
    width: 100%;
    margin-top: 0px;
    padding-top: 16px;
    border-top: solid 2px #031832;
  }

  #main #news .contents-inner .articl_news .title {
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1.7;
    margin-top: 3px;
    padding-top: 0px;
    padding-bottom: 13px;
    border-bottom: solid 1px #000;
  }

  #main #news .contents-inner .articl_news .data {
    margin-right: 12px;
    font-size: 1.1rem;
  }

  #main #news .contents-inner .articl_news .text {
    margin-top: 23px;
    margin-bottom: 23px;
  }

  #main #news .contents-inner .articl_news .text p {
    margin-bottom: 10px;
    word-break: break-all;
    line-height: 1.7;
  }

  #main #news .contents-inner .articl_news .text p:last-of-type {
    margin-bottom: 0;
  }

  #main #news .contents-inner .articl_news .wp-block-image {
    margin: 0 0 10px;
  }

  #main #news .contents-inner .articl_news .wp-block-image img {
    width: 100%;
  }

  #main #news .contents-inner .articl_news .text a {
    text-decoration: underline;
  }

  #main #news .contents-inner ul,
  #main #news .contents-inner ol,
  #main #topics .contents-inner ul,
  #main #topics .contents-inner ol {
    margin-top: 19px;
    margin-bottom: 19px;
  }

  #main #news .contents-inner .articl_news ul li,
  #main #topics .contents-inner .single-topics ul li {
    list-style-type: disc;
    list-style-position: outside;
    margin-left: 1.5em;
    margin-bottom: 0.5em;
  }

  #main #news .contents-inner .articl_news ol li,
  #main #topics .contents-inner .single-topics ol li {
    list-style-type: decimal;
    list-style-position: inside;
  }

  #main #news .contents-inner .articl_news .cat {
    padding: 2px 5px;
    font-size: 1.1rem;
  }

  #main #news .contents-inner .articl_news .link_back {
    text-align: center;
    margin-top: 20px;
    padding-top: 30px;
    border-top: solid 1px #dddddd;
  }

  #main #news .contents-inner .articl_news .link_back a {
    display: inline-block;
    border: solid 2px #092547;
    text-align: center;
    padding: 9px 0;
    width: 100%;
    font-size: 1.3rem;
  }

  #main #news .contents-inner .articl_news .link_back a strong {
    font-weight: 600;
  }

  #main #news .contents-inner .article h4,
  #main #topics .contents-inner .article h4 {
    border-bottom: none;
    margin-top: 39px;
    margin-bottom: 13px;
    padding-bottom: 0;
  }

  #main #news .contents-inner .article h4.posi-l,
  #main #news .contents-inner .article h5.posi-l,
  #main #topics .contents-inner .article h4.posi-l,
  #main #topics .contents-inner .article h5.posi-l {
    text-align: left;
  }

  #main #news .contents-inner .article h4.posi-r,
  #main #news .contents-inner .article h5.posi-r,
  #main #topics .contents-inner .article h4.posi-r,
  #main #topics .contents-inner .article h5.posi-r {
    text-align: right;
  }

  #main #news .contents-inner .article h4.posi-c,
  #main #news .contents-inner .article h5.posi-c,
  #main #topics .contents-inner .article h4.posi-c,
  #main #topics .contents-inner .article h5.posi-c {
    text-align: center;
  }

  #main #news .contents-inner .article h5 span,
  #main #topics .contents-inner .article h5 span {
    display: inline-block;
  }
  #main #news .contents-inner .article p,
  #main #topics .contents-inner .article p {
    margin-bottom: 20px;
  }

  #main #news .contents-inner .article strong,
  #main #topics .contents-inner .article strong {
    font-weight: bold;
  }
  #main #news .contents-inner .article em,
  #main #topics .contents-inner .article em {
    font-style: italic;
  }
  #main #news .contents-inner .article figcaption,
  #main #topics .contents-inner .article figcaption {
    font-size: 1.2rem;
  }

  .type2 + #main h2 {
    padding: 15px 0;
  }

  #main #lavel2,
  #main #lavel3 {
    padding-top: 15px;
  }

  #main #lavel2.no-cnav,
  #main #lavel3.no-cnav {
    padding-top: 0px;
  }

  #main #lavel2 .mv,
  #main #lavel3 .mv {
    width: 100%;
    height: 250px;
    background-size: cover;
    background-position: center center;
    /* position: relative; */
    margin-bottom: 40px;
  }

  #main #lavel2 .mv_under .mv {
    margin-bottom: 10px;
  }

  #main #lavel2 .mv_under {
    margin-bottom: 20px;
  }

  #main #lavel2 .mv_under p {
    text-align: right;
    padding-right: 20px;
    font-size: 1.2rem;
    position: relative;
    top: -40px;
    color: #fff;
  }

  #main .mv.about-gdpr {
    background-image: url(/wp-content/themes/d-quest/images/mv_about-gdpr_sp.jpg);
  }
  #main .mv.hotline-service {
    background-image: url(/wp-content/themes/d-quest/images/mv_hotline-service_sp.jpg);
  }
  #main .mv.about-us {
    background-image: url(/wp-content/themes/d-quest/images/mv_about-us_sp.jpg);
  }
  #main .mv.products-specific-services {
    background-image: url(/wp-content/themes/d-quest/images/mv_products-specific-services_sp.jpg);
  }

  #main .cnav,
  #main .mv .cnav {
    width: 100%;
    /* height: 106px; */
    background-color: #f3f3f3;
    position: absolute;
    top: 58px;
    /*z-index: 5000;*/
    padding: 0 20px;
  }

  #main .cnav .switch,
  #main .mv .cnav .switch {
    position: relative;
    /* padding: 12px; */
    font-size: 1.3rem;
    height: 40px;
    line-height: 40px;
  }

  #main .cnav .switch::before,
  #main .cnav .switch::after,
  #main .mv .cnav .switch::before,
  #main .mv .cnav .switch::after {
    position: absolute;
    top: 50%;
    right: 19px;
    margin-top: -1px;
    content: "";
    display: inline-block;
    width: 11px;
    height: 11px;
    border-top: 2px solid #000;
    transform: translateX(-50%);
    transition: 0.3s;
  }

  #main .cnav .switch:after,
  #main .mv .cnav .switch:after {
    right: 29px;
    transform: rotate(90deg);
    margin-top: -6px;
  }

  #main .cnav.active .switch:after,
  #main .mv .cnav.active .switch:after {
    display: none;
  }

  #main .cnav ul,
  #main .mv .cnav ul {
    text-align: center;
    margin: 0 0 0 0;
    padding: 0 0 0 0px;
    display: none;
  }

  #main .cnav li,
  #main .mv .cnav li {
    position: relative;
    font-size: 1.3rem;
    text-align: left;
    border-bottom: solid 1px #dddddd;
    padding: 11px 15px;
  }

  #main .cnav li.active {
    font-weight: 600;
  }

  #main .cnav li.no.active {
    font-weight: normal !important;
  }

  #main #lavel2 .contents {
    clear: both;
  }

  #main .contents .contents-inner {
    margin: 0 30px 0;
  }

  #main .head h3,
  #main .head h4 {
    line-height: 1.4;
    text-align: center;
    font-weight: bold;
  }

  #main .head h3 {
    margin: 0 15px 20px;
    font-size: 2.2rem;
  }

  #main .head h4 {
    margin: 0 15px 0px;
    font-size: 2.1rem;
  }

  #main .head h4.mtop {
    margin-top: 25px;
  }

  #main .distinction .head h4 {
    margin-bottom: 25px;
  }

  #main .distinction h5.mtop {
    padding-top: 55px;
  }

  #main .head h3 + h4 {
    margin-top: 40px;
    font-size: 1.6rem;
  }

  #main .head h3 span,
  #main .head h4 span {
    font-weight: bold;
    background: linear-gradient(transparent 90%, #aa2f2f 90%);
  }

  #main .head h3 span.line,
  #main .head h4 span.line {
    font-weight: bold;
    background: linear-gradient(transparent 92%, #aa2f2f 92%);
  }

  #main .head h3 span.size-s {
    font-size: 1.3rem;
    background: none;
    font-weight: normal;
    line-height: 1.4;
    margin-bottom: 10px;
    display: inline-block;
  }

  #main .head h4 span.size-s {
    font-size: 1.3rem;
    background: none;
    font-weight: normal;
    line-height: 1.4;
    margin-bottom: 10px;
    display: inline-block;
  }

  #main .head .text {
    line-height: 1.8;
    margin-bottom: 10px;
    padding: 0;
    font-size: 1.4rem;
  }

  #main #lavel4 .head .text {
    margin-bottom: 40px;
  }

  #main .head h4 + .link {
    text-align: left;
    margin-bottom: 20px;
    margin-top: 20px;
    border-top: solid 1px #dddddd;
    border-bottom: solid 1px #dddddd;
    padding: 8px 0;
  }

  #main .head .link a {
    font-weight: bold;
    position: relative;
    padding-right: 20px;
    display: block;
  }

  #main .head .link a:after {
    content: "";
    position: absolute;
    vertical-align: middle;
    width: 7px;
    height: 7px;
    border-top: 2px solid #031832;
    border-right: 2px solid #031832;
    top: 50%;
    right: 10px;
    margin-top: -3px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }

  #lavel5 .head {
    display: none;
  }

  #main span.num {
    color: #fff;
    font-size: 2.1rem;
    font-weight: 600;
    text-align: center;
    background-color: #031832;
    border-radius: 40px;
    margin: 0px 20px 0 10px;
    padding: 8px 13px 9px;
    padding: 0;
    line-height: 45px;
    width: 45px;
    height: 45px;
    display: inline-block;
  }

  #main .help {
    margin-top: 38px;
    /* padding-top: 75px; */
    padding-bottom: 40px;
  }

  #main .help .contents-inner {
    border-top: solid 1px #dddddd;
  }

  #main h5.type1 {
    text-align: center;
    font-size: 2rem;
    font-weight: 600;
    position: relative;
    padding: 35px 0 15px;
    margin-bottom: 25px;
    /* width: 100%; */
    margin-left: -25px;
    margin-right: -25px;
  }

  #main h5.type1:after {
    content: "";
    position: absolute;
    width: 40px;
    height: 3px;
    background-color: #031832;
    left: 50%;
    bottom: 0;
    margin-left: -20px;
  }

  #main .help .box {
    border-top: solid 1px #dddddd;
    padding: 15px 0;
    width: 100%;
  }

  #main .help .box:first-of-type {
    /* margin-left: 0; */
  }

  #main .help .box img {
    margin-top: 0;
    width: 150px;
    height: auto;
  }

  #main .help .box .title {
    font-weight: bold;
    margin-bottom: 5px;
    overflow: auto;
    font-size: 1.2rem;
  }

  #main .help .box .text {
    margin-bottom: 20px;
    overflow: auto;
    font-size: 1.2rem;
  }

  #main .help .box .img {
    width: 150px;
    /* margin-bottom: 20px; */
    margin-right: 15px;
    position: relative;
    float: left;
  }

  #main .help .box .img .photoInner {
    width: 200%;
    margin: 0 -50% 20px;
    text-align: center;
  }

  #main .help .box .img .tag {
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #031832;
    color: #fff;
    text-align: center;
    font-size: 1rem;
    font-weight: 600;
    padding: 2px 11px;
    width: 100%;
  }

  #main .help .box:last-child {
    border-bottom: solid 1px #dddddd;
  }

  #main .help .link {
    text-align: center;
    clear: both;
    padding: 21px 0 0;
  }

  #main .help .link a {
    display: block;
    border: solid 1px #0a2445;
    font-size: 1.3rem;
    /* font-weight: bold; */
    text-align: center;
    margin: 0 auto;
    padding: 11px 0 9px;
    border-radius: 3px;
    max-width: 315px;
  }

  #main .help .link strong {
    font-weight: 600;
  }

  #main .title_02 + .help {
    margin-bottom: 40px;
    margin-top: 13px;
    padding-top: 0;
    padding-bottom: 0;
  }

  #main .service {
    padding: 0 30px;
  }

  #main .service .box {
    /* width: 50%; */
    /* float: left; */
    margin-bottom: 30px;
  }

  #main .service .box .img {
    display: block;
    height: 214px;
    background-size: cover;
    background-position: center center;
    margin-bottom: 10px;
    /* padding-top: 194px; */
  }

  #main .service .box:nth-child(1) .img {
    background-image: url(/wp-content/themes/d-quest/images/bg_whistleblowing_business_01.jpg);
  }

  #main .service .box:nth-child(2) .img {
    background-image: url(/wp-content/themes/d-quest/images/bg_whistleblowing_business_02.jpg);
  }

  #main .service .box .img .title {
    font-size: 1.4rem;
    text-align: center;
    margin-bottom: 20px;
    padding-top: 52px;
    line-height: 1.8;
  }

  #main .service .box .img .title span {
    font-size: 2rem;
    font-weight: 600;
  }

  #main .service .box:nth-child(1) .title {
    color: #fff;
  }

  #main .service .box:nth-child(2) .title {
    color: #031832;
  }

  #main .service .box .img .btn {
    font-size: 1rem;
    font-weight: 600;
    text-align: center;
    display: block;
    margin: 0 auto;
    width: 126px;
    padding: 7px 0 7px;
    border-radius: 5px;
  }

  #main .service .box:nth-child(1) .img .btn {
    color: #031832;
    background-color: #fff;
  }

  #main .service .box:nth-child(2) .img .btn {
    color: #fff;
    background-color: #031832;
  }

  #main .service .box .text {
    font-size: 1.2rem;
  }

  #main .otherlink {
    /* width: 1500px; */
    margin: 40px auto 40px;
    padding: 0 30px;
  }

  #main .otherlink .box {
    /* float: left; */
    /* width: 375px; */
    clear: both;
    padding: 15px 0;
    border-bottom: solid 1px #dddddd;
    display: table;
    width: 100%;
  }

  #main .otherlink .box:first-child {
    border-top: solid 1px #dddddd;
  }

  #main .otherlink .box.soon {
    display: none;
  }

  #main .otherlink .box .img {
    background-color: #fff;
    /* height: 232px; */
    /* float: left; */
    width: 100px;
    display: table-cell;
    padding-right: 15px;
  }

  #main .otherlink .box .img img {
    width: 100%;
  }

  #main .otherlink .box .link {
    position: relative;
    /* margin-top: 20px; */
    padding-right: 20px;
    display: table-cell;
    vertical-align: middle;
  }

  #main .otherlink .box .link a {
    font-size: 1.4rem;
    font-weight: 600;
  }

  #main .otherlink .box .link:after {
    content: "";
    position: absolute;
    vertical-align: middle;
    width: 10px;
    height: 10px;
    border-top: 3px solid #031832;
    border-right: 3px solid #031832;
    z-index: 2;
    top: 50%;
    right: 5px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: -5px;
    margin-top: -4px;
  }

  #main.whistleblowing_b .head {
    margin-bottom: 20px;
  }

  #main.compliance .head {
    /* margin-bottom: 30px; */
  }

  #main .box h5 {
    /* border-top: solid 2px #031832; */
    /* border-bottom: solid 2px #031832; */
    margin-bottom: 15px;
    padding: 18px 10px 18px 5px;
    font-weight: 600;
    font-size: 1.8rem;
  }

  #main .box h5.line {
    border-top: solid 2px #031832;
    border-bottom: solid 2px #031832;
  }

  #main h5 span.num {
    margin-right: 15px;
  }

  #main h5 div {
    overflow: auto;
    margin-top: -40px;
    margin-left: 75px;
    font-weight: 600;
  }

  #main .cause .box {
    margin-bottom: 10px;
  }

  #main .cause .box:last-child {
    margin-bottom: 0;
  }

  #main .cause .box img {
    margin-top: 5px;
    width: 100%;
  }

  #main .cause .box.photo-l img {
    /* float: left; */
    /* margin-right: 50px; */
    width: 100%;
  }

  #main .cause .box.photo-r img {
    float: right;
    margin-left: 50px;
  }

  #main .cause .box .box-contents {
    /* overflow: auto; */
    clear: both;
    padding-top: 20px;
  }

  #main .cause .box .box-contents .title {
    margin-bottom: 8px;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.6;
  }

  #main .cause .box .box-contents .text {
    /* margin-bottom: 20px; */
    line-height: 1.8;
    font-size: 1.4rem;
  }

  #main .cause .link {
    margin-top: 15px;
    text-align: left;
    margin-bottom: 32px;
    /*        border-top: solid 1px #dddddd;
        border-bottom: solid 1px #dddddd;*/
    /* padding: 11px 0 11px 5px; */
  }

  #main.compliance .mediadb .contact strong + .link {
    margin-top: 20px;
  }
  #main .cause .box:last-child .link {
    margin-bottom: 0;
  }

  #main .cause .link.center {
    margin: 0 0 20px;
  }

  #main .cause .link li {
    line-height: 1.9;
    border-bottom: solid 1px #dddddd;
  }

  #main .cause .link li:first-child {
    border-top: solid 1px #dddddd;
  }

  #main .cause .link a,
  #main .service .link a {
    display: block;
    width: 100%;
    font-weight: 600;
    position: relative;
    padding: 12px 30px 12px 15px;
    font-size: 1.4rem;
    /*border-top: solid 1px #dddddd;*/
  }

  #main .cause .link a:after,
  #main .service .link a:after {
    content: "";
    position: absolute;
    vertical-align: middle;
    width: 8px;
    height: 8px;
    border-top: 2px solid #031832;
    border-right: 2px solid #031832;
    z-index: 2;
    top: 50%;
    right: 10px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -4px;
  }

  #main .service .link li {
    border-bottom: solid 1px #dddddd;
  }

  #main .service .link li:first-child {
    border-top: solid 1px #dddddd;
  }

  #main .cause .box .box-contents .link li:first-child a,
  #main .service .link a {
    border-top: none;
  }

  #main .cause .box .box-contents .attention {
    font-size: 1.2rem;
    margin-top: 10px;
  }

  #main .feature .contents-inner {
    margin: 0 auto;
    /* width: 880px; */
  }

  #main .feature {
    margin: 0px auto;
    /* width: 880px; */
  }

  #main .feature .box {
    border-top: solid 1px #dddddd;
    padding: 10px 0 20px 0;
  }

  #main .feature .box:last-child {
    border-bottom: solid 1px #dddddd;
    padding-bottom: 20px;
  }

  #main .feature .box h5 {
    font-size: 1.8rem;
    font-weight: 600;
    margin-bottom: 0px;
    padding: 18px 10px 18px 5px;
  }

  #main .feature .box .text {
    margin: 0 0 0 75px;
    line-height: 1.8;
    font-size: 1.4rem;
    word-wrap: break-word;
  }

  #main .img-area {
    margin-top: 20px;
  }

  #main .img-area img {
    width: 100%;
  }

  #main .img-area .contents-inner {
    /* width: 880px; */
    margin: 0 auto;
  }

  #main .cts-body {
    /* margin-bottom:40px; */
  }

  #main .cts-body .contents-inner {
    margin: 0 auto;
    /* width: 880px; */
  }

  #main .img-area + h5 {
    margin-top: 5px;
  }

  #main .btn-contact {
    display: block;
    width: 228px;
    margin: 0 auto;
    background-color: #031832;
    text-align: center;
    color: #fff;
    padding: 10px 15px;
    font-weight: 600;
    font-size: 1.5rem;
    margin-bottom: 5px;
  }

  #main .img-area + .text {
    margin-top: 40px;
  }

  #main .img-area + .btn-contact {
    margin-top: 20px;
  }

  #main .table-type1,
  #main .table-type2,
  #main .table-type3,
  #main .table-type4 {
    width: 100%;
    overflow-y: hidden;
    overflow-x: auto;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    -webkit-overflow-scrolling: touch;
  }

  #main .text + .table-type1 {
    margin-top: 20px;
  }

  #main .table-type1 table {
    width: 740px;
    margin: 0 auto;
  }

  #main .table-type1 thead th {
    color: #fff;
    background-color: #031832;
  }

  #main .table-type1 tbody td {
    background-color: #f3f3f3;
  }

  #main .table-type1 thead th,
  #main .table-type1 tbody td {
    border-right: solid 5px #fff;
    text-align: center;
    padding: 10px 0;
    border-top: solid 1px #031832;
    vertical-align: middle;
    font-size: 1.25rem;
  }

  #main .table-type1 thead th:nth-child(1) {
    width: 170px;
  }

  #main .table-type1 thead th:nth-child(2) {
    width: 290px;
  }

  #main .table-type1 tbody td:nth-child(2) {
    text-align: left;
    padding: 0 10px 0 50px;
  }

  #main .table-type1 tbody td:nth-child(2) span {
    display: block;
    padding-right: 50px;
    width: 100px;
    float: left;
  }

  #main .table-type4 table {
    width: 100%;
  }

  #main .table-type4 tbody th,
  #main .table-type4 tbody td {
    display: inline-block;
  }

  #main .table-type4 tbody th {
    width: 100%;
    border-top: solid 1px #031832;
    text-align: left;
    padding: 10px 15px;
    font-size: 1.6rem;
    font-weight: bold;
  }

  #main .table-type4 tbody td {
    background-color: #f3f3f3;
    padding: 10px 15px 20px;
    /*border-top: solid 1px #031832;*/
    vertical-align: middle;
    width: 100%;
    font-size: 1.4rem;
  }

  #main .table-type4 tbody th:last-of-type,
  #main .table-type4 tbody td:last-of-type {
    /*border-bottom: solid 1px #031832;*/
  }
  #main .table-type4 tbody tr:last-of-type td {
    border-bottom: solid 1px #031832;
  }

  #main .contents-inner + .box-imgL {
    margin-top: 45px;
    margin-bottom: 90px;
  }

  #main .box-imgL {
    margin: 20px auto 40px;
    padding: 0 30px;
  }

  #main .box-imgL img {
    /* float: left; */
    /* margin-right:50px; */
    /* margin-top: 10px; */
    width: 100%;
  }

  #main .box-imgL .text {
    overflow: auto;
    line-height: 1.8;
    margin-top: 20px;
    font-size: 1.4rem;
  }

  #main .service {
    /* width: 1000px; */
    margin: 40px auto 35px;
  }

  #main .service:first-child {
    padding-top: 30px;
  }

  #main .service:last-child {
    margin-bottom: 0;
    padding-bottom: 20px;
  }

  #main .service.img-l img {
    /* float: left; */
    /* margin-right: 50px; */
    width: 100%;
  }

  #main .service.img-r img {
    /* float: right; */
    /* margin-left: 50px; */
    width: 100%;
  }

  #main .service .cts {
    /* width: 500px; */
    /* float: left; */
    margin-top: 30px;
  }

  #main .service.img-l .cts {
    /* float: left; */
    margin: 21px 0 0;
  }

  #main .service.img-r .cts {
    float: right;
  }

  #main .service .cts .title {
    color: #031832;
    font-weight: 600;
    font-size: 1.9rem;
    border-top: solid 2px #031832;
    border-bottom: solid 2px #031832;
    margin-bottom: 15px;
    padding: 15px 0 7px 10px;
  }

  #main .service .cts .text {
    line-height: 1.8;
    margin-bottom: 10px;
    font-size: 1.4rem;
  }

  #main .service .cts .text .link {
    margin-top: 20px;
  }

  #main .service .cts .text .attention {
    font-size: 1.2rem;
    margin-top: 20px;
    line-height: 1.6;
  }

  #main .service .cts .text .kaigai-box {
    clear: both;
    margin-top: 10px;
  }
  #main .service .cts .text .kaigai-box:first-child {
    margin-top: 0;
  }
  #main .service .cts .text .kaigai-box p {
    line-height: 1.75;
    margin-bottom: 10px;
  }
  #main .service .cts .text .kaigai-box ul {
  }
  #main .service .cts .text .kaigai-box ul li {
    border: none;
    float: inherit;
    line-height: 1.75;
    margin: 0;
    padding: 0;
    display: block;
  }
  #main .service .cts .text .kaigai-box > ul > li {
    font-size: 1.4rem;
  }
  #main .service .cts .text .kaigai-box > ul > li span {
    float: left;
    padding: 0;
    margin: 0;
  }
  #main .service .cts .text .kaigai-box ul li > ul {
    margin-top: 5px;
  }
  #main .service .cts .text .kaigai-box ul li > ul > li {
    font-size: 1.1rem;
    line-height: 1.75;
  }
  #main .service .cts .text .kaigai-box strong {
    display: block;
    font-weight: bold;
  }

  #main.compliance .distinction {
    margin-top: 30px;
    margin-bottom: 35px;
  }
  #main.compliance-kaigai .distinction {
    margin-bottom: 0;
  }

  #main.compliance .distinction ul {
    /* display: table; */
  }

  #main.compliance .distinction li div {
    display: table-cell;
    padding: 10px 0;
    vertical-align: middle;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: left;
  }

  #main.compliance .distinction li {
    font-size: 1.4rem;
    float: left;
    display: table-cell;
    /* display: table; */
    width: 100%;
    border-bottom: solid 1px #dddddd;
    overflow: auto;
    /* margin-right: 20px;*/
  }

  #main.compliance .distinction li span {
    float: left;
    padding: 6px 14px 6px;
    margin-top: 20px;
    margin-left: 10px;
    line-height: 35px;
  }

  #main.compliance .distinction li:nth-child(2n) {
    margin-right: 0;
  }

  #main.compliance .distinction li:nth-child(1),
  #main.compliance .distinction li:nth-child(2) {
    /*border-top: solid 1px #dddddd;*/
  }

  #main.compliance .distinction .nav-toggle li {
    border: none;
  }

  #main.compliance .distinction ul {
    /* display: table; */
  }

  #main.compliance .distinction .list li div {
    display: table-cell;
    height: 85px;
    vertical-align: middle;
    font-size: 1.6rem;
    font-weight: bold;
    position: relative;
    /* top: 10px; */
    margin-bottom: 50px;
  }

  #main.compliance .distinction .list li {
    /* float: left; */
    /* display: table; */
    /* width: 420px; */
    border-top: solid 1px #dddddd;
    overflow: auto;
    padding: 0px 0px;
    /* margin-bottom: 20px; */
  }

  #main.compliance .distinction .list li span {
    float: left;
    /* padding: 6px 16px 6px; */
    margin-top: 20px;
    margin-left: 10px;
    position: relative;
    top: 0px;
  }

  #main.compliance .distinction .list li:nth-child(2n) {
    margin-right: 0;
  }

  #main.compliance .distinction dd ul:nth-child(2) li:last-of-type {
    border-bottom: solid 1px #dddddd;
  }

  #main.compliance .distinction .nav-toggle dd ul:nth-child(2) li:last-of-type {
    border: none;
  }

  #main .title-check {
    width: 270px;
    padding: 10px 18px;
    text-align: center;
    margin: 0 auto;
    border: solid 2px #092343;
    font-weight: bold;
    display: block;
  }

  #main.compliance .servicemenu {
    width: 100%;
    background-color: #f3f3f3;
    text-align: center;
    padding: 25px 0;
  }

  #main.compliance .servicemenu img {
    text-align: center;
    width: 94%;
    margin: 0 auto;
    padding-left: 0;
  }

  #main.compliance .mediadb {
    margin-top: 30px;
    margin-bottom: 10px;
  }

  #main.compliance .mediadb .contact strong {
    font-weight: 600;
    font-size: 1.4rem;
  }

  #main.compliance .mediadb .contact .btn-contact {
    margin: 25px auto 0;
  }

  #main.compliance .mediadb .contact .btn-contact span {
    position: relative;
    padding-right: 16px;
  }

  #main.compliance .mediadb .contact .btn-contact span:after {
    content: "";
    position: absolute;
    width: 7px;
    height: 7px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    z-index: 2;
    top: 50%;
    right: 3px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -4px;
  }

  #main.compliance .administration {
    margin-top: 0px;
  }

  #main.compliance .administration .bg-blue {
    padding: 0 0 0px;
  }

  #main.compliance .administration .contents-inner {
    padding: 30px 0 20px;
  }

  #main.compliance .administration .title {
    font-size: 2rem;
    font-weight: 600;
    text-align: center;
    margin-bottom: 20px;
  }

  #main.compliance .administration .title span {
    font-size: 1.4rem;
  }

  #main.compliance .administration .circle {
    background-color: #438bca;
    color: #fff;
    width: 230px;
    text-align: center;
    border-radius: 30px;
    margin: 0 auto 30px;
    padding: 6px;
    font-weight: 600;
    font-size: 1.4rem;
  }

  #main.compliance .administration ul {
    padding: 0 10px;
  }

  #main.compliance .administration li {
    text-align: center;
    padding-bottom: 15px;
    margin-bottom: 40px;
    position: relative;
  }

  #main.compliance .administration li:last-child {
    margin-bottom: 0;
  }

  #main.compliance .administration li:last-child:after {
    display: none;
  }

  #main.compliance .administration li:after {
    content: "";
    position: absolute;
    width: 16px;
    height: 16px;
    border-top: 4px solid #031832;
    border-right: 4px solid #031832;
    z-index: 2;
    bottom: -18px;
    left: 50%;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    margin-left: -8px;
  }

  #main.compliance .administration li span {
    width: 280px;
    display: block;
    margin: 20px auto 0;
    padding: 4px 0;
    border: solid 1px #438bca;
    background-color: #fff;
    border-radius: 5px;
    color: #438bca;
    font-weight: 600;
  }

  #main.compliance .administration li img {
    border: solid 4px #f3f3f3;
    width: 100%;
    margin-bottom: -12px;
  }

  #main.compliance .check-list {
    margin-top: 23px;
    margin-left: 0;
    margin-bottom: 20px;
  }

  #main.compliance .check-list .contents-inner {
  }

  #main.compliance .check-list ul {
    /* display: table; */
  }

  #main.compliance .check-list li {
    width: 100%;
    display: table;
    border-bottom: solid 1px #dddddd;
    overflow: auto;
    margin-right: 20px;
    background-image: url(/wp-content/themes/d-quest/images/icon_checklist.png);
    background-repeat: no-repeat;
    background-position: 2px 18px;
    font-size: 1.4rem;
    font-weight: 600;
    padding: 16px 10px 11px 30px;
  }

  #main.compliance .check-list li span {
    float: left;
    padding: 6px 16px 6px;
    margin-top: 20px;
    margin-left: 10px;
  }

  #main.compliance .check-list li:nth-child(2n) {
    margin-right: 0;
  }

  #main.compliance .check-list li:nth-child(1),
  #main.compliance .check-list li:nth-child(2) {
  }

  #main.compliance .check-list li.oneline {
  }

  #main.compliance .check-list li:first-child {
    border-top: solid 1px #dddddd;
  }
  #main.compliance .table-type4 li {
    /* width: 50%; */
    /* float: left; */
    border: none !important;
    line-height: 1.85;
  }

  #main.compliance .table-type4 div {
    /* width: 50%; */
    float: left;
  }
  #main.compliance .table-type4 div:first-child {
    margin-right: 25px;
  }

  #main .price {
    overflow: hidden;
  }

  #main .price .contents-inner {
    margin: 0 0 0 30px;
  }

  #main .price {
    padding-top: 0;
    /* margin-bottom: 65px; */
  }

  #main .price table {
    width: 530px;
    margin: 0 auto;
    border-collapse: collapse;
    border-bottom: solid 1px #031832;
    padding-bottom: 1px;
  }

  #main .price thead th {
    background-color: #031832;
    color: #fff;
    text-align: center;
    padding: 14px 0;
    font-size: 1rem;
    width: 150px;
    position: relative;
    border-bottom: solid 1px #031832;
  }

  #main .price thead th:first-child {
    background-color: #fff;
    width: 140px;
    border-right: none;
    border-bottom: none;
  }

  #main .price thead th:nth-child(2) {
    width: 150px;
  }

  #main .price thead th:nth-child(3) {
    width: 200px;
  }

  #main .price tbody tr {
    border-bottom: solid 1px #031832;
  }

  #main .price tbody {
    height: 100%;
    background-color: #f3f3f3;
  }

  #main .price tbody th,
  #main .price tbody td {
    vertical-align: middle;
    text-align: left;
    border-bottom: solid 1px #031832;
    overflow: hidden;
  }

  #main .price tbody th {
    font-size: 1.3rem;
    font-weight: 600;
    padding: 10px 0 10px 15px;
    /* height: 40px; */
    background-color: #fff;
  }

  #main .price tbody td {
    height: 100%;
    text-align: center;
    padding: 16px;
    font-size: 1.1rem;
    position: relative;
  }

  #main .price thead th:before,
  #main .price tbody td:before {
    content: "";
    position: absolute;
    border-right: solid 5px #fff;
    min-height: 100vh;
    height: 100%;
    bottom: 0px;
    right: 0;
  }

  #main .price thead th:last-child:before,
  #main .price tbody td:last-child:before {
    border-right: none;
  }

  #main .price .attention {
    /* text-align:right; */
    font-size: 1.2rem;
    margin-top: 10px;
  }

  #main .price tbody tr:first-child th {
    background-color: #fff;
    width: 340px;
  }

  #main.compliance .case_study {
    margin: 55px 0 0px 0;
  }

  #main.compliance .case_study + h5.type1 {
  }

  #main.compliance .case_study .contents-inner {
  }

  #main.compliance .case_study dt {
    font-size: 1.8rem;
    font-weight: 600;
    border-bottom: solid 1px #031832;
    padding: 0 0 5px 0;
    margin-bottom: 20px;
  }

  #main.compliance .case_study dd {
    font-size: 1.4rem;
    margin-bottom: 50px;
    line-height: 1.8;
  }

  #main.compliance .case_study dd:last-child {
    margin-bottom: 0;
  }

  #main.compliance .slide {
    width: 100%;
    overflow-y: hidden;
    overflow-x: auto;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    -webkit-overflow-scrolling: touch;
  }

  #main.compliance .slide img {
    width: 530px;
    margin: 0 auto;
  }

  #main.compliance .cts-changsha {
    margin-top: 50px;
  }
  #main.compliance-kaigai .cts-changsha {
    margin-top: 0px;
  }

  #main.compliance .cts-changsha .img-area .contents-inner {
    /* width: 1000px; */
  }

  #main.compliance .cts-changsha .nav-toggle {
    /* width: 880px; */
    padding-top: 30px;
    margin: 0 auto;
  }

  #main.compliance .cts-changsha .nav-toggle dt {
    border: solid 2px #000000;
    position: relative;
    font-size: 1.4rem;
    font-weight: 600;
    padding: 15px 40px 15px 15px;
    cursor: pointer;
    margin-bottom: 10px;
  }

  #main.compliance .cts-changsha .nav-toggle dt::before,
  #main.compliance .cts-changsha .nav-toggle dt::after {
    position: absolute;
    top: 50%;
    right: 21px;
    margin-top: -3px;
    content: "";
    display: inline-block;
    width: 11px;
    height: 11px;
    border-top: 2px solid #000;
    transform: translateX(-50%);
    transition: 0.3s;
  }

  #main.compliance .cts-changsha .nav-toggle dt:after {
    right: 31px;
    transform: rotate(90deg);
    margin-top: -7px;
  }

  #main.compliance .cts-changsha .nav-toggle dt.close::after {
    display: none;
  }

  #main .mv .cnav.active .switch:after {
    display: none;
  }

  #main.compliance .cts-changsha .nav-toggle dd {
    display: none;
    margin: 20px 0 55px 0;
    padding: 0 25px;
  }

  #main.compliance .cts-changsha .nav-toggle dd ul {
    /* width: 400px; */
    /* float: left; */
    width: 100%;
    clear: both;
    margin-right: 30px;
  }

  #main.compliance .cts-changsha .nav-toggle dd ul:last-child {
    margin-right: 0;
  }

  #main.compliance .cts-changsha .nav-toggle dd ul li {
    line-height: 1.45;
    margin-bottom: 12px;
  }

  #main .cts-other {
    padding: 34px 0 30px 0;
    margin-bottom: 30px;
  }

  #main .cts-other h6 {
    text-align: left;
    font-weight: 600;
    clear: both;
    font-size: 1.6rem;
  }

  #main .cts-other .cause {
    margin-bottom: -15px;
  }

  #main .cts-other .other-changsha {
    margin: 20px 0 40px;
  }

  #main .cts-other .other-changsha dt,
  #main .cts-other .other-changsha dd {
    /* float: left; */
    /* border-bottom: solid 1px #dddddd; */
  }

  #main .cts-other .other-changsha dt:first-of-type,
  #main .cts-other .other-changsha dd:first-of-type {
    /* border-top: solid 1px #dddddd; */
  }

  #main .cts-other .other-changsha dt {
    font-weight: 600;
    border-top: solid 1px #dddddd;
    padding-top: 11px;
    font-size: 1.4rem;
  }

  #main .cts-other .other-changsha dd:last-of-type {
    border-bottom: solid 1px #dddddd;
  }

  #main .cts-other .other-changsha dd {
    padding-bottom: 12px;
    font-size: 1.4rem;
    line-height: 1.8;
  }

  #main .cts-other .img-flow {
    margin: 20px 0 40px;
  }

  #main .cts-other .img-flow img {
    width: 100%;
  }

  #main .cts-other .other-steplist {
    margin: 30px 0 40px;
  }

  #main .cts-other .other-steplist:last-child {
    margin-bottom: 0;
  }

  #main .cts-other .other-steplist > li {
    border-bottom: solid 1px #dddddd;
    padding: 5px 0 15px 0;
    margin-bottom: 15px;
  }

  #main .cts-other .other-steplist > li:first-child {
    border-top: solid 1px #dddddd;
    padding-top: 15px;
  }

  #main .cts-other .other-steplist > li:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
  }

  #main .cts-other .other-steplist .title,
  #main .cts-other .other-steplist .list {
  }

  #main .cts-other .other-steplist .title {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 0;
  }

  #main .cts-other .other-steplist .list {
  }

  #main .cts-other .other-steplist .list .text {
    line-height: 1.85;
  }

  #main .cts-other .other-steplist li ul li {
    list-style-type: disc;
    line-height: 1.65;
    /* list-style: inside; */
    font-size: 1.5rem;
    margin-left: 20px;
  }

  #main .cts-other .other-steplist .list .list-title {
    font-weight: 600;
    margin-top: 5px;
    margin-bottom: 5px;
    font-size: 1.4rem;
  }

  #main .cts-other .box h5 {
    border-top: solid 2px #031832;
    border-bottom: solid 2px #031832;
    padding: 11px 10px 11px 5px;
  }

  #main.l2-sub .cts-body .contents-inner {
    margin: 0 30px;
  }

  #main.l2-sub .head .text {
    margin-bottom: 10px;
  }

  #main.l2-sub .text-eng {
    margin: 10px 0 0px 0;
    color: #999999;
    font-size: 1.3rem;
    line-height: 1.5;
  }

  #main.l2-sub .text-eng.bottom {
    clear: both;
    margin: 0 0 50px 0;
    /* padding-top: 20px; */
    line-height: 1.8;
    color: #999999;
    font-size: 1.3rem;
  }

  #main.l2-sub .text.bottom {
    padding-top: 20px;
    line-height: 1.8;
    margin-bottom: 20px;
  }

  #main .delegate {
    margin-top: 40px;
    margin-bottom: 0px;
  }

  #main .delegate .photo {
    width: 100%;
  }

  #main .delegate .photo img {
    width: 100%;
  }

  #main .delegate .info {
    /* float: left; */
    margin-top: 17px;
    /* width: 500px; */
    clear: both;
  }

  #main .delegate .info .name,
  #main .delegate .info .name_eng {
    padding-left: 0;
  }

  #main .delegate .info .name {
    font-size: 1.3rem;
    line-height: 1.7;
    font-weight: bold;
    margin-bottom: 8px;
  }

  #main .delegate .info .name span {
    font-size: 2.1rem;
    font-weight: 600;
  }

  #main .delegate .info .name_eng {
    font-size: 1.2rem;
    line-height: 1;
  }

  #main .delegate .info .occupation {
    font-size: 1.3rem;
    border-top: solid 2px #aa2f2f;
    padding-bottom: 18px;
    margin-top: 17px;
    padding-top: 11px;
    line-height: 1.3;
  }

  #main .delegate .info .occupation span {
    color: #999999;
    font-size: 1.3rem;
  }

  #main .delegate .info .occupation_head {
    font-size: 1.3rem;
    font-weight: 600;
    padding-bottom: 5px;
    line-height: 1.8;
  }

  #main .delegate .info .occupation_head span {
    font-size: 1.2rem;
  }

  #main .delegate .info .explanation p {
    margin-bottom: 5px;
  }

  #main .delegate .info .explanation {
    font-size: 1.2rem;
    padding-bottom: 17px;
    border-bottom: solid 1px #dddddd;
  }

  #main.acfejapan .box-imgL {
    margin-bottom: 0px;
    padding: 0;
  }

  #main.acfejapan .cts-other {
    margin-bottom: 15px;
    padding-bottom: 25px;
    padding-top: 10px;
  }

  #main.acfejapan .cts-other .cause {
    margin-bottom: 0;
  }

  #main.acfejapan .cts-body {
    margin-bottom: 0px;
  }

  #main .list-column {
    margin-top: 60px;
    margin-bottom: 20px;
  }

  #main .list-column .box {
    clear: both;
    margin-bottom: 20px;
    border-bottom: solid 1px #eee;
    padding-bottom: 20px;
  }

  #main .list-column .box img {
    float: left;
    width: 120px;
    margin-right: 15px;
  }

  #main .list-column .box:first-child {
    border-top: solid 1px #eee;
    padding-top: 20px;
  }

  #main .list-column .box:last-child {
    margin-right: 0;
  }

  #main .list-column .box .title {
    margin-top: 0;
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1.5;
    overflow: auto;
  }

  #main .list-column .box .title span {
    color: #999999;
    font-size: 1rem;
  }

  #main.acfejapan .price thead th:nth-child(1) {
    width: 700px;
  }

  #main.acfejapan .price thead th:nth-child(2),
  #main.acfejapan .price thead th:nth-child(3) {
    width: 160px;
  }

  #main.acfejapan .price tbody td {
    font-size: 1.4rem;
  }

  #main.acfejapan .price {
    margin-bottom: 40px;
    margin-top: 36px;
  }

  #main .title-check {
    width: 315px;
    border: solid 1px #092343;
    font-size: 1.3rem;
    margin: 0 auto;
    text-align: center;
    border-radius: 5px;
    padding: 10px 20px;
  }

  #main .title-check span {
    background-image: url(/wp-content/themes/d-quest/images/icon_blank.png);
    background-repeat: no-repeat;
    background-position: left 2px;
    padding-left: 20px;
    font-weight: 600;
    display: block;
  }

  #main.acfejapan .cts-other .box h5 {
    margin-top: 20px;
  }

  #main.acfejapan .delegate .photo {
    width: 160px;
    margin: 0 auto 30px;
  }

  #main.acfejapan .delegate {
    margin-top: 30px;
  }

  #main.acfejapan .text.bottom {
    margin-bottom: 0;
  }

  #main.acfejapan .contents {
    margin-bottom: 60px;
  }

  main.compliance.faq .contents .contents-inner {
    padding: 0 15px;
  }

  #main .cts-why {
  }

  #main .cts-why .contents-inner {
    /* width: 880px; */
  }

  #main .cts-why h3 {
    font-size: 2.6rem;
  }

  #main .cts-why h3 {
    font-size: 2rem;
    font-weight: 600;
    position: relative;
    margin-bottom: 22px;
    padding-top: 5px;
    padding-bottom: 18px;
    text-align: center;
  }

  #main .cts-why h3:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 40px;
    height: 3px;
    background-color: #aa2f2f;
    margin-left: -20px;
  }

  #main .cts-why .text {
    line-height: 1.8;
    font-size: 1.4rem;
  }

  #main .cts-why .text + .img-area {
    margin-top: 10px;
  }

  #main .cts-why .img-area {
    margin-bottom: 0px;
  }

  #main .cts-why h4 {
    border-bottom: solid 2px #000;
    font-size: 1.6rem;
    font-weight: 600;
    padding-bottom: 11px;
    margin-bottom: 15px;
    margin-top: 35px;
  }

  #main .cts-why .attention li {
    font-size: 1.2rem;
  }

  #main .cts-why .text + .attention {
    margin-top: 10px;
    margin-bottom: 15px;
  }

  #main .cts-why .text p {
    margin-bottom: 16px;
  }

  #main .cts-why .text p strong {
    font-weight: 600;
  }

  #main .cts-why .text p:last-child {
    margin-bottom: 0;
  }

  #main .cts-why .box-case {
    margin-top: 14px;
    margin-bottom: 5px;
  }

  #main .cts-why .box-case .box {
    float: left;
    width: 100%;
    background-color: #f3f3f3;
    padding: 20px 18px 16px;
    margin-bottom: 15px;
  }

  #main .cts-why .box-case .box:last-child {
    margin-right: 0;
  }

  #main .cts-why .box-case .box .title {
    background-color: #031832;
    color: #fff;
    text-align: center;
    border-radius: 30px;
    margin: 0 auto 10px;
    padding: 3px 0;
    /* width: 240px; */
    font-size: 1.8rem;
    font-weight: 600;
  }

  #main .cts-why .box-case .box .text {
    line-height: 1.7;
  }

  #main .cts-why .box-risk {
    margin-top: 30px;
  }

  #main .cts-why .box-risk li {
    width: 100%;
    background-color: #f3f3f3;
    margin: 0 0 20px 0;
    padding: 24px 0;
    text-align: center;
    font-weight: 600;
    font-size: 1.8rem;
  }

  #main .cts-why .box-risk li:last-child {
  }

  #main .cts-why .box-imgR {
    margin-bottom: 25px;
  }

  #main .cts-why .box-imgR img {
    width: 100%;
    margin-bottom: 10px;
  }

  #main .cts-why .box-imgR .text {
    font-size: 1.4rem;
    overflow: auto;
  }

  #main .cts-why .box-imgR .text .title {
    font-weight: 600;
    margin-bottom: 10px;
    font-size: 1.6rem;
  }

  #main .cts-why .box-imgR + .text {
    margin-top: 25px;
  }

  #main.itmk .cts-body {
    margin-bottom: 20px;
  }

  #main.itmk .feature {
    margin-bottom: 20px;
  }

  #main.itmk .feature .contents-inner {
    margin: 0 30px;
  }

  #main.itmk h4 {
    font-size: 1.6rem;
    margin-bottom: 28px;
    line-height: 1.6;
    text-align: center;
    font-weight: bold;
  }

  #main.itmk .box-imgL {
    margin-bottom: 38px;
  }

  #main.itmk .delegate .photo {
    width: 50%;
    margin: 0 auto;
  }

  #main.itmk .delegate .info {
  }

  #main.itmk .delegate {
    margin-top: 10px;
  }

  #search .contents-inner {
    padding: 0 30px;
  }

  #search .consequence {
    margin-top: 30px;
    margin-bottom: 30px;
  }

  #search .box {
    border-bottom: 1px solid #efefef;
    padding: 40px 0;
  }

  #search .box .title,
  #search .box .url {
    margin-bottom: 10px;
  }

  #search .box .url {
    color: #666;
    font-size: 0.9rem;
    word-wrap: break-word;
  }

  #search .box .body {
    font-size: 1rem;
    color: #000;
  }

  #not_found {
  }

  #not_found .consequence {
    background: #f3f3f3;
    margin: 0;
    padding-bottom: 40px;
    padding-top: 45px;
    width: 100%;
  }

  #not_found .contents-inner {
    padding: 0 30px;
  }

  #not_found .consequence .text {
    text-align: center;
  }

  #not_found .consequence .text > *:nth-child(1) {
    color: #031832;
    font-family: "Lato", sans-serif;
    font-size: 35px;
    font-weight: bold;
    line-height: 1;
  }

  #not_found .consequence .text > *:nth-child(2) {
    color: #031832;
    font-size: 14px;
    font-weight: bold;
    line-height: 32.4px;
    margin: 8px 0 0;
  }

  #not_found .consequence .text > *:nth-child(3) {
    color: #031832;
    font-size: 14px;
    line-height: 25.2px;
    margin: 6px 0 0;
  }

  #not_found .consequence .text > div:nth-child(4) a {
    /* background: #fff; */
    border: 1px solid #031832;
    border-radius: 3px;
    display: block;
    font-size: 14px;
    font-weight: bold;
    /* letter-spacing: .075em; */
    line-height: 1;
    margin: 15px auto 0;
    padding: 12px 10px;
    text-align: center;
    width: 100%;
    max-width: 180px;
  }

  #not_found .search {
    padding: 32px 0 0;
    text-align: center;
  }

  #not_found .search .text {
    padding-bottom: 17px;
    text-align: center;
  }

  #not_found .search .text > *:nth-child(1) {
    color: #031832;
    font-size: 14px;
    font-weight: bold;
    line-height: 32.4px;
  }

  #not_found .search .text > *:nth-child(2) {
    color: #031832;
    font-size: 14px;
    line-height: 25.2px;
  }

  #not_found .search .text > *:nth-child(2) br {
    display: block;
  }

  #not_found .search .search_container {
    margin: 0 auto;
    position: relative;
    z-index: 10;
    width: 100%;
    max-width: 500px;
  }

  #not_found .search .search_container input[type="text"] {
    border: none;
    height: 40px;
    padding: 2px 20px 0;
    width: 100%;
    background: #f5f5f5;
    border-radius: 40px;
    color: #031832 !important;
    display: block;
    outline: 0;
    cursor: pointer;
  }

  #not_found .search .search_container input[type="text"]::-ms-reveal,
  #not_found .search .search_container input[type="text"]::-ms-clear {
    visibility: hidden;
  }

  #not_found .search .search_container input[type="submit"] {
    cursor: pointer;
    border: none;
    background: transparent;
    color: #fff;
    position: absolute;
    width: 24px;
    height: 24px;
    right: 16px;
    top: 50%;
    outline: none;
    background-image: url(/wp-content/themes/d-quest/images/btn_search_indigo.svg);
    background-repeat: no-repeat;
    background-size: 16px 16px;
    background-position: center center;
    z-index: 30;
    transform: translateY(-50%);
  }

  #main.aboutus #lavel2 .bg1,
  #main.aboutus #lavel2 .bg2 {
    background-size: cover;
    background-repeat: no-repeat;
    /* padding: 85px 0 110px; */
  }

  #main.aboutus #lavel2 .bg1 {
    background-image: url(/wp-content/themes/d-quest/images/img_about_bg_sp_01.jpg);
    margin-top: 40px;
    margin-bottom: 5px;
    padding: 60px 0 20px;
  }

  #main.aboutus #lavel2 .bg2 {
    background-image: url(/wp-content/themes/d-quest/images/img_about_bg_sp_02.jpg);
    padding: 25px 0 20px;
    margin-bottom: 40px;
  }

  #main.aboutus #lavel2 .bg1 .contents-inner,
  #main.aboutus #lavel2 .bg2 .contents-inner {
    margin: 0 auto;
    text-align: center;
  }

  #main.aboutus #lavel2 .bg1 > .contents-inner {
    padding: 0 25px;
  }

  #main.aboutus #lavel2 .bg2 .contents-inner {
    padding: 0 30px;
  }

  #main.aboutus #lavel2 .bg1 h4 {
    color: #fff;
    font-size: 3rem;
    font-family: "Lato", sans-serif;
    text-align: center;
    position: relative;
    padding-bottom: 10px;
  }

  #main.aboutus #lavel2 .bg1 h4:after {
    content: "";
    position: absolute;
    width: 40px;
    height: 3px;
    background-color: #fff;
    left: 50%;
    bottom: 0;
    margin-left: -20px;
  }

  #main.aboutus #lavel2 .bg1 h4 + .text {
    margin-top: 15px;
  }

  #main.aboutus #lavel2 .bg1 .text {
    color: #fff;
    font-weight: 600;
    text-align: left;
    margin-bottom: 40px;
  }

  #main.aboutus #lavel2 .bg1 .box-three {
    margin-bottom: 20px;
  }

  #main.aboutus #lavel2 .bg1 .img-area {
    margin: 0 auto 20px;
    /* text-align:center; */
  }

  #main.aboutus #lavel2 .bg1 .img-area .contents-inner,
  #main.aboutus #lavel2 .constitution .img-area {
    max-width: 325px;
    width: 100%;
  }

  #main.aboutus #lavel2 .bg1 .img-area img,
  #main.aboutus #lavel2 .constitution .img-area img {
    width: 100%;
    margin: 0 auto;
  }

  #main.aboutus #lavel2 .bg1 .box-three .text:last-of-type {
    margin-bottom: 0;
  }

  #main.aboutus #lavel2 .bg1 .box-ft .box {
    padding: 10px 30px 0 30px;
    position: relative;
    margin-bottom: 15px;
  }

  #main.aboutus #lavel2 .bg1 .box-ft .box .data {
    color: #031832;
    background-color: #fff;
    text-align: center;
    border-radius: 20px;
    /* width: 240px; */
    margin: 0 auto 10px;
    font-weight: 600;
    font-family: "Lato", sans-serif;
  }

  #main.aboutus #lavel2 .bg1 .box-ft .box .text {
    color: #fff;
    margin-bottom: 0;
    font-size: 1.2rem;
  }

  #main.aboutus #lavel2 .constitution {
    margin-bottom: 0px;
  }

  #main.aboutus #lavel2 .constitution .contents-inner {
    margin: 0 auto;
  }

  #main.aboutus #lavel2 .constitution .img-area {
    background-color: #f3f3f3;
    margin: 0 auto 20px;
    padding: 20px 20px 25px;
  }

  #main.aboutus #lavel2 .constitution .box {
    background-color: #f3f3f3;
    padding: 15px 20px;
    margin: 0 30px;
  }

  #main.aboutus #lavel2 .constitution .box dl {
    margin-bottom: 20px;
  }

  #main.aboutus #lavel2 .constitution .box dl dt,
  #main.aboutus #lavel2 .constitution .box dl dd {
    line-height: 1.4;
  }

  #main.aboutus #lavel2 .constitution .box dl dt {
    width: 100%;
    font-weight: 600;
    font-size: 1.5rem;
    margin-bottom: 15px;
    padding-bottom: 5px;
    border-bottom: solid 1px #dddddd;
  }

  #main.aboutus #lavel2 .constitution .box dl dd {
  }

  #main.aboutus #lavel2 .constitution .box dl dd .title {
    font-size: 1.4rem;
    margin-bottom: 10px;
    font-weight: 600;
  }

  #main.aboutus #lavel2 .constitution .box dl dd .text {
    color: #031832;
    font-size: 1.4rem;
  }

  #main.aboutus #lavel2 .enterprise {
    margin-bottom: 0px;
  }

  #main.aboutus #lavel2 .enterprise .service .catch {
    font-weight: 600;
    margin-bottom: 10px;
  }

  #main.aboutus #lavel2 .dq_strong {
    margin-top: 30px;
  }

  #main.aboutus #lavel2 .dq_strong .box {
    background: rgba(255, 255, 255, 0.3);
    position: relative;
    padding: 20px 15px 25px;
  }

  #main.aboutus #lavel2 .dq_strong .box {
    margin-bottom: 20px;
    /* padding: 45px 60px; */
  }

  #main.aboutus #lavel2 .dq_strong .box .text {
    line-height: 1.8;
  }

  #main.aboutus #lavel2 .dq_strong .box .text {
    color: #fff;
  }

  #main.aboutus #lavel2 .dq_strong .box .title {
    color: #fff;
    /* position: absolute; */
    font-size: 1.8rem;
    font-weight: 600;
    text-align: center;
    line-height: 1.4;
    margin-bottom: 15px;
  }

  #main.aboutus #lavel2 .dq_strong .box .title {
    top: 60px;
    left: 60px;
  }

  #main.aboutus #lavel2 .dq_strong .box .title img {
    width: 80px;
    margin-bottom: 15px;
  }

  #main.aboutus #lavel2 .dq_strong .box .text {
    margin-left: 0;
  }

  #main.whistleblowing_b.domestic .img-area-1 .attent,
  #main.whistleblowing_b.overseas .img-area-1 .attent {
    margin-top: 10px;
    font-size: 1.4rem;
  }

  #main h3.h3-toggle {
    font-size: 1.6rem;
    font-weight: 600;
    margin-top: 13px;
    margin-bottom: 15px;
  }

  #main h3.h3-toggle:first-of-type {
    margin-top: -15px;
  }

  #main #topics h2.type2 {
    margin: 45px;
  }

  #main #topics .searchbar {
    background-color: #031832;
    width: 100%;
    height: 64px;
    margin-bottom: 36px;
    position: relative;
    z-index: 1;
  }

  #main #topics .searchbar .search_container {
    position: relative;
  }

  #main #topics .searchbar .contents-inner {
    width: 84%;
    padding: 13px 0 0;
  }

  #main #topics .searchbar .search_container input[type="text"] {
    border: none;
    height: 36px;
    padding: 0 10px 0;
    width: 100%;
    background: #818c99;
    color: #031832;
    display: block;
    position: relative;
    z-index: 10;
    cursor: pointer;
    transition: 0.3s;
  }

  #main #topics .searchbar .search_container input::-ms-clear {
    visibility: hidden;
  }

  #main #topics .searchbar .search_container input[type="text"]:focus,
  #main #topics .searchbar .search_container input[type="text"].active {
    outline: 0;
    background: #fff;
  }

  #main
    #topics
    .searchbar
    .search_container
    input[type="text"]:focus
    + input[type="submit"] {
  }

  #main #topics .searchbar .search_container input[type="submit"] {
    cursor: pointer;
    border: none;
    background: none;
    color: #fff;
    position: absolute;
    width: 24px;
    height: 24px;
    right: 12px;
    top: 8px;
    outline: none;
    background-image: url(/wp-content/themes/d-quest/images/btn_search_indigo.svg);
    background-repeat: no-repeat;
    background-size: 16px 16px;
    background-position: center center;
    z-index: 30;
    /*display: none;*/
  }

  #main #topics .searchbar .search_container input[type="submit"].active {
    /*display: block;*/
  }

  #main
    #topics
    .searchbar
    .search_container
    input[type="text"]:-webkit-autofill {
    -webkit-transition: background-color 9999s;
    transition: background-color 9999s;
  }

  #main #topics .searchbar .search_container .icon {
    cursor: pointer;
    border: none;
    background: none;
    color: #fff;
    position: absolute;
    width: 24px;
    height: 24px;
    right: 16px;
    top: 4px;
    outline: none;
    background-image: url(/wp-content/themes/d-quest/images/btn_search.svg);
    background-repeat: no-repeat;
    background-size: 16px 16px;
    background-position: center center;
  }

  #main #topics .searchbar .search_container ::-webkit-input-placeholder {
    color: #fff;
  }

  #header .menu.scroll .snav .search .search_container input[type="text"] {
    color: #031832;
    background: #fff;
  }

  #header
    .menu.scroll
    .snav
    .search
    .search_container
    input[type="text"]:focus
    + input[type="submit"] {
    /*background-image: url(/wp-content/themes/d-quest/images/btn_search_indigo.svg);*/
  }

  #main #topics .contents-inner {
    /* width: 1000px; */
    padding: 0 30px;
    margin: 0 auto;
  }

  #main #topics h3 {
    font-size: 1.4rem;
    /* border-bottom: solid 2px #000; */
    margin-bottom: 25px;
    padding-bottom: 11px;
  }

  #main #topics .list-topics .tpclist {
    border-bottom: solid 2px #000000;
    padding-bottom: 26px;
    margin-bottom: 31px;
  }

  #main #topics .list-topics .tpclist li {
    width: 100%;
    overflow: hidden;
    margin-right: 35px;
    margin-bottom: 20px;
  }

  #main #topics .list-topics .tpclist li:nth-child(3n) {
    margin-right: 0;
  }

  #main #topics .list-topics .tpclist li:nth-last-child(1),
  #main #topics .list-topics .tpclist li:nth-last-child(2),
  #main #topics .list-topics .tpclist li:nth-last-child(3) {
    /* margin-bottom: 0; */
  }

  #main #topics .list-topics .tpclist li .head {
    position: relative;
    /* width: 310px; */
    margin: 0 auto 6px;
    overflow: hidden;
  }

  #main #topics .list-topics .tpclist li .head .photoInner {
    /* width: 200%; */
    /* margin: 0 -50%; */
    text-align: center;
  }

  #main #topics .list-topics .tpclist li .head .img img {
    /* width: auto; */
    width: 100%;
  }

  #main #topics .list-topics .tpclist li .head .cat {
    position: absolute;
    bottom: 0;
    left: 0;
  }

  #main #topics .list-topics .tpclist li .head .cat span {
    background-color: #031832;
    color: #fff;
    text-align: center;
    font-size: 1.4rem;
    padding: 4px 15px;
    display: inline-block;
  }

  #main #topics .list-topics .tpclist li .data {
    font-size: 1.2rem;
  }

  #main #topics .list-topics .tpclist li .title {
    font-size: 1.5rem;
    font-weight: 600;
    border: none;
    margin: 0;
    padding: 0;
  }

  #main #topics h4.tag {
    text-align: center;
    font-weight: 600;
    margin-bottom: 15px;
  }

  #main #topics h4.tag span {
    padding-left: 20px;
    background-image: url(/wp-content/themes/d-quest/images/icon_tag.png);
    background-repeat: no-repeat;
    background-position: left center;
    font-weight: 600;
    font-size: 1.8rem;
  }

  #main #topics .list-topics .taglist {
    text-align: left;
    /* width: 700px; */
    margin: 0 auto 30px;
  }

  #main #topics .taglist li {
    display: inline-block;
    border: solid 1px #031832;
    border-radius: 3px;
    margin: 0 5px;
    padding: 6px 10px;
    font-size: 1.4rem;
  }

  #main #topics .single-topics {
    margin-top: 40px;
    margin-bottom: 40px;
    padding-top: 20px;
    border-top: solid 2px #000;
  }

  #main #topics .single-topics .head {
    margin-bottom: 14px;
  }

  #main #topics .single-topics .cat {
    margin-bottom: 12px;
  }

  #main #topics .single-topics .cat span {
    background-color: #031832;
    color: #fff;
    text-align: center;
    font-size: 1.4rem;
    padding: 6px 15px;
    font-weight: 600;
    display: inline-block;
  }

  #main #topics .single-topics .title {
    font-size: 1.8rem;
    font-weight: 600;
    margin: 0 0 4px 0;
    padding-bottom: 0;
    text-align: left;
  }

  #main #topics .single-topics .data {
    font-size: 1.2rem;
  }

  #main #topics .single-topics .img {
    margin-bottom: 34px;
    height: auto;
    overflow: hidden;
  }

  #main #topics .single-topics .img img {
    width: 100%;
    height: auto;
    /* margin-top: -50px; */
  }

  #main #topics .single-topics .taglist {
    margin-bottom: 25px;
    /* margin-left: 20px; */
    padding-left: 25px;
    background-image: url(/wp-content/themes/d-quest/images/icon_tag.png);
    background-repeat: no-repeat;
    background-position: 10px center;
  }

  #main .article h4 {
    width: 100%;
    border-bottom: solid 2px #031832;
    text-align: left;
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1.3;
    padding-bottom: 11px;
    margin-bottom: 26px;
  }

  #main .article h5 {
    line-height: 1.5;
    font-size: 1.4rem;
    font-weight: 600;
    margin-bottom: 10px;
    position: relative;
    clear: both;
  }

  #main .article h5 span {
    position: relative;
    padding-left: 15px;
    display: block;
    overflow: hidden;
  }

  #main .article h5 span:before {
    content: "";
    position: absolute;
    width: 5px;
    height: 84%;
    top: 8%;
    left: 0;
    background-color: #aa2f2f;
  }

  #main .article .text {
    line-height: 1.8;
    margin-top: 19px;
    margin-bottom: 19px;
  }

  #main .article .text p {
    margin-bottom: 20px;
    line-height: 1.9;
    overflow: auto;
  }

  #main .article .text p:last-of-type {
    margin-bottom: 0;
  }

  #main .article .text img {
    margin: 0 auto 14px;
    width: 100%;
    height: auto;
  }

  #main .article .text .photo,
  #main .article .text.img-no .photo {
    display: none;
  }

  #main .article .text.img-r .photo,
  #main .article .text.img-l .photo,
  #main .article .text.img-free .photo {
    display: block;
  }

  #main .article .text.img-r img {
    /* float: right; */
    /* margin-left: 50px; */
  }

  #main .article .text.img-l img {
    /* float: left; */
    /* margin-right: 50px; */
  }

  #main .article .text .photo {
    width: 100%;
    text-align: center;
  }

  #main #topics .help {
    margin-top: 0;
    padding-top: 10px;
    padding-bottom: 0;
    border-top: solid 1px #dddddd;
  }

  #main #topics .wp-pagenavi {
    margin: 0 0 60px;
  }

  #main.case .list-case .caselist {
    padding: 0 15px;
  }

  #main.case .list-case .caselist li {
    overflow: hidden;
    margin-bottom: 0px;
    border-bottom: solid 1px #dddddd;
    padding: 0 10px 20px 15px;
  }

  #main.case .list-case .caselist li:nth-child(3n) {
    margin-right: 0;
  }

  #main.case .list-case .caselist li .title {
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 10px;
  }

  #main.case .list-case .caselist li .catch {
    font-size: 1.2rem;
    font-weight: 600;
    overflow: auto;
  }

  #main.case .list-case .caselist li .head .img {
    width: 150px;
    height: 105px;
    float: left;
    overflow: hidden;
    margin-right: 20px;
  }

  #main.case .list-case .caselist li .head .img .photoInner {
    width: 200%;
    margin: 0 -50% 20px;
    text-align: center;
  }

  #main.case .list-case .caselist li .head .img img {
    height: 105px;
    width: auto;
  }

  #main.case .single-case {
    margin-top: 5px;
  }

  #main.case .single-case h3 {
    text-align: left;
    font-size: 2rem;
    font-weight: bold;
    border-top: solid 2px #031832;
    padding: 35px 0 0;
  }

  #main.case .single-case .head {
    margin-top: 10px;
  }

  #main.case .single-case .head .photo {
    width: 100%;
    margin-right: 50px;
    margin-bottom: 25px;
    overflow: hidden;
  }

  #main.case .single-case .head .photo .photoInner {
    width: 200%;
    margin: 0 -50%;
    text-align: center;
  }

  #main.case .single-case .head .photo img {
    width: auto;
    height: 207px;
  }

  #main.case .single-case .head .info {
    /* float: left; */
    margin-top: 17px;
    /* width: 100%; */
  }

  #main.case .single-case .head .info .name,
  #main.case .single-case .head .info .name_eng {
    /* padding-left: 10px; */
  }

  #main.case .single-case .head .info .name {
    /* border-left: solid 5px #aa2f2f; */
    font-size: 1.3rem;
    font-weight: bold;
  }

  #main.case .single-case .head .info .name span {
    font-size: 2.4rem;
  }

  #main.case .single-case .head .info .name span.name_after {
    font-size: 2rem;
  }

  #main.case .single-case .head .info .name_eng {
    /* border-left: solid 5px #031832; */
    font-size: 1.2rem;
    line-height: 1;
  }

  #main.case .single-case .head .info .occupation {
    font-size: 1.5rem;
    border-top: solid 1px #aa2f2f;
    padding-bottom: 5px;
    margin-top: 17px;
    padding-top: 18px;
  }

  #main.case .single-case .head .info .explanation {
    font-size: 1.4rem;
    padding-bottom: 17px;
  }

  #main.case .single-case .head .info .occupation_head {
    font-size: 1.3rem;
    font-weight: 600;
    padding-bottom: 5px;
    line-height: 1.8;
  }

  #main.case .single-case .head .info .occupation_head span {
    font-size: 1.2rem;
  }

  #main.case .single-case .head .info .explanation p {
    margin-bottom: 5px;
  }

  #main.case .single-case .head .info .occupation span {
    color: #999999;
    font-size: 1.3rem;
  }

  #main.case #lavel3 .mv {
    margin-bottom: 20px;
  }

  #main .table_05 .table_inner .block {
    float: left;
    margin-top: 5px;
    margin-right: 3.5%;
    width: 31%;
  }
  #main .table_05 .table_inner .no-pd-r {
    padding-right: 0;
  }
  #main .table_05 .table_inner .block img {
    width: 100%;
    margin-bottom: 10px;
  }
  #main .table_05 .table_inner .block:last-of-type {
    margin-right: 0;
  }
  #main .table_05 .table_inner .block span {
    line-height: 1.5;
  }
  #main .table_05 .table_inner .block .name {
    display: block;
    text-align: center;
  }
  #main .table_05 .table_inner .block .position {
    display: block;
    font-size: 1.1rem;
  }

  #main.compliance-kaigai .anchor_area-type1 {
    border-bottom: none;
  }

  #main.compliance-kaigai. .head h4 {
    padding: 35px 0 15px;
  }

  #main.about-gdpr .cts-body .text {
    margin-bottom: 20px;
    line-height: 1.85;
  }
  #main.about-gdpr .cts-body .text:last-child {
    margin-bottom: 0;
  }
  #main .delegate .info .occupation {
    font-size: 1.3rem;
    border-top: solid 2px #aa2f2f;
    padding-bottom: 18px;
    margin-top: 17px;
    padding-top: 11px;
    line-height: 1.3;
  }
  #main.about-us .delegate .info .name {
    font-size: 1.3rem;
    line-height: 1.5;
    margin-bottom: 7px;
  }
  #main.about-us .delegate .info .name_eng {
    font-size: 2.4rem;
    line-height: 1;
    font-weight: 600;
  }

  #main.about-us .table_01 + .head {
    margin-top: 25px;
  }

  #main.about-us #lavel2 .constitution .box {
    background-color: #f3f3f3;
    padding: 15px 20px;
    margin: 0 30px;
  }

  #main.about-us #lavel2 .constitution .box dl {
    margin-bottom: 20px;
  }

  #main.about-us #lavel2 .constitution .box dl dt,
  #main.about-us #lavel2 .constitution .box dl dd {
    line-height: 1.4;
  }

  #main.about-us #lavel2 .constitution .box dl dt {
    width: 100%;
    font-weight: 600;
    font-size: 1.5rem;
    margin-bottom: 15px;
    padding-bottom: 5px;
    border-bottom: solid 1px #dddddd;
  }

  #main.about-us #lavel2 .constitution .box dl dd {
  }

  #main.about-us #lavel2 .constitution .box dl dd .title {
    font-size: 1.4rem;
    margin-bottom: 10px;
    font-weight: 600;
  }

  #main.about-us #lavel2 .constitution .box dl dd .text {
    color: #031832;
    font-size: 1.4rem;
  }
  #main.about-us #lavel2 .constitution .img-area {
    background-color: #f3f3f3;
    margin: 0 auto 20px;
    padding: 20px 20px 25px;
    max-width: 325px;
    width: 100%;
  }
  #main.about-us #lavel2 .constitution .contents-inner {
    margin: 0;
  }

  #main.about-us .title-check {
    margin: 50px auto 0;
  }
  #main.products-specific-services .text {
      margin-bottom:20px;
  }
  #main.products-specific-services .text:last-child {
    margin-bottom:0;
  }
}

@media screen and (max-width: 1080px) and (min-width: 850px) {
  /*ヘッダーのブレイクポイント*/
  #main #topics .list-topics .tpclist li {
    width: 30%;
    float: left;
  }

  #main #topics .list-topics .tpclist li .head .photoInner {
    width: 200%;
    margin: 0 -50%;
    text-align: center;
  }

  #main #topics .list-topics .tpclist li .head .img img {
    height: 207px;
    width: auto;
  }

  #main #topics .list-topics .tpclist li .title {
    border-bottom: solid 1px #000;
    margin-bottom: 40px;
    padding-bottom: 8px;
  }

  #main #topics .list-topics .tpclist li .data {
    font-size: 1rem;
  }
}

/*
------------------------------------------------------
------------------------------------------------------
------------------------------------------------------
ここからsub2のスタイル
------------------------------------------------------
------------------------------------------------------
------------------------------------------------------
*/

/*
サービス＆オペレーション（海外）
/whistleblowing_business/overseas/
*/

@media screen and (max-width: 1080px) {
  /* SP */
  #main .text {
    font-size: 1.4rem;
    letter-spacing: 0.025em;
    line-height: 25.2px;
    line-height: 180%;
    word-wrap: break-word;
  }
}

@media screen and (min-width: 1081px) {
  /* PC */
  #main .mv.whistleblowing_b-overseas {
    background-image: url(/wp-content/themes/d-quest/images/mv_whistleblowing_business_domestic.jpg);
  }
}

@media screen and (max-width: 1080px) {
  /* SP */
  #main .mv.whistleblowing_b-overseas {
    background-image: url(/wp-content/themes/d-quest/images/mv_whistleblowing_business_domestic_sp.jpg);
  }
}

@media screen and (min-width: 1081px) {
  /* PC */
  #main .table-type2 {
    /* border-bottom: solid 1px #dddddd; */
    margin: 40px auto 80px;
  }

  #main .table-type2 table {
    width: 100%;
  }

  #main .table-type2 thead th {
    color: #fff;
    background-color: #031832;
  }
  #main .table-type2 tbody td {
  }

  #main .table-type2 tbody td {
    letter-spacing: 0.005em;
    line-height: 25.6px;
    text-align: left;
    padding: 16px 0;
    padding: 16px 20px 16px 42px;
    overflow: hidden;
    border-bottom: solid 1px #dddddd;
    vertical-align: top;
  }

  #main .table-type2 tbody td:nth-child(1) {
    font-size: 1.4rem;
    font-weight: bold;
    text-align: left;
    vertical-align: top;
    width: 160px;
  }

  #main .table-type2 tbody td:nth-child(1) img {
    margin: 3px 10px 0 0;
    vertical-align: top;
  }

  #main .table-type2 tbody tr:nth-child(2) td:nth-child(2) {
    background-color: transparent;
    text-align: left;
  }

  #main .table-type2 tbody td:nth-child(2) {
    background-color: #f3f3f3;
    padding: 16px 20px;
  }

  #main .table-type2 tbody td:nth-child(2) span {
    display: block;
    padding-right: 50px;
    width: 100px;
    float: left;
  }

  #main .table-type2 .table-type2-cell-type1 {
    display: table;
    margin: -16px -20px;
    width: calc(100% + 40px);
  }

  #main .table-type2 .table-type2-cell-type1-row {
    display: table-row;
  }

  #main .table-type2 .table-type2-cell-type1-row > * {
    background-color: #f3f3f3;
    border-top: 3px solid #fff;
    display: table-cell;
    padding: 16px 20px;
    text-align: left;
  }

  #main .table-type2 .table-type2-cell-type1-row:nth-child(1) > * {
    border-top: 0;
  }

  #main .table-type2 .table-type2-cell-type1-row > *:nth-child(2) {
    padding-left: 0;
  }

  #main .table-type2 .table-icon-1 {
    background: url(/wp-content/themes/d-quest/images/icon_marker_01.svg) 20px
      19px / auto auto no-repeat;
  }

  #main .table-type2 .table-icon-2 {
    background: url(/wp-content/themes/d-quest/images/icon_marker_02.svg) 20px
      19px / auto auto no-repeat;
  }

  #main .table-type2 .table-icon-3 {
    background: url(/wp-content/themes/d-quest/images/icon_server_01.png) 20px
      15px / 14px auto no-repeat;
  }
}

@media screen and (max-width: 1080px) {
  /* SP */
  #main .table-type2 {
    margin-top: 20px;
  }

  #main .table-type2 table,
  #main .table-type2 table tbody,
  #main .table-type2 table tr,
  #main .table-type2 table th,
  #main .table-type2 table td {
    display: block;
  }

  #main .table-type2 table {
  }

  #main .table-type2 thead th {
  }

  #main .table-type2 tbody td {
  }

  #main .table-type2 tbody td {
  }

  #main .table-type2 tbody td:nth-child(1) {
    border-bottom: 2px solid #031832;
    border-top: 2px solid #031832;
    font-weight: bold;
    padding: 10px 10px 8px 28px;
  }

  #main .table-type2 tbody td:nth-child(1) img {
    display: none;
    margin: 3px 10px 0 0;
    vertical-align: top;
  }

  #main .table-type2 tbody td:nth-child(2) {
    padding: 10px 0 15px;
  }

  #main .table-type2 tbody td:nth-child(2) > div {
    background: #f3f3f3;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    line-height: 25.2px;
    padding: 16px 15px 15px;
  }

  #main .table-type2 tbody td:nth-child(1n) .table-type2-cell-type1 {
    padding: 0;
  }

  #main .table-type2 .table-type2-cell-type1-row {
    border-top: 4px solid #fff;
    padding: 16px 15px 15px;
  }

  #main .table-type2 .table-type2-cell-type1-row > * {
    font-weight: bold;
  }

  #main .table-type2 .table-type2-cell-type1-row:nth-child(1) > * {
  }

  #main .table-type2 .table-type2-cell-type1-row > *:nth-child(2) {
  }

  #main .table-type2 .table-icon-1 {
    background: url(/wp-content/themes/d-quest/images/icon_marker_01.svg) 10px
      13px / auto auto no-repeat;
  }

  #main .table-type2 .table-icon-2 {
    background: url(/wp-content/themes/d-quest/images/icon_marker_02.svg) 10px
      13px / auto auto no-repeat;
  }

  #main .table-type2 .table-icon-3 {
    background: url(/wp-content/themes/d-quest/images/icon_server_01.png) 10px
      8px / 14px auto no-repeat;
  }
}

/*
  boxx 共通
  */

#main [class*="boxx_"].boxx_image_w450 .boxx_inner .boxx_image,
#main [class^=" boxx_"].boxx_image_w450 .boxx_inner .boxx_image {
  width: 450px;
}

#main [class*="boxx_"].boxx_image_border_disable .boxx_inner .boxx_image,
#main [class^=" boxx_"].boxx_image_border_disable .boxx_inner .boxx_image {
  border: none;
}

/*
  内部通報窓口担当者向け実践講座（1）
  */

@media screen and (min-width: 1081px) {
  /* PC */
  #main .boxx_01.boxx_image_w450 .boxx_inner .boxx_image {
    width: 450px;
  }

  #main .boxx_01.boxx_image_w450 .boxx_inner .boxx_text {
    width: calc(100% - 500px);
  }

  #main .boxx_01.boxx_image_w320 .boxx_inner .boxx_image {
    width: 320px;
  }

  #main .boxx_01.boxx_image_w320 .boxx_inner .boxx_text {
    width: calc(100% - 370px);
  }
}

@media screen and (max-width: 1080px) {
  /* SP */
  #main .boxx_01.boxx_image_w450 .boxx_inner .boxx_image {
    width: 100%;
    max-width: 450px;
  }

  #main .boxx_01.boxx_image_w320 .boxx_inner .boxx_image {
    width: 100%;
    max-width: 320px;
  }
}

/*
  ボックス 1
  内部通報制度認証
  内部通報とは
  */

@media screen and (min-width: 1081px) {
  /* PC */
  #main .boxx_01 {
  }

  #main .boxx_01 .boxx_inner {
    -webkit-align-items: flex-start;
    align-items: flex-start;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }

  #main .boxx_01 .boxx_image img,
  #main .boxx_01 .boxx_text img {
    height: auto;
    vertical-align: top;
    width: 100%;
  }

  #main .boxx_01 .boxx_inner > .boxx_image {
    width: 250px;
  }

  #main .boxx_01 .boxx_inner > .boxx_text {
    width: calc(100% - 300px);
  }

  #main .boxx_01 .boxx_image {
    border: 2px solid #ddd;
  }

  #main .boxx_01 .boxx_text {
  }

  #main .boxx_01 .boxx_text .boxx_title {
    display: none;
  }

  #main .boxx_01 .boxx_text p {
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    line-height: 213%;
  }

  #main .boxx_01 .boxx_text p:nth-child(1) {
    margin-top: -5px;
  }

  #main .boxx_01 .boxx_anchor a {
    margin: 0;
  }

  /* boxx_reverse */
  #main .boxx_01.boxx_reverse .boxx_inner {
    align-items: -webkit-flex-start;
    align-items: flex-start;
    -webkit-display: flex;
    display: flex;
    -webkit-flex-flow: row-reverse wrap;
    flex-flow: row-reverse wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}

@media screen and (max-width: 1080px) {
  /* SP */
  #main .boxx_01 {
  }

  #main .boxx_01 .boxx_inner {
  }

  #main .boxx_01 .boxx_image img,
  #main .boxx_01 .boxx_text img {
    height: auto;
    vertical-align: top;
    width: 100%;
  }

  #main .boxx_01 .boxx_image {
    border: 2px solid #ddd;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 250px;
  }

  #main .boxx_01 .boxx_text {
    margin-top: 25px;
  }

  #main .boxx_01 .boxx_text .boxx_title {
    font-size: 1.4rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 180%;
    text-align: left;
    margin-bottom: 0;
    margin-top: 0;
    padding-bottom: 0;
    padding-top: 0;
  }

  #main .boxx_01 .boxx_text .boxx_title * {
    font-weight: bold;
  }

  #main .boxx_01 .boxx_text .boxx_title span {
    border-bottom: 2px solid #031832;
    border-top: 2px solid #031832;
    display: block;
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 171.11%;
    margin-bottom: 9px;
    padding-bottom: 13px;
    padding-left: 10px;
    padding-top: 12px;
  }

  #main .boxx_01 .boxx_text p {
    font-size: 1.4rem;
    letter-spacing: 0.025em;
    line-height: 180%;
  }

  #main .boxx_01 .boxx_text p:nth-child(1) {
  }

  #main .boxx_01 .boxx_anchor a {
    margin: 0 auto;
  }
}

/*
  ボックス 2
  内部通報窓口担当者向け実践講座（1）
  */

@media screen and (min-width: 1081px) {
  /* PC */
  #main .boxx_02 {
  }
}

@media screen and (max-width: 1080px) {
  /* SP */
  #main .boxx_02 {
  }
}

/*
  ボックス 3
  個人情報保護指針
  */

@media screen and (min-width: 1081px) {
  /* PC */
  #main .boxx_03 {
    margin: 15px 0 0;
  }

  #main .boxx_03 p {
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    line-height: 200%;
  }
  #main .boxx_03 p strong {
    font-weight: bold;
  }
  #main .boxx_03 p a {
    text-decoration: underline;
  }

  #main.privacy .boxx_03 p {
    margin-bottom: 15px;
  }
  #main.privacy .boxx_03 p:last-child {
    margin-bottom: 0px;
  }

  #main .boxx_03 .boxx_remarks {
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    line-height: 160%;
    margin: 5px 0 0;
  }
}

@media screen and (max-width: 1080px) {
  /* SP */
  #main .boxx_03 {
    margin: 15px 0 0;
  }

  #main .boxx_03 p {
    font-size: 1.4rem;
    letter-spacing: 0.005em;
    line-height: 160%;
  }

  #main .boxx_03 .boxx_remarks {
    font-size: 1.1rem;
    letter-spacing: 0.05em;
    line-height: 180%;
    margin: 10px 0 0;
  }
}

/*
  ボックス 4
  個人情報保護指針
  */

@media screen and (min-width: 1081px) {
  /* PC */
  #main .boxx_04 {
    margin: 75px 0 0;
  }

  #main .boxx_04 p {
    font-size: 1.3rem;
    letter-spacing: 0.05em;
    line-height: 200%;
    text-align: right;
  }
}

@media screen and (max-width: 1080px) {
  /* SP */
  #main .boxx_04 {
    margin: 35px 0 0;
  }

  #main .boxx_04 p {
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    line-height: 200%;
    text-align: right;
  }
}

/*
  ボックス 5
  個人情報保護指針
  */

@media screen and (min-width: 1081px) {
  /* PC */
  #main .boxx_05 {
    background: #f3f3f3;
    margin: 25px 0 0;
    padding: 12px 20px;
    max-width: 565px;
  }

  #main .boxx_05 p {
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    line-height: 200%;
  }

  #main .boxx_05 p small {
    font-size: 1.2rem;
  }
}

@media screen and (max-width: 1080px) {
  /* SP */
  #main .boxx_05 {
    background: #f3f3f3;
    margin: 25px 0 0;
    padding: 12px 20px;
    max-width: 565px;
  }

  #main .boxx_05 p {
    font-size: 1.4rem;
    letter-spacing: 0.005em;
    line-height: 160%;
  }

  #main .boxx_05 p small {
    font-size: 1.2rem;
  }
}

/*
  ボックス 切り替え 1
  よくある質問
  */

#main .boxx_toggle_01,
#main .boxx_toggle_01 * {
  outline: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

@media screen and (min-width: 1081px) {
  #main .boxx_toggle_01 {
    margin: 0 auto;
  }

  #main .boxx_toggle_01 > .boxx_inner {
  }

  #main .boxx_toggle_01 .boxx_item {
  }

  #main .boxx_toggle_01 .boxx_header {
  }

  #main .boxx_toggle_01 .boxx_text {
  }

  #main .boxx_toggle_01 .boxx_image {
    display: none;
  }

  #main .boxx_toggle_01 .boxx_anchor {
  }

  #main .boxx_toggle_01 .boxx_question {
    -webkit-align-items: flex-start;
    align-items: flex-start;
    border: 2px solid #031832;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    padding: 15px 20px;
    transition: background 0.6s;
    cursor: pointer;
  }

  #main .boxx_toggle_01 .boxx_answer {
    height: 100%;
    margin: 30px 0 0;
    overflow: hidden;
    transition: height 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  }

  #main .boxx_toggle_01.hover .boxx_question {
    background: #f3f3f3;
  }

  #main .boxx_toggle_01 .boxx_question .boxx_header {
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: 0.005em;
    line-height: 150%;
    margin: -1px 14px 0 0;
  }

  #main .boxx_toggle_01 .boxx_question .boxx_text {
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: 0.005em;
    line-height: 150%;
    width: 100%;
  }

  #main .boxx_toggle_01 .boxx_question .boxx_anchor {
    align-self: center;
    background: #f3f3f3;
    border-radius: 100%;
    height: 27px;
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: 0.005em;
    line-height: 150%;
    margin: 0 0 0 5px;
    position: relative;
    transition: background 0.6s;
    width: 27px;
    min-width: 27px;
    z-index: 1;
  }

  #main .boxx_toggle_01.hover .boxx_question .boxx_anchor {
    background: #fff;
  }

  #main .boxx_toggle_01 .boxx_question .boxx_anchor a {
    cursor: pointer;
    display: block;
    height: 100%;
    width: 100%;
  }

  #main .boxx_toggle_01 .boxx_question .boxx_anchor a:before {
    border-top: 2px solid #031832;
    content: "";
    display: block;
    height: 0;
    right: 8px;
    position: absolute;
    top: 12px;
    width: 10px;
    z-index: 1;
  }

  #main .boxx_toggle_01 .boxx_question .boxx_anchor a:after {
    border-top: 2px solid #031832;
    content: "";
    display: block;
    height: 0;
    opacity: 0;
    position: absolute;
    right: 8px;
    top: 12px;
    transform: rotateZ(90deg);
    width: 10px;
    z-index: 1;
  }

  #main .boxx_toggle_01.boxx_answer_hide .boxx_question .boxx_anchor a:after {
    opacity: 1;
  }

  #main .boxx_toggle_01 .boxx_answer > .boxx_inner {
    -webkit-align-items: flex-start;
    align-items: flex-start;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    padding: 5px 24px 50px;
  }

  #main .boxx_toggle_01 .boxx_answer .boxx_header {
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: 0.005em;
    line-height: 150%;
    margin: -1px 14px 0 0;
  }

  #main .boxx_toggle_01 .boxx_answer .boxx_text {
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    line-height: 213%;
    margin: -4px 14px 0 0;
  }

  #main .boxx_toggle_01 .boxx_answer .boxx_text a {
    color: #004ba8;
    text-decoration: underline;
  }

  #main .boxx_toggle_01.boxx_answer_hide {
  }

  #main .boxx_toggle_01.boxx_answer_hide .boxx_answer {
    height: 0;
  }
}

@media screen and (max-width: 1080px) {
  #main .boxx_toggle_01 {
    margin: 0 auto;
  }

  #main .boxx_toggle_01 > .boxx_inner {
  }

  #main .boxx_toggle_01 .boxx_item {
  }

  #main .boxx_toggle_01 .boxx_header {
  }

  #main .boxx_toggle_01 .boxx_text {
  }

  #main .boxx_toggle_01 .boxx_image {
    display: none;
  }

  #main .boxx_toggle_01 .boxx_anchor {
  }

  #main .boxx_toggle_01 .boxx_question {
    -webkit-align-items: flex-start;
    align-items: flex-start;
    border: 2px solid #031832;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    padding: 10px 13px;
    transition: background 0.6s;
  }

  #main .boxx_toggle_01 .boxx_answer {
    height: 100%;
    margin: 15px 0 0;
    overflow: hidden;
    transition: height 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  }

  #main .boxx_toggle_01.hover .boxx_question {
    background: #f3f3f3;
  }

  #main .boxx_toggle_01 .boxx_question .boxx_header {
    font-size: 1.5rem;
    font-weight: bold;
    letter-spacing: 0.005em;
    line-height: 106.66%;
    margin: 4px 10px 0 0;
  }

  #main .boxx_toggle_01 .boxx_question .boxx_text {
    font-size: 1.4rem;
    font-weight: bold;
    letter-spacing: 0.005em;
    line-height: 171.42%;
    width: 100%;
  }

  #main .boxx_toggle_01 .boxx_question .boxx_anchor {
    align-self: center;
    background: #f3f3f3;
    border-radius: 100%;
    height: 27px;
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: 0.005em;
    line-height: 150%;
    margin: 0 0 0 5px;
    position: relative;
    transition: background 0.6s;
    width: 27px;
    min-width: 27px;
    z-index: 1;
  }

  #main .boxx_toggle_01.hover .boxx_question .boxx_anchor {
    background: #fff;
  }

  #main .boxx_toggle_01 .boxx_question .boxx_anchor a {
    cursor: pointer;
    display: block;
    height: 100%;
    width: 100%;
  }

  #main .boxx_toggle_01 .boxx_question .boxx_anchor a:before {
    border-top: 2px solid #031832;
    content: "";
    display: block;
    height: 0;
    right: 8px;
    position: absolute;
    top: 12px;
    width: 10px;
    z-index: 1;
  }

  #main .boxx_toggle_01 .boxx_question .boxx_anchor a:after {
    border-top: 2px solid #031832;
    content: "";
    display: block;
    height: 0;
    opacity: 0;
    position: absolute;
    right: 8px;
    top: 12px;
    transform: rotateZ(90deg);
    width: 10px;
    z-index: 1;
  }

  #main .boxx_toggle_01.boxx_answer_hide .boxx_question .boxx_anchor a:after {
    opacity: 1;
  }

  #main .boxx_toggle_01 .boxx_answer > .boxx_inner {
    -webkit-align-items: flex-start;
    align-items: flex-start;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    padding: 0 16px 25px;
  }

  #main .boxx_toggle_01 .boxx_answer .boxx_header {
    font-size: 1.5rem;
    font-weight: bold;
    letter-spacing: 0.005em;
    line-height: 106.66%;
    margin: 5px 14px 0 0;
  }

  #main .boxx_toggle_01 .boxx_answer .boxx_text {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    line-height: 171.42%;
    margin: 0 14px 0 0;
  }

  #main .boxx_toggle_01 .boxx_answer .boxx_text a {
    color: #004ba8;
    text-decoration: underline;
  }

  #main .boxx_toggle_01.boxx_answer_hide {
  }

  #main .boxx_toggle_01.boxx_answer_hide .boxx_answer {
    height: 0;
  }
}

/*
  リスト 1
  内部通報窓口担当者向け実践講座（1）
  */

@media screen and (min-width: 1081px) {
  /* PC */
  #main .list_01 {
    margin: 25px auto 0;
  }

  #main .list_01 .list_inner {
  }

  #main .list_01 ol {
    list-style-type: decimal;
  }

  #main .list_01 li {
    list-style: inherit;
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    line-height: 200%;
    margin: 0 0 0 20px;
  }

  #main .list_01 .item {
  }

  #main .list_01 .list_remarks {
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    line-height: 150%;
    margin: 8px 0 0;
  }

  #main .list_01 ul {
    list-style-type: none;
  }

  #main .list_01 ul li {
    margin: 0 0 0 0;
    padding: 0 0 0 16px;
    position: relative;
    z-index: 1;
  }

  #main .list_01 ul li:before {
    background: #031832;
    border-radius: 100%;
    content: "";
    height: 6px;
    left: 5px;
    position: absolute;
    top: 11px;
    width: 6px;
    z-index: 1;
  }

  #main .title_02 + .list_01 {
    margin: 15px auto 0;
  }

  #main .boxx_03 + .list_01 {
    margin: 15px auto 0;
  }
}

@media screen and (max-width: 1080px) {
  /* SP */
  #main .list_01 {
    margin: 25px auto 0;
  }

  #main .list_01 .list_inner {
  }

  #main .list_01 ol {
    list-style-type: decimal;
  }

  #main .list_01 li {
    list-style: inherit;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    line-height: 180%;
    margin: 0 0 0 20px;
  }

  #main .list_01 .item {
  }

  #main .title_02 + .list_01 {
    margin-top: 0;
  }
}

/*
  リスト 2

  */

@media screen and (min-width: 1081px) {
  #main .list_02 {
    margin: 20px auto 0;
  }

  #main .list_02 ol {
    list-style-type: none;
  }

  #main .list_02 ol li {
    counter-increment: cnt;
    margin: 0 0 0 0;
    padding: 0 0 0 40px;
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    line-height: 200%;
    list-style: inherit;
    position: relative;
    z-index: 1;
  }

  #main .list_02 ul > li:before {
    content: "・";
    font-size: 1.5rem;
    left: 8px;
    position: absolute;
    top: 0;
    z-index: 1;
  }

  #main .list_02 ul {
    list-style-type: none;
  }

  #main .list_02 ul li {
    counter-increment: cnt;
    margin: 0 0 0 0;
    padding: 0 0 0 40px;
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    line-height: 200%;
    list-style: inherit;
    position: relative;
    z-index: 1;
  }

  #main .list_02 ul > li:before {
    content: "・";
    font-size: 1.5rem;
    left: 8px;
    position: absolute;
    top: 0;
    z-index: 1;
  }
  #main .list_02 .boxx_03 {
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 1080px) {
  #main .list_02 {
    margin: 20px auto 0;
  }

  #main .list_02 ol {
    list-style-type: none;
  }

  #main .list_02 ol li {
    counter-increment: cnt;
    margin: 0 0 0 0;
    padding: 0 0 0 30px;
    font-size: 1.4rem;
    letter-spacing: 0.005em;
    line-height: 160%;
    list-style: inherit;
    position: relative;
    z-index: 1;
  }

  #main .list_02 ol > li:before {
    content: "(" counter(cnt) ")";
    font-size: 1.4rem;
    left: 0;
    position: absolute;
    top: 0;
    z-index: 1;
  }
}

/*
  アンカー 1
  内部通報制度認証
  /whistleblowing_business/authentication/
  */

@media screen and (min-width: 1081px) {
  /* PC */
  #main .boxx_01 .boxx_anchor_01 {
    margin: 15px 0 0;
  }

  #main .boxx_01 .boxx_anchor_01 + .boxx_anchor_01 {
    margin-top: 5px;
  }

  #main .boxx_01 .boxx_anchor_01 a {
    font-size: 1.5rem;
    font-weight: bold;
    letter-spacing: 0.025em;
    padding: 0 16px 0 0;
    position: relative;
    z-index: 1;
  }

  #main .boxx_01 .boxx_anchor_01 a:before {
    content: "";
    position: absolute;
    vertical-align: middle;
    width: 8px;
    height: 8px;
    border-top: 2px solid #031832;
    border-right: 2px solid #031832;
    z-index: 2;
    top: 50%;
    right: 3px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: -5px;
    margin-top: -4px;
  }
}

@media screen and (max-width: 1080px) {
  /* PC */
  #main .boxx_01 .boxx_anchor_01 {
    border-top: 1px solid #ddd;
    /* padding: 12px 30px 12px 15px; */
    margin: 15px 0 0;
  }

  #main .boxx_01 .boxx_anchor_01 + .boxx_anchor_01 {
    border-bottom: 1px solid #ddd;
    margin-top: 0;
  }

  #main .boxx_01 .boxx_anchor_01 a {
    display: block;
    font-size: 1.5rem;
    font-weight: bold;
    letter-spacing: 0.025em;
    padding: 12px 30px 13px 15px;
    position: relative;
    z-index: 1;
  }

  #main .boxx_01 .boxx_anchor_01 a:before {
    content: "";
    position: absolute;
    vertical-align: middle;
    width: 8px;
    height: 8px;
    border-top: 2px solid #031832;
    border-right: 2px solid #031832;
    z-index: 2;
    top: 50%;
    right: 10px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: -5px;
    margin-top: -4px;
  }
}

/*
  アンカー 2
  内部通報制度認証
  */

@media screen and (min-width: 1081px) {
  /* PC */
  #main .boxx_01 .boxx_anchor_02 {
    margin: 23px 0 0;
  }
}

@media screen and (max-width: 1080px) {
  /* PC */
  #main .boxx_01 .boxx_anchor_02 {
    margin-top: 25px;
    /* text-align: center; */
  }
}

/*
  アンカー 3
  DQグループの情報セキュリティ対策
  */

#main .anchor_03 {
}

#main .anchor_03 .anchor_inner {
  text-align: right;
}

#main .anchor_03 a {
  display: inline-block;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 250%;
}

#main .anchor_03 a small {
}

/*
  アンカー 4
  サービス検討資料ダウンロード
  */

#main .anchor_04 {
  text-align: center;
}

#main .anchor_04 a {
  display: inline-block;
  background-color: #031832;
  color: #fff;
  font-size: 2rem;
  font-weight: 600;
  padding: 35px 124px;
}

@media screen and (max-width: 1080px) {
  #main .anchor_04 a {
    margin: 0 15px;
    padding: 12px 70px;
    border-radius: 6px;
    font-size: 2rem;
  }
}

/*
  見出し 1
  内部通報窓口担当者向け実践講座（1）
  */

@media screen and (min-width: 1081px) {
  #main .title_01 {
    margin: 75px 0 25px;
  }

  #main .title_01 .title_inner {
    border-bottom: 1px solid #031832;
    margin: 0 0 0 0;
    padding: 0 0 9px;
  }

  #main .title_01 .title_inner,
  #main .title_01 .title_inner * {
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 145.45%;
  }

  #main .list_01 + .title_01 {
    margin-top: 66px;
  }
}

@media screen and (max-width: 1080px) {
  #main .title_01 {
    margin: 30px 0 25px;
  }

  #main .title_01 .title_inner {
    border-bottom: 2px solid #031832;
    padding: 0 0 9px;
  }

  #main .title_01 .title_inner,
  #main .title_01 .title_inner * {
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 175%;
  }

  #main .list_01 + .title_01 {
    margin-top: 17px;
  }
}

/*
  見出し 2
  内部通報窓口担当者向け実践講座（1）
  */

@media screen and (min-width: 1081px) {
  #main .title_02 {
    margin: 35px auto 15px;
  }

  #main .title_02 .title_inner,
  #main .title_02 .title_inner * {
    font-size: 1.8rem !important;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 166%;
  }
}

@media screen and (max-width: 1080px) {
  #main .title_02 {
    margin: 9px auto 0;
  }

  #main .title_02 .title_inner,
  #main .title_02 .title_inner * {
    font-size: 1.4rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 180%;
    text-align: left;
    margin-bottom: 0;
    margin-top: 0;
    padding-bottom: 0;
    padding-top: 0;
  }
}

/*
  見出し 3
  個人情報保護指針
  */

@media screen and (min-width: 1081px) {
  #main .title_03 {
    margin: 75px 0 35px;
  }

  #main .title_03 .title_inner {
    border-bottom: 1px solid #031832;
    margin: 0 0 0 0;
    padding: 0 0 9px;
  }

  #main .title_03 .title_inner,
  #main .title_03 .title_inner * {
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 145.45%;
  }
}

@media screen and (max-width: 1080px) {
  #main .title_03 {
    margin: 30px 0 25px;
  }

  #main .title_03 .title_inner {
    border-bottom: 2px solid #031832;
    padding: 0 0 9px;
  }

  #main .title_03 .title_inner,
  #main .title_03 .title_inner * {
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 175%;
  }
}

/*
  見出し 4
  個人情報保護指針
  */

@media screen and (min-width: 1081px) {
  #main .title_04 {
    margin: 75px 0 35px;
  }

  #main .title_04 .title_inner {
    margin: 0 0 0 0;
    padding: 0 0 25px;
    position: relative;
    z-index: 1;
  }

  #main .title_04 .title_inner:before {
    border-bottom: 2px solid #aa2f2f;
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    width: 80px;
    z-index: 1;
  }

  #main .title_04 .title_inner,
  #main .title_04 .title_inner * {
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 145.45%;
  }

  #main .title_04 .title_remarks {
    margin-top: 20px;
  }
}

@media screen and (max-width: 1080px) {
  #main .title_04 {
    margin: 30px 0 25px;
  }

  #main .title_04 .title_inner {
    border-bottom: 2px solid #031832;
    padding: 0 0 9px;
  }

  #main .title_04 .title_inner,
  #main .title_04 .title_inner * {
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 175%;
  }
}

/*
  見出し 5
  DQグループの情報セキュリティ対策
  */

@media screen and (min-width: 1081px) {
  #main .title_05 {
    margin: 75px 0 35px;
  }

  #main .title_05 .title_inner {
    margin: 0 0 0 0;
    padding: 0 0 25px;
    position: relative;
    z-index: 1;
  }

  #main .title_05 .title_inner:before {
    border-bottom: 2px solid #aa2f2f;
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    width: 80px;
    z-index: 1;
  }

  #main .title_05 .title_inner,
  #main .title_05 .title_inner * {
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 145.45%;
  }

  #main .title_05 .title_remarks {
    margin-top: 20px;
  }
}

@media screen and (max-width: 1080px) {
  #main .title_05 {
    margin: 30px 0 25px;
  }

  #main .title_05 .title_inner {
    border-bottom: none;
    padding: 0 0 20px;
    position: relative;
    z-index: 1;
  }

  #main .title_05 .title_inner:before {
    background: #aa2f2f;
    bottom: 0;
    content: "";
    height: 2px;
    left: calc(50% - 20px);
    position: absolute;
    width: 40px;
    z-index: 1;
  }

  #main .title_05 .title_inner,
  #main .title_05 .title_inner * {
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 140%;
  }
}

@media screen and (min-width: 1081px) {
  /* PC */ /*sub.css line 117*/
  #main #lavel4 > .h2Wrap h2,
  #main #lavel5 > .h2Wrap h2 {
    background-color: #f3f3f3;
    margin-bottom: 70px;
    padding: 47px 0 53px;
    text-align: center;
    font-size: 2.2rem;
    font-weight: 600;
    line-height: 1;
  }

  #main #lavel2 > .h2Wrap h2 span.subtitle1,
  #main #lavel3 > .h2Wrap h2 span.subtitle1,
  #main #lavel4 > .h2Wrap h2 span.subtitle1,
  #main #lavel5 > .h2Wrap h2 span.subtitle1 {
    font-size: 1.4rem;
  }

  #main #lavel3 > .h2Wrap h2 span.subtitle1 {
    line-height: 3.4;
  }

  #main #lavel3 > .h2Wrap h2 span.subtitle2 {
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 2.2;
  }

  #main #lavel4 > .h2Wrap h2 span.subtitle1,
  #main #lavel5 > .h2Wrap h2 span.subtitle1 {
    line-height: 3.4;
  }

  #main #lavel4 > .h2Wrap h2 span.subtitle2,
  #main #lavel5 > .h2Wrap h2 span.subtitle2 {
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 2.2;
  }
}

@media screen and (max-width: 1080px) {
  /* SP */ /*sub.css line 117*/
  #main #lavel4 > .h2Wrap h2,
  #main #lavel5 > .h2Wrap h2 {
    margin-bottom: 0;
    padding: 35px 0 25px;
    text-align: center;
    font-size: 1.8rem;
    font-weight: 600;
  }

  #main #lavel2 > .h2Wrap h2 span.subtitle1,
  #main #lavel3 > .h2Wrap h2 span.subtitle1,
  #main #lavel4 > .h2Wrap h2 span.subtitle1,
  #main #lavel5 > .h2Wrap h2 span.subtitle1 {
    font-size: 1.2rem;
  }

  #main #lavel3 > .h2Wrap h2 span.subtitle1 {
    line-height: 2.6;
  }

  #main #lavel3 > .h2Wrap h2 span.subtitle2 {
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 2.2;
  }

  #main #lavel4 > .h2Wrap h2 span.subtitle1,
  #main #lavel5 > .h2Wrap h2 span.subtitle1 {
    line-height: 2.6;
  }

  #main #lavel4 > .h2Wrap h2 span.subtitle2,
  #main #lavel5 > .h2Wrap h2 span.subtitle2 {
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 2.2;
  }
}

@media screen and (min-width: 1081px) {
  /* PC */ /*sub.css line */

  /*sub.css line 610 置き換える */
  #main.whistleblowing_b.plactice1 .contents .help,
  #main.whistleblowing_b.plactice2 .contents .help,
  #main.whistleblowing_b.tel .contents .help,
  #main.whistleblowing_b.harassment .contents .help {
    margin-bottom: 92px;
    margin-top: 61px;
    padding-top: 0;
    padding-bottom: 0;
  }
}

@media screen and (max-width: 1080px) {
  /* SP */ /*sub.css line 2003*/

  /*sub.css line 2415 置き換える */
  #main.whistleblowing_b.plactice1 .contents .help,
  #main.whistleblowing_b.plactice2 .contents .help,
  #main.whistleblowing_b.tel .contents .help,
  #main.whistleblowing_b.harassment .contents .help {
    margin-bottom: 40px;
    margin-top: 13px;
    padding-top: 0;
    padding-bottom: 0;
  }

  /*sub.css line 2858 置き換える */
  #main .service.img-r .cts {
    /* float: right; */
    float: none;
  }
}

@media screen and (max-width: 1080px) {
  main.whistleblowing_b.faq .contents .contents-inner {
    padding: 0 15px;
  }
}

@media screen and (min-width: 1081px) {
  #main.whistleblowing_b.support .bg-gray,
  #main.whistleblowing_b.training .bg-gray {
    padding: 0 0 20px;
  }

  #main.whistleblowing_b.support .contents + .bg-gray-pc,
  #main.whistleblowing_b.training .contents + .bg-gray-pc {
    background: #fff;
  }

  #main.whistleblowing_b.support .contents + .bg-gray-pc .help,
  #main.whistleblowing_b.training .contents + .bg-gray-pc .help {
    margin-top: 0;
  }

  #main.whistleblowing_b.overseas .contents .cts-body .text,
  #main.whistleblowing_b.domestic .contents .cts-body .text,
  #main.whistleblowing_b.harassment .contents .cts-body .text {
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    line-height: 213%;
  }
}

@media screen and (max-width: 1080px) {
  #main.whistleblowing_b.domestic .img-area-3,
  #main.whistleblowing_b.overseas .img-area-3 {
    background: #f3f3f3;
  }

  #main.whistleblowing_b.domestic .img-area-3 .sp,
  #main.whistleblowing_b.overseas .img-area-3 .sp {
    background: #f3f3f3;
    /* width: 80%; */
    margin: 20px auto 25px;
    padding: 50px;
    max-width: 360px;
  }
}

@media screen and (max-width: 420px) {
  #main.whistleblowing_b.domestic .img-area-3 .sp,
  #main.whistleblowing_b.overseas .img-area-3 .sp {
    padding: 40px;
    width: 100%;
  }
}

@media screen and (min-width: 1081px) {
  #main.whistleblowing_b.domestic .img-area-1,
  #main.whistleblowing_b.overseas .img-area-1 {
    margin: 50px 0;
  }

  #main.whistleblowing_b.domestic .img-area-1 .contents-inner,
  #main.whistleblowing_b.overseas .img-area-1 .contents-inner {
    padding: 0 80px;
  }

  #main.whistleblowing_b.domestic .img-area-1 img,
  #main.whistleblowing_b.overseas .img-area-1 img {
    height: auto;
    vertical-align: top;
    width: 100%;
  }

  #main.whistleblowing_b.domestic .img-area-4,
  #main.whistleblowing_b.overseas .img-area-4 {
    background: #f3f3f3;
  }

  #main.whistleblowing_b.domestic .img-area-4 .contents-inner,
  #main.whistleblowing_b.overseas .img-area-4 .contents-inner {
    -webkit-align-items: center;
    align-items: center;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    padding: 55px 30px 55px 50px;
  }

  #main.whistleblowing_b.domestic .img-area-4 .contents-inner img:nth-child(1),
  #main.whistleblowing_b.overseas .img-area-4 .contents-inner img:nth-child(1) {
    height: auto;
    width: 355px;
  }

  #main.whistleblowing_b.domestic .img-area-4 .contents-inner img:nth-child(2),
  #main.whistleblowing_b.overseas .img-area-4 .contents-inner img:nth-child(2) {
    height: auto;
    width: 388px;
  }
}

@media screen and (max-width: 1080px) {
  #main.whistleblowing_b.domestic .img-area-4,
  #main.whistleblowing_b.overseas .img-area-4 {
    background: #f3f3f3;
    margin: 30px auto 45px;
    margin: 25px auto 0;
  }

  #main.whistleblowing_b.domestic .img-area-4 .contents-inner,
  #main.whistleblowing_b.overseas .img-area-4 .contents-inner {
    padding: 40px;
    width: 65%;
    max-width: 400px;
  }

  #main.whistleblowing_b.domestic .img-area-4 .contents-inner img:nth-child(1),
  #main.whistleblowing_b.overseas .img-area-4 .contents-inner img:nth-child(1) {
    height: auto;
    width: 100%;
  }

  #main.whistleblowing_b.domestic .img-area-4 .contents-inner img:nth-child(2),
  #main.whistleblowing_b.overseas .img-area-4 .contents-inner img:nth-child(2) {
    height: auto;
    margin: 30px 0 0;
    width: 100%;
  }
}

@media screen and (max-width: 600px) {
  #main.whistleblowing_b.domestic .img-area-4,
  #main.whistleblowing_b.overseas .img-area-4 {
  }

  #main.whistleblowing_b.domestic .img-area-4 .contents-inner,
  #main.whistleblowing_b.overseas .img-area-4 .contents-inner {
    padding: 40px;
    width: 100%;
    max-width: none;
  }

  #main.whistleblowing_b.domestic .img-area-4 .contents-inner img:nth-child(1),
  #main.whistleblowing_b.overseas .img-area-4 .contents-inner img:nth-child(1) {
    height: auto;
    width: 100%;
  }

  #main.whistleblowing_b.domestic .img-area-4 .contents-inner img:nth-child(2),
  #main.whistleblowing_b.overseas .img-area-4 .contents-inner img:nth-child(2) {
    height: auto;
    margin: 30px 0 0;
    width: 100%;
  }
}

@media screen and (max-width: 420px) {
  #main.whistleblowing_b.domestic .img-area-4,
  #main.whistleblowing_b.overseas .img-area-4 {
    width: 100%;
  }

  #main.whistleblowing_b.domestic .img-area-4 .contents-inner,
  #main.whistleblowing_b.overseas .img-area-4 .contents-inner {
    padding: 30px;
  }
}

@media screen and (max-width: 1080px) {
  #main.whistleblowing_b.overseas .cts-body,
  #main.whistleblowing_b.domestic .cts-body,
  #main.whistleblowing_b.wcms .cts-body {
    /* padding-bottom: 40px; */
  }

  #main.whistleblowing_b.faq .cts-body {
    /* padding-bottom: 30px; */
  }
}

/*
  テキスト 1
  */

@media screen and (min-width: 1081px) {
  #main .text_01 {
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    line-height: 213.33%;
    margin: 20px 0 0;
  }
}

@media screen and (max-width: 1080px) {
  #main .text_01 {
    font-size: 1.4rem;
    letter-spacing: 0.025em;
    line-height: 180%;
    margin: 20px 0 0;
  }
}

/*
  各種サポートプログラム
  */

@media screen and (min-width: 1081px) {
}

@media screen and (max-width: 1080px) {
  #main.whistleblowing_b.support .head {
    margin-bottom: 40px;
  }
}

/*
  サービス＆オペレーション（海外）
  */

@media screen and (min-width: 1081px) {
  #main.whistleblowing_b.overseas .head h4 {
    margin-bottom: -5px;
    margin-top: -5px;
  }
}

@media screen and (max-width: 1080px) {
  #main.whistleblowing_b.overseas .head h4 {
    margin-bottom: 0;
    margin-top: 30px;
  }
}

/*
  サービス＆オペレーション（国内）
  */

@media screen and (min-width: 1081px) {
  #main.whistleblowing_b.domestic .head h4 {
    margin-bottom: 30px;
    margin-top: -5px;
  }
}

@media screen and (max-width: 1080px) {
  #main.whistleblowing_b.domestic .head h4 {
    margin-bottom: 0;
    margin-top: 30px;
  }

  #main.whistleblowing_b.domestic .img-area + .text {
    margin-bottom: 0;
    margin-top: 20px;
  }
}

/*
  内部通報はなぜ必要か？
  */

@media screen and (min-width: 1081px) {
  #main.whistleblowing_b.why .head h4 {
    margin-bottom: 30px;
    margin-top: 45px;
  }

  #main.whistleblowing_b.why .boxx_01 {
    margin-top: 40px;
  }
}

@media screen and (max-width: 1080px) {
  #main.whistleblowing_b.why .head h4 {
    margin-bottom: 0;
    margin-top: 30px;
  }

  #main.whistleblowing_b.why .img-area + .title_01 {
    margin-top: 40px;
  }

  #main.whistleblowing_b.why .list_01 + .title_01 {
    margin-top: 27px;
  }

  #main.whistleblowing_b.why .title_02 {
    margin-top: 19px;
  }

  #main.whistleblowing_b.why .img-area {
    background: #f3f3f3;
  }

  #main.whistleblowing_b.why .img-area img {
    max-width: 360px;
    margin-left: auto;
    margin-right: auto;
  }
}

/*
  sub.css line 930
  */
@media screen and (min-width: 1081px) {
  #main .feature .box {
    border-top: solid 1px #dddddd;
    padding: 5px 0 20px 10px;
  }
}

/*
  sub.css line 937
  */

@media screen and (min-width: 1081px) {
  #main .feature .box h5 {
    font-size: 2.1rem;
    font-weight: 600;
    margin-bottom: 0px;
    border: none;
    padding: 21px 0;
  }
}

/*
  グリッドビュー 3カラム 1
  */

@media screen and (min-width: 1081px) {
  #main .gridView_3col_01 {
  }

  #main .gridView_3col_01 .gridView_inner {
    -webkit-align-items: flex-start;
    align-items: flex-start;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    margin: 0 0 -20px -20px;
    width: calc(100% + 20px);
  }

  #main .gridView_3col_01 .gridView_item {
    margin: 0 0 20px 20px;
    transition: 0.3s;
    width: calc(33.33% - 20px);
  }

  #main .gridView_3col_01 .gridView_item:hover,
  #main .gridView_3col_01 .gridView_item a:hover {
    opacity: 1 !important;
  }

  #main .gridView_3col_01 .gridView_anchor {
  }

  #main .gridView_3col_01 .gridView_anchor a {
    border: 2px solid #031832;
    display: block;
    font-size: 1.5rem;
    font-weight: bold;
    letter-spacing: 0.005em;
    line-height: 100%;
    padding: 10px 10px;
    text-align: center;
  }

  #main .gridView_3col_01 .gridView_item.gridView_current {
    opacity: 1;
  }

  #main .gridView_3col_01 .gridView_item:not(.gridView_current) {
    opacity: 0.5;
  }
}

@media screen and (max-width: 1080px) {
  #main .gridView_3col_01 {
  }

  #main .gridView_3col_01 .gridView_inner {
    margin: 0 auto;
    max-width: 315px;
  }

  #main .gridView_3col_01 .gridView_item {
  }

  #main .gridView_3col_01 .gridView_anchor {
  }

  #main .gridView_3col_01 .gridView_anchor a {
    background: #f2f2f2;
    display: block;
    font-size: 1.5rem;
    font-weight: bold;
    letter-spacing: 0.005em;
    line-height: 100%;
    padding: 10px 10px;
    text-align: center;
  }

  #main .gridView_3col_01 .gridView_item.gridView_current {
  }

  #main .gridView_3col_01 .gridView_item:not(.gridView_current) {
    display: none;
  }
}

/*
  プルダウン 1 pullDown_01
  */

#main .select_01 label {
  background: #f2f2f2;
  display: block;
  height: 45px;
  margin: 0 auto;
  outline: 0;
  position: relative;
  width: 315px;
  z-index: 0;
}

#main .select_01 label:before {
  background: #031832;
  content: "";
  color: #fff;
  display: block;
  height: 45px;
  line-height: 45;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  width: 45px;
  z-index: -1;
}

#main .select_01 label:after {
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  content: "";
  display: block;
  height: 8px;
  line-height: 1;
  position: absolute;
  right: 19px;
  text-align: center;
  transform: rotateZ(45deg);
  top: 17px;
  width: 8px;
  z-index: -1;
}

#main .select_01 select,
#main .select_01 select:focus {
  outline: none;
}

#main .select_01 select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent none;
  border: none;
  font-size: 1.3rem;
  font-weight: bold;
  height: 45px;
  padding: 0 40px 0 20px;
  z-index: 100;
  width: 100%;
}

#main .select_01 label.select select option {
  font-weight: bold;
}

#main .select_01 label.select::before {
  background: #031832;
  content: "";
  color: #fff;
  display: block;
  height: 45px;
  line-height: 45;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  width: 45px;
  z-index: -1;
}

body.ie11 #main .select_01 select {
  padding-right: 0;
}

body.ie11 #main .select_01 label:before,
body.ie11 #main .select_01 label:after {
  display: none;
}

#main .form_contact_01 a {
  text-decoration: underline;
}
#main .form_contact_01 .text {
  margin-top:30px;
}

#main .form_contact_01 input,
#main .form_contact_01 textarea {
  font-family: "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3",
    "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック",
    sans-serif;
  border: none;
  outline: none;
  -webkit-appearance: none;
}

#main .form_contact_01 .form_description {
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 100%;
}

#main .form_contact_01 .form_description p {
  margin: 10px 0 0;
}

#main .form_contact_01 .form_title {
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.005em;
  line-height: 143.75%;
}

#main .form_contact_01 .form_remakrs {
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
}

#main .form_contact_01 .form_anchor {
}

#main .form_contact_01 table {
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
}

#main .form_contact_01 tr {
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
}

#main .form_contact_01 th {
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
}

#main .form_contact_01 td {
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  vertical-align: top;
}

#main .form_contact_01 .form_header .form_description {
  font-size: 2.3rem;
  font-weight: inherit;
  letter-spacing: 0.05em;
  line-height: 200%;
  margin: 32px 0 0;
  text-align: center;
}

#main .form_contact_01 .form_header .form_title {
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: 0.005em;
  line-height: 145.45%;
  margin: 68px auto 0;
  text-align: center;
}

#main .form_contact_01 .form_header .form_remakrs {
  color: #aa2f2f;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 100%;
  margin: 22px 0 0;
  text-align: right;
}

#main .form_contact_01 .form_table {
  border-top: 1px solid #dfdfdf;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  margin: 8px 0 0;
  table-layout: fixed;
  width: 100%;
}

#main .form_contact_01 .form_row {
  border-bottom: 1px solid #dfdfdf;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
}

#main .form_contact_01 .form_row:last-child {
  border-bottom: none;
}

#main .form_contact_01 .form_cell {
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  padding: 30px 0;
}

#main .form_contact_01 .form_cell:nth-child(1) {
  width: 270px;
}

#main .form_contact_01 .form_cell:nth-child(2) {
}

#main .form_contact_01 .form_index {
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: inherit;
  line-height: inherit;
  padding: 10px;
}

#main .form_contact_01 .form_asterisk {
  color: #aa2f2f;
  font-size: 1.1rem;
  font-weight: bold;
  letter-spacing: inherit;
  line-height: inherit;
  vertical-align: top;
  margin: 0 0 0 2px;
}

#main .form_contact_01 .form_inputArea {
  font-size: 1.4rem;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  margin: 0 10px 0 0;
}

#main .form_contact_01 .form_cell .form_index .form_description {
  display: block;
  margin-top: 2px;
}

#main .form_contact_01 .form_row.form_item_checkbox .form_index,
#main .form_contact_01 .form_row.form_item_radio .form_index {
  margin-top: -12px;
}

#main .form_contact_01 .form_cell[colspan="2"] .form_inputArea {
  margin-right: 0;
}

/* 個人情報の取り扱いに同意しますか？ */
#main .form_contact_01 tr:nth-last-child(2) {
  border: none;
}

#main .form_contact_01 tr:nth-last-child(2) .form_cell .form_inputArea {
  margin: 0 auto;
  text-align: left;
  width: 100%;
  /* max-width: 300px; */
}

#main .form_contact_01 tr:nth-last-child(2) .form_anchor {
  color: #aa2f2f;
  font-size: 1.2rem;
  letter-spacing: 0.005em;
  line-height: 100%;
}

#main .form_contact_01 tr:nth-last-child(2) .form_anchor a {
  text-decoration: underline;
}

#main .form_contact_01 tr:nth-last-child(2) .form_anchor + * {
  display: block;
  letter-spacing: -0.4em;
  line-height: 100%;
  margin: 0;
  margin-top: 30px;
  width: 100%;
}

#main .form_contact_01 tr:nth-last-child(2) .form_anchor + * > * {
  display: inline-block;
  margin: 0;
  letter-spacing: normal;
  /* line-height: 100%; */
  padding: 0;
  width: auto;
}

#main .form_contact_01 tr:nth-last-child(2) .form_anchor + * > *:nth-child(1) {
  padding-right: 22px;
}

#main .form_contact_01 tr:nth-last-child(2) .form_anchor + * > *:nth-child(2) {
  padding-left: 22px;
} /* /個人情報の取り扱いに同意しますか？ */

#main .form_contact_01 .form_errorMessage span {
  color: #aa2f2f;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 100%;
  margin: 10px 0 0;
}

#main .form_contact_01 .form_input_empty input[type="text"],
#main .form_contact_01 .form_input_empty input[type="email"],
#main .form_contact_01 .form_input_empty textarea {
  border: 1px solid #aa2f2f;
  background: #fff;
}

#main .form_contact_01 .mw_wp_form_confirm .parts_checkbox_01 {
  margin-bottom: 0;
  margin-left: 0;
  width: 100%;
}

#main .form_contact_01 .mw_wp_form_confirm .parts_checkbox_01 > * {
  margin-bottom: 0;
  margin-left: 0;
  width: 100%;
}

#main .form_contact_01 .mw_wp_form_confirm .form_index {
  padding-bottom: 0;
  padding-top: 0;
}

#main
  .form_contact_01
  .mw_wp_form_confirm
  .form_row.form_item_checkbox
  .form_index,
#main
  .form_contact_01
  .mw_wp_form_confirm
  .form_row.form_item_radio
  .form_index {
  margin-top: 0;
}

#main .form_contact_01 .mw_wp_form_confirm tr:nth-last-child(2) .form_anchor {
  display: none;
}

#main
  .form_contact_01
  .mw_wp_form_confirm
  tr:nth-last-child(2)
  .form_anchor
  + * {
  letter-spacing: normal;
}

#main .form_contact_01 .parts_checkbox_01.parts_checkbox_vertical {
}

@media (max-width: 1080px) {
  #main .form_contact_01 .form_asterisk {
    display: inline-block;
    font-size: 1.4rem;
    margin-left: 5px;
    margin-top: 0;
    /* padding-top: 2px; */
    vertical-align: top;
  }

  #main .form_contact_01 table,
  #main .form_contact_01 tbody,
  #main .form_contact_01 tr.form_row:nth-child(n),
  #main .form_contact_01 td.form_cell:nth-child(n),
  #main .form_contact_01 th.form_cell:nth-child(n) {
    display: block;
    width: 100%;
  }

  #main .form_contact_01 .form_table {
    border-top: 2px solid #dfdfdf;
    margin-top: 33px;
  }

  #main .form_contact_01 .form_row {
    border-bottom: 2px solid #dfdfdf;
    padding-bottom: 10px;
    padding-top: 5px;
  }

  #main .form_contact_01 tr:nth-last-child(2) {
    border-bottom: 2px solid #dfdfdf;
  }

  #main .form_contact_01 .form_cell {
    margin-bottom: 10px;
    margin-top: 10px;
  }

  #main .form_contact_01 .form_cell .form_index .form_description {
    display: inline-block;
    font-size: 13px;
    font-weight: normal;
    margin-left: 10px;
    margin-top: -2px;
    vertical-align: middle;
  }

  #main .form_contact_01 .form_index {
    padding: 0;
  }

  #main .form_contact_01 .form_cell {
    margin-top: 12px;
    padding-bottom: 0;
    padding-top: 0;
  }

  #main .form_contact_01 .form_title {
    font-size: 1.5rem;
  }

  #main .form_contact_01 .form_inputArea {
    margin-right: 0;
  }

  #main .form_contact_01 .form_header .form_description {
    font-size: 1.9rem;
    line-height: 150%;
    margin-top: 20px;
  }

  #main .form_contact_01 .form_header .form_title {
    border-bottom: 2px solid #031832;
    font-size: 1.8rem;
    margin-top: 45px;
    padding-bottom: 10px;
    text-align: left;
  }

  #main .form_contact_01 .form_header .form_remakrs {
    font-size: 1.4rem;
    text-align: left;
    margin-top: 10px;
  }

  #main .form_contact_01 tr:nth-last-child(2) .form_anchor {
    font-size: 1.4rem;
    margin-top: 15px;
    text-align: left;
  }

  #main .form_contact_01 tr:nth-last-child(2) .form_cell .form_inputArea {
    text-align: left;
    max-width: none;
  }

  #main .form_contact_01 tr:nth-last-child(2) .form_anchor + * {
    margin-top: 25px;
  }

  #main .form_contact_01 .form_row:last-child {
    padding-bottom: 0;
  }

  #main .form_contact_01 .form_row:last-child .form_cell {
    margin-bottom: 0;
    margin-top: 35px;
  }

  #main .form_contact_01 .form_row.form_item_checkbox .form_index,
  #main .form_contact_01 .form_row.form_item_radio .form_index {
    margin-top: 0;
  }
}

/*parts_text_01*/

#main .parts_text_01 {
}

#main .parts_text_01 input[type="text"],
#main .parts_text_01 input[type="email"] {
  background: #f2f2f2;
  border: 1px solid #f2f2f2;
  color: #031832;
  font-size: 14px;
  height: 30px;
  line-height: 100%;
  padding: 10px;
  transition: background 0.2s, border 0.2s;
  width: 100%;
}

#main .parts_text_01 input[type="text"].form_input_noEmpty,
#main .parts_text_01 input[type="email"].form_input_noEmpty {
  background: #fff;
  border: 1px solid #dddddd;
}

#main .parts_text_01 input[type="text"]:focus,
#main .parts_text_01 input[type="email"]:focus {
  background: #fff;
  border: 1px solid #031832 !important;
}

@media (max-width: 1080px) {
  #main .parts_text_01 input[type="text"],
  #main .parts_text_01 input[type="email"] {
    height: 40px;
  }
}

/*parts_text_tel_01*/

#main .parts_text_address_01 {
}

#main .parts_text_address_01 input[type="text"] {
  background: #f2f2f2;
  border: 1px solid #f2f2f2;
  color: #031832;
  font-size: 14px;
  height: 30px;
  line-height: 100%;
  margin: 10px 0 0;
  padding: 10px;
  transition: background 0.2s, border 0.2s;
  width: 100%;
}

#main .parts_text_address_01 input[type="text"].form_input_noEmpty {
  background: #fff;
  border: 1px solid #dddddd;
}

#main .parts_text_address_01 input[type="text"]:focus {
  background: #fff;
  border: 1px solid #031832;
}

#main .parts_text_address_01 input[type="text"]:nth-child(1) {
  margin-top: 0;
  padding-left: 25px;
  max-width: 115px;
}

#main .parts_text_address_01 {
  position: relative;
  z-index: 1;
}

#main .parts_text_address_01:before {
  content: "〒";
  font-size: 1.2rem;
  left: 8px;
  letter-spacing: normal;
  line-height: 100%;
  position: absolute;
  top: 10px;
  z-index: 1;
}

#main .mw_wp_form_confirm .parts_text_address_01:before {
  position: static;
}

@media (max-width: 1080px) {
  #main .parts_text_address_01 input[type="text"] {
    height: 40px;
  }

  #main .parts_text_address_01:before {
    font-size: 1.4rem;
    left: 12px;
    top: 14px;
  }

  #main .parts_text_address_01 input[type="text"]:nth-child(1) {
    padding-left: 35px;
    max-width: 185px;
  }
}

/*parts_submit_01*/

#main .parts_submit_01 {
}

#main .parts_submit_01 input[type="submit"] {
  background: #031832;
  border-radius: 3px;
  color: #fff;
  display: block;
  font-size: 1.4rem;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  margin: 0 auto;
  padding: 10px;
  text-align: center;
  width: 100%;
  max-width: 300px;
}

/*parts_submit_return_01*/

#main .parts_submit_return_01 {
  text-align: center;
}

#main .parts_submit_return_01 input[type="submit"] {
  background: none;
  cursor: pointer;
  display: inline-block;
  font-size: 1.5rem;
  /* font-size: inherit; */
  font-weight: inherit;
  letter-spacing: 0.005em;
  line-height: 100%;
  margin: 15px auto 0;
  /* padding: 10px; */
  text-align: center;
  /* width: 100%; */
  /* max-width: 300px; */
}

/*parts_textarea_01*/

#main .parts_textarea_01 {width: 100%;text-align: left;}

#main .parts_textarea_01 textarea {
  background: #f2f2f2;
  border: 1px solid #f2f2f2;
  color: #031832;
  font-size: 14px;
  font-weight: inherit;
  height: 220px;
  letter-spacing: inherit;
  line-height: inherit;
  padding: 10px;
  transition: background 0.2s, border 0.2s;
  width: 100%;
}

#main .parts_textarea_01 textarea.form_input_noEmpty {
  background: #fff;
  border: 1px solid #dddddd;
}

#main .parts_textarea_01 textarea:focus {
  background: #fff;
  border: 1px solid #031832;
}

/*parts_radio_01*/

#main .parts_radio_01 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  margin: 0 0 -20px -20px;
  width: calc(100% + 20px);
}

#main .parts_radio_01 > * {
  margin: 0 0 20px 20px;
  width: calc(49.99% - 20px);
}

#main .parts_radio_01 input[type="radio"] {
  background: #f3f3f3;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 100%;
  cursor: pointer;
  display: block;
  height: 15px;
  margin: 0 10px 0 0;
  transition: background 0.2s, border 0.2s;
  width: 15px;
}

#main .parts_radio_01 label {
  -webkit-align-items: center;
  align-items: center;
  display: flex;
  flex-flow: row wrap;
  font-size: 15px;
  line-height: 100%;
  position: relative;
  width: auto;
  z-index: 1;
}

#main .parts_radio_01 .mwform-radio-field label {
}

#main .parts_radio_01 label input[type="radio"]:checked {
  background-color: transparent;
  border: 1px solid #031832;
}

#main .parts_radio_01 label:before {
  background: #031832;
  border-radius: 100%;
  content: "";
  position: absolute;
  -webkit-transition: opacity 0.2s, border 0.2s;
  transition: opacity 0.2s, border 0.2s;
  height: 7px;
  left: 4px;
  top: 4px;
  width: 7px;
  z-index: -1;
}

#main .parts_radio_01.parts_direction_vertical > * {
  width: 100%;
}

/* 確認画面 */
#main .mw_wp_form_confirm .parts_radio_01 {
  margin-bottom: 0;
  margin-left: 0;
  width: 100%;
}

#main .mw_wp_form_confirm .parts_radio_01 > * {
  margin-bottom: 0;
  margin-left: 0;
  width: 100%;
} /* /確認画面 */

@media (max-width: 1080px) {
  #main .parts_radio_01 {
    margin: 0 0 -10px -10px;
    width: calc(100% + 10px);
  }

  #main .parts_radio_01 > * {
    margin: 0 0 10px 10px;
    width: calc(49.99% - 10px);
  }

  #main .parts_radio_01 label:before {
    background: #031832;
    border-radius: 100%;
    content: "";
    position: absolute;
    -webkit-transition: opacity 0.2s, border 0.2s;
    transition: opacity 0.2s, border 0.2s;
    height: 9px;
    left: 3px;
    top: 3px;
    width: 9px;
    z-index: -1;
  }

  #main .parts_radio_01 label:before {
    background: #031832;
    border-radius: 100%;
    content: "";
    position: absolute;
    -webkit-transition: opacity 0.2s, border 0.2s;
    transition: opacity 0.2s, border 0.2s;
    height: 9px;
    left: 3px;
    top: 3px;
    width: 9px;
    z-index: -1;
  }

  #main .parts_radio_01 label:after {
    background: #ddd;
    border-radius: 100%;
    content: "";
    position: absolute;
    -webkit-transition: opacity 0.2s, border 0.2s;
    transition: opacity 0.2s, border 0.2s;
    height: 15px;
    left: 0;
    top: 0;
    width: 15px;
    z-index: -2;
  }

  #main .parts_radio_01 label input[type="radio"] {
    background-color: #ddd;
  }

  #main .parts_radio_01 label input[type="radio"]:checked {
    border: none;
  }
}

/*parts_checkbox_01*/

#main .parts_checkbox_01 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  margin: 0 0 -20px -20px;
  width: calc(100% + 20px);
}

#main .parts_checkbox_01 > * {
  margin: 0 0 20px 20px;
  width: calc(49.99% - 20px);
}

#main .parts_checkbox_01 input[type="checkbox"] {
  background: #f3f3f3;
  border: 1px solid rgba(255, 255, 255, 0.1);
  cursor: pointer;
  display: block;
  height: 15px;
  margin: 0 10px 0 0;
  transition: background 0.2s, border 0.2s;
  width: 15px;
}

#main .parts_checkbox_01 label {
  -webkit-align-items: flex-start;
  align-items: flex-start;
  display: flex;
  flex-flow: row nowrap;
  font-size: 15px;
  line-height: 100%;
  position: relative;
  z-index: 1;
}

#main .parts_checkbox_01 .mwform-checkbox-field:nth-child(1) label {
}

#main .parts_checkbox_01 label input[type="checkbox"]:checked {
  background-color: transparent;
  border: 1px solid #031832;
}

#main .parts_checkbox_01 label:before {
  content: "";
  position: absolute;
  -webkit-transition: opacity 0.2s, border 0.2s;
  transition: opacity 0.2s, border 0.2s;
  border-left: 2px solid #031832;
  border-bottom: 2px solid #031832;
  height: 5px;
  margin-top: -0.25em;
  left: 4px;
  top: 8px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  width: 8px;
  z-index: -1;
}

#main .parts_checkbox_01.parts_direction_vertical > * {
  width: 100%;
}

@media (max-width: 1080px) {
  #main .parts_checkbox_01 input[type="checkbox"] {
    background: #ddd;
    border-radius: 3px;
  }

  #main .parts_checkbox_01 {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    margin: 0 0 -10px -10px;
    width: calc(100% + 10px);
  }

  #main .parts_checkbox_01 > * {
    margin: 0 0 10px 10px;
    width: calc(49.99% - 10px);
  }
}

/*parts_submit_01*/

#main .parts_submit_01 {
}

#main .parts_submit_01 input[type="submit"] {
  background: #031832;
  border-radius: 3px;
  color: #fff;
  cursor: pointer;
  display: block;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.005em;
  line-height: inherit;
  margin: 0 auto;
  padding: 15px;
  text-align: center;
  width: 100%;
  max-width: 300px;
}

@media (min-width: 1081px) {
  #main .parts_submit_01 input[type="submit"] {
    opacity: 1;
    transition: opacity 0.3s;
  }

  #main .parts_submit_01 input[type="submit"]:hover {
    opacity: 0.7;
  }
}

@media (max-width: 1080px) {
  #main .parts_submit_01 input[type="submit"] {
    border-radius: 5px;
    font-weight: bold;
    padding-bottom: 20px;
    padding-top: 20px;
    max-width: 240px;
  }
}

/*
  地図

  */

.map_01 {
  margin: 40px auto 0;
}

.map_01 .map_inner {
  height: 0;
  margin: 0 auto;
  overflow: hidden;
  padding-bottom: 66.66%;
  position: relative;
  width: 100%;
  max-width: 1000px;
  z-index: 1;
}

.map_01 .map_inner:before,
.map_01 .map_inner:after {
  bottom: 0;
  content: "";
  display: none;
  height: auto;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: auto;
  z-index: 1;
}

.map_01 iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media (max-width: 1080px) {
  .map_01 {
    margin-top: 30px;
  }
}

/*
  バナー
  */

#main .banner_01 {
  margin: 50px auto 0;
}

#main .banner_01 .banner_inner {
  border: 2px solid #031832;
  padding: 40px 40px 55px;
}

#main .banner_01 .banner_inner > * {
  color: #031832;
  font-weight: bold;
  line-height: 100%;
  text-align: center;
}

#main .banner_01 .banner_inner > *:nth-child(1) {
  font-size: 2rem;
  letter-spacing: 0.005em;
}

#main .banner_01 .banner_inner > *:nth-child(2) {
  color: #999;
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 0.005em;
  margin: 25px 0 0;
}

#main .banner_01 .banner_inner > *:nth-child(3) {
  font-family: "Lato", sans-serif;
  font-size: 5rem;
  font-weight: bold;
  letter-spacing: 0.025em;
  margin: 15px 0 0;
}

#main .banner_01 .banner_inner > *:nth-child(3) img {
  height: auto;
  line-height: 100%;
  margin: 14px 28px 0 0;
  vertical-align: top;
  width: 40px;
}

@media (max-width: 1080px) {
  #main .banner_01 {
  }

  #main .banner_01 .banner_inner {
    border-left: none;
    border-right: none;
    padding: 40px 10px 55px;
  }

  #main .banner_01 .banner_inner > * {
  }

  #main .banner_01 .banner_inner > *:nth-child(1) {
    font-size: 1.8rem;
  }

  #main .banner_01 .banner_inner > *:nth-child(2) {
    color: #031832;
    font-size: 1.2rem;
  }

  #main .banner_01 .banner_inner > *:nth-child(3) {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック",
      "游ゴシック体", sans-serif;
    font-size: 2.743rem;
    font-weight: bold;
    letter-spacing: normal;
  }

  #main .banner_01 .banner_inner > *:nth-child(3) img {
    height: auto;
    line-height: 100%;
    margin-top: 0;
    margin-right: 10px;
    vertical-align: top;
    width: 40px;
  }
}

/*
  バナー 2
  DQグループの情報セキュリティ対策
  */

#main .banner_02 {
  margin: 30px auto 0;
}

#main .banner_02 .banner_inner {
  text-align: right;
}

#main .banner_02 .banner_inner a {
  border: 1px solid #000;
  display: inline-block;
}

/*
  お問い合わせ
  */

@media (min-width: 1081px) {
  #main.contact .h2Wrap h2 {
    background: #f3f3f3 !important;
  }

  #main.contact .cts-body {
    margin-top: 80px;
  }
}

@media (max-width: 1080px) {
  #main.contact .form_contact_01 table,
  #main.contact .form_contact_01 tbody,
  #main.contact .form_contact_01 tr,
  #main.contact .form_contact_01 td,
  #main.contact .form_contact_01 th {
    display: block;
  }

  #main.contact .parts_text_01 {
  }

  #main.contact .form_contact_1_nanideshirimashitaka_1 .parts_checkbox_01 > * {
    width: 100%;
  }
}

#main .mw_wp_form .horizontal-item + .horizontal-item {
}

/*
  お問い合わせ 完了
  */

#main .form_contact_01.form_progress_complete .form_messageArea {
}

#main .form_contact_01.form_progress_complete .form_messageArea .form_title {
  margin: 40px 0 0;
  text-align: center;
}

#main
  .form_contact_01.form_progress_complete
  .form_messageArea
  .form_description {
  font-size: 1.5rem;
  line-height: 200%;
  margin: 30px 0 0;
}

#main .form_contact_01.form_progress_complete .form_messageArea .form_list {
  list-style-type: disc;
  margin: 10px 0 0 22px;
}

#main .form_contact_01.form_progress_complete .form_messageArea .form_list li {
  list-style: disc;
}

#main .form_contact_01.form_progress_complete .form_messageArea .form_anchor {
  margin: 40px 0 0;
  text-align: center;
  text-decoration: underline;
}

/*
  /download/form(\d+)/
  /download/form(\d+)/confirm/
  /download/form(\d+)/complete/
  */
@media screen and (min-width: 1081px) {
  #form_title .subtitle1 {
    display: block;
    margin-top: 20px;
  }
}

@media screen and (max-width: 1080px) {
  #form_title .subtitle1 {
    display: block;
    margin-top: 10px;
  }
}

/*
  テーブル 1
  会社概要
  */

#main .table_01 {
}

#main .table_01 .table_inner {
  table-layout: fixed;
  width: 100%;
}

#main .table_01 .table_inner tr {
  border-bottom: 1px solid #ddd;
}

#main .table_01 td {
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  line-height: 160%;
  padding: 15px;
}

#main .table_01 .table_image {
  -webkit-align-items: flex-start;
  align-items: flex-start;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

#main .table_01 .table_image a {
  border: 1px solid #000;
  display: block;
  width: 100%;
  max-width: 178px;
}

#main .table_01 .table_image img {
  height: auto;
  vertical-align: top;
  width: 170px;
}

#main .title_01 + .table_01 {
  margin-top: -25px;
}

#main .table_01 .table_subCol_01 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  width: 100%;
}

#main .table_01 .table_subCol_01 > *:nth-child(1) {
  font-weight: bold;
  width: 60%;
}

#main .table_01 .table_subCol_01 > *:nth-child(2) {
  font-weight: bold;
  padding: 0 0 0 10px;
  text-align: right;
  width: 40%;
}

#main .table_01 td:nth-child(1) {
  width: 165px;
  font-weight: bold;
}

@media (max-width: 1080px) {
  #main .table_01,
  #main .table_01 tbody,
  #main .table_01 tr:nth-child(n),
  #main .table_01 td:nth-child(n),
  #main .table_01 th:nth-child(n) {
    display: block;
    width: 100%;
  }

  #main .table_01.table_noVariable,
  #main .table_01.table_noVariable tbody,
  #main .table_01.table_noVariable tr:nth-child(n),
  #main .table_01.table_noVariable td:nth-child(n),
  #main .table_01.table_noVariable th:nth-child(n) {
    display: block;
    width: 100%;
  }

  #main .table_01 .table_inner {
    table-layout: fixed;
    width: 100%;
  }

  #main .table_01 .table_inner tr {
    border-bottom: 2px solid #031832;
  }

  #main .table_01 .table_image {
    display: block;
  }

  #main .table_01 .table_image a {
    margin-bottom: 5px;
    margin-top: 25px;
  }

  #main .title_01 + .table_01 {
    margin-top: -25px;
  }

  #main .table_01 td {
    font-size: 1.4rem;
    letter-spacing: 0.005em;
    line-height: 160%;
  }

  #main .table_01 td:nth-child(1) {
    border-bottom: 1px solid #ddd;
    padding: 15px 0 10px;
  }

  #main .table_01 td:nth-child(2) {
    padding: 10px 0 15px;
  }
}

/*
  テーブル 2
  会社概要
  */

#main .table_02 {
}

#main .table_02 .table_inner {
  table-layout: fixed;
  width: 100%;
}

#main .table_02 .table_inner tr {
  border-bottom: 1px solid #ddd;
}

#main .table_02 td {
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  line-height: 160%;
  padding: 15px;
  vertical-align: top;
}

#main .title_01 + .table_02 {
  margin-top: -25px;
}

#main .table_02 .table_subCol_01 {
  display: -webkit-flex;
  display: flex;
  flex-flow: row wrap;
  width: 100%;
}

#main .table_02 .table_subCol_01 > *:nth-child(1) {
  font-weight: bold;
  width: 60%;
}

#main .table_02 .table_subCol_01 > *:nth-child(2) {
  font-weight: bold;
  padding: 0 0 0 10px;
  text-align: right;
  width: 40%;
}

#main .table_02 td:nth-child(1) {
  width: 165px;
  font-weight: bold;
}

@media (max-width: 1080px) {
  #main .table_02 .table_inner {
    table-layout: fixed;
    width: 100%;
  }

  #main .table_02 .table_inner tr {
    /* border-bottom: 1px solid #031832; */
  }

  #main .title_01 + .table_02 {
    margin-top: -25px;
  }

  #main .table_02 td {
    font-size: 1.4rem;
    letter-spacing: 0.005em;
    line-height: 160%;
    vertical-align: top;
  }

  #main .table_02 td:nth-child(1) {
    border-bottom: 1px solid #ddd;
    padding: 15px 0 10px;
    width: 90px;
  }

  #main .table_02 td:nth-child(2) {
    padding: 15px 0 15px 20px;
  }

  #main .table_02 .table_subCol_01 > *:nth-child(1) {
    font-family: "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3",
      "Hiragino Kaku Gothic Pro";
    font-weight: bold;
    letter-spacing: -1px;
    width: 65%;
  }

  #main .table_02 .table_subCol_01 > *:nth-child(2) {
    font-family: "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3",
      "Hiragino Kaku Gothic Pro";
    font-weight: bold;
    letter-spacing: -1px;
    padding: 0;
    text-align: right;
    width: 35%;
  }
}

/*
  テーブル 3
  サービス検討資料ダウンロード
  */

#main .table_03 {
  margin: 80px auto 0;
}

#main .table_03 .table_inner {
  border-top: 1px solid #ddd;
  table-layout: fixed;
  width: 100%;
}

#main .table_03 .table_inner tr {
  border-bottom: 1px solid #ddd;
}

#main .table_03 td {
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 200%;
  vertical-align: top;
}

#main .table_03 tr.table_document_pdf td {
  background: url(/wp-content/themes/d-quest/images/icon_pdf_01.svg) 11px center /
    21px auto no-repeat;
  padding: 22px 10px 22px 42px;
}

#main .table_03 tr.table_document_pptx td {
  background: url(/wp-content/themes/d-quest/images/icon_pptx_01.svg) 11px
    center / 21px auto no-repeat;
  padding: 22px 10px 22px 42px;
}

@media (max-width: 1080px) {
  #main .table_03,
  #main .table_03 tbody,
  #main .table_03 tr:nth-child(n),
  #main .table_03 td:nth-child(n),
  #main .table_03 th:nth-child(n) {
    display: block;
    width: 100%;
  }

  #main .table_03 {
    margin: 0 auto;
  }

  #main .table_03 .table_inner {
    border-top: 2px solid #031832;
    table-layout: fixed;
    width: 100%;
  }

  #main .table_03 .table_inner tr {
    border-bottom: 1px solid #dddd;
  }

  #main .table_03 td {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    line-height: 200%;
    padding: 12px 0;
    vertical-align: top;
  }

  #main .table_03 tr.table_document_pdf td {
    background: url(/wp-content/themes/d-quest/images/icon_pdf_01.svg) 11px
      center / 21px auto no-repeat;
    padding: 12px 10px 12px 40px;
  }

  #main .table_03 tr.table_document_pptx td {
    background: url(/wp-content/themes/d-quest/images/icon_pptx_01.svg) 11px
      center / 21px auto no-repeat;
    padding: 12px 10px 12px 40px;
  }

  #main .table_03 td:nth-child(1) {
  }
}

/*
  テーブル 4
  DQグループの情報セキュリティ対策
  */

#main .table_04 {
}

#main .table_04 .table_inner {
  border-top: 1px solid #ddd;
  table-layout: fixed;
  width: 100%;
}

#main .table_04 .table_inner tr {
  border-bottom: 1px solid #ddd;
}

#main .table_04 .table_inner td {
  vertical-align: middle;
}

#main .table_04 .table_inner td:nth-child(1) {
  vertical-align: middle;
  padding: 20px 20px 22px;
  width: 280px;
}

#main .table_04 .table_inner td:nth-child(2) {
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  padding: 50px 20px;
}

#main .table_04 .table_inner .table_title {
  background: #031832;
  color: #fff;
  font-size: 32px;
  line-height: 131.25%;
}

#main .table_04 .table_inner .table_title span {
  font-family: "Lato", sans-serif;
  font-weight: bold;
}

#main .table_04 .table_inner .table_title small {
  display: block;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 150%;
  margin: 3px 0 0;
}

#main .table_04 .table_subCol_01 .list_01 {
  margin-top: 0;
}

#main .table_04 .table_subCol_01 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  width: 100%;
}

#main .table_04 .table_subCol_01 > *:nth-child(1) {
  width: 170px;
}

#main .table_04 .table_subCol_01 > *:nth-child(2) {
  padding: 0 0 0 10px;
  width: calc(100% - 170px);
}

@media (max-width: 1080px) {
  #main .table_04,
  #main .table_04 tbody,
  #main .table_04 tr:nth-child(n),
  #main .table_04 td:nth-child(n),
  #main .table_04 th:nth-child(n) {
    border: none;
    display: block;
    width: 100% !important;
  }

  #main .table_04 .list_01 {
    margin-top: 8px;
  }

  #main .table_04 .table_inner td:nth-child(1) {
    padding: 10px 20px 25px;
    text-align: center;
  }

  #main .table_04 .table_inner td:nth-child(2) {
    font-size: 1.4rem;
    letter-spacing: 0.025em;
    line-height: 180%;
    padding: 20px 0 30px;
  }

  #main .table_04 tr:last-child td:nth-child(2) {
    padding-bottom: 0 !important;
  }

  #main .table_04 .table_subCol_01 {
    display: block;
  }

  #main .table_04 .table_subCol_01 > *:nth-child(n) {
    display: block;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
  }

  #main .table_04 .table_inner .table_title span {
    font-size: 2.4rem;
    letter-spacing: 0;
    line-height: 100%;
  }

  #main .table_04 .table_inner .table_title small {
    font-size: 1.5rem;
    letter-spacing: 0.005em;
    line-height: 100%;
  }
}

/*
  テーブル 5
  役員・アドバイザー
  */

#main .table_05 {
  margin: 80px auto 0;
}

#main .table_05 .table_inner {
  border-top: 1px solid #ddd;
  table-layout: fixed;
  width: 100%;
}

#main .table_05 .table_inner tr {
  border-bottom: 1px solid #ddd;
}

#main .table_05 td {
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  line-height: 240%;
  padding: 38px 10px;
  vertical-align: top;
}

#main .table_05 td:nth-child(1) {
  font-weight: bold;
  width: 290px;
}

#main .table_05 td:nth-child(2) {
}

@media (max-width: 1080px) {
  #main .table_05,
  #main .table_05 tbody,
  #main .table_05 tr:nth-child(n),
  #main .table_05 td:nth-child(n),
  #main .table_05 th:nth-child(n) {
    display: block;
    width: 100%;
  }

  #main .table_05 {
    margin: 0 auto;
  }

  #main .table_05 .table_inner {
    border-top: 2px solid #031832;
    table-layout: fixed;
    width: 100%;
  }

  #main .table_05 .table_inner tr {
    border-bottom: 2px solid #031832;
  }

  #main .table_05 td {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    line-height: 171.42%;
    vertical-align: top;
  }

  #main .table_05 td:nth-child(1) {
    border-bottom: 1px solid #ddd;
    padding: 16px 0 10px;
  }

  #main .table_05 td:nth-child(2) {
    padding: 10px 0 16px;
  }
}

/*
  会社概要
  */

#main.aboutus.profile {
}

#main.aboutus.profile .h2Wrap > * {
  background: #f3f3f3 !important;
}

#main.aboutus.profile .cts-body .contents-inner {
  margin-bottom: 100px;
}

#main.aboutus.profile .cts-body .contents-inner > .title_01:nth-child(1) {
  margin-top: 45px;
}

@media (max-width: 1080px) {
  #main.aboutus.profile .cts-body .contents-inner > .title_01:nth-child(1) {
    margin-top: 0;
  }

  #main.aboutus.profile .h2Wrap > * {
    background: #fff !important;
  }
}

/*
  個人情報保護指針
  */

#main.privacy {
}

#main.privacy .h2Wrap > * {
  background: #f3f3f3 !important;
}

#main.privacy .cts-body .contents-inner {
  /* margin-bottom: 100px; */
}

@media (max-width: 1080px) {
  #main.privacy .title_02 {
    margin-top: 25px;
  }

  #main.privacy .h2Wrap > * {
    background: #fff !important;
  }

  #main.privacy .cts-body .contents-inner {
    /* margin-bottom: 60px; */
  }
}

/*
  DQグループの情報セキュリティ対策
  */

#main.security {
}

#main.security .h2Wrap > * {
  background: #f3f3f3 !important;
}

#main.security .cts-body .contents-inner {
  margin-bottom: 100px;
}

@media (max-width: 1080px) {
  #main.security #lavel2 {
    padding-top: 0;
  }

  #main.security .title_02 {
    margin-top: 25px;
  }

  #main.security .h2Wrap > * {
    background: #fff !important;
  }

  #main.security .cts-body .contents-inner {
    margin-bottom: 60px;
  }
}

/*
  役員・アドバイザー
  */

#main.aboutus.leadership {
}

#main.aboutus.leadership .h2Wrap > * {
  background: #f3f3f3 !important;
}

#main.aboutus.leadership .cts-body .contents-inner {
  margin-bottom: 100px;
}

@media (max-width: 1080px) {
  #main.aboutus.leadership .h2Wrap > * {
    background: #fff !important;
  }

  #main.aboutus.leadership .cts-body .contents-inner {
    margin-bottom: 0;
  }
}

/*
  サービス検討資料ダウンロード
  */

#main.download {
}

#main.download .h2Wrap > * {
  background: #f3f3f3 !important;
}

#main.download .cts-body .contents-inner {
  margin-bottom: 100px;
}

@media (max-width: 1080px) {
  #main.download #lavel2 {
    padding-top: 0;
  }

  #main.download .h2Wrap > * {
    background: #fff !important;
  }

  #main.download .cts-body .contents-inner {
    margin-bottom: 60px;
  }
}

/*
  お問い合わせ誘導エリア
  /compliance/anti-company-check/
  */

#main .anchor_area-type1 {
  margin: 0 0 100px;
  padding: 0 50px;
  text-align: center;
}

#main .anchor_area-type1 .btn-contact {
  position: relative;
  width: 350px;
  z-index: 1;
}

#main .anchor_area-type1 .btn-contact span {
  position: relative;
  z-index: 1;
  padding-right: 16px;
}

#main .anchor_area-type1 .btn-contact span:after {
  content: "";
  position: absolute;
  width: 7px;
  height: 7px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  z-index: 2;
  top: calc(50% + 1px);
  right: 3px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin-top: -4px;
}

#main .anchor_area-type1 p {
  font-size: 15px;
  font-weight: bold;
  line-height: 1;
}

#main .anchor_area-type1 .text-tel {
}

#main .anchor_area-type1 .text-tel span {
  border: 1px solid #031832;
  border-radius: 3px;
  color: #031832;
  display: inline-block;
  font-family: "Roboto", sans-serif;
  font-size: 24px;
  font-weight: bold;
  margin: 15px 0 0;
  padding: 6px 30px;
  width: 260px;
}

#main .anchor_area-type1 .text-tel span svg {
  margin-right: 18px;
}

#main .anchor_area-type1 .text-tel small {
  display: block;
  font-size: 12px;
  font-weight: bold;
  margin: 12px 0 0;
}

@media (max-width: 1080px) {
  #main .anchor_area-type1 {
    border-bottom: 1px solid #ddd;
    margin: 50px 30px 10px;
    padding: 0 0 50px;
  }

  #main .anchor_area-type1 .btn-contact {
    margin-bottom: 35px;
    width: 260px;
  }

  #main .anchor_area-type1 .btn-contact span {
    position: relative;
    z-index: 1;
    padding-right: 16px;
  }

  #main .anchor_area-type1 .btn-contact span:after {
    content: "";
    position: absolute;
    width: 7px;
    height: 7px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    z-index: 2;
    top: calc(50% + 1px);
    right: 3px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -4px;
  }

  #main .anchor_area-type1 p {
    font-size: 14px;
  }

  #main .anchor_area-type1 .text-tel {
  }

  #main .anchor_area-type1 .text-tel span {
    border-radius: 0;
    margin-top: 12px;
  }

  #main .anchor_area-type1 .text-tel span svg {
    margin-right: 18px;
  }

  #main .anchor_area-type1 .text-tel small {
    display: block;
    font-size: 12px;
    font-weight: bold;
    margin: 12px 0 0;
  }
}
