@charset "UTF-8";
/* CSS Document for SIM - sim.design */


/* =========================================================
Share Tech Mono - Google Fonts
https://fonts.google.com/specimen/Share+Tech+Mono?selection.family=Share+Tech+Mono
*/
@import url('https://fonts.googleapis.com/css?family=Share+Tech+Mono');
/* font-family: 'Share Tech Mono', monospace; */


/* =========================================================
Garamond Three
https://www.onlinewebfonts.com/
*/
@font-face {
	font-family: "Garamond Three";
	font-style: normal;
	font-weight: 400;
	src: url("Garamondthree.eot"); /* IE9 Compat Modes */
	src: url("Garamondthree.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
	url("Garamondthree.woff2") format("woff2"),
	url("Garamondthree.woff") format("woff"),
	url("Garamondthree.ttf") format("truetype"),
	url("Garamondthree.svg#Garamond Three") format("svg"); /* old safari & old android */
}
@font-face {
	font-family: "Garamond Three";
	font-style: italic;
	font-weight: 400;
	src: url("Garamondthree-italic.eot"); /* IE9 Compat Modes */
	src: url("Garamondthree-italic.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
	url("Garamondthree-italic.woff2") format("woff2"),
	url("Garamondthree-italic.woff") format("woff"),
	url("Garamondthree-italic.ttf") format("truetype"),
	url("Garamondthree-italic.svg#Garamond Three Italic") format("svg"); /* old safari & old android */
}
@font-face {
	font-family: "Garamond Three";
	font-style: normal;
	font-weight: 700;
	src: url("Garamondthree-bold.eot"); /* IE9 Compat Modes */
	src: url("Garamondthree-bold.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
	url("Garamondthree-bold.woff2") format("woff2"),
	url("Garamondthree-bold.woff") format("woff"),
	url("Garamondthree-bold.ttf") format("truetype"),
	url("Garamondthree-bold.svg#Garamond Three Bold") format("svg"); /* old safari & old android */
}
@font-face {
	font-family: "Garamond Three";
	font-style: italic;
	font-weight: 700;
	src: url("Garamondthree-bolditalic.eot"); /* IE9 Compat Modes */
	src: url("Garamondthree-bolditalic.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
	url("Garamondthree-bolditalic.woff2") format("woff2"),
	url("Garamondthree-bolditalic.woff") format("woff"),
	url("Garamondthree-bolditalic.ttf") format("truetype"),
	url("Garamondthree-bolditalic.svg#Garamond Three Bold Italic") format("svg"); /* old safari & old android */
}

@font-face {
	font-family: "simBodebeck-Light";
	src: url("simBodebeck-Light.woff2") format("woff2");
}
@font-face {
	font-family: "simBodebec-Bold";
	src: url("simBodebec-Bold.woff2") format("woff2");
}
@font-face {
	font-family: "simBodebeck-ExtraBold";
	src: url("simBodebeck-ExtraBold.woff2") format("woff2");
}

/* =========================================================
   Reset styles
*/

html,body,div,span,object,iframe,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,h1,h2,h3,h4,h5,h6 {
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-size: inherit;
line-height: inherit;
font-weight: inherit;
font-style: inherit;
vertical-align: baseline;
background: transparent;
}

body {
line-height:1;
}

ul, li {
list-style:none;
}
li {
list-style-type: none;
}

blockquote, q {
quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
content:'';
content:none;
}

table {
border-collapse:collapse;
border-spacing:0;
}

hr {
display:block;
height:1px;
border:0;   
border-top:1px solid #cccccc;
margin:1em 0;
padding:0;
}

input, select {
vertical-align:middle;
}




/* =========================================================
   Responsive settings
*/

*,
*:before,
*:after {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}

img {
	max-width: 100%;
	height: auto;
}
	@media \0screen {	/* for ie 8 */
		img { width: auto;}
	}




/* =========================================================
   Base set
*/

html {
width: 100%;
height: 100%;
/*overflow: hidden;*/
}

body {
position: relative;
width: 100%;
height: 100%;
font-family: "游明朝", YuMincho, "HG明朝E", "ＭＳ 明朝", serif;
font-size: 13px;
line-height: 1.0;
text-align:center;
/*letter-spacing: 0.11em;*/
color: #aeaeaf;
color: #7e7e7f;
background-color:#fff;

-webkit-text-size-adjust: 100%;
-webkit-overflow-scrolling: touch;
-ms-text-size-adjust: 100%;

-webkit-font-smoothing:subpixel-antialiased
}

.mac body,
.ios body {
font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "游明朝", YuMincho, serif;
}

b,strong,em { font-weight:bold; font-style:normal; }

img {
vertical-align: bottom;
border: 0;
-ms-interpolation-mode: bicubic;
}


.normaltxt { font-weight:normal;}
.bold { font-weight: bold;}

.clearfix:after {
content:" ";
display:block;
clear:both;
}

.clearleft { clear: left; }
.clearright { clear: right;}



a {
color: #aeaeaf;
color: #7e7e7f;
text-decoration: none;

-webkit-tap-highlight-color: rgba(174, 174, 175, 0.2);
-webkit-transition-duration: 330ms;
-moz-transition-duration: 330ms;
-o-transition-duration: 330ms;
-ms-transition-duration: 330ms;
transition-duration: 330ms;
}
a:visited { color: #7e7e7f; text-decoration: none; }

:focus { outline-style: none; -moz-outline-style: none; }
a:hover,
a:active { color: #e07070; text-decoration: none; outline: 0; }

a.underline,
a.underline:visited,
a.underline:hover,
a.underline:active {text-decoration: underline;}


a img,
a:hover img,
a:active img {
background-color:transparent;
border: none;
}


::-moz-selection {
color: #fff;
background-color: #aeaeaf;
}
::selection {
color: #fff;
background-color: #aeaeaf;
}

img::-moz-selection {
background-color: transparent;
}
img::selection {
background-color: transparent;
}




/* =========================================================
   HTML5 display definitions
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
display: block;
}

audio,
canvas,
progress,
video {
display: inline-block;
vertical-align: baseline;
}

audio:not([controls]) {
display: none;
height: 0;
}

hr {
box-sizing: content-box;
height: 1px;
border: 0;
}

code,
kbd,
pre,
samp {
font-family: monospace, monospace;
font-size: 1em;
}



table {
	max-width: 100%;
	width: 100%;
	background-color: transparent;
	border-collapse: collapse;
	border-spacing: 0;
}

table.autow {
	width: auto;
}

table.autoc {
	margin: 0 auto;
	width: auto;
}


h1,
h2,
h3,
h4,
h5,
h6 {
font-weight: normal;
text-rendering: optimizeLegibility;
}




/* =========================================================
   Base structure
*/

#wrapper {
position: relative;
margin: 0 auto;
width: auto;
min-height: 100%;
height: auto;

font-size: 1em;
line-height: 1.0;
text-align: left;
overflow: auto;
/*	background-color: #000;*/
}
body#top > #wrapper {
	height: 100%;
}
/*.ios body > #wrapper {
	height: 100%;
}*/

#wrapper.opened {
/*height: 100%;
overflow: hidden;*/
}




/* ---------------------------------------------
	footer
*/
.for-footer {
	height: 180px;
}

footer {
position: relative;
z-index: 100;
margin-top: -180px;
width: 100%;
padding: 15px 0 20px;
font-family: "simBodebeck-Light";
font-size: 10px;
color: #aeaeaf;
color: #7e7e7f;
}

footer.opened {
-webkit-filter: blur(6px);
-moz-filter: blur(6px);
-o-filter: blur(6px);
-ms-filter: blur(6px);
filter: blur(6px);
-webkit-transition: all 0.4s ease;
-moz-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all 0.4s ease;
}

footer p {
text-align: center;
letter-spacing: 0.12em;
}

footer p.copyright {
font-size: 11px;
line-height: 11px;
}




/* --------------- back button ---------------- */

.back-btn {
margin: 0 auto;
height: 60px;
width: 60px;
font-size: 93%;
font-family: "simBodebeck-Light";
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
border-radius: 50%;
background-image: url(../images/item/back-arrow.png);
background-position: 50% 33%;
background-repeat: no-repeat;
}

.back-btn img {
width: 24px;
}

.back-btn p {
padding-top: 40px;
letter-spacing: 0.12em;
}

.back-btn:hover {
cursor: pointer;
background-image: url(../images/item/back-arrow-o.png);
}
.back-btn:hover p {
color: #e07070;
}

.noback {
filter:alpha(opacity=40);
-moz-opacity: 0.4;
opacity: 0.4;
}
.back-btn.noback:hover {
cursor: default;
background-image: url(../images/item/back-arrow.png);
}
.back-btn.noback p,
.back-btn.noback:hover p {
color: #aeaeaf;
}




/* --------------- breadcrumb ---------------- */

.breadcrumb {
padding: .5em 0;
font-family: "simBodebeck-Light";
text-align: left;
letter-spacing: -.4em;
}

.breadcrumb li {
position: relative;
display: inline-block;
font-size: 93%;
line-height: 2.0em;
letter-spacing: 0.2em;
}

.breadcrumb li a,
.breadcrumb li span {
display: block;
padding: .25em .33em;
}

.breadcrumb li:not(.top) {
margin-left: 1.0em;
}

.breadcrumb li:not(.top):before {
position: absolute;
left: -.9em;
top: 50%;
display: block;
content: '';
margin-top: -.27em;
width: .5em;
height: .5em;
border-top: 1px solid #aeaeaf;
border-right: 1px solid #aeaeaf;

-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-o-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
}





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

header {
position: relative;
width: 100%;

padding: 0 4%;
font-family: "simBodebeck-Light";
z-index: 1000;
background-color: #fff;
/*background-size: 120px;
background-repeat: no-repeat;
background-position: 50% 0%;
background-image:url(../images/common/sim-image.jpg);*/
}
#top header {
position: absolute;
top: 0;
left: 0;
}

.header-row {
display:table;
width: 100%;
}

.header-l,
.header-r {
display:table-cell;
width: 50%;
height: 140px;
vertical-align: middle;
}
.header-l {
padding-right: 60px;
text-align: left;
}
.header-r {
padding-left: 60px;
text-align: right;
}

h1,
.company-name {
display: inline-block;
vertical-align: middle;
}
.company-name img {
width: 120px;
height: auto;
}

.description {
display: inline-block;
}
.description img {
width: 272px;
height: auto;
}

.description span {
display: inline-block;
}

#toplink {
display: block;
position: absolute;
top: calc(50% - 14px);
left: calc(50% - 128px);
width: 256px;
height: 28.5px;
background: url(../images/common/sim_logo_rev.svg) no-repeat;
background-size: 100% auto;

text-align: center;
line-height: 1000em;
overflow: hidden;
}




/* ---------------------------------------------
	coverall
*/

#loading {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 999;
background-color: rgba(255, 255, 255, 1.0);
}

