@charset "utf-8";

/*
サービス＆オペレーション（海外）
/whistleblowing_business/overseas/
*/

@media screen and (max-width: 1080px) {

  /* SP */
  #main .text {
    font-size: 1.4rem;
    letter-spacing: .025em;
    line-height: 25.2px;
    line-height: 180%;
  }
}



@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 #031832;
    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: .005em;
    line-height: 25.6px;
    text-align: left;
    padding: 16px 0;
    padding: 16px 20px 16px 42px;
    overflow: hidden;
    border-top: solid 1px #031832;
    vertical-align: middle;
  }

  #main .table-type2 tbody td:nth-child(1) {
    font-size: 1.8rem;
    font-weight: bold;
    text-align: left;
    vertical-align: top;
    width: 265px;
  }

  #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: .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: .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: .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: .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: .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: .05em;
    line-height: 200%;
  }

  #main .boxx_03 .boxx_remarks {
    font-size: 1.2rem;
    letter-spacing: .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: .005em;
    line-height: 160%;
  }

  #main .boxx_03 .boxx_remarks {
    font-size: 1.1rem;
    letter-spacing: .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: .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: .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: .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: .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 .6s;
    cursor: pointer;
  }

  #main .boxx_toggle_01 .boxx_answer {
    height: 100%;
    margin: 30px 0 0;
    overflow: hidden;
    transition: height .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: .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: .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: .005em;
    line-height: 150%;
    margin: 0 0 0 5px;
    position: relative;
    transition: background .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: .005em;
    line-height: 150%;
    margin: -1px 14px 0 0;
  }

  #main .boxx_toggle_01 .boxx_answer .boxx_text {
    font-size: 1.5rem;
    letter-spacing: .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 .6s;
  }

  #main .boxx_toggle_01 .boxx_answer {
    height: 100%;
    margin: 15px 0 0;
    overflow: hidden;
    transition: height .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: .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: .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: .005em;
    line-height: 150%;
    margin: 0 0 0 5px;
    position: relative;
    transition: background .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: .005em;
    line-height: 106.66%;
    margin: 5px 14px 0 0;
  }

  #main .boxx_toggle_01 .boxx_answer .boxx_text {
    font-size: 1.4rem;
    letter-spacing: .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: .05em;
    line-height: 200%;
    margin: 0 0 0 20px;
  }

  #main .list_01 .item {
  }

  #main .list_01 .list_remarks {
    font-size: 1.2rem;
    letter-spacing: .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: .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: .05em;
    line-height: 200%;
    list-style: inherit;
    position: relative;
    z-index: 1;
  }

  #main .list_02 ol > li:before {
    content: "("counter(cnt) ")";
    font-size: 1.5rem;
    left: 8px;
    position: absolute;
    top: 0;
    z-index: 1;
  }
}

@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: .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: .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: .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: .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: 2.0rem;
  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: 2.0rem;
  }
}



