@charset "UTF-8";
/* CSS Document */

/* =box-sizing
-----------------------------------------------------------------------------*/
*, *:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

/* =base 基本設定
-----------------------------------------------------------------------------*/
html { background-color: rgba(250,250,250,1.0); font-size: 62.5%; font-family: 'Noto Sans JP', sans-serif; } /*初期値16pxの62.5%でルートが10px*/
body { background-color: rgba(250,250,250,1.0); }
body { -webkit-text-size-adjust: 100%; } /*端末横回転時の文字拡大防止*/

#wrapper, #header, #main, #footer { width: 100%; }
#wrapper { background-color: rgba(250,250,250,1.0); }
#header { background-color: rgba(0,0,100,1.0); box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.25); z-index: 5; }
#header { position: fixed; top: 0; transform: translate3d(0, 0, 0); } /*ヘッダー固定サファリ対策*/
#footer { background-color: rgba(240,240,240,1.0); border-top: 1px solid rgba(190,190,190,1.0); color: rgba(100,100,100,1.0); margin-top: 15.0em; }

/* =コンテンツ横幅設定
-----------------------------------------------------------------------------*/
#header-box, #summary-box h1, #images-box, #footer-box, #footer-navbox, #copyright, .main-titlebox, .contents-box, .bottom-button-box { width: 95%; max-width: 1200px; }

img { max-width: 100%; height: auto; width /***/:auto; vertical-align: bottom; display: block; margin: 0 auto; } /*画像レスポンシブ対応*/
img[src$=".svg"] { max-width: 100%; height: auto; } /*IE SVGバグ対応*/
.clear { clear: both }
.clearfix::after { content: ""; display: block; clear: both; }

/* =文字 基本設定
-----------------------------------------------------------------------------*/
h1, h2, h3, h4, h5, h6, p, li, th, td, address { line-height: 1.4em; letter-spacing: 0.10em; margin: 0; padding: 0; }
strong { font-style: normal; font-weight: 500; }
#header a, #footer a { text-decoration: none; }
p { word-wrap: break-word; } /*テキストを折り返し指定*/

/* reCAPTCHA v3　表示位置 */
.grecaptcha-badge{ z-index: 200; osition: fixed; ottom: 70px!important; }

/* =jquery-mmenu設定
-----------------------------------------------------------------------------*/
:root { --mm-color-text-dimmed: rgba(200,200,200,1.0); } /*ヘッダー＆フッター文字色*/
:root { --mm-color-border: rgba(0,0,0,0.2); } /*ボーダー色*/
:root { --mm-color-text: rgba(200,200,200,1.0); } /*メニュー文字色*/
:root { --mm-color-button: rgba(200,200,200,1.0); } /*矢印文字色*/
:root { --mm-color-background: rgba(76,76,76,1.0); } /*背景色*/
:root { --mm-shadow: 0 0 15px rgba(0,0,0,0.5); } /*パネル影*/
.mm-menu li { font-size: 1.4rem; font-weight: 400; }
.mm-navbar, .mm-listitem { font-size: 1.4rem; font-weight: 400; }
.mm-menu a:hover { color: rgba(250,250,250,1.0); }
.mm-listview a:hover { background-color: rgba(65,65,65,1.0); } /*背景マウスオーバー*/

/* =グーグルマップ設定
-----------------------------------------------------------------------------*/
.google-map { width: 95%; max-width: 1200px; position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; margin: 0 auto 4.0em; }
.google-map iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }



/* =VR実験（一瀬編集）
-----------------------------------------------------------------------------*/
.iframe-wrap {
 position: relative; width: 100%; padding-top: 56.25%; overflow:hidden; -webkit-overflow-scrolling:touch; border:2px solid #ccc; 
}


.iframe-wrap iframe{ position:absolute; top:0; left:0; width:100%; height:100%; border:none; display:block;}


.OVR{ max-width: 100%;
      text-align: center;}

.OVR-wrap{ text-align: center;}




/* =ヘッダーボックス部分
-----------------------------------------------------------------------------*/
#summary-box { width: 100%; background-color: rgba(50,85,175,1.0); margin: 0 auto; }
#summary-box h1 { font-size: 1.2rem; font-weight: 400; color: rgba(255,255,255,1.0); margin: 0 auto; padding: 0.5em 0; }
#header-box { display: flex; justify-content: space-between; flex-wrap: wrap; margin: 0 auto; padding: 1.0em 0; }

