@media only screen and (max-width: 700px) {

  /* =====================================
	 sp layout base (max-width: 700px)
===================================== */
  .pc {
    display: none !important;
  }

  img {
    max-width: 100% !important;
    height: auto;
  }

  /* ヘッダー */
  #header_in {
    width: 100%;
  }

  #global_navi {
    width: 100%;
  }

  #global_navi ul {
    width: 100%;
  }

  #global_navi li {
    width: 16%;
    height: auto;
  }

  /* #global_navi_sp {margin: 10px 0;} */
  /* #global_navi_sp li {width: 33.33%; float: left; padding: 5px 0; margin-bottom: 5px; border-bottom: 2px solid #FFF; box-shadow: 0px 1px 0px #DDD;} */
  /* メニューアイコン */
  /*
.ico-menu {
    display: inline-block;
    overflow: hidden;
    position: relative;
    width: 45px;
    height: 0;
    padding-top: 30px;
    background: #1c5a22;
}

.ico-menu::before,
.ico-menu::after {
    position: absolute;
    left: 0;
    content: "";
    width: 45px;
    height: 0;
    border-top: 6px solid #69C1F7;
}

.ico-menu::before {
    top: 6px;
}

.ico-menu::after {
    bottom: 6px;
}
*/

  #global_navi_sp li a {
    text-align: center;
    color: #fff;
    display: block;
    font-size: 12px;
    font-weight: 400;
    text-shadow: 1px 1px 1px #666;
  }

  #mn_btn {
    cursor: pointer;
    display: block;
    height: 39px;
    position: absolute;
    right: 24px;
    top: 17px;
    width: 49px;
    text-align: center;
    line-height: 5px;
    font-weight: bold;
  }

  #mn_btn img {
    height: auto;
    max-width: 100%;
    width: 100%;
  }

  #global_menu {
    height: auto;
    width: 100%;
  }

  #mn_btn img {
    height: auto;
    max-width: 100%;
    width: 100%;
  }

  #global_menu {
    background: #efefef none repeat scroll 0 0;
    display: none;
    /*    height: auto;*/
    right: 0;
    /*    opacity: 0.9;*/
    overflow: hidden;
    padding-top: 1px;
    position: absolute;
    top: 70px;
    width: 50%;
    z-index: 99999;
  }

  #global_menu ul.top_mn {
    /*    position: relative;*/
  }

  #global_menu li {
    display: block;
    float: none;
    width: 100%;
    background: #195a1f;
  }

  #global_menu li:hover {
    opacity: 0.7;
  }

  #global_menu li:hover a {
    color: #fff;
  }

  #global_menu li.mn00 a {
    background: url("/common/img/top/sp_home.png") no-repeat scroll 10px center / 30px auto;
  }

  #global_menu li.mn01 a {
    background: url("/common/img/top/sp_blog.png") no-repeat scroll 10px center / 30px auto;
  }

  #global_menu li.mn02 a {
    background: url("/common/img/top/sp_service.png") no-repeat scroll 10px center / 30px auto;
  }

  #global_menu li.mn_achievement a {
    background: url("/common/img/top/sp_achievement.png") no-repeat scroll 10px center / 30px auto;
  }

  #global_menu li.mn03 a {
    background: url("/common/img/top/sp_recruit.png") no-repeat scroll 10px center / 30px auto;
  }

  #global_menu li.mn04 a {
    background: url("/common/img/top/sp_company.png") no-repeat scroll 10px center / 30px auto;
  }

  #global_menu li.mn05 a {
    background: url("/common/img/top/sp_contact.png") no-repeat scroll 10px center / 30px auto;
  }

  /*
#global_menu li.mn00:before{
    content: url("../img/top/sp_home.png");
    left: 15px;
    position: absolute;
    top: 10px;
}
#global_menu li.mn01:before{
    content: url("../img/top/sp_blog.png");
    left: 15px;
    position: absolute;
    top: 65px;
}
#global_menu li.mn02:before{
    content: url("../img/top/sp_service.png");
    left: 15px;
    position: absolute;
    top: 117px;
}
#global_menu li.mn03:before{
    content: url("../img/top/sp_recruit.png");
    left: 15px;
    position: absolute;
    top: 174px;
}
#global_menu li.mn04:before{
    content: url("../img/top/sp_company.png");
    left: 12px;
    position: absolute;
    top: 229px;
}
#global_menu li.mn05:before{
    content: url("../img/top/sp_contact.png");
    left: 15px;
    position: absolute;
    top: 283px;
}
*/
  #global_menu ul a {
    background-image: none;
    border-bottom: 1px solid #efefef !important;
    color: #efefef;
    display: block;
    font-size: 13px;
    height: auto;
    padding: 4.5% 0;
    text-indent: 3%;
    width: 100%;
    z-index: 99999;
  }

  #global_menu #b-info .mn01 a,
  #global_menu #b-release .mn02 a,
  #global_menu #b-schedule .mn03 a,
  #global_menu #b-profile .mn04 a,
  #global_menu #b-disco .mn05 a,
  #global_menu #b-live .mn06 a,
  #global_menu #b-link .mn07 a,
  #global_menu #b-request .mn08 a {
    color: #f21800;
  }

  /* TOPヘッダー */
  #top #header {
    /* background-size: 270%; */
    /* height: 403px; */
    height: 10%;
  }

  #top #header #hyde {
    bottom: -5px;
  }

  #header {
    /* height: 245px; */
    height: auto;
    min-width: 100%;
  }

  #header #characters li:nth-child(1) img {
    max-width: 95% !important;
  }

  #header #characters li:nth-child(1) {
    left: 3% !important;
  }

  #header #hyde {
    position: absolute;
    bottom: -5px;
  }

  /* ヘッダーメインイメージ */
  #header_in p#title.blog img {
    width: 106px;
  }

  #header_in p#title.service img {
    width: 150px;
    margin-bottom: 42px;
  }

  #header_in p#title.recruit img {
    width: 150px;
    margin-bottom: 39px;
  }

  #header_in p#title.achievement img {
    width: 200px;
    margin-bottom: 39px;
  }

  #header_in p#title.company img {
    width: 150px;
    margin-bottom: 52px;
  }

  #header_in p#main_image.company {
    text-align: center;
  }

  #header_in p#main_image.company img {
    width: 300px;
  }

  #header_in p#title img {
    /* width: 50%; */
    width: 150px;
  }

  #header_in p#main_image {
    /* left: 25%; */
    bottom: 0;
    position: static;
  }

  #header_in #title {
    z-index: 1;
    position: static;
    text-align: center;
    margin-top: 20px;
  }

  /* サービス */
  #header_in #main_image_01 {
    position: static;
    margin-bottom: -10%;
  }

  /* コンタクト */
  body#contact #header_in p#main_image {
    text-align: center;
  }

  body#contact #header_in p#title img,
  body#thanks #header_in p#title img {
    margin-bottom: 29px;
  }

  body#contact #header_in p#main_image img,
  body#thanks #header_in p#main_image img {
    width: 150px;
  }

  #thanks .contact {
    height: auto;
  }

  /* リクルート */
  body.recruit p#main_image {
    left: 0% !important;
    top: 155px !important;
  }

  #top_chara {
    margin-top: 30px;
  }

  #contents {
    width: 90%;
    margin: 0 auto;
  }

  #concept_unit h4 {
    line-height: 1.4em;
    font-size: 16px;
    letter-spacing: -2.5px;
  }

  /* TOP NEWS&BLOG NEW */
  #blog_unit #blog_area #blog_photo_area {
    width: 320px;
    margin: 0 auto;
    float: none;
  }

  #blog_unit #blog_area #blog_text_area {
    width: 90%;
    height: auto;
    float: none;
    margin: 0 auto;
    padding-bottom: 10px;
  }

  #blog_unit #blog_area #blog_photo_area div {
    width: auto;
    height: auto;
    background: none;
    left: 25px;
    right: 20px;
    top: 20px;
    bottom: 25px;
    margin: auto;
  }

  #blog_unit #blog_area #blog_photo_area p#photo_base {
    width: 310px;
    margin: 20px auto;
  }

  #blog_unit #blog_area #blog_photo_area p#photo_base img {
    width: 100%;
  }

  /* #blog_unit #blog_area #blog_photo_area img {max-width: 90% !important;} */
  #blog_unit #blog_area #blog_photo_area p#ribbon {
    top: 3px;
    left: 7px;
  }

  #blog_unit ul#min_area li {
    width: 48%;
    margin: 1%;
    min-height: 214px;
  }

  #blog_unit ul#min_area .blog_photo {
    width: 100%;
    height: auto;
  }

  #blog_unit ul#min_area .blog_photo:after {
    width: 100%;
    height: auto;
    content: none;
  }

  #article .content ul.link_list li {
    background: none;
  }

  /* 3.4個目は非表示 */
  #blog_unit ul#min_area li:nth-of-type(3),
  #blog_unit ul#min_area li:nth-of-type(4) {
    display: none !important;
  }

  /* blog　ページャー */
  #paginate a.page-numbers,
  #paginate .dots {
    display: none;
  }

  #paginate a.prev,
  #paginate a.next {
    display: inline-block;
  }

  #article {
    width: 100%;
    float: left;
    word-wrap: break-word;
  }

  #aside {
    width: 300px;
    margin: 0 auto;
    float: left;
  }

  /* 広告 */
  ins,
  iframe,
  .adsbygoogle,
  #google_image_div,
  #adContent-border {
    max-width: 100% !important;
    width: 100% !important;
    overflow: hidden;
    margin-left: unset !important;
  }

  /* service */
  .content ul li {
    width: 98%;
    margin: 1%;
    border-bottom: 1px dotted #ccc;
    padding-bottom: 5px;
  }

  .promotion li,
  .creative li,
  .other li {
    padding-bottom: 20px !important;
    margin-bottom: 20px !important;
  }

  /* 記事 */
  #article .content ul.link_list li .text_area {
    width: 100%;
    float: none;
  }

  #article .content ul.link_list a {
    width: 100%;
  }

  #article h1 {
    font-size: 1.4em;
  }

  .detail #article #main_catch {
    text-align: center;
  }

  /* contact */
  .message h1 {
    font-size: 16px;
  }

  .contact h3 {
    font-size: 18px;
  }

  #contact #header_in p#main_image {
    right: 2%;
    left: 60%;
  }

  .content.overview table {
    background: none;
    width: 100%;
  }

  .content.overview table th {
    display: block;
    background: #f5f5f5;
    padding: 3%;
  }

  .content.overview table td {
    display: block;
    padding: 3%;
  }

  #contact_form table {
    background: none;
    width: 100%;
    display: block;
  }

  #contact_form table tbody {
    display: block;
  }

  #contact_form table tr {
    display: block;
  }

  #contact_form table th {
    display: block;
    background: #f5f5f5;
    padding: 3%;
  }

  #contact_form table td {
    display: block;
    padding: 3%;
    background: none;
  }

  #contact_form table td.requier {
    float: left;
    background: none;
  }

  .identity #left_unit {
    width: 100%;
    float: none;
  }

  .identity #identity_text {
    width: 100%;
    float: none;
  }

  #contact_form table td.requier {
    float: none;
  }

  #contact_checkboxWrap {
    margin-top: 8px;
    display: inline-block;
  }

  .text_input.w330 {
    width: 98%;
  }

  #article .content ul.link_list li p.photo {
    border-radius: 5px;
    text-align: center;
    height: auto;
    margin: 0 auto;
    position: relative;
    width: 225px;
    float: none;
  }

  #article .content ul.link_list li p.photo::after {
    border-radius: 5px;
    content: none;
    height: 144px;
    left: 0;
    position: absolute;
    width: 225px;
    z-index: -100;
  }

  /* ボタン */
  #form_btns {
    width: 96%;
    overflow: auto;
  }

  #form_btns input {
    width: 100%;
    margin: 0 auto;
    float: none;
    padding: 10px;
    line-height: 20px;
  }

  /* 会社概要 */
  .outline table {
    background: none;
    width: 100%;
  }

  .outline table th {
    display: block;
    background: #f5f5f5;
    padding: 3%;
  }

  .outline table td {
    display: block;
    padding: 3%;
  }

  #map-canvas {
    display: none;
  }

  /* ページャー */
  #post ul li {
    border-bottom: none;
  }

  .detail #article #post {
    width: 280px;
    margin: 0 auto;
  }

  .detail #article #post #post_prev {
    width: 143px;
  }

  .detail #article #post #post_next {
    width: 117px;
  }

  /* フッター */
  #footer {
    min-width: 100%;
  }

  .sp_text_c {
    text-align: center !important;
  }

  #footer #f_navi_area {
    width: 100%;
    overflow: inherit;
  }

  #footer #f_navi_area ul {
    width: 98%;
    margin: 15px auto;
  }

  #footer #copy_area {
    position: relative;
  }

  #footer #copy_area p {
    width: 100%;
  }

  #footer #f_navi_area p {
    margin-top: 0;
    float: none;
  }

  #footer #f_navi_area ul.navi {
    float: none;
    width: 100%;
  }

  #footer #f_navi_area ul.bnr {
    float: none;
    width: 100%;
  }

  #footer #f_navi_area ul.bnr li.g_bnr {
    width: 20%;
  }

  #footer_gad {
    width: 100%;
  }

  #aside {
    float: left;
    margin: 0 auto 20px auto;
    width: 100% !important;
  }

  .aside_banner {
    text-align: center;
  }

  .sp_postion {
    margin: 0 auto !important;
  }

  #aside .gad {
    margin-top: 30px;
    text-align: center;
    width: 300px;
    margin: 30px auto 0 auto !important;
  }

  .detail #article #same ul li {
    font-size: 0.9em;
    margin: 0 auto;
    width: 100%;
  }

  .detail #article #same ul li .photo {
    border-radius: 5px;
    text-align: center;
    margin-top: 10px;
  }

  .sp_mt10 {
    margin-top: 10px;
  }

  .sp_mt20 {
    margin-top: 20px;
  }

  p#page-top a {}

  p#page-top a {
    background-color: #1c5a22;
    color: #fff;
    display: block;
    font-size: 11px;
    height: 40px;
    line-height: 40px;
    width: 90px;
    bottom: 20px !important;
    right: 1px !important;
    position: fixed;
    text-align: center;
  }

  p#page-top a {
    display: block;
    opacity: 0.8;
    text-decoration: none !important;
    transition: all 0.6s ease 0s;
  }

  #footer #gotop {
    bottom: 10px !important;
    z-index: 9999;
    height: 70px;
  }

  #footer #gotop a {
    display: block !important;
  }

  /* 投稿記事 */
  .detail #article #writer {
    padding-left: 0;
    width: 280px;
    margin: 0 auto;
    padding-top: 30px;
    background: none;
  }

  /* タイトル */
  .ander_line {
    color: #1c5a22;
    text-align: center;
    margin-bottom: 20px;
  }

  .lines-on-sides {
    display: table;
    text-align: center;
    white-space: nowrap;
    line-height: 30px;
    color: #ceded0;
  }

  .lines-on-sides:before {
    border-right: 1em solid transparent;
  }

  .lines-on-sides:after {
    border-left: 1em solid transparent;
  }

  .lines-on-sides:after,
  .lines-on-sides:before {
    content: "";
    display: table-cell;
    width: 50%;
    background: -webkit-linear-gradient(transparent 50%,
        currentColor 50%,
        currentColor -webkit-calc(50% + 1px),
        transparent -webkit-calc(50% + 1px));
    background: -webkit-gradient(linear,
        left top,
        left bottom,
        from(transparent),
        color-stop(50%, currentColor),
        color-stop(currentColor calc(50% + 1px)),
        to(transparent calc(50% + 1px)));
    background: linear-gradient(transparent 50%,
        currentColor 50%,
        currentColor calc(50% + 1px),
        transparent calc(50% + 1px));
    -webkit-background-clip: padding;
    background-clip: padding;
  }

  .ander_line h3 {
    color: #1c5a22 !important;
    text-align: center;
    line-height: 18px;
    font-size: 16px !important;
    font-weight: 500;
    margin: 0 !important;
  }

  .ander_line h3 span {
    font-size: 11px;
    color: #7c7c7c;
  }

  /* PROMOTION カラー */
  .ander_line h3.prom {
    color: #649ead !important;
  }

  .lines-on-sides.prom {
    color: #649ead !important;
  }

  /* CREATIVE カラー */
  .ander_line h3.creat {
    color: #978e4b;
  }

  .lines-on-sides.creat {
    color: #978e4b;
  }

  /*	line_stamp_bnr
------------------------------------------------- */
  .line_stamp_bnr img {
    width: 97%;
  }

  .line_stamp_bnr {
    margin: 0px 0 100px 0;
  }

  /* bnr_lp
------------------------------------------------- */
  .bnr_lp img {
    width: 97%;
  }

  /*	404 error
--------------------------------------- */
  .error_content {
    width: 100%;
    margin: 0 auto;
    text-align: center;
  }

  .error_content .error_title {
    font-size: 30px;
  }

  .error_content .error_text {
    font-size: 10px;
  }

  .error_content .error_btn {
    font-size: 14px;
    text-align: center;
  }

  /*	-----------------------------------------------
footer
------------------------------------------------- */
  #footer #f_navi_area ul.bnr li {
    width: 28%;
  }

  .footer_nav {
    margin: 0 auto;
    width: 95%;
  }

  #footer #facebook {
    overflow: inherit;
    width: 100%;
  }

  #footer #facebook .facebook_pc {
    display: none;
  }

  #footer #facebook .facebook_sp {
    display: inline-block;
    height: auto;
    width: 100% !important;
  }

  /*	-----------------------------------------------
gnavアニメーション
------------------------------------------------- */
  #nav-toggle {
    position: absolute;
    right: -4px;
    top: 6px;
    width: 34px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
  }

  #nav-toggle .nav-toggle_menu {
    position: relative;
    top: 30px;
    color: #195a1f;
  }

  #nav-toggle div {
    position: relative;
  }

  #nav-toggle span {
    display: block;
    position: absolute;
    height: 5px;
    width: 100%;
    background: #195a1f;
    border-radius: 5px;
    left: 0;
    -webkit-transition: 0.35s ease-in-out;
    -moz-transition: 0.35s ease-in-out;
    transition: 0.35s ease-in-out;
  }

  #nav-toggle span:nth-child(1) {
    top: 0;
  }

  #nav-toggle span:nth-child(2) {
    top: 11px;
  }

  #nav-toggle span:nth-child(3) {
    top: 22px;
  }

  /* #nav-toggle 切り替えアニメーション */
  .open #nav-toggle span:nth-child(1) {
    top: 11px;
    -webkit-transform: rotate(315deg);
    -moz-transform: rotate(315deg);
    transform: rotate(315deg);
  }

  .open #nav-toggle span:nth-child(2) {
    width: 0;
    left: 50%;
  }

  .open #nav-toggle span:nth-child(3) {
    top: 11px;
    -webkit-transform: rotate(-315deg);
    -moz-transform: rotate(-315deg);
    transform: rotate(-315deg);
  }
}


