@charset "utf-8";

html, body                 {width:100%;margin:0 auto;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}
body                       {-webkit-text-size-adjust:100%;}
div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
table, caption, tbody, tfoot, thead, tr, th, td, p,
fieldset, form, label, legend, input,
article, aside, canvas, figure, figcaption,
footer, header, nav, section,
b, u, i                    {margin:0;padding:0;list-style:none;font-style:normal;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}

a                          {outline:none;}
img                        {border:0 none;vertical-align:top;max-width:100%;height:auto;}
em                         {font-style:normal;font-weight:bold;}
nav ul, nav li             {list-style:none;}
.h a, .f a,
nav a, nav span            {text-decoration:none;}
table                      {border-collapse:collapse;}



/* ----------------------------------------------- font */
@font-face                 {font-family:'Yu Gothic M';src:local("Yu Gothic Medium"),local("Yu Gothic");font-weight:500;}
@font-face                 {font-family:'entypo';src:url('fonts/entypo.eot?ac19je');src:url('fonts/entypo.eot?#iefixac19je') format('embedded-opentype'),url('fonts/entypo.woff?ac19je') format('woff'),url('fonts/entypo.ttf?ac19je') format('truetype'),url('fonts/entypo.svg?ac19je#entypo') format('svg');font-weight: normal;font-style: normal;}

