@charset "utf-8";
@media screen and (max-width: 767px) {
  /* reset css
	---------------------- */

  @font-face {
    font-family: "Arial Black";
    font-style: normal;
    font-weight: 400;
    src: local("Arial Black"), url("ariblk_0.ttf") format("ttf");
  }
  html {
    width: 100%;
    height: 100%;
  }
  * {
    box-sizing: border-box;
  }
  body {
    position: relative;
    width: 100%;
    min-width: 100%;
    font-size: 15px;
    -webkit-overflow-scrolling: touch;
  }
  a:link {
    color: #444;
  }
  a:hover {
    color: #888;
  }

  /* LAYOUT
	---------------------- */
  #page {
    position: relative;
    width: 100%;
    margin: 0 auto;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
  }
  #page.open {
    position: fixed;
    -webkit-transform: translate3d(-80%, 0, 0);
    -moz-transform: translate3d(-80%, 0, 0);
    transform: translate3d(-80%, 0, 0);
  }

  /* header */
  #header h1 {
    display: none;
  }
  #header {
    min-width: 100%;
    padding: 0;
  }
  #header .header {
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding: 10px 0 5px;
  }
  #header .header .head-logo {
    width: 65%;
    margin: 0 auto;
    padding-left: 3%;
  }
  #header .header .head-logo img {
    width: 100%;
  }
  #header .header .head-inquiry {
    display: none;
  }

  /* navigation */
  #sp_navi {
    width: 24%;
    float: right;
    margin-right: 3%;
  }
  #sp_navi:after {
    content: " ";
    display: table;
    clear: both;
  }
  #sp_navi li {
    width: 47.5%;
    float: left;
  }
  #sp_navi li:nth-child(1) {
    margin-right: 5%;
  }
  #sp_navi li img {
    width: 100%;
  }
  #drawer_underlay {
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    top: 0px;
    left: 0px;
    z-index: 100;
  }
  #gnavi {
    position: fixed;
    width: 80%;
    min-width: 80%;
    height: 100%;
    font-size: 110%;
    border-top: inherit;
    border-bottom: inherit;
    padding: 20px 5%;
    background: #000;
    overflow-x: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    right: -80%;
    top: 0px;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
  }
  #gnavi.open {
    -webkit-transform: translate3d(-100%, 0, 0);
    -moz-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  #close {
    width: 100%;
    font-size: 120%;
    color: #fff;
    padding: 5px 5%;
    border: 1px solid #555;
    background: #222;
  }
  #close span {
    font-family: "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
    font-size: 130%;
  }
  #gnavi > ul {
    width: 100%;
    padding: 5% 0;
  }
  #gnavi > ul li {
    width: 100%;
    padding: 0px;
    border-bottom: 1px solid #666;
    float: none;
  }
  #gnavi > ul li:nth-child(1) {
    width: 100%;
  }
  #gnavi > ul > li:nth-child(2) {
    width: 100%;
  }
  #gnavi > ul > li:nth-child(3) {
    width: 100%;
  }
  #gnavi > ul li > a {
    position: relative;
    display: block;
    text-decoration: none;
    text-align: left;
    letter-spacing: 2px;
    line-height: 1.5;
    color: #fff;
    padding: 14px 0;
    background: #000;
  }
  #gnavi > ul li > a:hover:before {
    display: none;
  }
  #gnavi > ul li > a:after {
    content: none;
  }
  #gnavi ul li.navi_slide {
    position: relative;
    cursor: default;
    border-bottom: 0px;
  }
  #gnavi ul li.navi_slide > a {
    cursor: default;
  }
  #gnavi li.navi_slide > ul {
    display: block;
    position: inherit;
    width: 100%;
    height: inherit;
    font-size: 90%;
    margin-left: 0;
    padding: 0;
    border-bottom: inherit;
    overflow: hidden;
    zoom: 1;
    z-index: 5000;
    border-radius: 0 0 4px 4px;
    background: #222;
  }
  #gnavi li.navi_slide > ul li {
    width: 100%;
    color: #595757;
    text-align: center;
    border-bottom: 1px dashed #666;
    margin: 0;
    float: none;
  }
  #gnavi li.navi_slide > ul li:last-child {
    border: 0px;
  }
  #gnavi li.navi_slide > ul li a {
    display: block;
    position: inherit;
    text-align: left;
    text-decoration: none;
    text-shadow: inherit;
    letter-spacing: 1px;
    color: #fff;
    margin: 0 auto;
    padding: 15px 5%;
    background: none;
    box-shadow: none;
  }
  #gnavi + #visual {
    border-bottom: 0px;
  }
  #contents {
    width: 100%;
  }
  #contents .contents_header {
    width: 100%;
    padding: 30px 0;
    background-size: cover;
  }
  #contents .contents_header .head_inner {
    width: 100%;
  }
  #contents .contents_header .head_inner > .title {
    font-size: 190%;
  }

  /* contents */
  #visual {
    min-width: 100%;
    background: none;
  }
  #visual .visual {
    width: 100%;
    padding: 0;
  }
  #visual .visual img {
    width: 100%;
    display: block;
  }
  .section {
    padding: 0 0 30px;
  }
  .section > .section_inner {
    width: 100%;
    padding: 0 20px;
  }
  #contents .section .section_title {
    font-size: 160%;
    color: #000;
    padding: 40px 20px 20px;
    background: url(img/midashi-line01-sp.png) no-repeat center bottom;
    background-size: 35%;
  }
  .section > .section_inner:before {
    position: absolute;
    content: url(img/background-ptn01-sp.jpg);
    left: -200px;
    top: 0;
    z-index: -1;
  }
  .section > .section_inner:after {
    position: absolute;
    content: url(img/background-ptn03-sp.jpg);
    right: -200px;
    top: 0;
    z-index: -1;
  }
  .child_content_section {
    margin-bottom: 10px;
  }
  #contents .child_content_section .child_content_title {
    font-size: 130%;
    padding: 12px 12px 12px 35px;
  }
  .child_content_section .child_content_title:before {
    width: 5px;
    height: 30px;
    margin-top: -17px;
  }

  /* footer */
  .footer {
    min-width: 100%;
  }
  .footer .footer_inner {
    width: 100%;
    padding: 40px 0px;
    background: url(img/footer-mark-pc.png) no-repeat right -35px bottom;
  }
  .footer_logo {
    width: 100%;
    float: none;
    padding: 0 40px;
    margin: 0 0 30px;
  }
  .footer_logo .footer_tel a {
    font-size: 110%;
    color: #000;
  }
  .footer_inner a {
    text-decoration: none;
    font-size: 90%;
    color: #fff;
  }
  .footernavi {
    width: 100%;
    padding: 0 40px;
    margin-bottom: 0;
  }
  .footernavi li {
    font-size: 100%;
    width: 50%;
    margin-right: 0;
  }
  .footernavi li:nth-child(3n + 2) {
    width: 50%;
  }
  .footernavi li:nth-child(3n + 3) {
    width: 50%;
  }
  .footernavi li a {
    text-decoration: none;
    color: #000;
  }
  .footernavi li a:hover {
    text-decoration: none;
  }
  .copy {
    text-align: center;
    width: 100%;
    margin: 0 auto;
    padding: 5px 0 10px;
  }
  .copy img {
    margin: 0 auto;
    display: block;
    padding-top: 10px;
  }
  .copy a {
    font-size: 80%;
    color: #fff;
    text-decoration: none;
  }

  /* 各固定ページ用
	---------------------- */
  /* greeting.html */

  #contents .company_office_list {
    margin: 0px;
  }

  /* access.html */
  .access_map {
    width: 100%;
    padding: 45px 10px;
  }
  .access_map .map_set #map {
    width: 100%;
    height: 200px;
    box-shadow: inherit;
  }
  .access_map .map_set .guide {
    font-size: 85%;
    padding: 13px 10px;
  }

  /* inquiry.html */
  .attent_block {
    padding: 0;
  }
  .attent_block .set {
    padding: 0;
  }
  .inquiry_info .set {
    width: inherit;
    padding: 0 0 20px;
    float: inherit;
  }
  .inquiry_info .no {
    font-size: 190%;
  }
  #inquiry .inquiry_inner {
    margin: 0;
    padding: 10px 10px 0;
    border-bottom: 0px;
    background: none;
  }
  #inquiry .inquiry_inset {
    padding: 0px;
    background: none;
    border: 0px;
  }
  #MailForm table {
    width: 100%;
  }
  #MailForm th,
  #MailForm td {
    display: block;
    width: 100%;
    border: none;
  }
  #MailForm th {
    padding: 12px 0 0;
    background: none;
  }
  #MailForm th:before {
    content: "■";
    font-size: 160%;
    color: #660874;
    margin-right: 5px;
  }
  #MailForm th span {
    left: auto;
    right: 20px;
    bottom: 3px;
  }
  #MailForm td {
    padding: 0 0 25px;
  }
  #MailForm input,
  #MailForm textarea {
    width: 100%;
  }
  #MailForm textarea {
  }
  #MailForm .form3 {
    vertical-align: middle;
    width: 3%;
  }
  #MailForm .form25 {
    width: 100%;
  }
  #MailForm .form45 {
    width: 100%;
  }
  #MailForm .form60 {
    width: 100%;
  }
  #MailForm .form90 {
    width: 100%;
  }
  .send_btn {
    font-size: 100%;
    padding: 15px 10px;
  }
  .submit_btn {
    width: 80%;
    margin-bottom: 15px;
  }
  .reset_btn {
    width: 80%;
  }
  .inputarea li {
    margin: 0 15px 0 0;
    float: left;
  }
  .send_inner .send_btn_inner .btn_return {
    margin-bottom: 25px;
  }
  input[type="submit"],
  input[type="button"] {
    border-radius: 0;
    -webkit-box-sizing: content-box;
    -webkit-appearance: button;
    appearance: button;
    border: none;
    box-sizing: border-box;
    cursor: pointer;
  }
  input[type="submit"]::-webkit-search-decoration,
  input[type="button"]::-webkit-search-decoration {
    display: none;
  }
  input[type="submit"]::focus,
  input[type="button"]::focus {
    outline-offset: -2px;
  }

  /* formmail.cgi:send confirm */
  .send_confirm_table {
    padding: 17px 0 30px;
  }
  .send_confirm_table table {
    width: 100%;
    margin: 0 auto;
    border-collapse: collapse;
  }
  .send_confirm_table table th,
  .send_confirm_table table td {
    border: 0px solid #ccc;
    padding: 17px 20px;
    background: #fff;
    display: block;
  }
  #contents .send_confirm_table table th {
    text-align: left;
    width: 100%;
    background: #f5f5f5;
    margin-bottom: 5px;
    padding: 10px 15px;
  }
  .send_confirm_table table td {
    margin-bottom: 30px;
  }

  /* base styles
	---------------------- */
  .table_base table {
    width: 100%;
    margin: 0 auto;
    border-collapse: collapse;
  }
  .table_base table th,
  .table_base table td {
    font-weight: normal;
    padding: 12px 12px;
    border: 0px;
    display: block;
  }
  .table_base table td span.map_jump a:hover {
    opacity: 1;
  }
  .table_base table tbody th {
    text-align: left;
    width: 100%;
    background: #f2e2ef;
    border-bottom: 1px solid #660874;
  }
  .table_base table tbody td {
    margin-bottom: 20px;
    padding: 12px 12px;
    background: none;
  }
  .content_inner {
    padding: 0 0 25px;
  }
  .content_inner .images_r,
  .content_inner .images_l {
    padding: 0 0% 10px;
    float: inherit;
  }
  .w_margin270 .images_r,
  .w_margin270 .images_l {
    width: 100%;
  }
  .w_margin270 .msg_l,
  .w_margin270 .msg_r {
    padding-right: 0px;
    padding-left: 0px;
  }
  .w_margin320 .images_r,
  .w_margin320 .images_l {
    width: 100%;
  }
  .w_margin320 .msg_l,
  .w_margin320 .msg_r {
    padding-right: 0px;
    padding-left: 0px;
  }
  .w_margin440 .images_r,
  .w_margin440 .images_l {
    width: 100%;
  }
  .w_margin440 .msg_l,
  .w_margin440 .msg_r {
    padding-right: 0px;
    padding-left: 0px;
    line-height: 2;
  }
  .breadcrumbs {
    display: none;
  }
  #contents .pick_text {
    font-size: 125%;
    margin-bottom: 15px;
    line-height: 1.6;
  }

  /* 各ページ用スタイル
	---------------------- */
  .page_top img:hover {
    opacity: 1;
  }
  .no_sp {
    display: none;
  }
  .sub_banner img {
    width: 100%;
  }
  .main_midasi {
    position: relative;
    font-size: 135%;
    font-weight: normal;
    letter-spacing: 0px;
    color: #6a4a17;
    padding: 13px 20px;
    border-top: 3px solid #866532;
  }
  .main_midasi:before {
    content: " ";
    position: absolute;
    left: inherit;
    top: inherit;
  }
  .section_header {
    position: relative;
  }
  .section_header .archive_link {
    position: absolute;
    right: 20px;
    top: 17px;
  }
  .section_header .archive_link a:before {
    content: " ";
    position: relative;
    margin-right: 5px;
    top: 2px;
  }

  /* .top_privacy_msg */
  .top_privacy_msg {
    padding: 90px 0 0;
  }

  /* index.html */

  /* .top_attention */
  .top_attention {
    padding: 20px 0 25px;
    overflow: hidden;
    background: #e0cee3;
  }

  .top_attention_title {
    font-size: 160%;
	background: url(img/midashi-line01-sp.png) no-repeat center bottom;
	background-size: 35%;
	margin-bottom: 30px;
  }

  .top_attention_inner {
    padding: 0 20px;
    width: 100%;
  }

  .top_attention_msg {
    font-size: 100%;
    text-align: left;
  }

  .top_attention_list dd span {
	  display: inline-block;
  }

  /* .top_contents */
  .top_contents_title {
    font-size: 115%;
    margin-bottom: 30px;
    background: url(img/midashi-line01-sp.png) no-repeat center bottom;
    background-size: 35%;
  }
  .top_contents_inner {
    width: 100%;
    padding: 0 20px 35px;
    text-align: left;
    line-height: 2;
    z-index: 1;
  }
  .top_contents_inner:before {
    position: absolute;
    content: url(img/background-ptn01-sp.jpg);
    left: -200px;
    top: -15px;
    z-index: -1;
  }
  .top_contents_inner:after {
    position: absolute;
    content: url(img/background-ptn02-sp.jpg);
    right: -200px;
    bottom: -15px;
    z-index: -1;
  }

  /* .top_navi */
  .top_navi {
    width: ;
  }
  .top_navi_title span.pick_img {
    position: relative;
    width: 70px;
    display: block;
    margin: 0 auto 20px;
    line-height: 1;
    top: 0;
  }
  .top_navi_title span.pick_img img {
    width: 100%;
  }
  .top_navi_title span.main_title {
    position: relative;
    font-size: 140%;
  }
  .top_navi_title span.main_title:before {
    display: none;
  }
  .top_navi_title span.sub_title {
    font-size: 100%;
    display: block;
  }
  .top_navi .navi_set {
    width: 100%;
    height: auto;
  }
  .top_navi .navi_set .img {
    width: 100%;
    min-width: 100%;
    height: auto;
  }
  .top_navi .navi_set .img img {
    width: 100%;
  }
  .top_navi .navi_set .main_txt {
    width: 100%;
    height: auto;
  }
  .top_navi .navi_set .main_txt .inline_block {
    width: 100%;
  }
  .top_navi .navi_set .main_txt .msg {
    line-height: 1.8;
    margin-bottom: 30px;
  }
  .top_navi_inner {
    margin: 0 auto;
    width: 100%;
  }
  .top_navi .navi_set .left_block,
  .top_navi .navi_set .right_block {
    width: 100%;
    float: none;
  }
  .top_navi .navi_set .right_block .main_txt {
    padding: 50px 30px 40px;
  }
  .top_navi .navi_set .left_block .main_txt .inline_block {
    float: none;
    padding: 10px 30px 50px;
  }
  .top_navi .link_btn {
    width: 80%;
    margin: 0 auto;
  }
  .top_navi .link_btn a {
    font-size: 95%;
    color: #fff;
    display: block;
    padding: 12px 0;
  }
  .top_navi .link_btn a:after {
    position: absolute;
    content: url(img/arrow01-pc.png);
    right: 30px;
    top: 13px;
  }
  .top_navi .link_btn a:before {
    width: 100%;
  }
  .top_navi .link_btn a:hover {
    color: #fff;
  }

  /* -------------------
	contents1.html */
  .txt_color {
    position: relative;
    font-weight: bold;
  }

  /* .manufacture_block */
  .manufacture_block .top_msg {
    margin-bottom: 40px;
    line-height: 2;
  }
  #contents .manufacture_block .top_msg .midashi {
    font-size: 140%;
  }

  /* .business_list */
  .business_list {
    margin-bottom: 30px;
  }
  .business_list ul li {
    float: none;
    width: 100%;
    padding: 25px 25px 13px;
    margin: 0 0 20px 0;
  }
  #contents .business_list ul li .title {
    font-size: 140%;
    font-weight: bold;
    padding: 0 0 5px;
    text-align: center;
    margin-bottom: 20px;
  }
  .business_list ul li .msg {
    line-height: 1.6;
  }

  /* .inquiry_top_msg */
  .inquiry_top_msg {
    padding: 80px 0 0;
  }

  /* .creative_block */
  .creative_block {
    padding: 60px 0;
  }

  /* #privacy .privacy_inner */
  #privacy .privacy_inner {
    padding: 15px 0px 20px;
    line-height: 2;
  }
  .inquiry_top_msg {
    padding: 80px 0 0;
    line-height: 2;
  }
  .top_privacy_msg {
    padding: 120px 0 0;
    line-height: 2;
  }
  .child_top_msg {
    line-height: 2;
  }
}
