/* CSS Document */

@charset "UTF-8";
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 15px;
  vertical-align: baseline;
}

body {
  font-family: "Noto Sans JP", "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Verdana, Arial, sans-serif;
}

ul,
ol,
dl,
dt,
dd,
div,
ol,
ul,
li {
  padding: 0;
  margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin: 0;
  padding: 0;
  font-weight: normal;
  font-size: 1.0rem;
  line-height: 1.4rem;
}

li {
  list-style-type: none;
}

textarea {
  font-size: 1.0rem;
}

a {
  outline: none;
}

img {
  vertical-align: middle;
}

a img {
  border: 0;
}

a:link {
  text-decoration: none;
  color: #333;
}

a:visited {
  text-decoration: none;
  color: #333;
}

a:hover,
a:active {
  text-decoration: none;
  color: #333;
}

li a:hover,
li a:active {
  text-decoration: none;
}

a:hover,
a:hover img {
  -moz-transition: all 0.2s ease-out;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

::selection {
  background: #ddedbb;
  color: #333;
}

::-moz-selection {
  background: #ddedbb;
  color: #333;
}


/*==========================================================================
　汎用クラス
============================================================================*/

.font_small {
  font-size: 10px
}

.font_m {
  font-size: 12px
}

.font_l {
  font-size: 14px
}

.font_bold {
  font-weight: bold;
}

.FLNM {
  float: left;
}

.FRNM {
  float: right;
}

.floatR {
  float: right;
  margin-left: 20px;
  margin-bottom: 20px;
}

.clear {
  clear: both;
}


/*margin*/

.marginA {
  margin: auto;
}

.marginB5 {
  margin-bottom: 5px;
}

.marginB10 {
  margin-bottom: 10px;
}

.marginB15 {
  margin-bottom: 15px;
}

.marginB20 {
  margin-bottom: 20px;
}

.marginB30 {
  margin-bottom: 30px;
}

.marginB50 {
  margin-bottom: 50px;
}

.marginB80 {
  margin-bottom: 80px;
}

.marginB100 {
  margin-bottom: 100px;
}

.marginR5 {
  margin-right: 5px;
}

.marginR10 {
  margin-right: 10px;
}

.marginR15 {
  margin-right: 15px;
}

.marginR20 {
  margin-right: 20px;
}

.marginR30 {
  margin-right: 30px;
}

.marginR50 {
  margin-right: 50px;
}

.marginR80 {
  margin-right: 80px;
}

.marginR100 {
  margin-right: 100px;
}

.marginT5 {
  margin-top: 5px;
}

.marginT10 {
  margin-top: 10px;
}

.marginT15 {
  margin-top: 15px;
}

.marginT20 {
  margin-top: 20px;
}

.marginT30 {
  margin-top: 30px;
}

.marginT50 {
  margin-top: 50px;
}

.marginT80 {
  margin-top: 80px;
}

.marginT100 {
  margin-top: 100px;
}

.marginL5 {
  margin-left: 5px;
}

.marginL10 {
  margin-left: 10px;
}

.marginL15 {
  margin-left: 15px;
}

.marginL20 {
  margin-left: 20px;
}

.marginL30 {
  margin-left: 30px;
}

.marginL50 {
  margin-left: 50px;
}

.marginL80 {
  margin-left: 80px;
}

.marginL100 {
  margin-left: 100px;
}


/*padding*/

.paddingB5 {
  padding-bottom: 5px;
}

.paddingB10 {
  padding-bottom: 10px;
}

.paddingB15 {
  padding-bottom: 15px;
}

.paddingB20 {
  padding-bottom: 20px;
}

.paddingB30 {
  padding-bottom: 30px;
}

.paddingB50 {
  padding-bottom: 50px;
}

.paddingB80 {
  padding-bottom: 80px;
}

.paddingB100 {
  padding-bottom: 100px;
}

.paddingR5 {
  padding-right: 5px;
}

.paddingR10 {
  padding-right: 10px;
}

.paddingR15 {
  padding-right: 15px;
}

.paddingR20 {
  padding-right: 20px;
}

.paddingR30 {
  padding-right: 30px;
}

.paddingR50 {
  padding-right: 50px;
}

.paddingR80 {
  padding-right: 80px;
}

.paddingR100 {
  padding-right: 100px;
}

.paddingT5 {
  padding-top: 5px;
}

.paddingT10 {
  padding-top: 10px;
}

.paddingT15 {
  padding-top: 15px;
}

.paddingT20 {
  padding-top: 20px;
}

.paddingT30 {
  padding-top: 30px;
}

.paddingT50 {
  padding-top: 50px;
}

.paddingT80 {
  padding-top: 80px;
}

.paddingT100 {
  padding-top: 100px;
}

.paddingL5 {
  padding-left: 5px;
}

.paddingL10 {
  padding-left: 10px;
}

.paddingL15 {
  padding-left: 15px;
}

.paddingL20 {
  padding-left: 20px;
}

.paddingL30 {
  padding-left: 30px;
}

.paddingL50 {
  padding-left: 50px;
}

.paddingL80 {
  padding-left: 80px;
}

.paddingL100 {
  padding-left: 100px;
}

.txtC {
  text-align: center;
}

.txtR {
  text-align: right;
}

.dkirBox {
  position: relative;
  z-index: 3;
  zoom: 1;
  /* いらない場合も */
}

.dkir {
  display: block;
  text-decoration: none;
  overflow: hidden;
}

dkir:hover {
  background-position: left bottom;
}

.dkir span {
  position: relative;
  z-index: -1;
  /* テクニックの要！ */
}


/*==========================================================================
　共通CSS
============================================================================*/

.pc {
  display: block!important;
}

.phone {
  display: none !important;
}

body {
  border-top: #90c31f 8px solid;
  margin: 0;
  padding: 0;
}

#outer {
  width: 100%;
  margin: 0 auto 0;
}