#bg-container {
position: relative;
}
#bg-container.opened {
position: absolute;
z-index: 1001;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
#bg-container.opened:before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.33);
z-index: 2000;
}


.blurbox {
position: relative;
width: 100%;
height: 100%;

-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all 0.3s ease;
/*
-webkit-transform: translateX(0);
-moz-transform: translateX(0);
-o-transform: translateX(0);
-ms-transform: translateX(0);
transform: translateX(0);
*/}

.blurbox.opened {
-webkit-filter: blur(6px);
-moz-filter: blur(6px);
-o-filter: blur(6px);
-ms-filter: blur(6px);
filter: blur(6px);
/*
	-webkit-transform: translateX(-280px);
	-moz-transform: translateX(-280px);
	-o-transform: translateX(-280px);
	-ms-transform: translateX(-280px);
	transform: translateX(-280px);
*/}



/* ---------------------------------------------
	navigation
*/

nav#main-navigation {
position: fixed;
top: 0;
right: 0;
height: 100vh;
width: 1px;
font-family: "simBodebeck-Light";
z-index: 3000;
overflow: hidden;

	-webkit-transition: 0.5s;
	transition: 0.5s;
	-webkit-transform: translateX(10px);
	-moz-transform: translateX(10px);
	-o-transform: translateX(10px);
	-ms-transform: translateX(10px);
	transform: translateX(10px);

background-color: rgba(255, 255, 255, 0.95);

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
/*  -ms-flex-pack: distribute;
      justify-content: space-around;*/
/*box-shadow: 0px 3px 10px rgba(33, 33, 33, 0.5);*/
}
nav#main-navigation h3,
nav#main-navigation p {
display: none;
}

nav#main-navigation.opened {
	-webkit-transform: translateX(0);
	-moz-transform: translateX(0);
	-o-transform: translateX(0);
	-ms-transform: translateX(0);
	transform: translateX(0);
	-webkit-transition: 0.3s;
	transition: 0.3s;
