@charset "UTF-8";

/* 強調色：#09153b ＝紺色       */
/* 弱強調：#354a8d ＝薄い紺     */
/* 灰色  ：#aaaaaa              */
/* 補色  ：#c95820 ＝TOPページ  */

/* ■■■■■■■■■■ 全体共通タグ別 ■■■■■■■■■■ */

/* ===== リセット ===== */
html,body,div,span,h1,h2,h3,h4,h5,p,img,dl,dt,dd,ol,ul,li,form,label,button,input,select,option,textarea,table,tbody,tr,th,td,footer,header,nav,time { margin:0; padding:0; border:0; outline:0; line-height:1.6; vertical-align:baseline; background:transparent; font-weight:normal; }
div, p, footer, header, nav, ul, dl, dt, dd { display:block; overflow:hidden; }
a { margin:0; padding:0; vertical-align:baseline; background:transparent; color:#000000; text-decoration:none; outline:none; -webkit-tap-highlight-color:rgba(0,0,0,0); }
a:link, a:visited, a:hover, a:active, a:focus { text-decoration:none; outline:none; }
a:hover { opacity:0.7; }
table { border-collapse:collapse; border-spacing:0; }

/* ===== 全体共通タグ ===== */
* { font-family: 'Noto Sans Japanese', sans-serif; box-sizing:border-box; }
body, input[type="text"], textarea { font-size:14px; }
body { margin:0 auto; -webkit-text-size-adjust:100%; color:#000000; background-color:#ffffff; }
h3 { font-size:16px; font-weight:700; }
table { width:100%; }
tr, th, td { border:1px solid #aaaaaa; }
th, td { padding:5px 10px; }
th { background-color:#dddddd; white-space:nowrap; }
img, video { max-width:100%; display:block; }
p:not(:last-child) { margin-bottom:0.3em; }
p+img, img:not(.product_reference_image)+p, img+table, ul+img, img+ul, p+dl, dd+dt { margin-top:1em; }
small { font-size:85%; font-weight:400; }
input[type="submit"] { cursor: pointer; }

/* ===== 全体共通クラス ===== */
.serif { font-family:"Noto Serif JP", serif; font-optical-sizing:auto; font-weight:400; font-style: normal; }
.inner { width:1080px; margin:0px auto; }
.error { color:red; }
.empha, .empha * { color:red; font-size:inherit; font-weight:700; }
.center { text-align:center; }
.imgcenter { display:block; margin-left:auto; margin-right:auto; }
.right { text-align:right; }
a.underline:hover { text-decoration:underline; }
.nobr { white-space:nowrap; display:inline-block; }
.nav_button { display:block; background-color:#09153b; width:220px; height:45px; line-height:45px; color:#ffffff; text-align:center; margin:1em auto 0; }
.buttons { display:flex; justify-content:center; align-items:center; margin-top:25px; }
.button { display:block; background-color:#09153b; color:#ffffff; width:250px; padding:10px 0; font-size:18px; text-align:center; }
.button:hover { opacity:0.7; cursor:pointer; }
input[type="submit"]:not(:last-child), .button:not(:last-child) { margin-right:25px; }
.backcolor { background-color:#09153b; color:#ffffff; }
.flex_wrapper { display:flex; }
.flex_wrapper_separate { display:flex; justify-content:space-between; }
.flex_wrapper_center   { display:flex; justify-content:center; }
.youtube_movie_wrapper { aspect-ratio:16 / 9; }
.youtube_movie_wrapper iframe { width:100%; height:100%; }
.outlink { display:inline; margin-left:10px; }
.pdf { display:inline; margin-left:10px; }
table.no_border, table.no_border * { border:0; }
.slide_in { transition:transform 1.5s; }
.slide_left  { transform:translateX(calc(-40vw - 0%)); }
.slide_right { transform:translateX(calc( 40vw + 0%)); }
.slide_up    { transform:translateY(20vh); }
.slide_finish   { transform:translateX(0) translateY(0); }

/* ===== ヘッダ部 ===== */
header { overflow:visible; }
.common_header { display:flex; }
.common_header a { margin:20px 0; display:block; }
.common_header img { max-width:100%; }

/* ----- メインメニュー部 ----- */
header nav { background-color:#dddddd; }
.nav_sp { display:none; padding:10px 0; cursor:pointer; }
.nav_sp .flex_wrapper_center { align-items:center; }
.nav_sp p { font-size:18px; margin-right:25px; margin-bottom:0; }
.nav_menu ul { display:flex; justify-content:space-between; flex-grow:1; text-align:center; background-color:#09153b; color:#ffffff; }
.nav_menu ul li { display:block; width:100%; border-right:1px solid #ffffff; }
.nav_menu ul li:last-child { border-right:0 }
.nav_menu ul li .menu { opacity:1; display:flex; align-items:center; height:50px; }
.nav_menu ul li .menu:hover { background-color:#354a8d; }
.nav_menu ul li .menu p { color:#ffffff; text-align:center; width:100%; line-height:1.3; }
.sp_menu_button { width:30px; height:30px; position:relative; }
.sp_menu_button span { display:inline-block; transition:all .4s; position:absolute; left:0; width:30px; height:2px; background-color:#09153b; border-radius:2px; }
.sp_menu_button span:nth-of-type(1) { top:6px; }
.sp_menu_button span:nth-of-type(2) { top:14px; }
.sp_menu_button span:nth-of-type(3) { top:22px; }
.sp_menu_button.nav_active span:nth-of-type(1) { -webkit-transform:translateY(8px) rotate(-45deg); transform:translateY(8px) rotate(-45deg); }
.sp_menu_button.nav_active span:nth-of-type(2) { opacity:0; }
.sp_menu_button.nav_active span:nth-of-type(3) { -webkit-transform:translateY(-8px) rotate(45deg); transform:translateY(-8px) rotate(45deg); }

/* ===== パンくずリスト ===== */
.breadcrumb { margin:10px 0; }
.breadcrumb a:hover { text-decoration:underline; }

/* ===== 左ナビ(一部ソリューションでも使用) ===== */
.navi_left { float:left; width:310px; margin-bottom:50px; }
.navi_left .nav_menu ul { display:block; background-color:#ffffff; }
.navi_left .nav_menu ul li { background-color:#354a8d; text-align:left; margin-top:1px; border-right:0; display:flex; align-items:center; width:100%; }
.navi_left .nav_menu ul li:first-child { margin-top:0; }
.navi_left .nav_menu ul li>* { width:100%; height:45px; display:flex; align-items:center; }
.navi_left .nav_menu ul li a:hover { background-color:#09153b; opacity:1; }
.navi_left .nav_menu ul li p { color:#ffffff; padding-right:5px; line-height:1.3; font-size:13px; }
.navi_left .nav_menu ul li.nav_top, .navi_left .nav_menu ul li.nav_top>* { height:60px; }
.navi_left .nav_menu ul li.nav_top { padding-left:10px; background-color:#09153b; }
.navi_left .nav_menu ul li.nav_top p { font-size:15px; font-weight:700; }
.nav_sub_block { padding-left:8px;  background-color:#354a8d; height:45px; background-image:radial-gradient(#09153b 50%, transparent 50%), radial-gradient(#09153b 50%, transparent 50%); background-position:0 0, 2px 2px; background-size:4px 4px;}
.nav_sub_block:before { content:'■'; color:#ffffff; }
.navi_left .nav_menu ul li.nav_sub_select { border-right:5px solid #ff0000; }
.nav0 { padding-left:8px; }
.nav1 { padding-left:16px; }
.nav2 { padding-left:24px; }
.nav1:before, .nav2:before { color:#ffffff; }
.nav1:before { content:'▶'; margin-right:2px; }
.nav2:before { content:'・'; }

/* ===== 本文領域共通 ===== */
article { float:right; width:720px; min-height:500px; margin-bottom:50px; }
.page_top_image { display:block; width:720px; margin-bottom:20px; }
.article_title { padding:10px 5px 10px 15px; line-height:1.3; border-width:2px 2px 2px 10px; border-style:solid; border-color:#09153b; background-color:#eeeeee; }
.article_title, .article_title p { font-size:16px; font-weight:700; }
.article_contents { margin-top:10px; margin-left:10px; }
.article_contents:not(:last-child) { margin-bottom:25px; }
.article_contents ul li { margin-left:1.25em; }
.article_contents dl:not(:last-child), .article_contents dd:not(:last-child) { margin-bottom:0.5em; }
.article_contents dt { border-left:5px solid #aaaaaa; padding-left:7px; margin-bottom:0.3em; }
.article_contents dd { margin-left:10px; }
.contents_salespoint { text-align:center; }
.contents_salespoint:not(:first-child) { margin-top:10px; }
.contents_salespoint:not(:last-child) { margin-bottom:1em; }
.contents_salespoint p, .contents_salespoint p * { font-weight:700; font-size:16px; }
.contents_lead { margin-bottom:1em; }
.link_in_contents { margin-top:1em; display:flex; justify-content:space-between; }
.link_in_contents:not(:last-child) { margin-bottom:1em; }
.product_each_query { text-align:center; }
.product_each_next { display:block; background-color:#09153b; color:#ffffff; width:250px; padding:10px 0; margin:20px auto; text-align:center; font-size:18px; }


/* ----- タブ部 ----- */
.tab_selected, .tab_unselected { float:left; min-width:120px; margin-right:10px; padding:6px 10px; font-size:16px; border-top:1px solid #09153b; border-left:1px solid #09153b; border-right:1px solid #09153b; }
.tab_selected   { background-color:#09153b; color:#ffffff; }
.tab_unselected { background-color:#354a8d; color:#ffffff; }
.tab_unselected:hover { background-color:#09153b; color:#ffffff; }
.tab_each { clear:left; border-width:1px; border-style:solid; border-color:#09153b; padding:9px; }
.tab_each#main2, .tab_each#main3, .tab_each#main4 { display:none; }

/* ----- ページ最下部資料請求部 ----- */
.inquery_form { border:1px solid gray; }
.inquery_form div { padding:10px 0; font-size:18px; }
.inquery_form form { padding-top:10px; font-size:18px; }
.inquery_form label { margin-left:5px; }
.inquery_form label:first-of-type { margin-right:50px; }
.inquery_form form .buttons { margin-top:0; }

/* ===== フッタ部 ===== */
footer { background-color:#09153b; color:#ffffff; }
footer a:hover { text-decoration:underline; }
.footer_link , .footer_name { padding-top:40px; padding-bottom:40px; }
.footer_link { background-color:#354a8d; }
.footer_link .inner { display:flex; justify-content:space-between; flex-wrap:wrap; }
.footer_link a { color:#ffffff; }
.footer_name .inner { display:flex; justify-content:space-between; flex-wrap:wrap; align-items:start; }
.footer_name a { color:#ffffff; }
.footer_name p span { display:inline-block; width:80px; }
.footer_name p.footer_name_corp { font-size:16px; margin-bottom:10px; }
.footer_right { display:flex; margin-left:25px; flex-shrink:0; }
.footer_right a { background-color:#ffffff; margin-left:10px; }
.copyright { background-color:#dddddd; color:#000000; text-align:right; padding:5px 0px 120px; }

/* ===== スクロールボタン ===== */
#page-top { position:fixed; bottom:20px; right:100px; }
#page-top a { background-color:#09153b; padding:5px 20px; border-radius:10px; border:1px solid #ffffff; opacity:0.5; font-size:32px; font-weight:700; color:#ffffff; text-align:center; display:block; }
#page-top a:hover { opacity:1; }

/* ■■■■■■■■■■ 各ページ個別部 ■■■■■■■■■■ */

/* ----- 1.TOPページ ----- */
.top { background-image:url('img/top/top_cover.jpg'); background-position:center top; background-repeat:no-repeat; }
.top_cover { position:relative; display:block; height:480px; width:1080px; margin:0 auto; }
.top_cover_images { display:flex; flex-wrap: wrap; align-content: space-between; justify-content: space-between; height:360px; padding-top:65px; }
.top_cover_images::after { content:""; width: 100%; }
.top_cover_images img:nth-child(n+3) { order:1; }
.top_cover h2 { position:absolute; top:125px; left:0; right:0; margin:0 auto; background-color:#ffffff; border-radius:50%; max-width:560px; padding-top:25px; padding-bottom:25px; }
.top_cover h2 { box-shadow:-5px -5px 10px #ffffff, 5px -5px 10px #ffffff, -5px 5px 10px #ffffff, 5px 5px 10px #ffffff, -10px -10px 40px #ffffff, 10px -10px 40px #ffffff, -10px 10px 40px #ffffff, 10px 10px 40px #ffffff;}
.top_cover h2 { font-size:22px; font-weight:700; color:#c95820; text-align:center; text-shadow:0 2px 5px #aaaaaa; }
.top_features { margin:40px auto; padding:4px; display:flex; justify-content:space-between; max-width:calc(1080px + 8px); }
.top_feature { display:block; border:1px solid #ffffff; box-shadow:0 0 4px #09153b; max-width:242px; }
.top_feature:not(:last-child) { margin-right:25px; }
.top_feature img { width:100%; }
.top_feature h2 { display:block; height:50px; padding:10px; color:#ffffff; text-align:center; font-size:14px; line-height:16px; background-color:#09153b; }

/* ----- BPOサービス・ソリューションサービス事業共通 ----- */
.solution_menu { border:1px solid #09153b; border-radius:10px; padding:5px 10px; }
.solution_menu dt { font-weight:700; border:0; padding-left:0; }

/* ----- 1-1.ヘルプデスクページ ----- */
.bpo_helpdesk_lead { background-color:#09153b; color:#ffffff; padding:15px 0; margin:10px 0; }
.bpo_helpdesk_lead p span.empha { color:#ff9966; }
.bpo_helpdesk_point { display:flex; justify-content:center; }

/* ----- 1-1-1.遠隔サポート ----- */
.remote_frame { border:1px solid #09153b; margin-top:2em; }

/* ----- 2.ソリューションサービス事業 ----- */

/* 商品部共通 */
.product_reference_image { float:right; margin:0 0 1em 1em; }
.product_footnote { font-size:12px; margin:0 0 0 10px; }

/* ----- 2-1.WAN/LANトータルサポートページ ----- */
.nw_wanlan_block { display:flex; }
.nw_wanlan_block:not(:last-child) { margin-bottom:25px; }
.nw_wanlan_process dt { font-size:16px; }
.nw_wanlan_process dd:not(:last-child) { margin-bottom:2em; }
.nw_wanlan_process_image { flex-basis:200px; margin-right:10px; flex-shrink:0; margin-bottom:5px; }
.nw_wanlan_process_image img+img { margin-top:10px; }

/* ----- 2-1-1.UTMページ ----- */
.nw_wanlan_utm_images { display:flex; justify-content:space-around; align-items:center; }
.nw_wanlan_utm_images img { min-width:0; }
.nw_wanlan_utm_images img:first-child { margin-right:25px; }

/* ----- 2-3.クラウドカメラページ ----- */
.camera_function th { width:140px; }

/* ----- 2-4.デジタルサイネージトータルサービス ----- */
.signage_contents { margin-bottom:20px; display:flex; justify-content:center; }
.signage_contents>div { width:220px; border:1px solid #354a8d; }
.signage_contents>div:not(:last-child) { margin-right:25px; }
.signage_contents_title { border:0; padding:10px; background-color:#354a8d; color:#ffffff; text-align:center; }
.signage_contents_text { padding:5px; text-align:center; }
.signage_number td { padding:0 5px; }
.signage_top_product img { width:360px; margin-top:10px; }

/* ----- 2-4-1.社員食堂サイネージCafeteria board ----- */
.signage_cafeteria_video { border:1px solid #aaaaaa; }
.signage_cafeteria_trademark { margin-top:25px; }

/* ----- 2-4-3.デジタルサイネージ設置工事例 ----- */
.signage_construction_image { display:flex; justify-content:center; }
.signage_construction_image+.signage_construction_image { margin-top:10px; }
.signage_construction_image img { min-width:0; }
.signage_construction_image img:not(:last-child) { margin-right:10px; }

/* ----- 2-6-1.ホテル向け商品ページ ----- */
.hotel_product { display:flex; align-items:start; }
.hotel_product:not(:last-child) { padding-bottom:1em; }
.hotel_product:not(:first-child) { padding-top:1em; border-top:1px solid #aaaaaa; }
.hotel_product a { display:block; width:230px; flex-shrink:0; border:1px solid #aaaaaa; margin-right:25px; }
.hotel_product a p { background-color:#09153b; line-height:1.3; padding:3px 0; margin-top:0; text-align:center; color:#ffffff; }

/* ----- 3.お客様導入事例(TOP) ----- */
.case_top { display:flex; justify-content:start; align-items:center; background-color:#dddddd; }
.case_top:not(:last-child) { margin-bottom:1em; }
.case_top_image { margin-right:25px; background-color:#09153b; width:230px; flex-shrink:0; }
.case_top_image a { display:block; }
.case_top_image a p { color:#ffffff; text-align:center; margin-top:0; padding:5px 0; }
.case_top_image img { object-fit:cover; height:153px; width:100%; }
.case_top_contents { padding-right:15px; }
.case_top_separate { height:1em; }

/* ----- 3.お客様導入事例(SUB) ----- */
.case_each_top_corpname { font-size:24px; margin-bottom:5px; font-weight:700; }
.case_each_top_corpinfo { display:flex; justify-content:space-between; align-items:end; margin-bottom:15px; }
.case_each_top_download { margin-left:25px; text-align:right; }
.case_each_top_download img { vertical-align:bottom; }
.case_each_top_lead { background-color:#354a8d; text-align:center; padding:10px; margin-bottom:1em; }
.case_each_top_lead * { font-size:20px; color:#ffffff; font-weight:700; text-shadow:2px 2px 1px #000000; }
.case_each_top_lead.lead_small * { font-size:16px; }
.case_each_lead_image { width:100%; margin-bottom:1em; }
.case_each_top_corpname + img { margin-bottom:1em; }
.case_each_subtitle { margin-bottom:1em; text-align:center; }
.case_each_subtitle p, .case_each_subtitle p * { font-weight:700; }
.case_each_subtitle p { font-size:16px; color:#354a8d; }
.case_each_facephoto { float:left; text-align:center; margin-right:50px; margin-bottom:25px; }
.case_each_facephoto img { margin-left:auto; margin-right:auto; }
.case_each_facephoto p { line-height:1; }
.case_each_facephoto_name { font-weight:700; margin-top:5px; }
.case_each_trial { margin-top:1em; display:flex; justify-content:center; }
.case_each_trial_iko h3 { margin:1em 0 0.5em; }
.case_each_trial_iko p  { margin-left:1em; }
.case_each_figure_right { float:right; margin-left:50px; }
.case_each_customer_profile th { width:150px; }
.case_each_customer_profile td { padding:3px 10px; }
.case_each_footer { text-align:right; font-size:12px; margin-bottom:25px; }
.case_each_back_to_top { display:flex; justify-content:center; margin:1em 0 0; font-size:16px; }
.case_each_signage_setting { display:flex; flex-wrap:wrap; justify-content:center; }
.case_each_signage_setting img { width:calc(50% - 5px); }
.case_each_signage_setting img:nth-child(odd) { margin-right:10px; }
.case_each_signage_setting img:not(:nth-last-child(-n+2)) { margin-bottom:6px; }
.case_each_signage_setting.diff_width { align-items:start; flex-wrap:unset; }
.case_each_signage_setting.diff_width img { width:unset; min-width:0; }

/* -----5.特設ページ ----- */
.special01_top { margin-top:25px; }
.special01_top video { border:1px solid #21285e; }
.special01_contents { margin-bottom:100px; }
.special01_contents h2 { text-align:center; margin-top:100px; margin-bottom:100px; }
.special01_contents h2 span { font-size:28px; font-family:"Noto Serif JP", serif; font-weight:900; color:#21285e; }
.special01_contents>div { margin-left:25px; margin-right:25px; background-color:#eeeeee; padding:50px; }
.special01_contents>div:not(:last-child) { margin-bottom:50px; }
.special01_contents h3 { font-size:24px; margin-bottom:2rem; font-family:"Noto Serif JP", serif; font-weight:900; color:#21285e; border-left:10px solid #21285e; padding-left:1rem; line-height:1.3; }
.special01_text p { font-size:16px; line-height:1.8; }
.special01_text p strong { color:#21285e; font-size:19px; }
.special01_text img { margin-top:50px; }
.special01_wrapper { display:flex; column-gap:50px; }
.special01_face_block { width:375px; flex-shrink:0; }
.special01_person_data { background-color:#21285e; color:#ffffff; padding:10px; }
.special01_person_name { font-size:22px; }
.special01_person_title { font-size:13px; }
.special01_profile { width:740px; margin-left:auto; margin-right:auto; margin-bottom:100px; font-size:16px; }
.special01_profile h3 { font-size:28px; font-family:"Noto Serif JP", serif; font-weight:900; color:#21285e; }
.special01_profile p { text-align:right; line-height:1.3; margin-top:0.3rem; text-indent:-1.5rem; padding-left:1.5rem; }

/* ----- 11.会社情報 ----- */
.corp_top_ceo { display:flex; align-items:start; }
.corp_top_ceo_sign { display:block; margin-top:2em; margin-left:auto; margin-right:0; }
.corp_top_ceo_photo { display:block; margin-left:25px; }

/* ----- 11-1.基本情報 ----- */
.corp_about td { padding-left:15px; padding-right:15px; }
.corp_exe { border:0; }
.corp_exe tr, .corp_exe th, .corp_exe td { border:0; }
.corp_exe th { width:170px; padding:0; background-color:#ffffff; text-align:left; font-weight:400; }
.corp_exe td { padding:0; }

/* ----- 11-2.組織図 ----- */
.corp_organization img { background-color:#dddddd; margin-left:auto; margin-right:auto; }

/* ----- 11-3.沿革 ----- */
.corp_history { width:auto; }
.corp_history tr { border-bottom:1px dotted #aaaaaa; }
.corp_history td { padding:0 0 5px 0; }
.corp_history tr:not(:first-child) td { padding-top:5px; }
.corp_history td:first-child { padding-right:20px; white-space:nowrap; }
.corp_history_note { text-align:right; margin-top:10px; }

/* ----- 11-4.アクセス ----- */
.access_map iframe { margin-bottom:5px; width:100%; }
.access_map p { margin-bottom:0; }

/* ----- 11-5.個人情報保護方針  ----- */
.privacy dl dd dl dd { margin:0 0 5px 20px; }
.privacy dl dd dl dd p { margin-bottom:0px; }
.privacy_num { counter-reset:my-counter; list-style:none; padding:0; margin:0; }
.privacy_num dt { padding:0; margin:0; border:0; }
.privacy_num>dt { padding-left:20px; padding-bottom:5px; position:relative; }
.privacy_num>dt:before { content:counter(my-counter); counter-increment:my-counter; border:1px solid; border-radius:50%; display:flex; justify-content:center; align-items:center; height:14px; width:14px; position:absolute; top:4px; left:0; font-size:12px; }
.privacy_add { display:inline-block; margin:5px 0px 10px 15px; padding:5px 15px; border:1px solid #aaaaaa; }

/* ----- 11-6.情報セキュリティ方針 ----- */
.corp_infosec ol { padding-left:1.5em; margin-bottom:1em; }
.corp_infosec li { margin-bottom:0.5em; }

/* ----- 11-7.採用情報 ----- */
.rec_top_photo { margin-top:15px; }
.rec_top_photo img+p { margin-top:5px; }
.rec_detail { margin-top:15px; }
.rec_detail th { width:90px; vertical-align:middle; }
.rec_detail td { width:308.5px; padding:5px 10px; vertical-align:middle; }
.rec_detail td.rec_detail_adopt { padding-bottom:0; }
.rec_detail_adopt div { display:inline-block; text-align:left; }
.rec_member { display:flex; justify-content:center; margin-top:1em; }
.rec_member img { min-width:0; margin-top:0; }
.rec_member img:not(:last-child) { margin-right:20px; }

/* ----- 13.お問い合わせページ ----- */
.diag_spam { background-color:#ff0000; padding:5px; margin-bottom:15px; }
.diag_spam p { font-size:20px; color:#ffffff; }
.diag_announce { border:1px solid #ff0000; color:#ff0000; padding:5px; margin-bottom:15px; text-align:center; }
.diag_form { margin-top:2em; }
.diag_form_area { width:unset; }
.diag_form_area th { text-align:right; background-color:unset; vertical-align:top; padding:5px 0 0 0; }
.diag_form_area th.req { color:#ff0000; }
.diag_form_area td { padding:0 0 10px 10px; }
.diag_form_area input, .diag_form_area select, .diag_form_area textarea { width:450px; padding:3px; border:1px solid #aaaaaa; }
input.req, select.req, textarea.req { border:1px solid #ff0000; }
.diag_form_area input.diag_pos  { width:200px; }
.diag_form_area input.diag_name { width:200px; }
.diag_form_area input.diag_mail { width:300px; }
.diag_form_area input.diag_tel  { width:150px; }
.diag_form_area textarea { height:12em; }
.diag_tail { padding-left:5px; }
.diag_form_policy { border:1px solid #aaaaaa; border-radius:5px; padding:10px; }
.diag_form_policy p { line-height:1.3; }
.diag_form_policy div { margin-top:10px; }
.diag_form_policy input.req { border:1px solid #ff0000; }
.diag_form_policy label.req { color:#ff0000; }
.diag_confirm_area th { text-align:right; width:180px; }
.diag_send { font-size:18px; }

/* ----- 81.新着情報 ----- */
.news { margin-top:1em; margin-left:10px; }
.news dt, .news dd { float:left; }
.news dt, .news dd:not(:last-child) { margin-bottom:5px; }
.news dt { width:120px; margin-top:0; }
.news dd { width:calc(100% - 120px); }
.news dd ul li { margin-left:1.25em; }
.news dd a { text-decoration:underline; }

/* ----- 91.サイトマップ ----- */
.sitemap_top { border-left:5px solid #000000; padding-left:10px; }
.sitemap_top:first-child { margin-top:1em; }
.sitemap_top:not(:first-child) { margin-top:2em; }
.sitemap_top p:not(:last-child) { margin-bottom:3em; }
.sitemap p { line-height:1.3; padding-bottom:0.3em; margin-bottom:0.5em; }
.sitemap_nav0 { margin-left:2em; }
.sitemap_nav0:not(.sitemap_sub_block):before { content:'●'; }
.sitemap_nav1 { margin-left:4em; }
.sitemap_nav1:before { content:'▶'; }
.sitemap_nav2 { margin-left:6em; }
.sitemap_nav2:before { content:'・'; }
.sitemap a { text-decoration:underline; }

/* ====================== */
/* 大タブレット(inner)    */
/* ====================== */
@media screen and (max-width:1088px) {

/* ===== 全体共通タグ ===== */

/* ===== 左ナビ(一部ソリューションでも使用) ===== */
.navi_left { float:unset; width:unset; margin-bottom:25px; }
.navi_left .nav_sp { background-color:#aaaaaa; display:block; }
.navi_left .nav_sp p { font-size:16px; }
.navi_left .nav_menu { display:none; }
.navi_left .nav_menu ul li p { font-size:14px; }
.navi_left .nav_menu ul li p br { display:none; }

/* ===== パンくずリスト ===== */
.breadcrumb { font-size:12px; }

/* ===== 本文領域共通 ===== */
article { float:none; width:unset; }
.page_top_image { margin-left:auto; margin-right:auto; }

/* ===== フッタ部 ===== */
.footer_link, .footer_name { padding-left:10px; padding-right:10px; }

/* ===== スクロールボタン ===== */
#page-top { right:10px; }

/* ----- 全体共通クラス ----- */
.inner { width:unset; }
.common_header a { margin-left:10px; margin-right:10px; }
body>.inner { padding-left:10px; padding-right:10px; }

/* ----- 1.TOPページ ----- */
.top_cover { background-size:100% auto; }
.top_cover { width:unset; }
.top_cover_images { padding-left:10px; padding-right:10px; }
.top_cover h2 { padding-top:10px; padding-bottom:10px; width:480px; font-size:20px; }
.top_feature:not(:last-child) { margin-right:10px; }

/* ----- 3.お客様導入事例(TOP) ----- */
.case_top_wrapper { display:flex; justify-content:space-between; flex-wrap:wrap; }
.case_top { flex-direction:column; padding:10px; width:calc(50% - 10px); }
.case_top:nth-child(n+5) { margin-bottom:0; }
.case_top_image { margin-right:0; margin-bottom:10px; }
.case_top_contents { padding-right:0; }

/* ----- 3.お客様導入事例(SUB) ----- */
.case_each_top_lead+img { margin-left:auto; margin-right:auto; }

/* -----5.特設ページ ----- */
.special01_wrapper { column-gap:25px; }
.special01_face_block { width:240px; }
.special01_person_name { font-size:20px; }
}

/* ====================== */
/* 小タブレット(menu)     */
/* ====================== */
@media screen and (max-width:800px) {

/* ----- メニュー部 ----- */
.nav_sp { display:block; }
.nav_menu { display:none; }
.nav_menu ul { flex-wrap:wrap; }
.nav_menu ul li { width:calc(calc(100% - 1px) / 2); }
.nav_menu ul li:nth-child(2n) { border-right:0; }
.nav_menu ul li:nth-child(-n+4) { border-bottom:1px solid #ffffff; }
.nav_menu ul li .menu { height:60px; }
.nav_menu ul li .menu p { font-size:14px; }

/* ===== 本文領域共通 ===== */
.article_title { padding-left:5px; }
.article_contents { margin-left:0; }
.article_contents ul { margin-left:0; }
.article_contents dd { margin-left:10px; }

/* ===== フッタ部 ===== */
.footer_link { flex-wrap:wrap; }
.footer_link a { display:block; text-align:center; flex-shrink:0; width:calc(100% / 3); }
.footer_link a:nth-child(-n+3) { margin-bottom:15px; }
.footer_name { display:flex; justify-content:space-between; flex-wrap:wrap; align-items:start; }
.footer_name .inner { display:block; }
.footer_left { margin-bottom:25px; }
.footer_right { justify-content:end; }
.footer_right img { width:75px; }

/* ----- 1.TOPページ ----- */
.top_cover_images { padding-top:25px; height:380px; }
.top_cover_images img { width:150px; }
.top_cover h2 { max-width:100%; top:145px; }
.top_features { flex-wrap:wrap; justify-content:center; }
.top_feature { width:calc(50% - 20px); }
.top_feature:not(:last-child) { margin-right:0; }
.top_feature:nth-child(2n+1) { margin-right:25px; }
.top_feature:nth-child(-n+2) { margin-bottom:25px; }

/* ----- 1-1.ヘルプデスクページ ----- */
.bpo_helpdesk_lead { padding:5px; }

/* ----- 2.ソリューションサービス事業 ----- */

/* 商品部共通 */
.product_reference_image { float:none; display:flex; justify-content:center; margin-left:0; }
.product_footnote { margin-left:0; font-size:11px; }

/* ----- 2-1.WAN/LANトータルサポートページ ----- */
.nw_wanlan_block { display:block; }
.nw_wanlan_process_image { margin-left:0; margin-right:0; display:flex; justify-content:center; width:unset; }
.nw_wanlan_process_image img { min-width:0; }
.nw_wanlan_process_image img+img { margin-top:0; margin-left:10px; }

/* ----- 2-4.デジタルサイネージトータルサービス ----- */
.signage_contents { display:block; }
.signage_contents>div { width:unset; display:flex; justify-content:space-between; }
.signage_contents>div:not(:last-child) { margin-right:0; margin-bottom:10px; }
.signage_contents>div>div { flex-grow:1; }
.signage_contents>div>img { width:220px; object-fit:cover; }

/* ----- 2-6-1.ホテル向け商品ページ ----- */
.hotel_product { display:block; }
.hotel_product a { margin-left:auto;  margin-right:auto; margin-bottom:5px; }

/* ----- 3.お客様導入事例(TOP) ----- */
.case_top { padding:5px; width:calc(50% - 5px); }
.case_top:not(:last-child) { margin-bottom:10px; }

/* ----- 3.お客様導入事例(SUB) ----- */
.case_each_facephoto { margin-right:20px; }
.case_each_facephoto img { width:200px; }
.case_each_figure_right { margin-left:25px; margin-bottom:25px; }
.case_each_figure_right img { width:200px; }
.article_contents table.case_each_customer_profile th { width:90px; }

/* -----5.特設ページ ----- */
.special01_contents { margin-bottom:50px; }
.special01_contents h2 { margin-top:50px; margin-bottom:50px; }
.special01_contents h2 span { font-size:24px; }
.special01_contents>div { margin-left:10px; margin-right:10px; padding:25px; }
.special01_contents>div:not(:last-child) { margin-bottom:25px; }
.special01_contents h3 { font-size:20px; border-left:7px solid #21285e; padding-left:0.7rem; }
.special01_text img { margin-top:25px; }
.special01_wrapper { display:block; }
.special01_face_block { margin-left:auto; margin-right:auto; margin-bottom:25px; width:375px; }
.special01_person_name { font-size:20px; }
.special01_profile { width:calc(100% - 20px); margin-left:10px; margin-right:10px; margin-bottom:50px; }

/* ----- 11.会社情報 ----- */
.corp_top_ceo_sign { margin-top:1em; width:180px; }
.corp_top_ceo_photo { width:180px; }

/* ----- 11-4.アクセス ----- */
.access_map iframe { height:300px; }

/* ----- 11-6.採用情報 ----- */
.rec_member img:not(:last-child) { margin-right:10px; }

/* ----- 13.お問い合わせページ ----- */
.diag_spam p { font-size:18px; }
.diag_form_area { width:unset; }
.diag_form_area * { display:block; }
.diag_form_area th { text-align:left; padding:0; }
.diag_form_area td { padding:0 0 10px 0; }
.diag_form_area input, .diag_form_area select, .diag_form_area textarea { font-size:16px; }
.diag_form_area .diag_tel, .diag_form_area .diag_tail { display:inline-block; }

/* ----- 81.新着情報 ----- */
.news { margin-left:0; }
}


/* ====================== */
/* スマホ                 */
/* ====================== */
@media screen and (max-width:480px) {

/* ===== 全体共通クラス ===== */
input[type="submit"], .button { width:180px; }

/* ===== 本文領域共通 ===== */
article { min-height:200px; }
.contents_salespoint p, .contents_salespoint p * { font-size:15px; }
.link_in_contents { display:block; }
.link_in_contents a:first-child { margin-bottom:10px; }
.product_each_next { font-size:16px; }

/* ----- タブ部 ----- */
.tab_selected, .tab_unselected { min-width:100px; margin-right:5px; font-size:15px; }

/* ----- ページ最下部資料請求部 ----- */
.inquery_form div { padding:5px 0; font-size:16px; }
.inquery_form form { padding-top:5px; font-size:16px; }
.inquery_form label:first-of-type { margin-right:25px; }

/* ===== フッタ部 ===== */
.footer_link a { width:calc(100% / 2); }
.footer_link a:nth-child(-n+4) { margin-bottom:15px; }
.footer_name p, .footer_name p.footer_name_corp { margin-bottom:10px; }
.footer_name p { font-size:12px; }
.footer_left p span { display:block; }
.copyright { font-size:12px; }
#page-top a { padding:5px 15px; border-radius:10px; font-size:26px; }

/* ----- 1.TOPページ ----- */
.top_cover h2 { font-size:18px; }
.top_feature { width:calc(50% - 10px); }
.top_feature:nth-child(2n+1) { margin-right:15px; }
.top_feature:nth-child(-n+2) { margin-bottom:15px; }
.top_feature h2 { font-size:13px; padding:10px 5px; }

/* ----- 2-1-1.UTMページ ----- */
.nw_wanlan_utm_images { display:block; }
.nw_wanlan_utm_images img:first-child { margin-right:auto; margin-bottom:10px; }

/* ----- 2-3.クラウドカメラページ ----- */
.camera_function * { display:block; }
.camera_function table, .camera_function tbody, .camera_function tr, .camera_function th, .camera_function td { border:0; }
.camera_function th { width:unset; text-align:left; }
.camera_function th br { display:none; }

/* ----- 2-4.デジタルサイネージトータルサービス ----- */
.signage_contents>div>div { height:calc(147 / 220 * 147px); }
.signage_contents>div>img { width:120px; }

/* ----- 3.お客様導入事例(TOP) ----- */
.case_top { width:100%; }
.case_each_subtitle p { font-size:15px; }

/* ----- 3.お客様導入事例(SUB) ----- */
.case_each_top_corpname { font-size:18px; }
.case_each_top_corpinfo { display:block; }
.case_each_top_lead p, .case_each_top_lead span { font-size:15px; }
.case_each_facephoto { float:none; }
.case_each_figure_right { float:none; margin-left:0; margin-bottom:10px; }
.case_each_figure_right img { margin-left:auto; margin-right:auto; width:unset; }
.case_each_signage_setting { display:block; }
.case_each_signage_setting img { max-width:100%; width:100%; margin-left:auto; margin-right:auto; }
.case_each_signage_setting img:nth-child(odd) { margin-right:auto; }
.case_each_signage_setting img:not(:nth-last-child(-n+1)) { margin-bottom:10px; }

/* -----5.特設ページ ----- */
.special01_contents { margin-bottom:25px; }
.special01_contents h2 { margin-top:25px; margin-bottom:25px; }
.special01_contents h2 span { font-size:22px; }
.special01_contents>div { padding-left:10px; padding-right:10px; }
.special01_face_block { max-width:375px; width:100%; }
.special01_person_name { font-size:20px; }
.special01_profile .case_each_customer_profile th { width:90px; }
.special01_profile p { text-align:left; }

/* ----- 11.会社情報 ----- */
.corp_top_ceo { display:block; }
.corp_top_ceo_photo { display:block; margin-left:auto; margin-top:10px; }

/* ----- 11-1.基本情報 ----- */
.corp_about, .corp_about>tbody, .corp_about>tbody>tr, .corp_about>tbody>tr>th, .corp_about>tbody>tr>td { display:block; border:0; }
.corp_about tr:not(:last-child) { margin-bottom:0.3em; }
.corp_about th { text-align:left; }
.corp_about td { padding-left:0; padding-right:0; }

/* ----- 11-3.沿革 ----- */
.corp_history td:first-child { padding-right:10px; white-space:nowrap; }

/* ----- 13.お問い合わせページ ----- */
.diag_spam p { font-size:16px; }
.diag_form { margin-top:1em; }
.diag_form_area { width:100%; }
.diag_form_area input, .diag_form_area select, .diag_form_area textarea { width:100%; }
.diag_confirm_area, .diag_confirm_area * { display:block; border:0; }
.diag_confirm_area th, .diag_confirm_area td { width:100%; }
.diag_confirm_area th { text-align:left; }
.diag_confirm_area td { margin-bottom:10px; }
.diag_send { font-size:16px; }

/* ----- 81.新着情報 ----- */
.news dt, .news dd { float:unset; }
.news dt { width:unset; }
.news dd { width:unset; margin-left:10px; }
.news dd:not(:last-child) { margin-bottom:1em; }

/* ----- 91.サイトマップ ----- */
.sitemap_nav0 { margin-left:1em; }
.sitemap_nav1 { margin-left:2.5em; }
.sitemap_nav2 { margin-left:4em; }

}
