@charset "UTF-8";
/* スマホ・タブレット
----------------------------------------------------------------------------

	共通
	ご挨拶
	会社概要
	会社沿革
	決算情報
	SNS情報
	関連リンク
	サイトマップ
	プライバシーポリシー
	スタッフ紹介　※@import

--------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
	共通
--------------------------------------------------------------------------*/
@media screen and (max-width: 768px) { .co_subtitle > div .co_st_eng { font-size: 30px; }
  .co_subtitle > div h2 { margin-top: 10px; padding: 15px 0 0; font-size: 16px; } }
/*768px*/
/*--------------------------------------------------------------------------
	ご挨拶
--------------------------------------------------------------------------*/
@media screen and (max-width: 1000px) { #company > .co_frm > div > div.gree .gree_main .tx { padding: 0 30px 0 0; } }
/*1000px*/
@media screen and (max-width: 768px) { #company > .co_frm { background-size: auto 200px; }
  #company > .co_frm > div { padding: 0 10px 0; }
  #company > .co_frm > div > div.gree { padding: 50px 0 0; }
  #company > .co_frm > div > div.gree .gree_main { flex-wrap: wrap; margin-top: 45px; }
  #company > .co_frm > div > div.gree .gree_main .tx { order: 2; margin-top: 40px; padding: 0; }
  #company > .co_frm > div > div.gree .gree_main .tx h3 { margin-bottom: 20px; max-width: 280px; }
  #company > .co_frm > div > div.gree .gree_main .tx p:nth-of-type(n+2) { margin-top: 20px; }
  #company > .co_frm > div > div.gree .gree_main .ph { order: 1; margin: 0 auto 0; padding: 0; width: 100%; max-width: 300px; }
  #company > .co_frm > div > div.gree .gree_main .ph p.co_name { margin-top: 20px; }
  #company > .co_frm > div > div.gree .gree_main .ph p.co_posi { margin-top: 10px; }
  #company > .co_frm > div > div.gree .gree_main .ph p.co_posi span { margin-left: 20px; max-width: 110px; }
  #company > .co_frm > div > div.philo { margin: 45px auto 0; }
  #company > .co_frm > div > div.philo .co_subtitle { padding: 45px 10px 45px; }
  #company > .co_frm > div > div.philo .philo_main > p { padding: 20px 10px 15px; font-size: 15px; }
  #company > .co_frm > div > div.philo .philo_sub { margin-top: 25px; } }
/*768px*/
@media screen and (max-width: 640px) { #company > .co_frm > div > div.philo .philo_main > p { text-align: left; font-size: 14px; } }
/*640px*/
/*--------------------------------------------------------------------------
	会社概要
--------------------------------------------------------------------------*/
@media screen and (max-width: 1000px) { #outline > .outline_frm .area_co_map .item { margin: 0 auto 0; padding: 0; width: 100%; max-width: 500px; }
  #outline > .outline_frm .area_co_map .item:nth-of-type(2n) { padding: 0; }
  #outline > .outline_frm .area_co_map .item:nth-of-type(n+2) { margin-top: 65px; } }
/*1000px*/
@media screen and (max-width: 768px) { #outline > .outline_frm .intro { margin-top: 45px; font-size: 20px; }
  #outline > .outline_frm .out { margin-top: 45px; }
  #outline > .outline_frm .out .list { margin: 35px auto 0; }
  #outline > .outline_frm .out .list .item h2 { padding: 10px 2px 8px; width: 95px; line-height: 1.3; font-size: 12px; }
  #outline > .outline_frm .out .list .item > div { padding: 10px 10px 6px; }
  #outline > .outline_frm .out .list .item > div .br_tx { display: block; }
  #outline > .outline_frm .out .list .item > div .a_link { display: inline-block; margin-bottom: 2px; padding: 2px 10px 1px; font-size: 13px; }
  #outline > .outline_frm .out .list .item > div .a_link.other_link { padding: 2px 30px 1px 10px; }
  #outline > .outline_frm .out .list .item.type_add .block h3 { font-size: 14px; }
  #outline > .outline_frm .out .list .item.type_add .block .co_map { display: block; margin: 10px auto 10px 0; max-width: 150px; }
  #outline > .outline_frm .out .list .item.type_add .block .co_num .num { font-size: 16px; }
  #outline > .outline_frm .sales { margin-top: 55px; }
  #outline > .outline_frm .sales .sales_list { margin: 35px auto 0; max-width: 500px; }
  #outline > .outline_frm .sales .sales_list .data { display: block; }
  #outline > .outline_frm .sales .sales_list .data > div { width: 100%; }
  #outline > .outline_frm .sales .sales_list .data > div:last-of-type { padding: 0; }
  #outline > .outline_frm .sales .sales_list .data > div:last-of-type h3 { display: none; }
  #outline > .outline_frm .sales .sales_list .data > div h3 { padding: 5px 10px 3px; font-size: 13px; }
  #outline > .outline_frm .sales .sales_list > p { margin-top: 10px; }
  #outline > .outline_frm .sales .list_img { margin: 45px auto 0; }
  #outline > .outline_frm .sales .page_back { margin-top: 45px; }
  #outline > .outline_frm .area_co_map { margin: 60px auto 0; }
  #outline > .outline_frm .area_co_map .item { margin: 0 auto 0; padding: 0; width: 100%; max-width: 500px; }
  #outline > .outline_frm .area_co_map .item:nth-of-type(2n) { padding: 0; }
  #outline > .outline_frm .area_co_map .item:nth-of-type(n+2) { margin-top: 45px; }
  #outline > .outline_frm .area_co_map .item h2 { padding: 0 0 10px 15px; font-size: 16px; }
  #outline > .outline_frm .area_co_map .item .map { margin-top: 15px; }
  #outline > .outline_frm .area_co_map .item .map .map_size { height: 300px; }
  #outline > .outline_frm .area_co_map .item .box { margin-top: 15px; }
  #outline > .outline_frm .area_co_map .item .box .tx { padding: 0 0 0 10px; }
  #outline > .outline_frm .area_co_map .item .box .tx .tel > p { background-size: 32px; padding: 0 0 0 40px; font-size: 22px; } }
/*768px*/
@media screen and (max-width: 480px) { #outline > .outline_frm .out .list .item > div .a_link.other_link { background-position: right 5px center; background-size: 12px auto; padding: 2px 25px 1px 5px; }
  #outline > .outline_frm .out .list .item > div .a_link.other_link .sp_no { display: none; }
  #outline > .outline_frm .sales .sales_list .data > div dl dt { width: 130px; }
  #outline > .outline_frm .area_co_map .item .map .map_size { height: 250px; }
  #outline > .outline_frm .area_co_map .item .box { display: block; }
  #outline > .outline_frm .area_co_map .item .box > div { display: block; }
  #outline > .outline_frm .area_co_map .item .box .ph { margin: 0 auto 0; width: 100%; max-width: 250px; }
  #outline > .outline_frm .area_co_map .item .box .tx { margin: 15px auto 0; padding: 0; max-width: 300px; text-align: center; }
  #outline > .outline_frm .area_co_map .item .box .tx .add { text-align: left; }
  #outline > .outline_frm .area_co_map .item .box .tx .add .br01 { display: inline; }
  #outline > .outline_frm .area_co_map .item .box .tx .tel { display: inline-block; margin: 10px auto 0; text-align: left; } }
/*768px*/
/*--------------------------------------------------------------------------
	会社沿革
--------------------------------------------------------------------------*/
@media screen and (max-width: 768px) { #history > .history_frm .his { padding: 45px 0 0; }
  #history > .history_frm .his .list { margin: 35px auto 0; }
  #history > .history_frm .his .list .item h2, #history > .history_frm .his .list .item > div { vertical-align: middle; }
  #history > .history_frm .his .list .item h2 { padding: 10px 5px 6px; width: 100px; line-height: 1.3; font-size: 13px; }
  #history > .history_frm .his .list .item h2 span { display: block; }
  #history > .history_frm .his .list .item > div { padding: 10px 10px 6px; } }
/*768px*/
/*--------------------------------------------------------------------------
	決済情報
--------------------------------------------------------------------------*/
@media screen and (max-width: 768px) { #financial .financial_frm { padding-top: 10px; }
  #financial .financial_frm ul { margin: 35px auto 0; padding: 10px; }
  #financial .financial_frm ul li:nth-of-type(n+2) { margin-top: 10px; }
  #financial .financial_frm ul li a { background-position: left 5px center; padding: 10px 10px 12px 45px; }
  #financial .financial_frm ul p { padding: 0 5px 0; } }
/*768px*/
/*--------------------------------------------------------------------------
	SNS情報
--------------------------------------------------------------------------*/
@media screen and (max-width: 1100px) { #sns .sns_frm #line_link #line_box .step > div { margin: 0 10px; width: calc(25% - 20px); }
  #sns .sns_frm #line_link #line_box .step > div.qr { padding: 10px; } }
/*1100px*/
@media screen and (max-width: 1000px) { #sns .sns_frm #line_link #line_box .step { margin: 0 auto; max-width: 700px; }
  #sns .sns_frm #line_link #line_box .step > div { padding: 20px; width: calc(50% - 20px); }
  #sns .sns_frm #line_link #line_box .step > div:nth-of-type(n+3) { margin: 20px 10px 0 10px; } }
/*1000px*/
@media screen and (max-width: 900px) { #sns .sns_frm .sns_items { flex-wrap: wrap; column-gap: 0; }
  #sns .sns_frm .sns_items > section { width: 100%; }
  #sns .sns_frm .sns_items #tiktok_box { margin: 120px auto 0 auto; } }
/*900px*/
@media screen and (max-width: 768px) { #sns .sns_type h3 { margin: 0 20px 10px 0; line-height: 40px; }
  #sns .sns_type p { font-size: 13px; }
  #sns .back_btn { margin: 30px auto 0 auto; }
  #sns .sns_frm .intro { margin: 0 0 50px 0; }
  #sns .sns_frm #fb_box { margin: 0 auto 70px auto; }
  #sns .sns_frm #fb_box .account { max-width: 500px; }
  #sns .sns_frm #fb_box .account .item { margin: 50px auto 0 auto; width: 100%; }
  #sns .sns_frm #fb_box .account .item:first-of-type { margin: 0 auto; }
  #sns .sns_frm #youtube_link { margin: 0 auto 70px auto; }
  #sns .sns_frm #youtube_link #youtube_box ul li { width: 50%; }
  #sns .sns_frm #youtube_link #youtube_box ul li:nth-of-type(n+3) { margin-top: 30px; }
  #sns .sns_frm #youtube_link #youtube_box ul.no_data li:nth-of-type(n+3) { display: none; }
  #sns .sns_frm .sns_items { margin: 0 auto 70px auto; }
  #sns .sns_frm .sns_items #tiktok_box { margin: 70px auto 0 auto; } }
/*768px*/
@media screen and (max-width: 640px) { #sns .sns_type { padding: 0; }
  #sns .sns_type a { padding: 0; background: none; }
  #sns .sns_type a h3 { padding: 0 35px 0 0; background: url("../img/link02_01.png") no-repeat right top 13px; background-size: 16px auto; }
  #sns .sns_type h3 { margin: 0 0 10px 0; }
  #sns .sns_type p { display: block; width: 100%; } }
/*640px*/
@media screen and (max-width: 540px) { #sns .sns_frm #line_link #line_box .step { max-width: 400px; }
  #sns .sns_frm #line_link #line_box .step > div { padding: 20px; width: 100%; }
  #sns .sns_frm #line_link #line_box .step > div:nth-of-type(n+2), #sns .sns_frm #line_link #line_box .step > div:nth-of-type(n+3) { margin: 20px 10px 0 10px; } }
/*540px*/
@media screen and (max-width: 500px) { #sns .sns_frm #youtube_link #youtube_box ul li:nth-of-type(n+3) { margin-top: 20px; }
  #sns .sns_frm #youtube_link #youtube_box ul li .data .cap p { margin: 5px 0 0 0; height: 35px; font-size: 11px; }
  #sns .sns_frm .sns_items #insta_box ul li, #sns .sns_frm .sns_items #tiktok_box ul li { width: 50%; }
  #sns .sns_frm .sns_items #insta_box ul.no_data li, #sns .sns_frm .sns_items #tiktok_box ul.no_data li { width: 25%; }
  #sns .sns_frm .sns_items #insta_box .back_btn ul li { padding: 0 5px 0 0; }
  #sns .sns_frm .sns_items #insta_box .back_btn ul li:nth-of-type(2n) { padding: 0 0 0 5px; } }
/*500px*/
/*--------------------------------------------------------------------------
	関連リンク
--------------------------------------------------------------------------*/
@media screen and (max-width: 1000px) { #link .link_frm .links > div a { width: 50%; max-width: 50%; } }
/*1000px*/
@media screen and (max-width: 768px) { #link .link_frm dl dd span { background-position: left top 11px; background-size: 12px auto; padding: 5px 5px 5px 22px; font-size: 13px; }
  #link .link_frm .main_link { max-width: 400px; }
  #link .link_frm .main_link .list .item a { padding: 15px 15px 12px; }
  #link .link_frm .main_link .list .item a dl { display: block; }
  #link .link_frm .main_link .list .item a dl dt, #link .link_frm .main_link .list .item a dl dd { display: block; width: 100%; }
  #link .link_frm .main_link .list .item a dl dd { margin-top: 5px; padding: 0; }
  #link .link_frm .main_link + .links { margin-top: 50px; }
  #link .link_frm .links { margin-top: 60px; }
  #link .link_frm .links > h2 { background-position: left top; background-size: 4px auto; padding-left: 15px; font-size: 18px; }
  #link .link_frm .links > div { margin: 0 auto 0; max-width: 600px; }
  #link .link_frm .links > div a { margin-top: 25px; padding: 0 5px 0; width: 100%; max-width: 100%; }
  #link .link_frm .links > div a dl { padding: 0 0 10px; }
  #link .link_frm .links > div a dl dt .br_spno { display: inline-block; } }
/*768px*/
/*--------------------------------------------------------------------------
	サイトマップ
--------------------------------------------------------------------------*/
@media screen and (max-width: 1000px) { #sitemap #site_frm > div .list { margin: 0 auto 0; max-width: 800px; }
  #sitemap #site_frm > div .list > div { width: 50%; }
  #sitemap #site_frm > div .list > div:nth-of-type(n+3) { margin-top: 35px; } }
/*1000px*/
@media screen and (max-width: 768px) { #sitemap #site_frm { padding: 0; }
  #sitemap #site_frm > div > h2 { margin-bottom: 30px; padding-left: 15px; }
  #sitemap #site_frm > div > h2 span.an_eng { font-size: 25px; }
  #sitemap #site_frm > div > h2 span.an_jp { font-size: 14px; }
  #sitemap #site_frm > div .list > div { padding: 0 10px 0; width: 50%; }
  #sitemap #site_frm > div .list > div .item + .item { margin-top: 35px; }
  #sitemap #site_frm > div .list > div .item .item_title { font-size: 15px; }
  #sitemap #site_frm > div .list > div .item ul { margin-top: 15px; }
  #sitemap #site_frm > div .list > div .item ul li { margin-top: 15px; }
  #sitemap #site_frm > div .list > div .item ul li.fl_arrow a { background-position: left top 5px; padding: 0 0 0 12px; }
  #sitemap #site_frm > div .list > div .item ul li.fl_arrow a .in_blo { display: inline-block; } }
/*768px*/
@media screen and (max-width: 640px) { #sitemap #site_frm > div .list { max-width: 400px; }
  #sitemap #site_frm > div .list > div { padding: 0; width: 100%; }
  #sitemap #site_frm > div .list > div:nth-of-type(n+2) { margin-top: 35px; } }
/*640px*/
/*--------------------------------------------------------------------------
	プライバシーポリシー
--------------------------------------------------------------------------*/
@media screen and (max-width: 768px) { #privacy { background-size: auto 200px; }
  #privacy .privacy_frm .intro { padding: 0 0 25px 0; }
  #privacy .privacy_frm .intro p:first-of-type { margin: 0 0 20px 0; font-size: 17px; text-align: left; }
  #privacy .privacy_frm section { margin: 40px auto 0 auto; }
  #privacy .privacy_frm section:first-of-type { margin: 20px auto 0 auto; }
  #privacy .privacy_frm section h3 { margin: 0 0 10px 0; }
  #privacy .privacy_frm section h3 span.no { padding: 0 0 0 15px; background: url("../img/icon_blue.png") no-repeat left top 3px; background-size: 4px auto; font-size: 24px; }
  #privacy .privacy_frm section h3 span.no + span { font-size: 16px; }
  #privacy .privacy_frm section .item { padding: 20px 15px; }
  #privacy .privacy_frm section .item a.window { padding: 0 26px 0 0; background-position: right 7px center; background-size: 14px auto; }
  #privacy .privacy_frm section .item.company dl dt, #privacy .privacy_frm section .item.company dl dd { font-size: 14px; }
  #privacy .privacy_frm section .item.data dl dt, #privacy .privacy_frm section .item.data dl dd { font-size: 14px; }
  #privacy .privacy_frm section .item.list ul { margin: 15px 0 0 15px; }
  #privacy .privacy_frm section .item.list ul.att { margin: 20px 0 0 0; }
  #privacy .privacy_frm section .item.list ul.sub_list li { background: url("../img/arrow_privacy.png") no-repeat left top 8px; background-size: 6px auto; }
  #privacy .privacy_frm section .item.contact dl { margin: 15px 0 0 0; } }
/*768px*/

/*# sourceMappingURL=sp_01.css.map */