/* =ヘッダーロゴ設定
-----------------------------------------------------------------------------*/
#logobox { width: 185px; height: 30px; }

/* =メインナビゲーション設定
-----------------------------------------------------------------------------*/
#navbox { width: 750px; height: 30px; }
#main-nav { height: 30px; position: relative; }
#main-nav ul { position: relative; list-style: none; display: flex; z-index: 2; }
#main-nav ul { position: absolute; top: 50%; z-index: 1; width: 100%; transform: translate(0, -50%); } /*垂直方向中段寄せ*/
#main-nav li { position: relative; font-size: 1.4rem; font-weight: 400; line-height: 30px; text-align: center; flex-grow: 1; }
#main-nav li a { display: block; color: rgba(255,255,255,1.0); }

/* =マウス追随バー設定
-----------------------------------------------------------------------------*/
.menu_bar { position: absolute !important; top: 10%; height: 80%; transition: all 0.35s linear; }
.menu_bar span { position: relative; display: block; height: 100%; z-index: 0; background: rgba(50,85,175,1.0); border-radius: 3px; }

/* =トップページメイン画像設定
-----------------------------------------------------------------------------*/
#mainimages-box { width: 100%; background-color: rgba(240,240,240,1.0); border-top: 1px solid rgba(190,190,190,1.0); border-bottom: 1px solid rgba(190,190,190,1.0); margin-top: 40px; }
#mainimages-box { position: relative; font-size: 1.3rem; font-weight: 300; line-height: 20px; }
#images-box { border-left: 1px solid rgba(190,190,190,1.0); border-right: 1px solid rgba(190,190,190,1.0); margin: 0 auto; }
#mainitext-box { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); z-index: 3; }
#mainitext-box h2 { font-size: 3.6rem; font-weight: 400; color: rgba(255,255,255,1.0); }
.shadow { -webkit-filter: drop-shadow(0px 2px 4px rgba(0,0,0,0.8)); filter: drop-shadow(0px 2px 4px rgba(0,0,0,1.0)); } /* Use -webkit- only if supporting: Chrome < 54, iOS < 9.3, Android < 4.4.4 */

/* =その他ページメイン画像設定
-----------------------------------------------------------------------------*/
#otherimages-box { width: 100%; background-color: rgba(240,240,240,1.0); border-top: 1px solid rgba(190,190,190,1.0); border-bottom: 1px solid rgba(190,190,190,1.0); margin-top: 40px; }
#otherimages-box { position: relative; font-size: 1.3rem; font-weight: 300; line-height: 20px; }

/* =パンくずリスト設定
-----------------------------------------------------------------------------*/
.main-panbox { width: 100%; background-color: rgba(255,255,255,1.0); border-top: solid 1px rgba(150,150,150,1.0); }
.main-panbox nav { width: 90%; height: 100%; max-width: 1200px; display: flex; margin: 0 auto; padding: 0.8em 0; }
.main-panbox ul { display: flex; }
.main-panbox li { font-size: 1.4rem; font-weight: 400; color: rgba(100,100,100,1.0); }
.main-panbox a { color: rgba(100,100,100,1.0); text-decoration: none; }
.main-panbox a:hover { color: rgba(60,120,230,1.0); }
.breadcrumbs li::after{ content: '\00bb'; display: inline-block; padding: 0 10px; }
.breadcrumbs li:last-child::after{ display: none; }

/* =フッターボックス設定
-----------------------------------------------------------------------------*/
#footer-box { display: flex; justify-content: space-between; margin: 0 auto; padding-top: 2.5em; }
#footer-box div:nth-child(1) { width: 30%; border-right: 1px solid rgba(190,190,190,1.0); padding-right: 2.5em; }
#footer-box div:nth-child(2) { width: 70%; padding-left: 2.5em; }
#footer-box h3 { font-size: 1.6rem; font-weight: 400; margin-bottom: 2.0em; }
#footer-box address { font-style: normal; text-align: right; }
#footer-box ul li { list-style: none; font-size: 1.5rem; font-weight: 400; }