#inner {
  width: 980px;
  margin: 0 auto 0;
}


/*==========================================================================
　共通部分
============================================================================*/


/*ヘッダー*/

#header {
  width: 980px;
  margin: 0 auto 0;
  display: flex;
  padding: 1rem 0 1rem 0;
  font-weight: normal;

}

#header .column01 {
  width: 100%;
  display: flex;
  padding: 1rem 0 0 0;
}

#header .column01 h1 {
  width: 10rem;
}

#header .column01 div.list01 {
  padding: 0.5rem 0 0 2rem;
  font-size: 0.9rem;
}


#header .column02 {
  width: 100%;
}

#header #headder_other ul {
  display: flex;
  justify-content: flex-end;
}

#header #headder_other a {
  width: 100%;
  font-size: 0.9rem;
  padding: 0 0.6rem 0;
  text-align: right;
}



#header .column02 #headder_nav ul {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  padding: 0rem 0 0 0;

}

#header .column02 #headder_nav li {
  padding: 0 0.8rem 0;
  font-size: 1.0rem;
  display: inline-block;
}




/*メインイメージ*/

#mainimg {
  width: 1000px;
  margin: 10px auto 0;
  padding: 4rem 0 0 0;
}

#main_txt {
  width: 587px;
  margin: 30px auto 50px;
}

#main_txt p {
  background: url(/img/SVG_top_txt01.svg) top left;
  width: 587px;
  height: 60px;
}


/*コンテンツ*/

#content {
  margin-bottom: 50px;
}

#content h3 {
  margin-bottom: 20px;
}

#content .column01 {
  float: left;
  width: 632px;
  margin-right: 24px;
}


/*右カラム*/

#content .column02 {
  float: left;
  width: 304px;
}

#content .column02 h3 {
  margin-bottom: 0px;
}