/*
見出し 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: .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: .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.0;
  }

  #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 */
  #main .mv.whistleblowing_b {
    background-image: url(/wp-content/themes/d-quest/images/hl_top_mv.jpg);
  }

  #main .mv.whistleblowing_b-why {
    background-image: url(/wp-content/themes/d-quest/images/hl_why_mv.jpg);
  }

  #main .mv.whistleblowing_b-faq {
    background-image: url(/wp-content/themes/d-quest/images/hl_mv_faq.jpg);
  }

  #main .mv.whistleblowing_b-wcms {
    background-image: url(/wp-content/themes/d-quest/images/hl_wcms_mv.jpg);
  }

  #main .mv.whistleblowing_b-overseas {
    background-image: url(/wp-content/themes/d-quest/images/hl_ov_mv.jpg);
  }

  #main .mv.whistleblowing_b-domestic {
    background-image: url(/wp-content/themes/d-quest/images/hl_do_mv.jpg);
  }

  #main .mv.whistleblowing_b-support {
    background-image: url(/wp-content/themes/d-quest/images/hl_sup_mv.jpg);
  }

  #main .mv.whistleblowing_b-sem01 {
    background-image: url(/wp-content/themes/d-quest/images/hl_sem0005_mv.jpg);
  }

    #main .mv.whistleblowing_case {
        background-image: url(/wp-content/themes/d-quest/images/dq_mv_case.jpg);
    }

  /*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*/
  #main .mv.whistleblowing_b {
    background-image: url(/wp-content/themes/d-quest/images/hl_top_mv_sp.jpg);
  }

  #main .mv.whistleblowing_b-why {
    background-image: url(/wp-content/themes/d-quest/images/hl_why_mv_sp.jpg);
  }

  #main .mv.whistleblowing_b-faq {
    background-image: url(/wp-content/themes/d-quest/images/hl_mv_faq_sp.jpg);
  }

  #main .mv.whistleblowing_b-wcms {
    background-image: url(/wp-content/themes/d-quest/images/hl_wcms_mv_sp.jpg);
  }

  #main .mv.whistleblowing_b-overseas {
    background-image: url(/wp-content/themes/d-quest/images/hl_ov_mv_sp.jpg);
  }

  #main .mv.whistleblowing_b-domestic {
    background-image: url(/wp-content/themes/d-quest/images/hl_do_mv_sp.jpg);
  }

  #main .mv.whistleblowing_b-support {
    background-image: url(/wp-content/themes/d-quest/images/hl_sup_mv_sp.jpg);
  }

  #main .mv.whistleblowing_b-sem01 {
    background-image: url(/wp-content/themes/d-quest/images/hl_sem0005sp_mv.jpg);
  }

  #main .mv.whistleblowing_b-training {
    background-image: url(/wp-content/themes/d-quest/images/hl_sup_mv_sp.jpg);
  }
    #main .mv.whistleblowing_case {
        background-image: url(/wp-content/themes/d-quest/images/dq_mv_case_sp.jpg);
    }

  /*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: .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: .05em;
    line-height: 213.33%;
    margin: 20px 0 0;
  }
}

@media screen and (max-width: 1080px) {

  #main .text_01 {
    font-size: 1.4rem;
    letter-spacing: .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: .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: .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: .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: .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 {
}

#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: .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: .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: 1.5rem;
  font-weight: inherit;
  letter-spacing: .05em;
  line-height: 200%;
  margin: 32px 0 0;
}

#main .form_contact_01 .form_header .form_title {
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: .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: .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: center;
  width: 100%;
  max-width: 300px;
}

#main .form_contact_01 tr:nth-last-child(2) .form_anchor {
  color: #aa2f2f;
  font-size: 1.2rem;
  letter-spacing: .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: -.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: 2px;
}/* /個人情報の取り扱いに同意しますか？ */

#main .form_contact_01 .form_errorMessage span {
  color: #aa2f2f;
  font-size: 1.2rem;
  letter-spacing: .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.4rem;
    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 .2s, border .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 .2s, border .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: .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 {
}

#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 .2s, border .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, .1);
  border-radius: 100%;
  cursor: pointer;
  display: block;
  height: 15px;
  margin: 0 10px 0 0;
  transition: background .2s, border .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;
  padding-right: 30px;
}

#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 .2s,  border .2s;
  transition: opacity .2s, border .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 .2s,  border .2s;
    transition: opacity .2s, border .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 .2s,  border .2s;
    transition: opacity .2s, border .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 .2s,  border .2s;
    transition: opacity .2s, border .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, .1);
  cursor: pointer;
  display: block;
  height: 15px;
  margin: 0 10px 0 0;
  transition: background .2s, border .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 .2s,  border .2s;
  transition: opacity .2s, border .2s;
  border-left: 2px solid #031832;
  border-bottom: 2px solid #031832;
  height: 5px;
  margin-top: -.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: .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 .3s;
  }

  #main .parts_submit_01 input[type="submit"]:hover {
    opacity: .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: .005em;
}

#main .banner_01 .banner_inner > *:nth-child(2) {
  color: #999;
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: .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: .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: .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: .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: .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: .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: .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: .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: .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: .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: .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: .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: .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: .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;
  }
}