width: 280px;
/*box-shadow: 0px 3px 10px rgba(33, 33, 33, 0.2);*/
}

nav#main-navigation ul {
margin-top: 110px;
}

nav#main-navigation ul li {
padding: .10em 0 .40em;
}

nav#main-navigation ul a {
position: relative;
display: block;
font-size: 1px;
line-height: 55px;
letter-spacing: -.4em;
text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.99);
filter:alpha(opacity=0);
-moz-opacity: 0;
opacity: 0;
}

nav#main-navigation.opened ul a {
font-size: 23px;
letter-spacing: .1em;
filter:alpha(opacity=100);
-moz-opacity: 1;
opacity: 1;
}

nav#main-navigation ul a:hover,
nav#main-navigation ul a:active {
text-shadow: none;
color: #5e5e5f;
background-color: #fff;
}

nav#main-navigation ul a:before {
}

#top .nav-top a,
#works .nav-works a,
#about .nav-about a,
#recruit .nav-recruit a,
#contact .nav-contact a {
color: #aeaeaf;
color: #3e3e3f;
cursor: default;
}

#top .nav-top a:hover,#top .nav-top a:active,
#works .nav-works a:hover,#works .nav-works a:active,
#about .nav-about a:hover,#about .nav-about a:active,
#recruit .nav-recruit a:hover,#recruit .nav-recruit a:active,
#contact .nav-contact a:hover,#contact .nav-contact a:active {
color: #aeaeaf;
color: #3e3e3f;
background-color: transparent;
}
/*
#top .nav-top a:before {
position: absolute;
top: 50%;
left: 10%;
display: block;
content: '';
left: -0.2em;
width: 25%;
height: 1px;
background-color: rgba(174, 174, 175, 0.4);
}
*/



	/* ----- Hamburger ----- */

#hamburger {
position: absolute;
top: 50px;
right: 0;
padding-left: 10px;
width: 90px;
height: 40px;

font-size: 19px;
line-height: 40px;
letter-spacing: -.4em;
text-align: left;
/*color: #959496;*/
background-color: rgba(255, 255, 255, 0.95);
overflow: hidden;

z-index: 10001;
cursor: pointer;

-webkit-transition: 130ms;
transition: 130ms;
}

#top #hamburger {
display: none;
}

#hamburger.opened {
-webkit-transition: 130ms;
transition: 130ms;
background-color: transparent;
}

	.mobile #hamburger {
	padding-left: 0;
	width: 50px;
	text-align: center;
	}

#hamburger span {
position: relative;
height: 40px;
display: inline-block;
letter-spacing: 0;
text-align: center;
vertical-align: top;
}

#hamburger span.m,
#hamburger span.n,
#hamburger span.u {
width: 0;
overflow: hidden;

filter:alpha(opacity=0);
-moz-opacity: 0;
opacity: 0;
-webkit-transition: 220ms;
transition: 220ms;
}
	.mobile #hamburger span.m,
	.mobile #hamburger span.n,
	.mobile #hamburger span.u {
	display: none;
	}

#hamburger:hover span.m,
#hamburger:hover span.n,
#hamburger:hover span.u,
#hamburger.opened span.m,
#hamburger.opened span.n,
#hamburger.opened span.u {
position: relative;
width: 11px;

filter:alpha(opacity=100);
-moz-opacity: 1;
opacity: 1;
-webkit-transition: 220ms;
transition: 220ms;
}

#hamburger span.m {
margin-left: 20px;
}
#hamburger:hover span.m,
#hamburger.opened span.m {
margin-left: 0;
}

#hamburger span.n {
margin-left: 18px;
}
#hamburger:hover span.n {
margin-left: 27px;
}
#hamburger.opened span.n {
margin-left: 20px;
}


#hamburger span.e {
position: absolute;
top: 0;
left: 24px;
width: 24px;
}
#hamburger:hover span.e {
}
#hamburger.opened span.e {
left: 23px;
}

	.mobile #hamburger span.e {
	position: relative;
	left: auto;
	width: 22px;
	}

#hamburger span .bar {
display: inline-block;

position: absolute;
left: 0;
width: 100%;
height: 2px;
background-color: #aeaeaf;
-webkit-border-radius: 0.05em;
-moz-border-radius: 0.05em;
border-radius: 0.05em;

-webkit-transition-duration: 120ms;
-moz-transition-duration: 120ms;
-o-transition-duration: 120ms;
-ms-transition-duration: 120ms;
transition-duration: 120ms;
}
#hamburger span .bar:nth-of-type(1) {
	top: 12px;
}
#hamburger span .bar:nth-of-type(2) {
	top: 18px;
}
#hamburger span .bar:nth-of-type(3) {
	bottom: 14px;
}

#hamburger:hover span .bar {
}


#hamburger.opened span .bar {
left: 0;
width: 19px;
background-color: #FF1F59;
background-color: #e07070;

-webkit-transition-duration: 120ms;
-moz-transition-duration: 120ms;
-o-transition-duration: 120ms;
-ms-transition-duration: 120ms;
transition-duration: 120ms;
}

#hamburger.opened span .bar:nth-of-type(1) {
top: 18px;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-o-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
}
#hamburger.opened span .bar:nth-of-type(2) {
display: none;
}
#hamburger.opened span .bar:nth-of-type(3) {
top: 18px;
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
-o-transform: rotate(-45deg);
-ms-transform: rotate(-45deg);
transform: rotate(-45deg);
}





/* =========================================================
   TOP
*/

	/*  full-screen  */
.main-visual-box {
position: relative;
width: 100%;
height: 100%;
z-index: 10;
overflow: hidden;
}


.main_visual {
position: relative;
top: 0;
left: 0;
padding: 140px 0 0;
width: 100%;
height: 100%;

background-size: cover;
background-attachment: fixed;
background-repeat: no-repeat;
background-position: 50% 50%;
-moz-background-clip:content;
-webkit-background-clip:content-box;
-o-background-clip:content-box;
-ms-background-clip:content-box;
background-clip:content-box;

overflow: hidden;
}




/* =========================================================
   contents
*/

.title-section,
.main-section,
.bottom-section {
position:relative;
margin: 0 auto;
width: 88%;
max-width: 1200px;
text-align: center;
}

.bottom-section {
margin-top: 4.0em;
}