#sa_logo img {
  margin: 20px 0 0;
  width: 100%;
}

/*フッター*/

#footer {
  border-top: #CCC 1px solid;
  padding-top: 20px;
	width: 960px;
	margin: 0 auto 50px;
}
#footer ul {
	float: left;
}

#footer li {
  float: left;
  margin-right: 18px;
}

#footer li.list01 {
  width: 73px;
}

#footer li.list01 a {
  width: 73px;
  height: 11px;
}

#footer li.list02 {
  width: 63px;
}

#footer li.list02 a {
  width: 63px;
  height: 11px;
}

#footer li.list03 {
  width: 63px;
}

#footer li.list03 a {
  width: 63px;
  height: 11px;
}

#footer li.list04 {
  width: 63px;
}

#footer li.list04 a {
  width: 63px;
  height: 11px;
}

#footer li.list05 {
  width: 63px;
}

#footer li.list05 a {
  width: 63px;
  height: 11px;
}

#footer li.list06 {
  width: 107px;
  margin-right: 10px;
}

#footer li.list06 a {
  width: 107px;
  height: 20px;
}

#footer li.list07 {
  width: 80px;
}

#footer li.list07 a {
  width: 80px;
  height: 20px;
}

#footer li.list08 {
  width: 83px;
}

#footer li.list08 a {
  width: 83px;
  height: 11px;
}

#footer li.list06,
#footer li.list07 {
  margin-top: 0px;
}

#footer #copyright {
  width: 224px;
  float: right;
}



/*TOP以外のヘッダー下タイトル*/

#page_title {
  background: url(../img/bgimg_check.gif);
  width: 100%;
  height: 100px;
  margin-top: 5rem;
}

#page_title h2 {
  padding-top: 60px;
  width: 960px;
  margin: 0 auto 0;
}


/*右カラム各カテゴリーリンク*/
#contents_link_area  {

}

#contents_link_area li {
  margin-bottom: 0.5rem;

}


/*パンくず*/

#topicPath {
  margin: 10px 0 30px;
}

#topicPath li {
  display: inline;
  line-height: 1;
  margin: 0;
  margin-right: 5px;
  padding: 0;
}


/*チャットボット*/

#chatbot_area {
  position: fixed;
  bottom:0;
  right: 0;
}


/*以下、個別CSS*/


/*==========================================================================
　トップページ
============================================================================*/

#toppage #content .column01 li {
  width: 303px;
  float: left;
  margin-bottom: 30px;
  background: url(../img/icon_btn_more.gif) right 8px no-repeat;
}

#toppage #content .column01 li a {
  display: block;
	float: left;
}

#toppage #content .column01 li p {
  margin-top: 5px;
}

#toppage #content .column01 li.list01,
#toppage #content .column01 li.list03,
#toppage #content .column01 li.list05 {
  margin-right: 24px;
}

#toppage #content .column01 li h4 {
  margin-bottom: 5px;
}


/*TOPバナーリンク*/

#linkarea {
  background: #eeeeee;
  padding: 1rem;
  margin: 30px 0 0;
}

#linkarea li {
  margin-bottom: 10px;
}

#linkarea li img {
  width: 100%;
}

#linkarea li.list02 img {
  width: 100%;
}

#linkarea li.last {
  margin-bottom: 0px;
}

#linkarea3 {
  margin: 0 0 30px 0;
}


/*==========================================================================
　service
============================================================================*/

#service #content p {
  margin-bottom: 30px;
  line-height: 2.6;
}

#service h2 {
  margin-bottom: 50px;
}

#service h3 {
  margin-bottom: 30px;
}

#service .main_img {
  margin-bottom: 50px;
}

#service #content dt {
  margin-bottom: 20px;
}

#service #content dd {
  margin-bottom: 50px;
}

#service #content dd a.workslink_btn {
  float: right;
  margin-top: 50px;
}


/*制作の流れ*/