/* =フッターナビゲーション設定
-----------------------------------------------------------------------------*/
#footer-navbox { border-top: 3px double rgba(190,190,190,1.0); margin: 2.5em auto 0; }
#footer-navbox ul { display: flex; justify-content: center; padding: 1.2em 0; }
#footer-navbox li { font-size: 1.4rem; font-weight: 400; border-right: 1px solid rgba(190,190,190,1.0); padding: 0 1.0em; }
#footer-navbox li:nth-child(1) { border-left: 1px solid rgba(190,190,190,1.0); }
#footer-navbox li a { color: rgba(100,100,100,1.0); text-decoration: none; display: block; }
#footer-navbox li a:hover { color: rgba(60,120,230,1.0); }

/* =コピーライト設定
-----------------------------------------------------------------------------*/
#copyright { text-align: center; border-top: 1px solid rgba(190,190,190,1.0); margin: 0 auto; padding: 1.3em 0; }
#copyright small { font-size: 1.4rem; font-weight: 400; }

/* =コンテンツ基本設定
-----------------------------------------------------------------------------*/
#main > article { width: 100%; margin-top: 6.0em; }
#main > article + article { padding-top: 7.0em; }
.contents-box { margin: 4.0em auto 0; padding-bottom: 4.0em; }

/* =コンテンツ文字設定（大見出し部分）
-----------------------------------------------------------------------------*/
.main-titlebox { position: relative; border-bottom: solid 3px rgba(180,180,180,1.0); margin: 0 auto; padding-bottom: 1.0em; }
.main-titlebox::after { width: 50%; height: 100%;position: absolute; content: ''; display: block; left: 25%; bottom: -3px; border-bottom: solid 3px rgba(50,120,200,1.0); }
.main-titlebox > h2 { font-size: 3.0rem; font-weight: 400; text-align: center; color: rgba(50,50,50,1.0); }
.main-titlebox > h3 { font-size: 1.4rem; font-weight: 500; text-align: center; color: rgba(80,80,80,1.0); }

/* =コンテンツ内テーブル設定
-----------------------------------------------------------------------------*/
.nomal-tablebox { width: 100%; list-style: none; border-top: 1px solid rgba(150,150,150,1.0); }
.nomal-tablebox li { color: rgba(80,80,80,1.0); border-bottom: 1px solid rgba(150,150,150,1.0); padding: 0.7em 0 }
.nomal-tablebox li span { display: inline-block; }
.info-first { width: 30%; vertical-align: top; }
.info-second { width: 70%; border-left: 1px solid rgba(150,150,150,1.0); padding-left: 1.0em; }
.label { background-color: rgba(55,80,80,1.0); color: rgba(255,255,255,1.0); font-size: 1.2rem; border-radius: 4px; margin-left: 1.0em; padding: 0 0.8em; }

/* =コンテンツ下部ボタン設定
-----------------------------------------------------------------------------*/
.bottom-button-box { width: 50%; margin: 1.0em auto 7.0em; }
.bottom-button-box a { color: rgba(80,80,80,1.0); display: block; text-align: center; background-color: rgba(245,245,245,1.0); border: 1px solid rgba(150,150,150,1.0); border-radius: 4px; padding: 1.0em; }
.bottom-button-box a:hover { color: rgba(255,255,255,1.0); background-color: rgba(55,80,80,1.0); }

/* =コンテンツ文字設定
-----------------------------------------------------------------------------*/
.contents-articlebox { max-width: 1000px; margin: 0 auto; }
.contents-articlebox p { font-size: 1.6rem; font-weight: 400; color: rgba(80,80,80,1.0); }
.contents-articlebox p a { text-decoration: none; }
.contents-box p + p { margin-top: 1.0em; }
.contents-box h2 + p, h3 + p, h3 + ul { margin-top: 1.3em; }
.contents-box p + h2, p + h3, p + ul, p + table { margin-top: 2.5em; }
.contents-box ul + p, ul + h2, ul + h3 { margin-top: 2.5em; }
.title-center { text-align: center; }
.title-left { text-align: left; }
.title-left-line { text-align: left; border-left: 6px solid rgba(50,120,200,1.0); padding-left: 0.5em; }