.page-title {
position:relative;
margin-bottom: 1.2em;
padding: 1.2em 0;
font-family: "simBodebeck-Light";
font-size: 33px;
letter-spacing: 0.12em;
}

h2,.h2 {
position: relative;
font-size: 100%;
}

h2:after,.h2:after {
content: '';
position: absolute;
top: 2.0em;
left: 50%;
width: 0.76em;
margin-left: -0.38em;
height: 1px;
/*background-color: #aeaeaf;*/
background-color: rgba(174, 174, 175, 0.7);
}


.page-top-image {
margin: 0 auto;
margin-bottom: 8.0em;
/*max-width: 1200px;*/
text-align: center;
}
.page-top-image img {
width: 100%;
}
.page-top-image.fixed img {
width: auto;
}


.page-lead {
margin-bottom: 8.0em;
font-size: 100%;
line-height: 2.5em;
min-height: .1em;
}

.page-lead p {
}

.page-lead p + p {
margin-top: 2.2em;
}

.page-lead .eng {
font-size: 1.05em;
line-height: 2.2em;
}

.lead-head {
font-size: 167%;
margin-bottom: 1.5em;
}
.lead-body {
}


.content-title {
margin-bottom: 1.2em;
padding: .8em 0;
font-size: 25px;
letter-spacing: 0.12em;
}

.content-subtitle {
margin-bottom: .6em;
padding: .8em 0;
font-size: 153.9%;
letter-spacing: 0.08em;
}
	.content-subtitle.eng {
	font-size: 24px;
	letter-spacing: 0.12em;
	}

.content-title p,
.content-subtitle p {
padding-top: .66em;
font-size: 52%;
}

.content-title h3,
.content-title .h3,
.content-subtitle h3 {
padding: 0 0;
font-size: 100%;
line-height: 1.6em;
}

.content-title p.title-capt,
.content-subtitle p.title-capt {
padding-top: .99em;
font-size: 50%;
letter-spacing: 0.08em;
}


.content-subtitle h3 .fa-stack {
margin: 0 auto .5em;
display: block;
font-size: 108%;
text-align: center;

width: 2.0em;
height: 2.0em;
line-height: 2.0em;
}

.content-subtitle h3 .fa-stack .fa-circle.fa-stack-2x {
font-size: 2.0em;

filter:alpha(opacity=50);
-moz-opacity: 0.5;
opacity: 0.5;
}


.works-category {
position: absolute;
bottom: -2.0em;
width: 100%;
font-size: 35%;
}


.text-block {
padding: 0 0;
font-size: 100%;
line-height: 2.5em;
}
	.text-block .lh18 {
	line-height: 1.8em;
	}

.text-block .headline {
margin-bottom: 0;
padding: .66em 0;
font-size: 138.0%;
font-size: 130.8%;
letter-spacing: 0.08em;
}
	.text-block .headline.eng {
	font-size: 146.0%;
	letter-spacing: 0.12em;
	}


.body-left {
text-align: left;
}
.br::before {
content: "";
white-space: normal;
}


hr {
position: relative;
margin: 0 0;
padding: 2.0em 0;
}

hr:after {
content: '';
position: absolute;
bottom: 50%;
left: 50%;
width: 2.2em;
margin-left: -1.1em;
height: 1px;
background-color: rgba(174, 174, 175, 0.5);
}



	/* ----------- works ----------- */

nav#works-nav {
}

nav#works-nav ul {
margin: 4.0em auto 4.0em;
width: 90%;
max-width: 600px;
text-align: center;
font-size: 116%;
letter-spacing: -.4em;

display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-direction: row;
flex-direction: row;
-ms-flex-wrap:wrap;
-webkit-flex-wrap:wrap;
flex-wrap: wrap;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
-webkit-justify-content: space-between;
justify-content: space-between;
}

nav#works-nav li {
position: relative;
display: inline-block;
padding: .5em 1.33em;
letter-spacing: 0.06em;

-webkit-border-radius: 1.0em;
-moz-border-radius: 1.0em;
border-radius: 1.0em;
}

nav#works-nav li:hover {
/*background-color: rgba(174, 174, 175, 0.14);*/
color: #e07070;
cursor: pointer;
}

nav#works-nav li.mixitup-control-active,
nav#works-nav li:hover.mixitup-control-active {
color: #7e7e7f;
background-color: transparent;
cursor: default;
}

nav#works-nav li.mixitup-control-active:after {
content: '';
position: absolute;
bottom: 0;
left: 50%;
width: 60%;
margin-left: -30%;
height: 1px;
background-color: rgba(174, 174, 175, 0.7);
-webkit-border-radius: 25%;
-moz-border-radius: 25%;
border-radius: 25%;
}



.work-portfolio {
padding-top: 2.0em;
}

.work-list-box,
.work-portfolio-list {
margin: 0 -5%;

display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;

-ms-flex-direction: row;
flex-direction: row;

-ms-flex-wrap:wrap;
-webkit-flex-wrap:wrap;
flex-wrap: wrap;

-webkit-box-pack: justify;
-ms-flex-pack: justify;
-webkit-justify-content: space-between;
justify-content: space-between;

-webkit-justify-content: flex-start;
justify-content: flex-start;

align-items: flex-start;
}

.work-portfolio-list {
padding-top: 1.0em;
-webkit-justify-content: space-around;
justify-content: space-around;
align-items: flex-start;
}


.work-list-item {
margin-bottom: 7.7em;
width: 50%;/* 2 column */
width: 33.3333333332%;/* 3 column */
}