#service_flow {
  width: 632px;
  float: left;
}

#service #content .column01 li {
  width: 303px;
  float: left;
  margin-bottom: 10px;
  background: url(../img/icon_btn_more.gif) right 8px no-repeat;
}

#service #content .column01 li.list01,
#service #content .column01 li.list03,
#service #content .column01 li.list05 {
  margin-right: 24px;
}

#service #content .column01 li h4 {
  margin-bottom: 5px;
  font-size: 1.1rem;
}

#content .column01 #service_flow li {
  background: none;
  width: 632px;
}

#service_flow li img {
  margin-right: 20px;
}

#content .column01 #service_flow li p {
  padding-left: 236px;
  background: none;
  text-indent: -236px;
  margin-bottom: 0px;
}

#service_flow dd#request_btn {
  width: 304px;
  margin: 0 auto 0;
}


/*==========================================================================
　works
============================================================================*/


/*制作実績　TOPページ*/

#works p.notes {
  font-size: 1.1rem
  line-height: 2;
  border-bottom: #666 1px solid;
  padding-bottom: 10px;
  margin-bottom: 30px;
}

#works_summary #Parks li.mix {
  border: #CCC 1px solid;
  margin-bottom: 5em;
  margin-left: 14px;
}

#works_summary #Parks li.mix p {
  position: absolute;
  font-size: 0.75rem;
  display: block;
  width: 180px;
  line-height: 1.2;
  margin-top: 5px;
  height: 3em;
  overflow: hidden;
}

#works_summary .drop_down li {
  margin-bottom: 10%;
  width: 10em;
  border: none;
}


/*制作実績　各詳細ページ*/

#works.gallery #galleryphoto {
  float: left;
  width: 70%;
  margin-right: 24px;
}

#works.gallery #galleryphoto table {
  width: 100%;
  padding: 0;
}

#works.gallery #galleryphoto table td {
  padding-bottom: 50px;
}

#works.gallery #galleryphoto .entry {
  margin-bottom: 30px;
}

#works.gallery #galleryphoto .entry img {
  border: #CCC 1px solid;
}

#works.gallery #gallerytxt {
  float: left;
  background: url(/img/bgimg_check02.gif) repeat-x top left;
  padding-top: 20px;
  width: 264px;
}

#works.gallery #gallerytxt .title {
  font-size: 1.2rem;
  font-weight: bold;
  margin-bottom: 5px;
}

#works.gallery #gallerytxt .year {
  font-weight: bold;
}

#works.gallery #gallerytxt .dis {}

#works.gallery #galleryphoto .works_back {
  width: 169px;
  margin: 50px auto 30px;
}

#works.gallery #galleryphoto table p {
  text-align: center;
  font-size: 0.8rem;
  margin-top: 10px;
}

/* #works_overview */

#works.details #works_overview {
  padding: 2rem 0 0 0;
}

#works.details #works_overview h2 {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 2.4rem;
  padding: 0 0 2rem 0;
}

#works.details #works_overview_mainimg img {
  width: 100%;
}

#works.details #works_overview_read_area {
  display: flex;
  padding: 2rem 0 5rem 0;
}

#works.details #works_overview_read_area p {
  width: 100%;
  padding:0 0 0 2rem;
  text-align: justify;
  line-height: 1.8rem;
}

#works.details #credit_area {
  border: 3px solid #8CC601;
  padding: 1rem;
  line-height: 1.8rem;
  font-size: 0.8rem;
  width: 70%;
}

#works.details #credit_area li i {
  padding-left: 0.5rem;
}

#works.details #credit_area li b {
color:#8CC601;
font-weight: bold;
}

#works.details #credit_area li span {
font-weight: bold;
font-size: 1.0rem;
}

#works.details .article {
  padding: 0 0 3rem 0;
}

#works.details .article h3 {
  font-size: 1.2rem;
  font-weight: bold;
  background-color: #8CC601;
  padding: 1rem 0 1rem 5rem;
  color: #fff;
}