.sub-title01 { font-size: 2.6rem; font-weight: 400; color: rgba(80,80,80,1.0); }
.sub-title02 { font-size: 2.2rem; font-weight: 400; color: rgba(80,80,80,1.0); }
.underline-solid { border-bottom: solid 2px rgba(80,80,80,1.0); padding-bottom: 0.3em; }
.underline-dotted { border-bottom: dotted 2px rgba(80,80,80,1.0); padding-bottom: 0.3em; }

.list-center { text-align: center; }
.link-setting li { font-size: 1.6rem; font-weight: 400; }
.link-setting a { color: rgba(60,120,230,1.0); text-decoration: none; }
.link-setting a:hover { color: rgba(100,80,180,1.0); }
.contents-box a { color: rgba(60,120,230,1.0); text-decoration: none; }
.contents-box a:hover { color: rgba(100,80,180,1.0); }

/* =コンテンツ内リスト設定
-----------------------------------------------------------------------------*/
.contents-listbox { padding-top: 0.5em; }
.contents-listbox ul { margin-bottom: 1.3em; }
.contents-listbox li { font-size: 1.6rem; font-weight: 400; color: rgba(80,80,80,1.0); margin-top: 0.2em; margin-left: 2.0em; }
.list-decimal li { list-style-type: decimal; }
.list-alphl li { list-style-type: lower-alpha; }

/* =会社概要内リスト設定
-----------------------------------------------------------------------------*/
.company-listbox { width: 100%; display: flex; flex-wrap: wrap; margin-top: 1.7em; }
.company-listbox li { width: 33%; list-style: none; box-sizing: border-box; padding-right: 1.0em; }
.company-listbox li { font-size: 1.6rem; font-weight: 400; color: rgba(80,80,80,1.0); margin-bottom: 0.25em; }
.company-listbox li:before { content: ""; width: 4px; height: 4px; display: inline-block; background-color: rgba(80,80,80,1.0); border-radius: 50%; position: relative; top: -3px; margin-right: 5px; }

/* =ワークスアイコンボタン設定
-----------------------------------------------------------------------------*/
.icon-navbox { list-style: none; display: flex; flex-wrap: wrap; }
.icon-navbox li { margin-right: 2%; } /*横並び対策*/
.icon-navbox li:nth-child(4n) { margin-right: 0; } /*横並び対策*/
.icon-navbox li { font-size: 1.4rem; font-weight: 500; color: rgba(80,80,80,1.0); text-align: center; border: 1px solid rgba(150,150,150,1.0); }
.icon-navbox li a { display: block; color: rgba(0,0,0,1.0); text-decoration: none; padding: 0.7em 1.0em 0.5em; background-color: rgba(255,255,255,1.0); -webkit-transition: all 0.3s; transition: all 0.3s; }
.icon-navbox li a:hover { color: rgba(0,0,0,1.0); background: rgba(240,240,240,1.0); -webkit-transition: all 0.3s; transition: all 0.3s; }
.icon-navbox img { width: 60px; height: auto; margin-bottom: 0.5em; }
.button-float { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-transition: all 0.3s; transition: all 0.3s; margin: 2% 0 0 0; }
.button-float:hover { -webkit-transform: translateY(-7px); -ms-transform: translateY(-7px); transform: translateY(-7px); box-shadow: 0px 3px 7px 0px rgba(0,0,0,0.3); }
.icon-navbox25 { width: 23.5%; }

/* =ワークスボタン設定
-----------------------------------------------------------------------------*/
.works-navbox { list-style: none; display: flex; flex-wrap: wrap; }
.works-navbox li { margin-right: 2%; } /*横並び対策*/
.works-navbox li:nth-child(4n) { margin-right: 0; } /*横並び対策*/
.works-navbox li { font-size: 1.4rem; font-weight: 500; color: rgba(80,80,80,1.0); text-align: center; border: 1px solid rgba(150,150,150,1.0); }
.works-navbox li a { display: block; color: rgba(0,0,0,1.0); text-decoration: none; padding: 0.7em; background-color: rgba(255,255,255,1.0); -webkit-transition: all 0.3s; transition: all 0.3s; }
.works-navbox li a:hover { color: rgba(0,0,0,1.0); background: rgba(240,240,240,1.0); -webkit-transition: all 0.3s; transition: all 0.3s; }
.works-navbox img { margin-bottom: 0.5em; }
.button-float { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-transition: all 0.3s; transition: all 0.3s; margin: 2% 0 0 0; }
.button-float:hover { -webkit-transform: translateY(-7px); -ms-transform: translateY(-7px); transform: translateY(-7px); box-shadow: 0px 3px 7px 0px rgba(0,0,0,0.3); }
.works-navbox25 { width: 23.5%; }
.works-navbox p { width: 100%; color: rgba(80,80,80,1.0); font-size: 1.5rem; display: block; text-align: center; background-color: rgba(245,245,245,1.0); border: 1px solid rgba(150,150,150,1.0); border-radius: 4px; padding: 0.5em; }
.works-navbox p a:hover { background-color: rgba(255,255,255,1.0); }

