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

/* -----------RESET----------- */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,main,summary,time,mark,audio,video,a,input,textarea,section
{margin:0;padding:0; border:0; font-size:100%; background:transparent; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,main{ display:block;}
nav ul{ list-style:none;}
ul{ list-style:none; }
blockquote,q{ quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{ content:''; content:none;}
pre,code,kbd,samp{ font-family:monospace,monospace; font-size:inherit;}
table{ border-collapse:collapse; border-spacing:0;}
img{ border:0;}
address,caption,cite,code,dfn,em,th,var{ font-style:normal; font-weight:normal;}
caption,th{ text-align:left;}
h1,h2,h3,h4,h5,h6{ font-size:100%; font-weight:normal}
sup{ vertical-align:text-top; font-size:75%;}
sub{ vertical-align:text-bottom; font-size:75%;}
input,textarea,select{ z-index:auto; font-family:inherit; font-size:inherit; font-weight:inherit; vertical-align:middle;}
a{ outline:none;}
audio:not([controls]){ display:none;}
time{ display:inline;}
[hidden]{ display:none;}
input::-ms-clear,input::-ms-reveal,input:focus::-ms-clear,input:focus::-ms-reveal{visibility:hidden; display:none;}
button::-moz-focus-inner,input[type="reset"]::-moz-focus-inner,input[type="button"]::-moz-focus-inner,input[type="submit"]::-moz-focus-inner,input[type="file"]>input[type="button"]::-moz-focus-inner{ padding:0; border:0; outline:none;}
/* clear Fix */
.clr{clear:both;}
.hide{position:absolute !important; left:-9999px !important; top:-9999px !important;}
.clr{clear:both;}
section {clear:both; zoom:1;}
header:after,footer:after,nav:after,article:after,main:after,section:after,ul:after,.inner:after,.clrFx:after{content:''; clear:both; display:block;}
img{-ms-interpolation-mode: bicubic;}
/* chrome bug fix*/
*{max-height:999999px;}
*,*::before,*::after {will-change:all;}
textarea,input[type="email"],input[type="password"],input[type="text"],input[type="button"],input[type="submit"]{-webkit-appearance:none;}
textarea{resize:vertical;}
input:-webkit-autofill {-webkit-box-shadow: 0 0 0px 1000px rgba(255,255,255,1) inset; outline:none;}
input,button {outline:none;}

/* -----------BASE SET----------- */
html{overflow:visible;}
body {position:static; overflow:auto; width:auto; *overflow-y:hidden; color:#000; background:#fff;}
/* font family */
body {-webkit-text-size-adjust:100%; -webkit-font-smoothing:antialiased; font-family: 'Lato', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;}
button {font-family: 'Lato', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; cursor:pointer;}
/* link color */
a:link {color:#000; text-decoration: underline;}
a:visited {color:#000; text-decoration:none;}
a:hover {color:#000; text-decoration:none;}
a:active {color:#000; text-decoration:none;}
a,button,input {-webkit-tap-highlight-color:rgba(0,0,0,0.5);}
/* leyoutblock */
header,footer,section,main,nav,.fat-nav,#fixed,#header {font-size:0; line-height: 1;}
header img,footer img,section img,main img,#header img {width:100%; height:auto;}
header {position: relative; z-index: 10;}
main {position: relative; z-index: 1;}
section,footer{position: relative;}
#movie_program footer {background: #fff;}

/* 
	SCROLL DOWN ANIMATION
	
*****************************************************/
    @keyframes sdl {
      0% {transform: scale(1, 0);transform-origin: 0 0;}
      50% {transform: scale(1, 1);transform-origin: 0 0;}
      50.1% {transform: scale(1, 1);transform-origin: 0 100%;}
      100% {transform: scale(1, 0);transform-origin: 0 100%;}
    }

/* 
	for SP
	
*****************************************************/
@media screen and (max-width:500px){
    .pcitem {display: none;}
    .inner {width: 92vw; margin: 0 auto; position: relative;}
    /*-----------HEADER-----------*/
    header h1 {width: 40.8vw; position: fixed; top: 4vw; left: 4vw;}
    /**menu-icon**/
    #toggle { position: fixed; top: 4vw;right: 4vw;z-index: 1000;}
    #toggle-box { position: relative;width: 11vw;height: 4.6vw;cursor: pointer;}
    #toggle-box > span::before {content: ""; display: block;width: 100%; height: 2px; background: #000; position: absolute; top: 1.3vw;transition: transform .3s ease-in-out, top .2s ease, bottom .2s ease;}
    #toggle-box > span::after {content: ""; display: block;width: 100%; height: 2px; background: #000; position: absolute; bottom: 1.3vw;transition: transform .3s ease-in-out, top .2s ease, bottom .2s ease;}
    .is-open #toggle-box > span::before {top: 50%;transform: rotate(20deg) translatey(-50%);}
    .is-open #toggle-box > span::after {top: 50%;transform: rotate(-20deg) translatey(-50%);}
    /**menu**/
    #nav-content {z-index: 900;overflow: auto;width: 100%;height: 100%;background: #fff;color: #000;position: fixed;top: 0;left: 0;opacity: 0;transition: opacity .6s ease, visibility .6s ease; pointer-events: none;}
	#nav-content .container {width: 92vw; margin: 0 auto;}
	#nav-content .main.container {margin-bottom: 13.5vw; padding-top: 26vw;}
    #nav-content .main.container li:nth-child(1) a {display: block; background: url("../images/about_title.png") no-repeat; width: 80.7vw; height: 11.7vw; background-size: 100%;}
    #nav-content .main.container li:nth-child(2) a {display: block; background: url("../images/service_title.png") no-repeat; width: 46.3vw; height: 10.9vw; background-size: 100%;}
    #nav-content .main.container li:nth-child(3) a {display: block; background: url("../images/company_title.png") no-repeat; width: 61.3vw; height: 14.8vw; background-size: 100%;}
    #nav-content .main.container li:nth-child(4) a {display: block; background: url("../images/contact_title.png") no-repeat; width: 46.7vw; height: 10.9vw; background-size: 100%;}
    #nav-content .main.container li:nth-child(1) {margin-bottom: 9vw;}
    #nav-content .main.container li:nth-child(2) {margin-bottom: 9vw;}
    #nav-content .main.container li:nth-child(3) {margin-bottom: 5.2vw;}
	#nav-content .sub.container {margin-bottom: 6vw; height: 27.3vw; position: relative;}
    #nav-content .sub.container li {font-size: 3.8vw; font-weight: bold;}
    #nav-content .sub.container li:nth-child(1) {font-size: 3vw; letter-spacing: 0.06em; border-top: 1px solid #000; border-bottom: 1px solid #000; width: 92vw; text-align: center; padding: 1vw;}
	#nav-content .sub.container li:nth-child(2) {position: absolute; top: 13vw; left: 0;}
	#nav-content .sub.container li:nth-child(3) {position: absolute; top: 13vw; right: 0;}
	#nav-content .sub.container li:nth-child(4) {position: absolute; bottom: 0; left: 0;}
	#nav-content .sub.container li:nth-child(5) {position: absolute; bottom: 0; right: 0;}
	#nav-content .sub.container li a::after {content: ""; display: inline-block; width: 3.4vw; height: 2.6vw; background: url("../images/icon_blank_bk.png") no-repeat; background-size: 100%; margin-left: 0.5vw;}
	#nav-content .sub.container li a::before {content: ""; display: inline-block; width: 4.3vw; height: 4.3vw; margin-right: 1.3vw; vertical-align: middle; margin-top: -0.7vw;}
	#nav-content .sub.container li:nth-child(2) a::before {background: url("../images/h_icon_f.png") no-repeat; background-size: 100%;}
	#nav-content .sub.container li:nth-child(3) a::before {background: url("../images/h_icon_i.png") no-repeat; background-size: 100%;}
	#nav-content .sub.container li:nth-child(4) a::before {background: url("../images/h_icon_t.png") no-repeat; background-size: 100%;}
	#nav-content .sub.container li:nth-child(5) a::before {background: url("../images/h_icon_y.png") no-repeat; background-size: 100%;}
	#nav-content .ban.container {height: 17vw; position: relative;}
	#nav-content .ban.container li:nth-child(1) {width: 44vw; position: absolute; top: 0; left: 0;}
	#nav-content .ban.container li:nth-child(2) {width: 44vw; position: absolute; top: 0; right: 0;}
	#nav-content .ban.container li a::before,
	#nav-content .ban.container li a::after {content: ""; display: block; position: absolute;}
	#nav-content .ban.container li a {display: block; width: 44vw; height: 17vw; background: #000; position: relative; margin: 7.5px 0;}
	#nav-content .ban.container li:nth-child(1) a::before {background: url("../images/fitago_logo_wh.png") no-repeat; width: 22.4vw; height: 6.4vw; background-size: 100%; top: 50%; left: 50%; margin: -2.2vw 0 0 -11.2vw;}
	#nav-content .ban.container li:nth-child(2) a::before {background: url("../images/fitagolab_logo_wh.png") no-repeat; width: 32.6vw; height: 6.3vw; background-size: 100%; top: 50%; left: 50%; margin: -2.15vw 0 0 -16.3vw;}
	#nav-content .ban.container li:nth-child(1) a::after,
	#nav-content .ban.container li:nth-child(2) a::after {background: url("../images/icon_blank_wh.png") no-repeat; width: 3.4vw; height: 2.6vw; background-size: 100%; top: 2vw; right: 2vw;}
    .is-open {overflow: hidden;}
    .is-open #nav-content {z-index: 999;visibility: visible;opacity: 1;}
    .is-open #nav-content a {pointer-events: auto;}
    /*-----------FOOTER-----------*/
    footer {padding: 8vw; text-align: center;}
    footer h1 {width: 35.3vw; margin: 0 auto 3vw;}
    footer h2 {font-size: 3.4vw; font-weight: bold; margin-bottom: 5vw}
    footer .copyright {font-size: 3vw; letter-spacing: 0.08em;}
	/*-----------MAIN COMMON-----------*/
	main h3 {font-size: 5.4vw; font-weight: bold; letter-spacing: 0.1em; font-feature-settings: "palt";}
	/*-----------FV-----------*/
	main #fv {height: 100vh; padding-top: 36vw;}
	main #fv .movie {width: 92vw; height: 51.8vw; margin: 0 4vw;}
    main #fv .movie video {width: 100%; height: 100%;}
	main #fv h2 {width: 80vw; position: absolute; left: 8vw; top: 50%; margin-top: -5vw}
    main #fv h3 {font-size: 4.7vw; font-weight: bold; letter-spacing: 0.1em; font-feature-settings: "palt"; line-height: 7.5vw; position: absolute; left: 8vw; top: 50%; margin-top: 53vw;}
    main #fv a.scroll_down {display:block; background: url("../images/fv_scrolldown.png") no-repeat; width: 2.9vw; height: 10.1vw; background-size: 100%; padding: 0 0 46vw; position: absolute; right: 6vw; bottom: 0; overflow: hidden;}
    main #fv a.scroll_down:hover {opacity: 0.5;}
    main #fv a.scroll_down::after {content: ''; width: 1px; height: 34vw; background: #000; position: absolute; bottom: 0; left: 50%; margin-left: -1px; animation: sdl 1.5s cubic-bezier(1, 0, 0, 1) infinite;}
	/*-----------ABOUT-----------*/
	main #about {padding: 40vw 4vw 40vw;}
	main #about h2 {width: 80.7vw; margin-bottom: 6vw;}
	main #about h3 {font-size: 5.4vw; font-weight: bold; letter-spacing: 0.05em; font-feature-settings: "palt"; margin-bottom: 8vw;}
	main #about p {font-size: 3.6vw; line-height: 8vw; letter-spacing: 0.1em;}
    /*-----------SERVICE-----------*/
    main #service {padding-bottom: 10vw;}
    main #service .service_bg figure {background: url("../images/service_title_bg.jpg"); background-size: cover; height: 42vw; width: 100%;}
    main #service h2 {width: 46.3vw; margin: -2.1vw 0 6.2vw;}
    main #service ul li {width: 100%; height: 80vw; margin-top: 16vw; position: relative;}
    main #service ul li p {font-size: 4.2vw; font-weight: bold; line-height: 9vw; position: absolute; left: 0; bottom: 12.5vw;}
    main #service ul li p span {position: relative;}
	main #service ul li p span::before {content: ""; display: block; width: 104%; height: 130%; background: #fff; position: absolute; top: -15%; bottom: 0; left: 0; right: 0; z-index: -1;}
    main #service ul li figure {width: 68vw; height: 80vw; position: absolute; bottom: 0; right: 0;}
	main #service ul li:nth-child(1) h4 {width: 36.5vw;}
	main #service ul li:nth-child(1) figure {background: url("../images/service_figure01.jpg") no-repeat; background-size: 100%; z-index: -1;}
	main #service ul li:nth-child(2) h4 {width: 46.78vw;}
	main #service ul li:nth-child(2) figure {background: url("../images/service_figure02.jpg") no-repeat; background-size: 100%; z-index: -1;}
	main #service ul li:nth-child(3) h4 {width: 52.4vw;}
	main #service ul li:nth-child(3) figure {background: url("../images/service_figure03.jpg") no-repeat; background-size: 100%; z-index: -1;}
    main #service ul li .btn {border: 1px solid #000; width: 44vw; height: 9vw; position: absolute; bottom: -3.4vw; left: 0;}
	main #service ul li .btn a {display: block; width: 100%; height: 100%; background: #000; text-align: center; padding-top: 2.4vw; font-size: 3.6vw; letter-spacing: 0.1em; color: #fff; text-decoration: none;}
	main #service ul li .btn a span::after {content: ""; display: inline-block; background: url("../images/icon_blank_wh.png") no-repeat; width: 3.4vw; height: 2.6vw; background-size: 100%; margin-left: 2vw;}
    /*-----------COMPANY-----------*/
    main #company {padding:30vw 0 10vw;}
    main #company h2 {width: 68.2vw; margin-bottom: 2.3vw;}
    main #company dl {margin: 15.5vw 0 0; font-size: 3.6vw; line-height: 6vw; letter-spacing: 0.1em;}
    main #company dl dt {font-weight: bold;}
	main #company dl dd {border-bottom: 1px solid #ccc; padding-bottom: 4vw; margin-bottom: 4vw;}
    main #company dl dd ul {list-style: disc; padding-left: 1.2em;}
    /*-----------CONTACT-----------*/
    main #contact {padding:30vw 0;}
    main #contact::before {content: ""; display: block; background: #f0f0f0; position: absolute; top: 31vw; bottom: 0; left: 0; right: 0;}
	main #contact h2 {width: 51.9vw; margin-bottom: 6.4vw; }
    main #contact h2 img {margin-top: -7.4vw;}
    main #contact form {padding-top:15vw;}
    main #contact form dl {width: 100%; font-size: 3.6vw;}
    main #contact form dl dt {font-weight: bold; letter-spacing: 0.08em; margin-bottom: 3vw;}
    main #contact form dl dd {margin-bottom: 7vw;}
    main #contact form dl dd input,
	main #contact form dl dd select, 
    main #contact form dl dd textarea {background-color: #fff; border: none; width: 100%!important; height: 8vw; padding: 2vw 3vw;}
    main #contact form dl dd textarea {min-height: 50vw!important;}
    main #contact form .btn-send {width: 92vw; height: 15vw; position: relative;}
    main #contact form .btn-send::after {content: ""; display: block; background: url("../images/arrow_wh.png") no-repeat; width: 2.3vw; height: 3.6vw; background-size: 100%; position: absolute; right: 3vw; top: 50%; margin-top: -1.9vw;}
    main #contact form .btn-send input {width: 92vw; height: 15vw; display: block; background: #000; position: absolute; font-size: 4vw; color: #fff; letter-spacing: 0.1em; border: 1px solid #000;}
    /*-----------THANKS-----------*/
    main #contact_thanks {padding: 50vw 0 40vw; border-bottom: 1px solid #ccc;}
    main #contact_thanks h2 {font-size: 6.5vw; line-height: 1.2em; font-weight: bold; letter-spacing: 0.1em; margin-bottom: 5vw; text-align: center;}
    main #contact_thanks p {font-size: 3.6vw; line-height: 7vw; letter-spacing: 0.05em; width: 90vw; margin: 0 auto; text-align: justify;}
	/*-----------movie_program-----------*/
	#movie_program {background: url("../images/movie_program/bg@sp.jpg")no-repeat;background-size: cover;background-attachment: fixed;}
	#movie_program main {padding: 10vw 4vw;}
	#movie_program main h1 {font-size: 5.5vw;line-height: 1.4em;font-weight: bold;margin-bottom: 10vw;}
	#movie_program main h1 span{position: relative;z-index: 10;}
	#movie_program main h1 span::before{content: "";display: block;background: #f6ff00; width: 100%; height: 3.2vw;position: absolute;left: 0;bottom: -1vw;z-index: -1;}
	#movie_program main h1 span::after{content: "";display: block;background: #f6ff00; width: 74%; height: 3.2vw;position: absolute;left: 0;bottom: 7vw;z-index: -1;}
	#movie_program main h2{font-size: 5.5vw; font-weight: bold;padding: 0 0 0 1em;margin-bottom: 8vw; position: relative;}
	#movie_program main h2::before{content: "";display: block;background: #fff; width: 1.6vw; height: 8vw; position: absolute;left: 0;top: 50%;margin-top: -4vw;}
	#movie_program main h2::after{content: "";display: block;background: #fff; height: 1px; position: absolute;left: 0;right: 0; top: 50%;margin-top: 4vw;}
	#movie_program main ul {display: flex; flex-wrap: wrap;gap:6vw;}
	#movie_program main ul + h2 {margin-top: 8vw;}
	#movie_program main ul li {width: 43vw;}
}
/* 
	for PC
	
*****************************************************/
@media screen and (min-width:501px){ 
    main,section {min-width: 1200px;}
	a,input,a::before,a::after,span::before,span::after {transition: all  0.3s ease;}
    .inner {width: 1040px; margin: 0 auto; position: relative;}
    .spitem {display: none;}
    /*-----------HEADER-----------*/
    header h1 {width: 245.5px; position: fixed; top: 40px; left: 40px;}
    header .account {position: fixed; top: 43px; right: 162px;}
    header .account li {float: left;}
    header .account li:nth-child(1) {font-size: 13px; font-weight: bold; letter-spacing: 0.06em; position: relative; margin-right: 65px; padding-top: 3px;}
    header .account li:nth-child(1)::after {content: ""; display: block; background: url("../images/h_arrow.png") no-repeat; width: 6.5px; height: 10px; background-size: 100%; position: absolute; top: 50%; margin-top: -3px; right: -30px;}
    header .account li:nth-child(2),
    header .account li:nth-child(3),
    header .account li:nth-child(4) {margin-right: 25px;}
    header .account li:nth-child(2) a {display: block; background: url("../images/h_icon_f.png") no-repeat; width: 21.5px; height: 21.5px; background-size: 100%;}
    header .account li:nth-child(3) a {display: block; background: url("../images/h_icon_i.png") no-repeat; width: 21.5px; height: 21.5px; background-size: 100%;}
    header .account li:nth-child(4) a {display: block; background: url("../images/h_icon_t.png") no-repeat; width: 21.5px; height: 21.5px; background-size: 100%;}
    header .account li:nth-child(5) a {display: block; background: url("../images/h_icon_y.png") no-repeat; width: 21.5px; height: 21.5px; background-size: 100%;}
    header .account li:nth-child(2) a:hover {display: block; background: url("../images/h_icon_f_ov.png") no-repeat; width: 21.5px; height: 21.5px; background-size: 100%;}
    header .account li:nth-child(3) a:hover {display: block; background: url("../images/h_icon_i_ov.png") no-repeat; width: 21.5px; height: 21.5px; background-size: 100%;}
    header .account li:nth-child(4) a:hover {display: block; background: url("../images/h_icon_t_ov.png") no-repeat; width: 21.5px; height: 21.5px; background-size: 100%;}
    header .account li:nth-child(5) a:hover {display: block; background: url("../images/h_icon_y_ov.png") no-repeat; width: 21.5px; height: 21.5px; background-size: 100%;}
    /**menu-icon**/
    #toggle { position: fixed; top: 40px;right: 40px;z-index: 1000;}
    #toggle-box { position: relative;width: 75px;height: 27.5px;cursor: pointer;}
    #toggle-box > span::before {content: ""; display: block;width: 100%; height: 2px; background: #000; position: absolute; top: 9px;transition: transform .3s ease-in-out, top .2s ease, bottom .2s ease;}
    #toggle-box > span::after {content: ""; display: block;width: 100%; height: 2px; background: #000; position: absolute; bottom: 9px;transition: transform .3s ease-in-out, top .2s ease, bottom .2s ease;}
    .is-open #toggle-box > span::before {top: 50%;transform: rotate(20deg) translatey(-50%);}
    .is-open #toggle-box > span::after {top: 50%;transform: rotate(-20deg) translatey(-50%);}
    /**menu**/
    #nav-content {z-index: 900;overflow: auto;width: 100%;height: 100%;background: #fff;color: #000;position: fixed;top: 0;left: 0;opacity: 0;transition: opacity .6s ease; visibility: .6s ease; pointer-events: none;}
    #nav-content .main.container {position: absolute; top: 50%; left: 50%; margin-left: -403px; margin-top: -195px}
    #nav-content .main.container li a:hover {opacity: 0.5;}
    #nav-content .main.container li:nth-child(1) a {display: block; background: url("../images/about_title.png") no-repeat; width: 448.5px; height: 65.5px; background-size: 100%;}
    #nav-content .main.container li:nth-child(2) a {display: block; background: url("../images/service_title.png") no-repeat; width: 260px; height: 61px; background-size: 100%;}
    #nav-content .main.container li:nth-child(3) a {display: block; background: url("../images/company_title.png") no-repeat; width: 341px; height: 82.5px; background-size: 100%;}
    #nav-content .main.container li:nth-child(4) a {display: block; background: url("../images/contact_title.png") no-repeat; width: 259.5px; height: 61px; background-size: 100%;}
    #nav-content .main.container li:nth-child(1) {margin-bottom: 50px;}
    #nav-content .main.container li:nth-child(2) {margin-bottom: 50px;}
    #nav-content .main.container li:nth-child(3) {margin-bottom: 27.5px;}
    #nav-content .sub.container {position: absolute; top: 50%; left: 50%; margin-left: 130px; margin-top: -193px;}
    #nav-content .sub.container li {font-size: 17px; font-weight: bold; letter-spacing: 0.06em; margin-bottom: 26px;}
    #nav-content .sub.container li:nth-child(1) {font-size: 15px; border-top: 1px solid #000; border-bottom: 1px solid #000; width: 270px; text-align: center;padding: 5px; margin-bottom: 32px;}
	#nav-content .sub.container li a::after {content: ""; display: inline-block; width: 17px; height: 13px; background: url("../images/icon_blank_bk.png") no-repeat; background-size: 100%; margin-left: 5px;}
	#nav-content .sub.container li a::before {content: ""; display: inline-block; width: 21.5px; height: 21.5px; margin-right: 13px; vertical-align: middle; margin-top: -5px;}
	#nav-content .sub.container li:nth-child(2) a::before {background: url("../images/h_icon_f.png") no-repeat; background-size: 100%;}
	#nav-content .sub.container li:nth-child(3) a::before {background: url("../images/h_icon_i.png") no-repeat; background-size: 100%;}
	#nav-content .sub.container li:nth-child(4) a::before {background: url("../images/h_icon_t.png") no-repeat; background-size: 100%;}
	#nav-content .sub.container li:nth-child(5) a::before {background: url("../images/h_icon_y.png") no-repeat; background-size: 100%;}
	#nav-content .sub.container li:nth-child(2) a:hover::before {background: url("../images/h_icon_f_ov.png") no-repeat; background-size: 100%;}
	#nav-content .sub.container li:nth-child(3) a:hover::before {background: url("../images/h_icon_i_ov.png") no-repeat; background-size: 100%;}
	#nav-content .sub.container li:nth-child(4) a:hover::before {background: url("../images/h_icon_t_ov.png") no-repeat; background-size: 100%;}
	#nav-content .sub.container li:nth-child(5) a:hover::before {background: url("../images/h_icon_y_ov.png") no-repeat; background-size: 100%;}
	#nav-content .ban.container {position: absolute; top: 50%; left: 50%; margin-left: 130px; margin-top: 67.5px;}
	#nav-content .ban.container li a::before,
	#nav-content .ban.container li a::after {content: ""; display: block; position: absolute;}
	#nav-content .ban.container li a {display: block; width: 270px; height: 60px; background: #000; position: relative; margin: 7.5px 0;}
	#nav-content .ban.container li:nth-child(1) a::before { background: url("../images/fitago_logo_wh.png") no-repeat; width: 112px; height: 32px; background-size: 100%; top: 50%; left: 50%; margin: -12px 0 0 -56px;}
	#nav-content .ban.container li:nth-child(2) a::before { background: url("../images/fitagolab_logo_wh.png") no-repeat; width: 163px; height: 31.5px; background-size: 100%; top: 50%; left: 50%; margin: -12px 0 0 -81.5px;}
	#nav-content .ban.container li:nth-child(1) a::after,
	#nav-content .ban.container li:nth-child(2) a::after {background: url("../images/icon_blank_wh.png") no-repeat; width: 17px; height: 13px; background-size: 100%; top: 50%; margin-top: -7.5px; right: 20px;}
	#nav-content .ban.container li a:hover {background: #fff; border: 1px solid #000;}
	#nav-content .ban.container li:nth-child(1) a:hover::before {background: url("../images/fitago_logo_bk.png") no-repeat; background-size: 100%;}
	#nav-content .ban.container li:nth-child(2) a:hover::before {background: url("../images/fitagolab_logo_bk.png") no-repeat; background-size: 100%;}
	#nav-content .ban.container li:nth-child(1) a:hover::after,
	#nav-content .ban.container li:nth-child(2) a:hover::after {background: url("../images/icon_blank_bk.png") no-repeat; background-size: 100%;}
    .is-open {overflow: hidden;}
    .is-open #nav-content {z-index: 999;visibility: visible;opacity: 1;}
    .is-open #nav-content a {pointer-events: auto;}
    /*-----------FOOTER-----------*/
    footer {padding: 40px;}
    footer h1 {width: 177px;}
    footer h2 {font-size: 15px; font-weight: bold; position: absolute; top: 50%; margin-top: -7.5px; left: 240px;}
    footer .copyright {font-size: 15px; letter-spacing: 0.08em; position: absolute; top: 50%; margin-top: -7.5px; right: 40px;}
	/*-----------MAIN COMMON-----------*/
	main h3 {font-size: 30px; font-weight: bold; letter-spacing: 0.1em; font-feature-settings: "palt";}
    /*-----------FV-----------*/
    main #fv {height: 100vh;}
    main #fv .movie {width: 960px; height: 540px; position: absolute; top: 50%; left: 50%; margin-left: -480px; margin-top: -270px;}
    main #fv .movie video {width: 100%; height: 100%;}
    main #fv h2 {width: 597.5px; height: 369.5px; position: absolute; left: 80px; bottom: 120px;}
    main #fv h3 {position: absolute; left: 80px; bottom: 80px;}
    main #fv a.scroll_down {display:block; background: url("../images/fv_scrolldown.png") no-repeat; width: 14.5px; height: 50.5px; background-size: 100%; padding: 0 0 157px; position: absolute; right: 40px; bottom: 0; overflow: hidden;}
    main #fv a.scroll_down:hover {opacity: 0.5;}
    main #fv a.scroll_down::after {content: ''; width: 1px; height: 93.5px; background: #000; position: absolute; bottom: 0; left: 50%; margin-left: -2px; animation: sdl 1.5s cubic-bezier(1, 0, 0, 1) infinite;}
	/*-----------ABOUT-----------*/
    main #about {padding: 300px 0;}
    main #about h2 {width: 448.5px; margin-bottom: 31px;}
    main #about h3 {letter-spacing: 0.04em;}
    main #about p {width: 520px; font-size: 18px; line-height: 40px; letter-spacing: 0.15em; position: absolute; top: 0; right: 0;}
	/*-----------SERVICE-----------*/
	main #service .service_bg {position: absolute; left: 50%; right: 0; margin-left: -520px; height: 500px;}
	main #service .service_bg figure {background: url("../images/service_title_bg.jpg"); background-size: cover; height: 100%; width: 100%;}
	main #service h2 {width: 260px; padding-top: 465px; margin-bottom: 25px;}
	main #service ul {margin: 98px 0 150px; display: flex; flex-wrap: wrap;}
	main #service ul li {width: 500px; height: 427.5px; padding-top: 27px; border-top: 1px solid #000; position: relative;}
	main #service ul li:nth-child(odd) {margin-right: 40px;}
	main #service ul li p {font-size: 21px; font-weight: bold; line-height: 45px; position: absolute; left: 0; bottom: 55px;}
	main #service ul li p span {position: relative;}
	main #service ul li p span::before {content: ""; display: block; width: 104%; height: 130%; background: #fff; position: absolute; top: -15%; bottom: 0; left: 0; right: 0; z-index: -1;}
	main #service ul li figure {width: 340px; height: 400px; position: absolute; bottom: 0; right: 0;}
    main #service ul li:nth-child(1),
    main #service ul li:nth-child(2) {margin-bottom: 45px;}
	main #service ul li:nth-child(1) h4 {width: 182.5px;}
	main #service ul li:nth-child(1) figure {background: url("../images/service_figure01.jpg") no-repeat; background-size: 100%; z-index: -1;}
	main #service ul li:nth-child(2) h4 {width: 233.5px;}
	main #service ul li:nth-child(2) figure {background: url("../images/service_figure02.jpg") no-repeat; background-size: 100%; z-index: -1;}
	main #service ul li:nth-child(3) h4 {width: 262px;}
	main #service ul li:nth-child(3) figure {background: url("../images/service_figure03.jpg") no-repeat; background-size: 100%; z-index: -1;}
	main #service ul li .btn {border: 1px solid #000; width: 220px; height: 45px; position: absolute; bottom: -16.5px; left: 0;}
	main #service ul li .btn a {display: block; width: 100%; height: 100%; background: #000; text-align: center; padding-top: 12px; font-size: 18px; letter-spacing: 0.1em; color: #fff; text-decoration: none;}
	main #service ul li .btn a span::after {content: ""; display: inline-block; background: url("../images/icon_blank_wh.png") no-repeat; width: 17px; height: 13px; background-size: 100%; margin-left: 8px;}
	main #service ul li .btn a:hover {background: #fff; color: #000;}
	main #service ul li .btn a:hover span::after {background: url("../images/icon_blank_bk.png") no-repeat; background-size: 100%;}
	/*-----------COMPANY-----------*/
    main #company {padding-top: 150px;}
	main #company h2 {width: 341px; margin-bottom: 5px;}
	main #company dl {margin: 105px 0 50px; font-size: 18px; line-height: 35px; letter-spacing: 0.1em; display: flex; flex-wrap: wrap; border-bottom: 1px solid #ccc;}
	main #company dl dt {font-weight: bold; width: 200px;}
	main #company dl dd {width: 840px;}
	main #company dl dt,
	main #company dl dd {border-top: 1px solid #ccc; padding: 20px 0;}
	main #company dl dt:nth-child(1),
	main #company dl dd:nth-child(2) {border-top:none;}
	main #company dl dd ul {list-style: disc; padding-left: 1.2em;}
	/*-----------CONTACT-----------*/
	main #contact {padding:250px 0 140px;}
    main #contact::before {content: ""; display: block; background: #f0f0f0; position: absolute; top: 250px; bottom: 0; left: 0; right: 0;}
	main #contact h2 {width: 259.5px; margin-bottom: 26.5px; }
	main #contact h2 img {margin-top: -40px;}
	main #contact form {padding-top:100px; position: relative;}
	main #contact form::after{content:''; clear:both; display:block;}
	main #contact form dl {width: 480px; font-size: 18px;}
	main #contact form dl dt {font-weight: bold; letter-spacing: 0.08em; margin-bottom: 15px;}
    main #contact form dl dd {margin-bottom: 35px;}
	main #contact form dl.basic {float: right;}
	main #contact form dl.message {float: left;}
    main #contact form dl dd input,
	main #contact form dl dd select, 
    main #contact form dl dd textarea {background-color: #fff; border: none; width: 100%!important; height: 40px; padding: 5px 10px;}
    main #contact form dl dd textarea {min-height: 395px!important;}
    main #contact form .btn-send {width: 480px; height: 75px; position: absolute; bottom: 35px; right: 0;}
    main #contact form .btn-send::after {content: ""; display: block; background: url("../images/arrow_wh.png") no-repeat; width: 11.5px; height: 18px; background-size: 100%; position: absolute; right: 30px; top: 50%; margin-top: -9.75px;}
    main #contact form .btn-send:hover::after {background: url("../images/arrow_bk.png") no-repeat; background-size: 100%;}
    main #contact form .btn-send input {width: 480px; height: 75px; display: block; background: #000; position: absolute; font-size: 20px; color: #fff; letter-spacing: 0.1em; border: 1px solid #000;}
    main #contact form .btn-send input:hover {background: #fff; color: #000;}
    /*-----------THANKS-----------*/
    main #contact_thanks {padding: 250px 0 200px; text-align: center; border-bottom: 1px solid #ccc;}
    main #contact_thanks h2 {font-size: 40px; font-weight: bold; letter-spacing: 0.1em; margin-bottom: 50px;}
    main #contact_thanks p {font-size: 18px; line-height: 35px; letter-spacing: 0.05em;}
	/*-----------movie_program-----------*/
	#movie_program {background: url("../images/movie_program/bg@pc.jpg")no-repeat;background-size: cover;background-attachment: fixed;}
	#movie_program main {padding: 80px 40px;}
	#movie_program main h1 {font-size: 40px;font-weight: bold;margin-bottom: 80px;}
	#movie_program main h1 span{position: relative;z-index: 10;}
	#movie_program main h1 span::before{content: "";display: block;background: #f6ff00; width: 100%; height: 18px;position: absolute;left: 0;bottom: -5px;z-index: -1;}
	#movie_program main h2{font-size: 27.5px;font-weight: bold;padding: 0 0 0 1em;margin-bottom: 40px; position: relative;}
	#movie_program main h2::before{content: "";display: block;background: #fff; width: 8px; height: 40px; position: absolute;left: 0;top: 50%;margin-top: -20px;}
	#movie_program main h2::after{content: "";display: block;background: #fff; height: 2px; position: absolute;left: 0;right: 0; top: 50%;margin-top: 20px;}
	#movie_program main ul {display: flex; flex-wrap: wrap;gap:0.9%;}
	#movie_program main ul + h2 {margin-top: 40px;}
	#movie_program main ul li {width: 32.7%; margin-bottom: 40px;}
	
	
}