#works.details h3.problem {
  background-image: url(/works/img/works_detail_article_icon01.svg);
  background-repeat: no-repeat;
  background-size:3rem 3rem;
  background-position: left 1rem center;
}

#works.details h3.approach {
  background-image: url(/works/img/works_detail_article_icon02.svg);
  background-repeat: no-repeat;
  background-size:3rem 3rem;
  background-position: left 1rem center;
}

#works.details h3.result {
  background-image: url(/works/img/works_detail_article_icon03.svg);
  background-repeat: no-repeat;
  background-size:3rem 3rem;
  background-position: left 1rem center;
}

#works.details .article h3 span {
  font-size: 0.8rem;
  font-weight: bold;
  color: #fff;
  display: block;
  line-height: 1.4rem;
}

#works.details .article dl {
  display: block;
}

#works.details .article dt {
  font-size: 1.6rem;
  font-weight: bold;
  padding: 0 0 2rem 0;
  line-height: 2.4rem;
  text-align: justify;
}

#works.details .article dd {
  display: flex;
}

#works.details .article .item.right {
  padding-left: 3rem;
}

#works.details .article .item {
  width: 50%;
  padding-bottom: 2rem;
}

#works.details .article .item .item_caption {
  text-align: center;
  font-weight: bold;
  padding: 1rem 0;
}

#works.details .article .item .item_caption i {
  padding: 0 0 0 0.5rem;
}

#works.details .article p {
  width: 50%;
  text-align: justify;
  padding-bottom: 2rem;
  line-height: 1.8rem;
}

#works.details .article p.full {
  width: 100%;
  text-align: justify;
  padding-bottom: 2rem;
}

#works.details .article .item img {
  width: 100%;
}

#works.details img.border_gray {
  border: 1px solid #999 ;
  box-sizing: border-box;
}

#works.details #result_list {
  display: flex;
  justify-content: flex-start;
}

#works.details #result_list li {
  border: 3px solid #8CC601;
  padding: 0.5rem 1.5rem;
  text-align: center;
  font-weight: bold;
  border-radius: 3rem;
  margin-right: 1rem;
}










/*==========================================================================
　about us
============================================================================*/

#about.top #content .column01 li {
  width: 304px;
  float: left;
  margin-bottom: 30px;
  background: url(/img/icon_btn_more.gif) right 8px no-repeat;
}

#about.top #content .column01 li a {
  display: block;
}

#about.top #content .column01 li p {
  margin-top: 5px;
}

#about.top #content .column01 li.list01,
#about.top #content .column01 li.list03,
#about.top #content .column01 li.list05 {
  margin-right: 24px;
}

#about.top #content .column01 li h4 {
  margin-bottom: 5px;
}

#about h2 {
  margin-bottom: 30px;
}

#about.profile .column01 dl {
  width: 303px;
  float: left;
}

#about.profile .column01 dt {
  width: 100%;
  float: left;
  font-weight: bold;
}

#about.profile .column01 .entry01 dd {
  width: 100%;
  float: left;
  margin-bottom: 20px;
}

#about.profile .column01 .entry02 dd {
  width: 100%;
  float: left;
  margin-bottom: 20px;
}

#about.contact .req {
  width: 632px;
  margin-bottom: 20px;
}

#about.contact .req .subject {
  float: left;
  width: 170px;
  text-align: right;
  margin-right: 20px;
}

#about.contact .req .col-2 {
  float: left;
  width: 400px;
}

#about.contact .req select {
  width: 400px;
}

#about.contact .req textarea {
  width: 400px;
}

#about.contact .req input {
  width: 400px;
}

#about.contact .req.list01 .col-2 .col-1 {
  float: left;
  margin-right: 80px;
  width: 100px;
}

#about.contact.check .req.list01 .col-2 .col-1 {
  width: 100%;
  margin-right: 0px;
}