@media screen and (max-width: 600px) {
  #aside .gad {
    width: 100% !important;
  }

  #aswift_0_host {
    max-width: 100% !important;
  }
}

@media (orientation: landscape) and (max-width: 767px) {
  body {
    -webkit-text-size-adjust: 100%;
  }

  #concept_unit h4 {
    font-size: 20px;
    margin-bottom: 20px;
  }

  #concept_unit p {
    font-size: 14px;
    line-height: 1.7;
  }

  .message p {
    font-size: 15px;
    line-height: 1.7;
  }

  .mission_item_top_txt p {
    font-size: 14px;
  }

  .content.overview table th {
    padding: 10px 3%;
  }

  .outline table th {
    padding: 10px 3%;
  }

  .company_message_box {
    flex-direction: column;
  }

  .company_message_txt h3 {
    text-align: center;
  }

  .company_message_txt {
    width: 100%;
  }

  .mission_txt_item h4 {
    font-size: 18px;
  }

  .company_summary_txt {
    font-size: 15px;
  }

  .mission_item_txt h4 {
    font-size: 16px;
  }

  #contact_form table th {
    padding: 10px 3%;
  }

  #contact_form table td {
    margin-bottom: 20px;
    padding: 15px 1%;
  }

  #contact_form select {
    height: 35px;
  }

  .text_input.w250,
  .text_input.w50 {
    height: 25px;
  }

  .text_input.w330 {
    height: 140px;
  }

  #form_btns input {
    width: 200px;
  }

  #footer #f_navi_area ul.navi {
    font-size: 113x;
  }

  #blog_unit ul#min_area .tag {
    display: inline-block;
  }

  .side_cate,
  .side_archive {
    width: 48%;
  }

  .side_content {
    display: flex;
    justify-content: space-between;
  }

  .aside_banner {
    display: none;
  }

  .aside_banner {
    display: none;
  }
}