/* =事業部概要ボタン類設定
-----------------------------------------------------------------------------*/
.office-buttonbox { width: 100%; display: flex; justify-content: space-between; flex-wrap: wrap; margin: 4.0em auto 0; }
.office-buttonbox section { display: flex; flex-flow: column; justify-content: space-between; background-color: rgba(240,240,240,1.0); border: 1px solid rgba(150,150,150,1.0); border-radius: 8px; margin-bottom: 2.0em; padding: 1.5em; }
.office-buttonbox div { min-height: 0%; } /* IE余計なスペースへのバグ対策 */
.office-buttonbox div:nth-child(n+2) { margin-top: 4.0em; }
.office-buttonbox h3 { font-size: 2.0rem; font-weight: 400; text-align: center; color: rgba(55,80,80,1.0); border-bottom: solid 2px rgba(55,80,80,1.0); margin-bottom: 0.5em; padding-bottom: 0.2em; }
.office-buttonbox img { border: 1px solid rgba(150,150,150,1.0); border-radius: 5px; margin-bottom: 1.0em; }
.office-buttonbox p a { width: 100%; color: rgba(80,80,80,1.0); display: block; text-align: center; background-color: rgba(245,245,245,1.0); border: 1px solid rgba(150,150,150,1.0); border-radius: 4px; margin: 1.5em auto 0; padding: 0.7em; }
.office-buttonbox p a:hover { color: rgba(255,255,255,1.0); background-color: rgba(55,80,80,1.0); }
.office-buttonbox ul { width: 100%; list-style: none; }
.office-buttonbox li { font-size: 1.6rem; font-weight: 400; color: rgba(80,80,80,1.0); }
.office-buttonbox30 { width: 32%; }
.office-buttonbox50 { width: 48%; }
.office-buttonbox100 { width: 100%; }

/* =フォームテーブルレイアウト設定
-----------------------------------------------------------------------------*/
.table-layout { width: 100%; font-size: 1.6rem; font-weight: 500; color: rgba(80,80,80,1.0); list-style: none; border-top: 1px solid rgba(150,150,150,1.0); }
.table-layout tr { border-bottom: 1px solid rgba(150,150,150,1.0); }
.table-layout th { width: 30%; vertical-align: top; font-weight: normal; text-align: left; border-right: 1px solid rgba(150,150,150,1.0); padding: 0.7em 0.7em 0.7em 0em; }
.table-layout td { width: 70%; font-weight: normal; text-align: left; padding: 0.7em 0em 0.7em 0.7em; }
.table-layout th:nth-last-child(1) { width: 100%; text-align: center; border-right: none; padding: 0.7em 0.7em 0.7em 0.7em; }

/* =メールフォーム設定
-----------------------------------------------------------------------------*/
:focus { outline: none; }
button, input, select, textarea { font-family: inherit; font-size: 100%; color: rgba(80,80,80,1.0); font-weight: 400; line-height: 1.4em; letter-spacing: 0.10em; }
input { border: solid 1px rgba(180,180,180,1.0); resize: none; }
input.text_area, textarea { width: 100%; }
input.text_areasmall { width: 50%; }
.form-button:hover { color: rgba(255,255,255,1.0); background-color: rgba(105,130,130,1.0); }
.form-button:active { color: rgba(255,255,255,1.0); background-color: rgba(55,80,80,1.0); }
::placeholder { color: rgba(80,80,80,0.6); }

/* =pc
----------------------------*/
@media screen and (min-width: 1025px){

/* =スマホ用メニュー設定（PCでは不過視）
-----------------------------------------------------------------------------*/
#menu { display: none; }

}