.work-list-item a {
margin: 0 15%;
display: block;
position: relative;
overflow: hidden;
color: #ddd;
}
.work-list-item a:hover,
.work-list-item a:active { color: #fff; }


.work-list-image {
margin: 0 auto;
/*overflow:hidden;*/
}

.work-list-item .work-list-image {
vertical-align: top;
vertical-align: middle;

-webkit-transform: none;
-moz-transform: none;
-o-transform: none;
-ms-transform: none;
transform: none;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
filter:alpha(opacity=100);
-moz-opacity: 1.0;
opacity: 1.0;
}

.work-list-item:hover .work-list-image {
-webkit-transform: matrix(1.01, 0, 0, 1.01, 0, 0);
-moz-transform: matrix(1.01, 0, 0, 1.01, 0, 0);
-o-transform: matrix(1.01, 0, 0, 1.01, 0, 0);
-ms-transform: matrix(1.01, 0, 0, 1.01, 0, 0);
transform: matrix(1.01, 0, 0, 1.01, 0, 0);

-webkit-filter: blur(3px);
-moz-filter: blur(3px);
-o-filter: blur(3px);
-ms-filter: blur(3px);
filter: blur(3px);

filter:alpha(opacity=70);
-moz-opacity: 0.70;
opacity: 0.70;
}

.work-list-item .work-list-image img {
}

.work-list-item:hover .work-list-image img {
}



.work-list-item .work-list-text {
position: absolute;
left:0;
/*bottom:50%;
width: 100%;
height: 0;
padding: 0 0;*/
bottom: 0;
width: 100%;
height: 100%;
padding: 32% 0 0;
text-shadow:0px 1px 4px #000;
background-color: rgba(0,0,0,0.66);
-webkit-transition: 0.33s ease-in-out;
-moz-transition: 0.33s ease-in-out;
-o-transition: 0.33s ease-in-out;
transition: 0.33s ease-in-out;
filter:alpha(opacity=0);
-moz-opacity: 0.0;
opacity: 0.0;
}

.work-list-item:hover .work-list-text {
padding: 30% 0 0;
font-size: 100%;
filter:alpha(opacity=80);
-moz-opacity: 0.80;
opacity: 0.80;
}

.subject {
margin-bottom: 0.5em;
font-size: 108%;
}

.category {
font-size: 77%;
filter:alpha(opacity=70);
-moz-opacity: 0.70;
opacity: 0.70;
}


	/* ----------- portfolio ----------- */

.work-portfolio-item {
margin: 0 0 9.0em;
}
.work-portfolio-item:last-of-type {
margin-bottom: 1.0em;
}

.work-portfolio-list .work-portfolio-item {
margin: 0 auto 5.0em;
width: 40%;
}


.right-80 {margin-left: 20%;}
.right-60 {margin-left: 40%;}
.right-40 {margin-left: 60%;}

.left-80 {margin-right: 20%;}
.left-60 {margin-right: 40%;}
.left-40 {margin-right: 60%;}

.center-80 {margin-left: 10%; margin-right: 10%;}
.center-60 {margin-left: 20%; margin-right: 20%;}
.center-40 {margin-left: 30%; margin-right: 30%;}


.work-portfolio-image {
margin: 0 auto;
}

.work-portfolio-text {
margin: 1.0em 0 0;
}

.story {
margin-bottom: .5em;
font-size: 85%;
}

.page-top-image .story {
margin-top: -1.8em;
margin-bottom: 0;
}

.caption {
font-size: 69%;
}


.website-link {
margin: 3.0em 0;
font-size: 100%;
line-height: 1.0em;
vertical-align: middle;
white-space: nowrap;
}

.website-link a {
display: inline-block;
padding: .8em 2.0em;
border: 1px solid #ddd;
-webkit-border-radius: 1.3em;
-moz-border-radius: 1.3em;
border-radius: 1.3em;
}

.website-link a:hover {
border: 1px solid #e07070;
}

.website-link i {
margin-right: .5em;
vertical-align: -0.10em;
}



	/* -- form item -- */
input[type="radio"],
input[type="checkbox"] {
vertical-align: middle;
position: relative;
bottom: 0.1em;
font-size: 108%;
margin-right: .3em;
}
button:active,
button:focus {
	outline: none;
}
textarea,
select {
	font-size: 1em;
	box-shadow: none;
}
textarea,
select[multiple],
select[multiple="multiple"],
input[type="text"],
input[type="password"],
input[type="email"],
input[type="url"],
input[type="phone"],
input[type="tel"],
input[type="number"],
input[type="datetime"],
input[type="date"],
input[type="month"],
input[type="color"],
input[type="time"],
input[type="search"],
input[type="datetime-local"] {
	font-size: 1em;
	box-shadow: none;
	padding: 0.5em 0.4em;
	line-height: 1.6;
	border-radius: 0;
	color: #3e3e3f;
	outline: none;
font-family: inherit;
-webkit-border-radius: .25em;
-moz-border-radius: .25em;
border-radius: .25em;
}
textarea,
select[multiple],
select[multiple="multiple"] {
	padding: 0.3em 0.4em;
	width: 100%;
}

select[multiple],
select[multiple="multiple"],
textarea,
input[type="text"],
input[type="password"],
input[type="email"],
input[type="url"],
input[type="phone"],
input[type="tel"],
input[type="number"],
input[type="datetime"],
input[type="date"],
input[type="month"],
input[type="color"],
input[type="time"],
input[type="search"],
input[type="datetime-local"] {
	background: #ffffff;
	border: 1px solid #d0d0d0;
	position: relative;
	z-index: 2;
	-webkit-appearance: none;
}
textarea[disabled],
input[type="text"][disabled],
input[type="password"][disabled],
input[type="email"][disabled],
input[type="url"][disabled],
input[type="phone"][disabled],
input[type="tel"][disabled],
input[type="number"][disabled],
input[type="datetime"][disabled],
input[type="date"][disabled],
input[type="month"][disabled],
input[type="color"][disabled],
input[type="time"][disabled],
input[type="search"][disabled],
input[type="datetime-local"][disabled] {
	resize: none;
	color: rgba(0, 0, 0, 0.5);
}
select[disabled],
input[type="checkbox"][disabled],
input[type="radio"][disabled] {
	cursor: default;
}
input::-moz-focus-inner,
button::-moz-focus-inner {
	border: 0;
	padding: 0;
}
input[type="range"] {
	position: relative;
	top: 3px;
}
select {
}
fieldset {
	padding: 1.65em;
	margin-bottom: 1.65em;
	border: 1px solid #cccccc;
}
fieldset *:last-child {
	margin-bottom: 0 !important;
}
legend {
	font-weight: bold;
	padding: 0 1em;
	margin-left: -1em;
}
.btn,
input[type="submit"].btn {
  display: inline-block;
  vertical-align: top;
  font-size: 1em;
  font-weight: normal;
  line-height: 1.6;
  text-align: center;
  text-decoration: none;
  color: #222222;
  -webkit-appearance: none;
  outline: none;
  border: none;
  border-radius: 2px;
  box-shadow: none;
  cursor: pointer;
  background: #e0e3e5;
  padding: 0.55em .5em;
}
.btn:hover,
input[type="submit"].btn:hover {
	color: rgba(255, 255, 255, 0.9);
	background: #aeaeaf;
	text-decoration: none;
}
.btn::-moz-focus-inner {
  border: 0;
  padding: 0;
}


input[type=text]:focus,
textarea:focus {
	border:1px solid #8e8e8f;
}

	/* -- form item -- */





	/* ----------- contact ----------- */

.contact-caompany {
line-height: 2.5em;
letter-spacing: 0.08em;
}


#office-map {
margin: 0 auto 5.0em;
width: 100%;
max-width: 700px;
}