#about.contact .req.list01 .col-2 .col-2 {
  float: left;
  width: 100px;
}

#about.contact .req.list02 .col-2 .col-1 {
  float: left;
  margin-right: 80px;
  width: 100px;
}

#about.contact.check .req.list02 .col-2 .col-1 {
  width: 100%;
  margin-right: 0px;
}

#about.contact .req.list02 .col-2 .col-2 {
  float: left;
  width: 100px;
}

#about.contact .req.list01 input,
#about.contact .req.list02 input {
  width: 160px;
}

#about.access #nearest_st dt {
  font-size: 1.4rem;
  font-weight: bold;
  margin-bottom: 5px;
}

#about.access #nearest_st dd {
  line-height: 1.8;
}

#about.access #map_outer {
  background: url(../img/bgimg_check.gif);
  width: 100%;
  height: 20rem;
  padding: 5px;
}

#about.access #map_outer #gmap {
  width: 100%;
  height: 20rem;
}

#about.contact #confbt {
  width: 169px;
  margin: 80px auto 30px;
}

#about.contact #bt_check {
  width: 169px;
  margin: 80px auto 30px;
}

#about.contact #bt_check .col-1 {
  width: 169px;
}

#about.contact #bt_check .col-2 {
  width: 140px;
  margin: 30px auto 0;
}

#about.contact.check .req {
  border-bottom: #CCC 1px solid;
  margin: 0;
  padding: 5px 0;
}

#about.contact img.important_icon {
  margin: 0 5px 2px 0;
}

#about.message #content p {
  font-size: 1.0rem;
  line-height: 2rem;
  margin-bottom: 30px;
}

#about.message #content p img.president_img {
  width: 183px;
  float: left;
  margin: 0 50px 30px 0;
}


/*==========================================================================
　recruit
============================================================================*/

#recruit.top h2 {
  margin-bottom: 30px;
}

#recruit.top h3 {
  margin-bottom: 30px;
}

#recruit.top #content p {
  margin-bottom: 30px;
}

#recruit.top #rec_col1 {
  margin-bottom: 50px;
}

#recruit.top #rec_col2 {
  margin-bottom: 30px;
}


/*==========================================================================
　site map
============================================================================*/

#sitemap h3 {
  font-weight: bold;
  margin-bottom: 10px;
}

#sitemap #content ul.column01 {
  float: left;
  width: 7rem;
}

#sitemap #content ul.column02 {
  float: left;
  width: 11rem;
}

#sitemap #content ul.column03 {
  float: left;
  width: 20rem;
}

#sitemap #content ul.column04 {
  float: left;
  width: 12rem;
}

#sitemap #content ul.column05 {
  float: left;
  width: 8rem;
}

#sitemap #content ul.col-1 {
  margin-bottom: 30px;
  font-size: 0.8rem;
}

#sitemap #content li {
  margin-bottom: 10px;
}

/*==========================================================================
　footer お問い合わせ
============================================================================*/

#common_contact_area {
  max-width: 60rem;
  background-color: #f5f5f5;
  margin: 0 0 5rem 0;
  padding: 2rem 5rem;
}

#common_contact_area h2 {
  text-align: center;
  margin: 0 auto 1rem;
  font-size: 1.6rem;
  font-weight: bold;
}

#common_contact_area ul.inner{
  width: 100%;
  margin: 0 auto 0;
  padding: 0px;
  display: flex;
  justify-content: center;
  border-top: 1px solid #999;
  padding: 2rem 0 0 0;
}

#common_contact_area li.list01 {
  padding-right: 5rem;

}

#common_contact_area h3 {
  font-weight: bold;
  font-size: 1.4rem;
  margin: 0 0 1rem 0;
}

#common_contact_area li.list02 ul {
  display: flex;
  flex-direction: column;
}