/* =tablet
----------------------------*/
@media only screen and (max-width: 1024px) {

/* =メインナビゲーション設定
-----------------------------------------------------------------------------*/
#main-nav { display: none; }
#navbox { width: 30px; height: 30px; }

/* =スマホ用メニュー切替トリガー設定
-----------------------------------------------------------------------------*/
.menu_trigger a { width: 30px; height: 30px; background: url(../images/menu_button.svg) no-repeat; background-size: 30px 30px; display: block; }

/* =会社概要内リスト設定
-----------------------------------------------------------------------------*/
.company-listbox li { width: 33%; }

}



/* =tablet
----------------------------*/
@media only screen and (max-width: 767px) {

/* =コンテンツ横幅設定
-----------------------------------------------------------------------------*/
#images-box { width: 100%; }

/* =トップページメイン画像設定
-----------------------------------------------------------------------------*/
#mainitext-box h2 { font-size: 3.0rem; }

/* =パンくずリスト設定
-----------------------------------------------------------------------------*/
.main-panbox li { font-size: 1.2rem; }

/* =フッターボックス設定
-----------------------------------------------------------------------------*/
#footer-box { flex-direction: column; flex-wrap: wrap; }
#footer-box div:nth-child(1) { width: 100%; border-right: none; padding-right: 0; }
#footer-box div:nth-child(2) { width: 100%; padding-left: 0; }
#footer-box h3 { font-size: 1.5rem; margin-top: 2.0em; }
#footer-box address { text-align: center; }
#footer-box ul li { font-size: 1.5rem; }

/* =フッターナビゲーション設定
-----------------------------------------------------------------------------*/
#footer-navbox { width: 100%; border-top: none; }
#footer-navbox ul { display: flex; justify-content: center; flex-wrap: wrap; border-top: 1px solid rgba(190,190,190,1.0); padding: 0; }
#footer-navbox li:nth-child(1) { width: 50%; border-left: none; }
#footer-navbox li { width: 50%; background-color: rgba(255,255,255,1.0); text-align: center; border-bottom: 1px solid rgba(190,190,190,1.0); padding: 0.5em; }

/* =コピーライト設定
-----------------------------------------------------------------------------*/
#copyright { border-top: none; }
#copyright small { font-size: 1.2rem; font-weight: 400; }

/* =コンテンツ文字設定（大見出し部分）
-----------------------------------------------------------------------------*/
.main-titlebox > h2 { font-size: 2.6rem; }
.main-titlebox > h3 { font-size: 1.4rem; }

/* =コンテンツ文字設定
-----------------------------------------------------------------------------*/
.sub-title01 { font-size: 2.2rem; }
.sub-title02 { font-size: 2.0rem; }
.link-setting li { font-size: 1.4rem; }

/* =コンテンツ内テーブル設定
-----------------------------------------------------------------------------*/
.info-first { width: 100%; }
.info-second { width: 100%; border-left: none; border-top: 1px dotted rgba(150,150,150,1.0); margin-top: 0.5em; padding-top: 0.5em; padding-left: 0em; }

/* =コンテンツ下部ボタン設定
-----------------------------------------------------------------------------*/
.bottom-button-box a { font-size: 1.4rem; }

/* =会社概要内リスト設定
-----------------------------------------------------------------------------*/
.company-listbox li { width: 50%; }
.company-listbox li { font-size: 1.4rem; }

/* =ワークスボタン設定
-----------------------------------------------------------------------------*/
.works-navbox li { margin-right: 2%; } /*横並び対策*/
.works-navbox li:nth-child(4n) { margin-right: 2%; } /*横並び対策*/
.works-navbox li:nth-child(3n) { margin-right: 0; } /*横並び対策*/
.works-navbox25 { width: 32%; }
.works-navbox p { font-size: 1.4rem; }

/* =フォームテーブルレイアウト設定
-----------------------------------------------------------------------------*/
.table-layout th { font-size: 1.4rem; width: 100%; display: block; border-right: none; padding: 0.7em 0em 0.7em 0em; }
.table-layout td { font-size: 1.4rem; width: 100%; display: block; border-top: 1px dotted rgba(150,150,150,1.0); padding: 0.7em 0em 0.7em 0em; }

}