.map-box {
position: relative;
padding-bottom: 66.666666%;
width: 100%;
height: 0;
overflow: hidden;
}

#office-map iframe,
#map-canvas {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}


.form-box {
margin: 0 auto 0em;
width: 92%;
max-width: 600px;
}

.form-box form {
width: 100%;
text-align: left;
}

.form-box form dl {
}

.form-box form dt {
padding: .75em 0;
color: #6e6e6f;
	padding-left: .5em;
	background-color: rgba(174, 174, 175, 0.11);
}

.form-box form dt .fa {
filter:alpha(opacity=50);
-moz-opacity: 0.5;
opacity: 0.5;
}

.form-box form dt span {
display: inline-block;
margin-left: .5em;
font-family: "simBodebeck-Light";
letter-spacing: 0.12em;
filter:alpha(opacity=80);
-moz-opacity: 0.8;
opacity: 0.8;
}

	#form2 dt {
	padding-left: .5em;
	}

	#form2 dt .fa {
	color: #d00;
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
	}

	#form2 dt em {
	padding-left: .2em;
	font-size: 93%;
	font-weight: normal;
	color: #aeaeaf;
	}

.form-box form dd {
padding: .66em 0 2.66em .1em;
}

	#form2 dd {
	padding: .66em 0 2.0em 1.0em;
	}

.form-box form dd label {
	display: inline-block;
	line-height: 2.0em;
}

.form-box form input[type="text"],
.form-box form input[type="tel"],
.form-box form input[type="email"],
.form-box form textarea {
padding: .7em .5em;
width: 100%;
}
	#form2 input[type="text"],
	#form2 textarea {
	}
.form-box form input[type="text"].inputage,
.form-box form textarea.inputage {
width: 3em;
}

.form-box form input[type="text"]:focus,
.form-box form textarea:focus {
/*background-color: #fff;*/
}

.form-box form select {
position: relative;
width: 100%;
padding: .5em .4em;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
color: #8e8e8f;
border: 1px solid #ccc;
background: #fff;
background: transparent;
/*background: -webkit-linear-gradient(top, #fff 0%,#eeeeef 100%);
background: linear-gradient(to bottom, #fff 0%,#eeeeef 100%);*/
}
.form-box form select.wid60 {
width: 50%;
min-width: 200px;
}

#inquire-type-label {
position: relative;
}

#inquire-type-label .fa {
position: absolute;
top: 0;
right: 0.5em;
}

.form-desc {
padding: 0 .2em .5em;
font-size: 93%;
line-height: 1.4;
}

.append,
.prepend {
  display: flex; }
  .append input,
  .prepend input {
    flex: 1; }
  .append .button,
  .append span,
  .prepend .button,
  .prepend span {
    flex-shrink: 0; }
.append span,
.prepend span {
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-weight: normal;
    border: 1px solid #d4d4d4;
    background-color: #f8f8f8;
    padding: 0 .875rem;
    color: rgba(0, 0, 0, 0.5);
    white-space: nowrap;
/*    font-size: 93%;*/
}

.prepend input {
  border-left: none;
  border-radius: 0 3px 3px 0; }

.prepend .button {
  margin-right: -1px;
  border-radius: 3px 0 0 3px !important; }

.prepend span {
  border-right: none;
  border-radius: 3px 0 0 3px; }

.append input {
  border-radius: 3px 0 0 3px; }

.append .button {
margin-left: -1px;
border-radius: 0 3px 3px 0 !important; }

.append span {
border-left: none;
border-radius: 0 3px 3px 0;
}


.formbtns {
padding: 1.8em 0;
text-align: center;
letter-spacing: -.4em;
}
	.formbtns p {
	letter-spacing: 0.0em;
	font-size: 93%;
	line-height: 1.5em;
	}

.formbtns button {
letter-spacing: .03em;
color: #6e6e6f;
background-color: #eeeeef;
-webkit-border-radius: .5em;
-moz-border-radius: .5em;
border-radius: .5em;
}

.formbtns button + button {
margin-left: 4%;
}

.formbtns button span {
display: block;
font-family: "simBodebeck-Light";
letter-spacing: 0.12em;
filter:alpha(opacity=80);
-moz-opacity: 0.8;
opacity: 0.8;
}

.formbtns .btn-reset {
width: 40%;
}

.formbtns .btn-submit {
width: 50%;
min-width: 200px;
}
	#contact .formbtns .btn-submit {
	width: 60%;
	}

#form1 .btn,
#form1 input[type="submit"].btn,
#form2 .btn,
#form2 input[type="submit"].btn {
padding: 1.0em .5em;
color: #fefeff;
background-color: #bebebf;
}
/*
#form1 .btn,
#form1 input[type="submit"].btn {
padding: .55em .5em;
}*/

#form1 .btn:hover,
#form1 input[type="submit"].btn:hover,
#form2 .btn:hover,
#form2 input[type="submit"].btn:hover {
color: #fff;
background-color: #6e6e6f;
}


.formbtns button:disabled {
filter:alpha(opacity=50);
-moz-opacity: 0.5;
opacity: 0.5;
}
.btn:disabled:hover,
input[type="submit"].btn:disabled:hover {
cursor: default;
}

#form1 .btn:disabled:hover,
#form1 input[type="submit"].btn:disabled:hover,
#form2 .btn:disabled:hover,
#form2 input[type="submit"].btn:disabled:hover {
color: #fefeff;
background-color: #bebebf;
}


#form3 {
}

#form3 .btn,
#form3 input[type="submit"].btn {
padding: .7em .5em;
width: 45%;
min-width: 120px;
filter:alpha(opacity=70);
-moz-opacity: 0.7;
opacity: 0.7;
}
#form3 button {
color: #5e5e5f;
}
#form3 button:hover {
color: #eeeeef;
}





	/* ----------- about ----------- */

.company-info {
margin: 0 auto 0;
width: 100%;
max-width: 450px;
}

.company-info dl {
}

.company-info dt,
.company-info dd {
font-size: 100%;
line-height: 2.5em;
text-align: left;
}