#common_contact_area a {
  display: block;
  padding: 0px;
  text-decoration: none;
  width: 100%;
  margin: 0 0 0.5rem 0;
}


#common_contact_area li a:hover {
  opacity: 90%;
}



#common_contact_area a span {
  color: #fff;
  font-weight: bold;
  display: block;
  padding: 1rem;
  background-color: #444;
  text-align: center;
  margin: 0 auto 0;
  font-size: 0.9rem;

}


#common_contact_area a span::before {
  right: 0.5rem;
  box-sizing: border-box;
  width: 0.5rem;
  height: 0.5rem;
  border: 0.5rem solid transparent;
  border-left: 0.5rem solid #fff;
}

#common_contact_area .tel_num a {
  font-weight: bold;
  font-size: 2.6rem;
  line-height: 4rem;
}


.arrow{
    position: relative;
    display: inline-block;
    padding: 0 0 0 1rem;
    color: #000;
    vertical-align: middle;
    text-decoration: none;
}
.arrow::before,
.arrow::after{
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}



/* =Navs
-----------------------------------------------------------------------------*/


/* NavBar */

.navbar {
  font-size: 105%;
  margin-bottom: 1.65em;
}

.navbar:after {
  content: "";
  display: table;
  clear: both;
}

.navbar:after {
  content: "";
  display: table;
  clear: both;
}

.navbar.navbar-left {
  float: left;
}

.navbar.navbar-right {
  float: right;
}

.navbar ul {
  list-style: none;
  margin: 0;
}

.navbar ul:after {
  content: "";
  display: table;
  clear: both;
}

.navbar ul:after {
  content: "";
  display: table;
  clear: both;
}

.navbar li {
  float: left;
  margin-right: 1.65em;
}

.navbar.navbar-right li {
  margin-right: 0;
  margin-left: 1.65em;
}

.navbar a,
.navbar span {
  display: block;
  text-decoration: none;
}

.navbar a:hover {
  color: #de2c3b;
  text-decoration: underline;
}

.navbar li.active a,
.navbar span {
  text-decoration: none;
  cursor: text;
  color: rgba(0, 0, 0, 0.4);
}

.navigation-toggle {
  display: none;
  text-transform: uppercase;
  position: relative;
  color: #0f0f0f;
  background-color: #ffffff;
}

.navigation-toggle:after {
  position: absolute;
  z-index: 1;
  top: 50%;
  margin-top: -12px;
  left: 10px;
  content: "\2630";
  font-size: 24px;
  line-height: 1;
}

.navigation-toggle.navigation-toggle-black {
  background-color: #0f0f0f;
  color: #ffffff;
}

.navigation-toggle.navigation-toggle-show {
  margin-bottom: 1.65em;
}

.navigation-toggle span {
  position: relative;
  z-index: 2;
  cursor: pointer;
  display: block;
  padding: 10px 20px 10px 40px;
}

.navigation-fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 101;
}


/* Pills */

.navbar-pills a,
.navbar-pills span {
  padding: 0.825em 1.65em;
}

.navbar-pills a:hover {
  color: #0f0f0f;
  background: #eee;
}

.navbar-pills li.active a,
.navbar-pills span {
  text-decoration: none;
  cursor: text;
  color: rgba(0, 0, 0, 0.4);
  background: #eee;
}

.navbar-pills li {
  margin-right: 1px;
}

.navbar-pills.navbar-right li {
  margin-left: 1px;
}


/* Fullwidth */

.fullwidth ul {
  width: 100%;
}

.fullwidth li {
  float: none !important;
  margin: 0;
  display: table-cell;
  width: 1%;
  text-align: center;
}

.fullwidth li a,
.fullwidth li span {
  display: block;
}


/* Vertical */

.nav {
  margin-bottom: 1.65em;
}

.nav ul {
  list-style: none;
  margin: 0;
}

.nav ul li ul {
  margin-left: 2em;
  font-size: .95em;
}