/* =smart
----------------------------*/
@media screen and (max-width: 599px){

/* =コンテンツ横幅設定
-----------------------------------------------------------------------------*/
.main-titlebox, .contents-box { width: 90%; }

/* =トップページメイン画像設定
-----------------------------------------------------------------------------*/
#mainitext-box h2 { font-size: 2.2rem; }

/* =その他ページメイン画像設定
-----------------------------------------------------------------------------*/
#otherimages-box { margin-top: 20px; }

/* =ヘッダーボックス部分
-----------------------------------------------------------------------------*/
#summary-box { display: none; }

/* =トップページメイン画像設定
-----------------------------------------------------------------------------*/
#images-box { width: 100%; border-left: none; border-right: none; }
#mainitext-box img { width: 80%; height: 80%; }

/* =フッターボックス設定
-----------------------------------------------------------------------------*/
#footer-box h3 { display: none; }
#footer-box address { text-align: center; margin-top: 2.0em; }
#footer-box ul li { font-size: 1.4rem; }

/* =フッターナビゲーション設定
-----------------------------------------------------------------------------*/
#footer-navbox li { font-size: 1.3rem; }

/* =コンテンツ文字設定（大見出し部分）
-----------------------------------------------------------------------------*/
.main-titlebox > h2 { font-size: 2.2rem; }
.main-titlebox > h3 { font-size: 1.2rem; }

/* =コンテンツ文字設定
-----------------------------------------------------------------------------*/
.sub-title01 { font-size: 2.0rem; }
.sub-title02 { font-size: 1.8rem; }

/* =コンテンツ下部ボタン設定
-----------------------------------------------------------------------------*/
.bottom-button-box { width: 70%; }

/* =ワークスアイコンボタン設定
-----------------------------------------------------------------------------*/
.icon-navbox li:nth-child(2n) { margin-right: 0; } /*横並び対策*/
.icon-navbo img { width: 50px; height: auto; }
.icon-navbox25 { width: 49%; }

/* =ワークスボタン設定
-----------------------------------------------------------------------------*/
.works-navbox li { margin-right: 2%; } /*横並び対策*/
.works-navbox li:nth-child(4n) { margin-right: 2%; } /*横並び対策*/
.works-navbox li:nth-child(3n) { margin-right: 2%; } /*横並び対策*/
.works-navbox li:nth-child(2n) { margin-right: 0; } /*横並び対策*/
.works-navbox25 { width: 48%; }

}



/* =smart
----------------------------*/
@media screen and (max-width: 399px){

/* =トップページメイン画像設定
-----------------------------------------------------------------------------*/
#mainitext-box h2 { font-size: 1.8rem; }

/* =フッターボックス設定
-----------------------------------------------------------------------------*/
#footer-box ul li { font-size: 1.3rem; }

/* =フッターナビゲーション設定
-----------------------------------------------------------------------------*/
#footer-navbox li { font-size: 1.2rem; }

/* =コピーライト設定
-----------------------------------------------------------------------------*/
#copyright small { font-size: 1.0rem; }

/* =コンテンツ文字設定（大見出し部分）
-----------------------------------------------------------------------------*/
.main-titlebox > h2 { font-size: 2.0rem; }

/* =コンテンツ文字設定
-----------------------------------------------------------------------------*/
.sub-title01 { font-size: 1.8rem; }
.sub-title02 { font-size: 1.6rem; }

/* =会社概要内リスト設定
-----------------------------------------------------------------------------*/
.company-listbox li { width: 100%; }

/* =ワークスアイコンボタン設定
-----------------------------------------------------------------------------*/
.icon-navbox li { font-size: 1.2rem; }

/* =ワークスボタン設定
-----------------------------------------------------------------------------*/
.works-navbox li { font-size: 1.2rem; margin-right: 0; } /*横並び対策*/
.works-navbox li:nth-child(4n) { margin-right: 0; } /*横並び対策*/
.works-navbox li:nth-child(3n) { margin-right: 0; } /*横並び対策*/
.works-navbox li:nth-child(2n) { margin-right: 0; } /*横並び対策*/
.works-navbox25 { width: 100%; }
.works-navbox p { font-size: 1.2rem; }

}