.company-info dt {
float: left;
width: 27%;
}

.company-info dd {
padding-left: 30%;
padding-bottom: 2px;
width: 100%;
}





	/* ----------- recruit ----------- */

ul.scene-photo {
margin-left: auto;
margin-right: auto;
max-width: 600px;
letter-spacing: -.4em;
}

ul.scene-photo li {
display: inline-block;
max-width:49%;
margin: 1px;
letter-spacing: 0;
}


.recruit-info {
margin: 0 auto 0;
width: 100%;
max-width: 600px;
}

.recruit-info dl {
}

.recruit-info dl dt,
.recruit-info dl dd {
}

.recruit-info dl dt {
color: #6e6e6f;
background-color: rgba(174, 174, 175, 0.15);
}

.recruit-info dl dd {
padding: .5em .25em 1.8em;
text-align: left;
}

.recruit-info dl dd h4 {
padding: .3em 0;
color: #6e6e6f;
line-height: 2.0;
text-align: center;
}
.recruit-info dl dd.compete h4 {
margin: .5em 0;
border: 1px solid #cececf;
}

.recruit-info dl dd .adoption {
margin-left: 0;
margin-right: 0;
padding: .5em;
line-height: 2.1em;
background-color: rgba(174, 174, 175, 0.07);
}

#entry-form-button .btn {
width: 50%;
min-width: 200px;
}

.explan-s {
font-size: 85%;
line-height: 1.666em;
}

.marker {
padding-left: 1.1em;
}

.imarker {
float: left;
margin-left: -1.1em;
margin-top: .4em;
margin-right: .2em;
}



.alerts {
margin-bottom: 2.0em;
padding: .8em .5em;
color: #d00;
border: 1px solid #e00;
}

.notices {
color: #5e5e5f;
}

.reply {
padding: 0.55em 0.5em;
line-height: 1.6;
color: #5e5e5f;
-webkit-border-radius: .25em;
-moz-border-radius: .25em;
border-radius: .25em;
border: 1px solid #ededed;
}

#form3 {
text-align: center;
font-size: 93%;
}






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

	.description {
	display: none;
	}

	.company-name img {
	width: 120px;
	}


}



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

	.work-list-item {
	margin-bottom: 6.0em;
	}

	.work-list-text {
	font-size: 85%;
	}

}




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

	h1,
	.company-name {
	padding-right: 0;
	}

	.title-section,
	.main-section,
	.bottom-section {
	width: 94%;
	width: 100%;
	}

	.for-footer {
	height: 152px;
	}
	footer {
	margin-top: -152px;
	}

	.bottom-section {
	margin-top: 1.0em;
	}

	.breadcrumb {
	padding: 0 4%;
	padding-bottom: 1.5em;
	padding-top: .5em;
	}
	.breadcrumb li {
/*	font-size: 85%;*/
	}

	.page-title {
	margin-bottom: 1.0em;
	padding: 1.0em 0;
	font-size: 30px;
	}

	.content-title {
	margin-bottom: 1.0em;
	padding: .2em 0;
	font-size: 21px;
	}

	.content-subtitle {
	margin-bottom: .6em;
	padding: .8em 0;
	font-size: 19px;
	}


	.page-top-image {
	margin-bottom: 5.0em;
	}

	.page-lead {
	margin-bottom: 6.0em;
	padding: 0 4%;
	font-size: 85%;
	}

	.text-block {
	padding: 0 4%;
	font-size: 85%;
	}
	.company-info .text-block {
	padding: 0 0;
	}

	.text-block .headline {
	font-size: 131%;
	}
	.text-block .headline.eng {
	font-size: 138.5%;
	}

	.body-left {
	text-align: left;
	}
	.br::before {
	content: "\A" ;
	white-space: pre ;
	}


	nav#works-nav ul {
	margin: 4.0em auto 5.0em;
	font-size: 108%;
	}


	.work-list-box,
	.work-portfolio-list {
	margin: 0 -2%;
	font-size: 85%;
/*	-webkit-justify-content: space-around;
	justify-content: space-around;*/
	}

	.work-list-item {
	margin-bottom: 6.0em;
	width: 100%;
	width: 50.0%;
	}

	.work-list-item a {
	margin: 0 12%;
	}

	.work-list-text {
	font-size: 69%;
	}

	.work-portfolio-item {
	margin-bottom: 5.0em;
	}
	.work-portfolio-list .work-portfolio-item {
	margin-bottom: 4.0em;
	width: 80%;
	}

	.work-list-item:hover .work-list-image {
	-webkit-transform: matrix(1.0, 0, 0, 1.0, 0, 0);
	-moz-transform: matrix(1.0, 0, 0, 1.0, 0, 0);
	-o-transform: matrix(1.0, 0, 0, 1.0, 0, 0);
	-ms-transform: matrix(1.0, 0, 0, 1.0, 0, 0);
	transform: matrix(1.0, 0, 0, 1.0, 0, 0);
	filter:alpha(opacity=100);
	-moz-opacity: 1.00;
	opacity: 1.00;
	}


	.right-80 {margin-left: 10%;}
	.right-60 {margin-left: 20%;}
	.right-40 {margin-left: 30%;}

	.left-80 {margin-right: 10%;}
	.left-60 {margin-right: 20%;}
	.left-40 {margin-right: 30%;}

	.center-80 {margin-left: 5%; margin-right: 5%;}
	.center-60 {margin-left: 10%; margin-right: 10%;}
	.center-40 {margin-left: 15%; margin-right: 15%;}


	.work-portfolio-text {
	margin: .8em 0 0;
	}

	.story {
	font-size: 77%;
	}

	.company-info dt,
	.company-info dd {
	font-size: 85%;
	}

	.company-info dt {
	float: none;
	width: 100%;
	}

	.company-info dd {
	padding-left: 3.0em;
	padding-bottom: .5em;
	}


	.form-desc {
	font-size: 85%;
	}


	.marker {
	padding-left: 1.1em;
	}

	.imarker {
	float: left;
	margin-left: -1.1em;
	margin-top: .33em;
	margin-right: 0;
	}

	.form-box form dd label {
	display: block;
	}

	.formbtns p {
	font-size: 85%;
	line-height: 1.5em;
	}

}



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

	.company-name img {
	width: 110px;
	}


	.for-footer {
	height: 148px;
	}
	footer {
	margin-top: -146px;
	padding: 15px 0 15px;
	}


	footer p.copyright {
	font-size: 9px;
	}

	.back-btn {
	font-size: 85%;
	}
	.back-btn p {
	}

	.breadcrumb li {
/*	font-size: 77%;*/
	}

	nav#main-navigation.opened {
	width: 220px;
	}