.nav a,
.nav span {
  display: block;
  padding: .5em 0;
}

.nav a {
  color: #0f0f0f;
  text-decoration: none;
}

.nav a:hover {
  color: #de2c3b;
  text-decoration: underline;
}

.nav li.active a,
.nav span {
  text-decoration: none;
  cursor: text;
  color: rgba(0, 0, 0, 0.4);
}

.nav i.fa {
  width: 1.65em;
}


/* Stacked */

.nav-stacked li {
  margin-bottom: 1px;
}

.nav-stacked a,
.nav-stacked span {
  padding: .6em .7em;
}

.nav-stacked a {
  background: #f6f6f6;
}

.nav-stacked a:hover {
  color: #000;
  background: #eee;
}

.nav-stacked li.active a,
.nav-stacked span {
  background: #ffffff;
  text-decoration: none;
  cursor: text;
  color: rgba(0, 0, 0, 0.3);
}


/* Stats */

.nav-stats li {
  position: relative;
}

.nav-stats a,
.nav-stats span {
  padding-right: 50px;
}

.nav-stats sup,
.nav-stats .badge {
  position: absolute;
  top: 50%;
  right: 0;
}

.nav-stats sup {
  color: rgba(0, 0, 0, 0.4);
}

.nav-stats .badge {
  margin-top: -8px;
}



/*====================================================================*/
/*====================================================================*/
/*====================================================================*/
/*====================================================================*/
/*====================================================================*/
/*====================================================================*/






#top-head-inner {
  width: 980px;
  margin: 0 auto;
  position: relative;
}

#top-head-inner:after {
  content:"";
  clear: both;
  display: block;
}

/*--------header-----------*/

#top-head {
  top: 0px;
  position: absolute;
  width: 100%;
  margin: 0 auto 0;
  padding: 0 0 0;
  line-height: 1;
  z-index: 999;
}

#top-head a,
#top-head {
    color: #000;
    text-decoration: none;
}

#top-head #top-head-inner {
    position: relative;
}
#top-head .logo {
  position: relative;

}

#top-head .logo a {
  position: absolute;
  width: 10rem;
  padding: 1.8rem 0 0 0;
}

#top-head .logo a img {
  width: 100%;
}

#top-head .tagline {
  position: absolute;
  top: 2.5rem;
  left: 11rem;
}

#top-head .tagline p {
  font-size: 0.9rem;
}


#global-nav ul {
    list-style: none;
    position: absolute;
    top: 2.5rem;
    right: 0;
    display: flex;
}
#global-nav ul li {
    padding:0 1rem;
}

#global-nav ul li.contact_btn a {
    padding: 0.5rem 1rem;
    background-color: #000;
    color: #fff;
    font-size: 0.9rem;
    font-weight: bold;
    margin-top: -0.5rem;
}

#global-nav ul li a {
    padding: 0 0;
    position: relative;
    display: inline-block;
}


nav span{
    background:#666;
    height:2px;
    display:block;
    position:relative;
    width:50px;
    left:0;
}


/*-----------スマホのトグルボタンのCSS-------------*/

#nav-toggle {
    display: none;
    position: absolute;
    right: 12px;
    top: 14px;
    width: 34px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
}
#nav-toggle div {
    position: relative;
}
#nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #000;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .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;
}




/** VARIABLES
===================================*/
/** RESET AND LAYOUT
===================================*/
.bx-wrapper {
  position: relative;
  margin-bottom: 60px;
  padding: 0;
  *zoom: 1;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}
.bx-wrapper img {
  max-width: 100%;
  display: block;
}
.bxslider {
  margin: 0;
  padding: 0;
}
ul.bxslider {
  list-style: none;
}
.bx-viewport {
  /*fix other elements on the page moving (on Chrome)*/
  -webkit-transform: translatez(0);
}
/** THEME
===================================*/
.bx-wrapper {
  background: #fff;
}