html                       {font-size:62.5%;}
body                       {font-size:16px;font-size:1.6rem;font-family: "YuGothic M", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;}
h1, h2,  h3                {font-weight:normal;font-family:"ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;}
h1                         {font-size:160%;}
h2                         {font-size:140%;}
h3                         {font-size:120%;}

/* ============================================================== base */
html, body                 {height:100%;}
body                       {background:#fff;color:#333;-webkit-text-size-adjust:100%;}
.c:before                  {height:0;width:1px;content:"";display:block;font-size:0;overflow:hidden;}
.sct                       {}
.fx                        {max-width:1240px;margin:0 auto;padding:1em;}
.fx:after                  {content:"";display:block;clear:both;height:0;font-size:0;}
.anchor                    {top:0;position:relative;}

a                          {}
a:visited                  {}
a:hover                    {}
a > img                    {vertical-align:top;}
a:hover > img              {opacity:0.75;}

.btns .btn                 {font-size:120%;width:100%;max-width:500px;text-align:center;overflow:hidden;color:#fff;background:#1c303f;line-height:2.4em;text-decoration:none;display:inline-block;position:relative;}
.btns .btn:before          {content:"";width:20em;height:20em;transform:rotate(45deg);display:block;border:0.8em solid rgba(255,255,255,0.3);position:absolute;top:-9.5em;right:5em;}

.scrllapp                  {transition:1s;opacity:0;}
.scrllapp.appr             {opacity:1;}

@media screen and (min-width: 750px){
.new_bnr{
	display: inline-block;
	width: 300px;
	margin-left: 15px;

}

}
@media screen and (min-width: 1000px){
	body                       {font-size:1.8rem;}
	.fx                        {padding:2em;}

}

/* ============================================================== header */
.h                         {position:absolute;width:calc(100% - 80px);z-index:3;}
.h .logo                   {padding:1em;}
.h .logo a                 {display:inline-block;}

/* ============================================================== navigation */
.gn_btn                    {background:rgba(0,0,0,0);width:56px;height:56px;display:block;position:fixed;right:1em;top:1em;line-height:1em;text-align:center;border:1px solid #fff;z-index:999;cursor:pointer;}
.h_mini .gn_btn            {background:rgba(0,0,0,0.9);}
.gn_btn i                  {color:#fff;margin-top:30px;font-size:50%;min-width:4em;position:relative;display:block;text-align:center;vertical-align:bottom;letter-spacing:-0.1em;}
.gn_btn:before,
.gn_btn:after,
.gn_btn i:after            {background:#fff;position:absolute;content:"";display:block;width:36px;height:4px;left:calc(50% - 18px);transition:0.2s;}
.gn_btn:before             {top:12px;}
.gn_btn:after              {top:36px;}
.gn_btn i:after            {top:-6px;}
.gn_on .gn_btn:before      {transform:rotate(45deg);top:24px;height:4px;}
.gn_on .gn_btn:after       {transform:rotate(-45deg);top:24px;height:4px;}
.gn_on .gn_btn i:after     {display:none;}

.gn_bg                     {position:fixed;width:100%;height:0;top:0;left:0;font-size:0;z-index:99;background:rgba(0,0,0,0.5);transition:0.2s;opacity:0;}
.gn_on .gn_bg              {height:100%;opacity:1;}
.gn                        {background:rgba(0,0,0,0.8);height:100vh;width:0;top:0;left:calc(100% + 2em);position:fixed;z-index:995;overflow:scroll;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;transition:0.3s;}
.gn_on .gn                 {width:300px;left:auto;right:0;}
.gn ul                     {padding:2em;}
.gn ul li                  {margin-bottom:0.5em;}
.gn a                      {color:#fff;display:inline-block;padding:0.5em;}

/* ============================================================== sct_mv */
.sct_mv                    {color:#fff;background:#111;position:relative;z-index:1;}
#mv_bg,
#mv_cover                  {width:100%;z-index:2;top:0;left:0;}
#mv_bg                     {position:relative;height:100vh;opacity:0;z-index:1;background-image:url("../img/mv_bg.jpg");background-size:cover;background-position:50% 50%;background-repeat:no-repeat;transition:2s;}
.show #mv_bg               {opacity:1;}
#mv_cover                  {position:absolute;height:100%;z-index:3;/*background-image:url("../img/mv_cover.png");background-color:rgba(0,0,0,0.2)*/;background-attachment:fixed;}
#mv_text                   {width:100%;position:absolute;top:calc(50% - 3em);left:0;z-index:5;text-align:center;opacity:0;transition:1s;}
#mv_text.show              {opacity:1;}
.sct_mv h2,
.sct_mv p                  {letter-spacing:0.1em;text-shadow:0 0 0.2em rgba(0,0,0,0.8);font-family:Tahoma, sans-serif;}
.sct_mv h2                 {font-size:240%;letter-spacing:0.15em;}

#mv_video                  {display:none;}

@media screen and (min-width: 750px){
	#mv_bg                     {display:none;}
	#mv_video                  {display:block;}
	#mv_video video            {width:100%;vertical-align:top;}
	#mv_cover                  {/*background-color:rgba(0,0,0,0.5);*/}

	.sct_mv h2                 {font-size:400%;letter-spacing:0.25em;}
	.sct_mv p                  {font-size:150%;}
}
@media screen and (min-width: 1000px){
	#mv_text                   {top:calc(50% - 5em);}
	.sct_mv h2                 {font-size:600%;letter-spacing:0.25em;}
	.sct_mv p                  {font-size:200%;}
}

/* ============================================================== sct_concept */
.sct_concept               {text-align:center;background:url("../img/concept_bg.png");position:relative;background-attachment:fixed;}
.sct_concept .fx           {padding:3em 1em;position:relative;z-index:3;}
.sct_concept:after         {content:"";width:100%;height:100%;display:block;bottom:0;left:0;position:absolute;z-index:1;background-image:url("../img/concept_image.png");background-size:120% auto;background-position:50% 100%;background-repeat:no-repeat;}
.sct_concept h2            {margin-bottom:2em;}
.sct_concept h2 i          {display:block;line-height:100%;margin-bottom:1.5em;}
.sct_concept h2 i:nth-of-type(1)          {padding:0 20%;}
.sct_concept p             {text-align:left;line-height:200%;background:rgba(255,255,255,0.8);padding:1em;margin-bottom:1em;}
.sct_concept p br          {display:none;}

@media screen and (min-width: 750px){
	.sct_concept p             {font-size:120%;text-align:center;background:transparent;}
	.sct_concept p br          {display:inline;}
}
@media screen and (min-width: 1000px){
	.sct_concept .fx           {padding:10em 1em;}
	.sct_concept:after         {background-size:100% auto;background-position:50% 100%;}
	.sct_concept h2            {margin-bottom:3em;}
	.sct_concept h2 i          {margin-bottom:2em;}
}
@media screen and (min-width: 1400px){
	.sct_concept .fx           {padding:14em 1em;}
}

/* ============================================================== sct_group */
.sct_group                   {background:#111;}
.sct_group .fx               {padding:2em 1em;position:relative;}
.sct_group ul                {margin-bottom:2em;}
.sct_group ul:last-of-type   {margin-bottom:0;}
.sct_group ul:after          {content:"";display:block;clear:both;height:0;font-size:0;}
.sct_group li                {float:left;width:20%;perspective:100px;}
.sct_group li span           {transition:0.6s;position:relative;display:block;position:relative;}
.sct_group ul.trsf li:nth-of-type(1) span  {transform:rotateY(20deg);}
.sct_group ul.trsf li:nth-of-type(2) span  {transform:rotateY(20deg) translate(-2px,0);}
.sct_group ul.trsf li:nth-of-type(4) span  {transform:rotateY(-20deg) translate(2px,0);}
.sct_group ul.trsf li:nth-of-type(5) span  {transform:rotateY(-20deg);}
.sct_group li span i         {font-size:60%;color:#fff;position:absolute;top:calc(50% - 0.5em);transform:rotate(-90deg);left:calc(20% - 2.4em);display:block;line-height:100%;white-space:nowrap;}

.sct_group ul:nth-of-type(2) li span i              {font-size:70%;left:calc(50% - 4.5em);}
.sct_group ul:nth-of-type(3) li span i              {left:calc(0% - 0.5em);}
.sct_group ul:nth-of-type(3) li span i              {left:calc(0% - 0.5em);}
.sct_group ul:nth-of-type(4) li span i              {left:calc(0% - 3em);}
.sct_group ul:nth-of-type(5) li span i              {left:calc(0% - 4em);}

.sct_group ul:nth-of-type(1) li:nth-of-type(1) span {background:#00549c;}
.sct_group ul:nth-of-type(2) li:nth-of-type(1) span {background:#72d3ff;}
.sct_group ul:nth-of-type(3) li:nth-of-type(1) span {background:#1c4a00;}
.sct_group ul:nth-of-type(4) li:nth-of-type(1) span {background:#779D01;}
.sct_group ul:nth-of-type(5) li:nth-of-type(1) span {background:#ff482f;}

@media screen and (min-width: 500px){
	.sct_group .fx               {padding:4em 1em;}
	.sct_group ul                {margin-bottom:4em;}
	.sct_group li                {perspective:200px;}
	.sct_group li span i         {font-size:100%;}
	.sct_group ul:nth-of-type(2) li span i              {font-size:100%;}
	.sct_group ul:nth-of-type(5) li span i{font-size:80%}

@media screen and (min-width: 750px){
	.sct_group .fx               {padding:6em 1em;}
	.sct_group ul                {margin-bottom:6em;}
	.sct_group li                {perspective:300px;}
	.sct_group li span i         {font-size:120%;}
	.sct_group ul:nth-of-type(2) li span i              {font-size:160%;}
	.sct_group ul:nth-of-type(5) li span i  {font-size:60%;}
}
@media screen and (min-width: 1000px){
	.sct_group .fx               {padding:10em 1em;}
	.sct_group ul                {margin-bottom:10em;}
	.sct_group li                {perspective:500px;}
	.sct_group li span i         {font-size:150%;top:calc(50% - 0.5em);left:calc(40% - 2.3em);}
	.sct_group ul:nth-of-type(2) li span i              {font-size:200%;}
	.sct_group ul:nth-of-type(5) li span i             {font-size:120%;top:calc(50% - 0.5em);left:calc(0% - 2.3em);}
}

/* ============================================================== sct_7a, sct_3p */
.sct_doc                     {}
.sct_doc h2                  {font-size:140%;font-weight:bold;letter-spacing:0.1em;margin-bottom:1em;}
.sct_doc h2 em,
.sct_doc h2 i                {font-size:140%;}
.sct_doc h2 em               {letter-spacing:-0.1em;}
.sct_doc p                   {margin-bottom:2em;}
.sct_doc .btn                {max-width:260px;}
.sct_7a h2 em                {color:#d75959;}
.sct_7a .btn                 {background:#d75959;}
.sct_3p h2 em                {color:#af8dc6;}
.sct_3p .btn                 {background:#af8dc6;}
.sct_3p                      {background:#ebebeb;}

@media screen and (min-width: 750px){
	.sct_doc                     {background-size:cover;background-position:50% 50%;background-repeat:no-repeat;}
	.sct_7a                      {background-image:url("../img/sct_7a_bg.jpg");}
	.sct_3p                      {background-image:url("../img/sct_3p_bg.jpg");}
	.sct_doc .fx                 {max-width:none;padding-top:4em;padding-bottom:4em;}
	.sct_7a .fx                  {padding-left:50%;}
	.sct_3p .fx                  {padding-right:50%;}
}
@media screen and (min-width: 1240px){
	.sct_doc .fx                 {max-width:1240px;padding-top:8em;padding-bottom:8em;}
	.sct_doc h2                  {font-size:180%;}
	.sct_doc p                   {margin-bottom:4em;}
	.sct_7a .fx                  {padding-left:620px;}
	.sct_3p .fx                  {padding-right:620px;}
}

/* ============================================================== sct_link */
.sct_link li                 {margin-bottom:1em;}
.sct_link li:nth-of-type(2)  {margin-bottom:0;}
.sct_link a,
.sct_link a span,
.sct_link a i                {display:block;}
.sct_link a                  {padding-bottom:6em;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;text-decoration:none;}
.sct_link li:nth-of-type(1) a{background-image:url("../img/link_company_bg.jpg");}
.sct_link li:nth-of-type(2) a{background-image:url("../img/link_contact_bg.jpg");}
.sct_link a span             {color:#fff;font-weight:bold;padding:0.5em;}
.sct_link a span i           {display:inline-block;}
.sct_link a span i:nth-of-type(1)           {font-size:120%;margin-right:0.5em;}
.sct_link a span i:nth-of-type(2)           {font-size:90%;}

.sct_link li:nth-of-type(1) a span{
background: -moz-linear-gradient(top,  rgba(98,137,202,0.8) 0%, rgba(38,87,161,0.8) 50%, rgba(98,137,202,0.8) 51%, rgba(150,168,206,0.8) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  rgba(98,137,202,0.8) 0%,rgba(38,87,161,0.8) 50%,rgba(98,137,202,0.8) 51%,rgba(150,168,206,0.8) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  rgba(98,137,202,0.8) 0%,rgba(38,87,161,0.8) 50%,rgba(98,137,202,0.8) 51%,rgba(150,168,206,0.8) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
.sct_link li:nth-of-type(2) a span{
background: -moz-linear-gradient(top,  rgba(158,201,100,0.8) 0%, rgba(116,158,40,0.8) 50%, rgba(158,201,100,0.8) 51%, rgba(182,205,150,0.8) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  rgba(158,201,100,0.8) 0%,rgba(116,158,40,0.8) 50%,rgba(158,201,100,0.8) 51%,rgba(182,205,150,0.8) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  rgba(158,201,100,0.8) 0%,rgba(116,158,40,0.8) 50%,rgba(158,201,100,0.8) 51%,rgba(182,205,150,0.8) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

@media screen and (min-width: 750px){
	.sct_link .fx                {padding:3em 1em;}
	.sct_link ul:after           {content:"";display:block;clear:both;height:0;font-size:0;}
	.sct_link li                 {float:left;width:48%;margin-bottom:0;}
	.sct_link li:nth-of-type(2)  {float:right;}
	.sct_link a                  {padding-bottom:8em;}
}
@media screen and (min-width: 1240px){
	.sct_link .fx                {padding:6em 1em;}
	.sct_link a span             {padding:0.8em 1.5em;font-size:160%;}
	.sct_link a span i:nth-of-type(2)           {font-size:80%;}
}

/* ============================================================== footer */
.f                           {background:#000;color:#fff;}
.f .copyright                {font-size:80%;}
@media screen and (min-width: 750px){
	.f .fx                       {padding:2em 1em 4em 1em;overflow:hidden;position:relative;}
	.f .fx:before                {content:"";display:block;width:600px;height:1px;position:absolute;background:#ccc;transform:rotate(-60deg);top:0;left:60px;}
	.f .logo,
	.f .copyright                {display:inline-block;vertical-align:middle;padding-top:4em;}
	.f .copyright                {margin-left:4em;}
}
@media screen and (min-width: 1240px){
	.f .fx:before                {left:120px;}
	.f .copyright                {font-size:100%;margin-left:10em;}
}


/* ============================================================== content header */
.c_h                        {background:#000;color:#fff;padding-top:90px;text-align:center;}
.c_h .fx                    {background:#555;max-width:none;padding:1em;}

/* ============================================================== company */
.sct_doc .fx               {max-width:750px;}
.dl_fld dl                 {margin-bottom:1.5em;}
.dl_fld dt                 {margin-bottom:0.25em;line-height:180%;}
.dl_fld dt i               {background:#333;color:#fff;font-size:75%;padding:0 1em;display:inline-block;border-radius:5px;vertical-align:top;white-space:nowrap;}
.dl_fld dd p               {margin-bottom:0.5em;}
.dl_fld dd p:last-child    {margin-bottom:0;}
.dl_fld dd span            {display:block;}
.dl_fld dd i               {display:inline-block;margin-right:0.5em;}

@media screen and (min-width: 750px){
	.sct_doc .fx               {padding:4em 1em;}
	.dl_fld dl                 {display:flex;}
	.dl_fld dt                 {width:10em;padding-right:1em;position:relative;}
	.dl_fld dt:before          {position:absolute;content:"";display:block;width:100%;height:1px;background:#ccc;top:0.75em;z-index:1;}
	.dl_fld dt i               {position:relative;z-index:3;}
	.dl_fld dd                 {width:calc(100% - 11em);padding-left:1em;border-left:1px solid #ccc;}
}

/* ============================================================== contact */
.btns .btn_posi            {background:#000;font-size:100%;}

.big {width:100%!important;}
.dl_fld .posi {width:6em;display: inline-block!important;}