/*	.blurbox.opened {
	-webkit-transform: translateX(-240px);
	-moz-transform: translateX(-240px);
	-o-transform: translateX(-240px);
	-ms-transform: translateX(-240px);
	transform: translateX(-240px);
	}	*/

	#hamburger {
	padding-left: 0;
	width: 50px;
	text-align: center;
	}

	#hamburger span.m,
	#hamburger span.n,
	#hamburger span.u {
	display: none;
	}
	#hamburger span.e {
	position: relative;
	left: auto;
	width: 20px;
	}
	#hamburger.opened span.e {
	left: auto;
	}

	nav#works-nav li {
	padding: .5em .33em;
	-webkit-border-radius: .2em;
	-moz-border-radius: .2em;
	border-radius: .2em;
	}

	.work-list-item {
	}

	.website-link {
/*	font-size: 93%;*/
	}


	.company-info {
	padding: 0 4%;
	}

}



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

	footer p.copyright {
	font-size: 8px;
	}

	header {
	background-size: 96px;
	}

	#toplink {
	width: 140px;
	height: 16px;
	top: calc(50% - 8px);
	left: calc(50% - 70px);
	}


	.header-l,
	.header-r {
	height: 112px;
	}
	.header-l {
	padding-right: 48px;
	}
	.header-r {
	padding-left: 48px;
	}

	.company-name img {
	width: 90px;
	}

	nav#main-navigation.opened {
	width: 180px;
	}
/*	.blurbox.opened {
	-webkit-transform: translateX(-200px);
	-moz-transform: translateX(-200px);
	-o-transform: translateX(-200px);
	-ms-transform: translateX(-200px);
	transform: translateX(-200px);
	}	*/

	#hamburger {
	top: 36px;
	}

	nav#works-nav ul {
	margin: 4.0em auto 4.0em;
	font-size: 100%;
	}

	.work-list-item {
	margin-bottom: 5.0em;
	}

	.breadcrumb li {
	font-size: 69%;
	}

	.map-box {
	padding-bottom: 100%;
	}


	.page-title {
	font-size: 28px;
	}

	.content-title {
	font-size: 20px;
	}

	.content-subtitle {
	font-size: 18px;
	}


}



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

	.company-name img {
	width: 88px;
	}

}




/* -------------------------------------------------------- */

.garamond {
font-family: "simBodebeck-Light", serif;
font-style: normal;
}
.garamondi,
.eng {
font-family: "simBodebeck-Light", serif;
letter-spacing: 0.10em;
}

.jpn {
font-family: /*"a-otf-ryumin-pr6n",*/"游明朝", YuMincho, "HG明朝E", "ＭＳ 明朝", serif;
}

.mac .jpn,
.ios .jpn {
font-family: /*"a-otf-ryumin-pr6n",*/"ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "游明朝", YuMincho, serif;
}


.gothic {
font-family: Verdana,Arial,'游ゴシック',YuGothic,'メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
}
.mac .gothic,
.ios .gothic {
font-family: '-apple-system','BlinkMacSystemFont','.SF NS Display',Univers,Helvetica,'ヒラギノ角ゴ ProN W3','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',sans-serif;
}

.mono {
font-family: 'Share Tech Mono', Consolas, 'Andale Mono', AndaleMono, 'Courier New', Courier, monospace;
}

.font-copyright {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 0;
	height: 0;
	font-size: .1em;
	overflow: hidden;
}


.w450,
.w600 {
margin-left: auto;
margin-right: auto;
}

.w450 { max-width: 450px;}
.w600 { max-width: 600px; }

.iblock {display: inline-block;}

.invisible { visibility: hidden; }


.alignleft {text-align: left;}
.alignright {text-align: right;}

.font-size-5s { font-size: 61%; }
.font-size-4s { font-size: 69%; }
.font-size-3s { font-size: 77%; }
.font-size-2s { font-size: 85%; }
.font-size-s { font-size: 93%; }
.font-size-m { font-size: 100%; }
.font-size-l { font-size: 108%; }
.font-size-2l { font-size: 116%; }
.font-size-3l { font-size: 123.1%; }
.font-size-4l { font-size: 131%; }
.font-size-5l { font-size: 138.5%; }
.font-size-6l { font-size: 146.5%; }
.font-size-7l { font-size: 153.9%; }
.font-size-8l { font-size: 161.6%; }
.font-size-9l { font-size: 167%; }
.font-size-10l { font-size: 182%; }
.font-size-11l { font-size: 197%; }

.line-height-10 { line-height: 1.0; }
.line-height-13 { line-height: 1.3; }
.line-height-15 { line-height: 1.5; }
.line-height-18 { line-height: 1.8; }
.line-height-20 { line-height: 2.0; }


.mt05 {margin-top: .5em;}
.mt10 {margin-top: 1.0em;}
.mt15 {margin-top: 1.5em;}
.mt20 {margin-top: 2.0em;}
.mt30 {margin-top: 3.0em;}
.mt40 {margin-top: 4.0em;}

.mb05 {margin-bottom: .5em;}
.mb10 {margin-bottom: 1.0em;}
.mb15 {margin-bottom: 1.5em;}
.mb20 {margin-bottom: 2.0em;}
.mb30 {margin-bottom: 3.0em;}
.mb40 {margin-bottom: 4.0em;}
.mb50 {margin-bottom: 5.0em;}



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

.font-size-5s { font-size: 53%; }
.font-size-4s { font-size: 61%; }
.font-size-3s { font-size: 69%; }
.font-size-2s { font-size: 77%; }
.font-size-s { font-size: 85%; }
.font-size-m { font-size: 93%; }
.font-size-l { font-size: 100%; }
.font-size-2l { font-size: 108%; }
.font-size-3l { font-size: 116%; }
.font-size-4l { font-size: 123.1%; }
.font-size-5l { font-size: 131%; }
.font-size-6l { font-size: 138.5%; }
.font-size-7l { font-size: 146.5%; }
.font-size-8l { font-size: 153.9%; }
.font-size-9l { font-size: 161.6%; }
.font-size-10l { font-size: 167%; }
.font-size-11l { font-size: 182%; }

}

