@charset "UTF-8";

/* CSS Document */

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {	margin: 0;	padding: 0;	border: 0;	font-size: 100%;	font: inherit;	vertical-align: baseline;	box-sizing:border-box;}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main {	display: block;}
body {	line-height: 1;}
ol, ul {	list-style: none;}
blockquote, q {	quotes: none;}
blockquote:before, blockquote:after, q:before, q:after {	content: '';	content: none;}
table {/* border-collapse: collapse; *//* border-spacing: 0; */}

form button:hover{ cursor: pointer; cursor: hand; opacity: 0.8; }
.wysiwyg  iframe{ max-width: 100%; }


.fadeCom{opacity: 0; -webkit-transition: 1500ms ease; -o-transition: 1500ms ease; transition: 1500ms ease; -webkit-transform: translate3d(0, 30px, 0) scale(0.9825, 0.9825); -ms-transform: translate3d(0, 30px, 0) scale(0.9825, 0.9825); transform: translate3d(0, 30px, 0) scale(0.9825, 0.9825); -webkit-transition-property: opacity,transform; -o-transition-property: opacity,transform; transition-property: opacity,transform; }
 /* ===== 表示 ===== */
.fadeCom__On{-webkit-transform:translate3d(0, 0, 0) scale(1,1); -ms-transform:translate3d(0, 0, 0) scale(1,1); transform:translate3d(0, 0, 0) scale(1,1); opacity: 1; }

/* loading------------------------------------------------ */
#wrap.load{opacity: 1; transition: opacity 1800ms; -moz-transition: opacity 1800ms; -webkit-transition: opacity 1800ms; -o-transition: opacity 1800ms; }
#com_loading__box {height: 100%; width: 100%; position: fixed; top: 0; left: 0; background: #ccc; z-index: 99999999999999; -webkit-transition: all 400ms;   -o-transition: all 400ms;  -moz-transition: all 400ms;   transition: all 400ms; }
 /*プログレスバー*/
#com_loading {width: 0; height: 5px; background: #fff; position: fixed; top: 0; left: 0; -webkit-transition: all 0.2s linear 0s;    -o-transition: all 0.2s linear 0s;  -moz-transition: all 0.2s linear 0s;   transition: all 0.2s linear 0s; }
#com_loading__img {position: absolute; top: 50%; left: 50%; -webkit-transform: translate( -50%,-50% ); -ms-transform: translate( -50%,-50% ); transform: translate( -50%,-50% ); max-width: 80px; width: 60%; }



@media screen and (min-width: 768px), print {
/* bese */
body { font-size: 16px; overflow-x: hidden; line-height: 1.6; letter-spacing: 0.8px; background: #F2F2F2;color: #100100;}

.header-logo-frame{position: absolute;top: 34px;left: 40px;}
header .h-logo{margin: 0 0 8px 0;}
header .h-logo-txt{font-size: 15px;line-height: 1.6;font-weight: bold;letter-spacing: 0px;}
/* header{width: 100%;height: 100px;min-width: 1280px;margin: 0px auto 0px auto;position: relative;} */

.common-mapimg{position: absolute;top: 10px;left: 360px;}

header .h-add-Box{width: 300px;position: absolute;font-size: 12px;top: 40px;left: 260px;}
.l-header__logo-list a img.mapimg{padding: 10px 0px 0px 0px;}

.pc-menu{position: fixed;top: 0;right: 0;z-index: 9999;width: 130px;padding: 48px 0 0 0;height: 130px;text-align: center;background-color:#FFFFFF;border-radius:0 0 0 40px;}
.pc-menu:hover{ opacity: 0.8; cursor: pointer; cursor: hand;}


#pullnavi { opacity: 0; transition: opacity 0.3s, transform 0.3s; transform: translateY(-100%); }
#pullnavi.upMove { opacity: 0; transform: translateY(-100%); }
#pullnavi.dwMove { opacity: 1; transform: translateY(0); }

#pullnavi {position: fixed;top: 0;left: 0;z-index: 10;}
#pullnavi {background: #fff;width: 100%;box-shadow: 0px 3px 20px #00000029;}
#pullnavi .inbox{width: 100%;min-width: 1280px;height: 70px;margin: 0px auto 20px auto;padding-top: 14px;position: relative;}

.pullmenu{color: #fff;font-weight: bold;line-height: 2;font-size: 16px;padding: 0 1vw 0 0;letter-spacing: 1.44px;letter-spacing: 0px;width: fit-content;white-space: nowrap;}

/* 基本のスタイル */
ul.submenu {
    display: none; /* デフォルトではサブメニューを非表示に */
    position: absolute; /* サブメニューを親要素に対して絶対位置に配置 */
    padding: 10px; /* サブメニューの内側の余白 */
    z-index: 1000; /* サブメニューが他の要素の上に表示されるようにする */
    opacity: 0; /* 初期状態で透明にする */
    transform: translateY(-20px); /* 初期状態で上に移動しておく */
    transition: opacity 0.3s ease, transform 0.3s ease; /* トランジション効果 */
}

/* サブメニューの項目のスタイル */
ul.submenu li {
	border: 1px solid #ccc; /* サブメニューの境界線 */
    background-color: #fff; /* サブメニューの背景色 */
    list-style: none; /* リストの項目のデフォルトスタイルを無効にする */
    margin: 0;
    padding: 5px 0;
}

/* サブメニューのリンクのスタイル */
ul.submenu li a {
	text-align: left;
	display: block;
	padding:10px 20px 10px 20px;
    text-decoration: none; /* リンクの下線を無効にする */
    color: #000; /* リンクのテキスト色 */
}

/* サブメニューが表示されるようにするスタイル */
li:hover > ul.submenu {
    display: block; /* 親リスト項目にカーソルを合わせた時にサブメニューを表示 */
	opacity: 1; /* 表示状態で不透明にする */
    transform: translateY(0); /* 表示状態で位置をリセットする */
}



.side-fix{ position: fixed; top: 150px; right: 0; z-index: 10;}

#pc-menu-open{ display: none; background: #f8f8f8; width: 100vw; height: 100vh; position: fixed; top: 0; z-index: 10000; overflow-y: scroll; }
#pc-menu-open .open-close-01{ position: absolute; top: 0; right: 0; }

#pc-menu-open { background: #ccc; padding: 80px 0; line-height: 1.6; }
#pc-menu-open  .menu-open-Box{ width: 1100px; margin: 0 auto; font-size: 16px;}
#pc-menu-open  .f-link-Box{ width: 770px; float: left;  }
#pc-menu-open  .f-link-Box .f-home-link { margin-bottom: 40px;}
#pc-menu-open  .f-link-Box .f-home-link::before { content: "■ "; }
#pc-menu-open  .f-link-Box .parent{ font-size: 14px; color: #fff; }
#pc-menu-open  .f-link-Box .child{ font-size: 14px;}
#pc-menu-open  .f-link-Box .child::before{ content: "- "; padding-right: 5px;}
/*#pc-menu-open  .f-link-Box li::before{ content: "> "; }*/
#pc-menu-open  .f-link-Box li{ margin-bottom: 10px; }

#pc-menu-open  .menu-open-con-Box{ width: 320px; float: left; }
#pc-menu-open  .menu-open-con-Box .sns-list{display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;-webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;}
#g-nav{width: 70%;margin: 0px 151px 10px auto;padding: 32px 0 20px 0;text-align: right;font-size: 16px;}

#g-nav li.list {position: relative;display: inline-block;margin-right: 9px;}
#g-nav li.list span { cursor: pointer;}
#g-nav li.list span,
#g-nav li.list a{font-weight: bold;display: block;text-align: center;padding: 10px 20px 10px 0px;color: #231F27;}
#g-nav .dropmenu li.list ul.sub { visibility: hidden; opacity: 0; transition: 0s; position: absolute; top: 35px; left: 0; margin: 0; padding: 0; z-index: 500; width: 220px;}

#g-nav .dropmenu li.list:hover ul { visibility: visible; opacity: 1; display: block; }
#g-nav .dropmenu li.list ul li:last-child a { border-bottom: 1px solid #ccc; }
#g-nav .dropmenu li.list ul li a { visibility: hidden; opacity: 0; transition: 0.9s; background: #fff; display: block; width: 220px; padding: 10px; color: #000; border: 1px solid #ccc; border-bottom: none; }
#g-nav .dropmenu li.list:hover ul li a { visibility: visible; opacity: 1; }

#end-contact{margin: 0 0 -80px 0;}
#end-contact .ttl-en{text-align: center;margin: 0 0 46px 0;}
#end-contact .end-frame{min-width: 1600px; margin: 0 auto;
justify-content: center;-ms-flex-wrap: wrap;flex-wrap: wrap;
display:-webkit-box;display:-ms-flexbox;display:flex;
-webkit-box-orient:horizontal;-webkit-box-direction:normal;}
#end-contact .end-frame .end-left-telframe{width: 800px;position: relative;z-index: 10;background-color: #fff;padding: 97px 50px 50px 50px;box-shadow: 0px 0px 6px 0px rgb(0 0 0 / 20%);}
#end-contact .end-frame .end-left-telframe .main-telframe{position: relative;background-image:url(../images/common/end-con-tel-line.svg);background-position:bottom 0px center;background-repeat:no-repeat;padding: 0 0 24px 0;margin: 0 0 13px 0;}
#end-contact .end-frame .end-left-telframe .main-telframe .ttl{text-align: center;margin: 0 0 40px 0;}
#end-contact .end-frame .end-left-telframe .main-telframe .maintel{text-align: center;margin: 0 0 7px 0;}
#end-contact .end-frame .end-left-telframe .main-telframe .timetxt{text-align: center; font-size: 16px; line-height: 1.6; letter-spacing: 1px; }
#end-contact .end-frame .end-left-telframe .sub-telframe{position: relative;width: 313px;margin: 0 auto;}
#end-contact .end-frame .end-left-telframe .sub-telframe .sub-txt{text-align: center;font-size: 14px;line-height: 1.8;letter-spacing: 1px;margin: 0 0 6px 0;}
#end-contact .end-frame .end-left-telframe .sub-telframe .subtel{text-align: center;padding: 0 111px 0 0;}
#end-contact .end-frame .end-left-telframe .sub-telframe .name{position: absolute;bottom: 2px;right: -1px;font-size: 14px;line-height: 1.6;letter-spacing: 1px;}
#end-contact .end-frame .end-right-contactframe{width: 800px;position: relative;background-image:url(../images/common/end-contact-bg.jpg);background-position:0px 0px;background-repeat:no-repeat;}
#end-contact .end-frame .end-right-contactframe a{width: 800px;position: relative;height: 460px;z-index: 10;display: inline-block;padding: 145px 50px 50px 50px;background-image:url(../images/common/end-contact-arrow.svg);background-position: right 43px bottom 31px;background-repeat:no-repeat;transition: .3s;}
#end-contact .end-frame .end-right-contactframe a:hover{text-decoration-color:#fff;text-decoration-thickness: 1.5px;background-position: right 30px bottom 31px;}
#end-contact .end-frame .end-right-contactframe .subttl{text-align: center;margin: 0 0 30px 0;}
#end-contact .end-frame .end-right-contactframe .ttl{text-align: center;font-size: 34px;line-height: 1.75;letter-spacing: 1px;color: #fff;}
#end-contact .end-frame .end-right-contactframe .photo{position: absolute;bottom:0;right: 100px;}

.footer-bg-photo{ max-width: 1920px; margin: 0 auto;}
.footer-bg-photo img{width: 100%;}
.footer-map{max-width: 1920px;margin: 0 auto;box-shadow: inset 0px 0px 15px rgba(0,0,0,.3);background-color:#767162;background-image:url(../images/common/footer-map-shadow.png),url(../images/common/footer-map.png);background-position: bottom 0px center,bottom 0px right 17vw;background-repeat:repeat-x,no-repeat;height: 354px;}
.footer-map .footer-map-frame{width: 1240px;margin: 0 auto;padding: 99px 20px 0 71px;position: relative;}
.footer-map .footer-map-frame .ttl{font-size: 24px;line-height: 1.6;letter-spacing: 2px;color: #fff;font-weight: 500;margin: 0 0 33px 0;}
.footer-map .footer-map-frame .txt{font-size: 16px;line-height: 1.85;letter-spacing: 0.8px;color: #fff;font-weight: 500;}
.open-main-Box{ width: 1200px; margin: 0 auto; text-align: center; }

footer{background: url(../images/index/fv_bg.jpg) no-repeat top center / cover; width: 100%;position: relative;z-index: 2;color: #fff;padding-top: 81px;max-width: 1920px;width: 100%;margin-inline: auto;}
footer::before{content: "";position: absolute;inset: 0;background: #000;opacity: 0.7;z-index: 1;}
footer .footer-Box{max-width: 1760px; width: 95%; margin: auto;position: relative;z-index: 3;}
.footer-img{position: relative;z-index: 3;text-align: center;}
.footer-img img {width: 100%;height: auto;}
.f-link-Box-wrap{display: flex;align-items: flex-start;justify-content: space-between;margin-bottom: 40px;}
.footer-Box__right{display: flex;;align-items: flex-start;padding-top: 58px;}
.f-link .service {color: #fff;font-size: 14px;letter-spacing: 1.12px;line-height: 2.2;position: relative;}
.f-link .service::before {position: absolute;content: url(../images/index/footer_icon.svg);width: 5px;height: 7px;top: 0;left: -16px;}
.f-link li a.service::before {content: none;}
.f-link li a {color: #fff;font-size: 14px;letter-spacing: 1.12px;line-height: 2.8;position: relative;}
.f-link li a:before {position: absolute;content: url(../images/index/footer_icon.svg);width: 5px;height: 7px;top: -11px;left: -16px;}
.f-link-l {position: relative;margin-right: 54px;}
.f-link-l::before{position: absolute;content: url(../images/index/menu_white.svg);width: 65px;height: 39px;top: -49px;left: -18px;}
.f-link-c{margin-right: 100px;}
.f-home-company{margin-bottom: 38px;}
.f-home-sns a{display: inline-block; margin:0 0 10px 0;}
.f-home-sns a:nth-child(1){ display: block;}
.copyright{font-size: 16px;text-align: start;padding: 33px 84px;letter-spacing: 1.28px;background: #E7322F;color:#100100; font-weight: bold;position: relative;z-index: 3;display: block;max-width: 1920px;width: 100%;margin-inline: auto;}

.f-link li li{}

footer .f-link-Box .f-home-link {margin-bottom: 16px;}
footer .f-link-Box .footerlink-frame{-ms-flex-wrap: wrap;flex-wrap: wrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;display:-webkit-box;display:-ms-flexbox;display:flex;padding: 18px 0 0 0;}
footer .f-link-Box .footer-link-list{}
.f-list01{height: 259px;width: 170px;}
.f-list02{height: 259px;width: 221px;}
.f-list03{height: 259px;width: 210px;}
.f-list04{height: 259px;width: 176px;}
.f-list05{height: 259px;width: 170px;}
footer .f-link-Box .footer-link-list:nth-child(4){height: auto;}
footer .f-link-Box .footer-link-list:nth-child(5){height: auto;}
footer .f-link-Box .footer-link-list .subt{margin: 0 0 21px 0;}
footer .f-link-Box .footer-link-list ul{}
footer .f-link-Box .footer-link-list ul li{margin: 0 0 18px 0;}
footer .f-link-Box .footer-link-list ul li::before{content: "- ";padding-right: 0px;}
footer .f-con-Box{width: 376px;height: 366px;padding: 62px 35px 30px 41px;margin: 0 79px 0 20px;}
.works-other-photo img{height: 200px;width: 100%;}


/* common */
/* 2カラムサイト----------------
#tow-cl{ width: 1100px; margin: 0 auto; padding: 20px 0;}
#tow-cl main{ width: 800px!important; float: left;  }
#tow-cl #side{ width: 280px; float: left; margin-right: 19px; background: #333; height: 800px; }
#blog #tow-cl #side{ display: none;}
#blog #tow-cl main{ width: 1100px !important;}*/
/* 1カラムサイト */
/*#one-cl{ }*/


.main-title{background: #E7322F;color: #fff;position: relative;top: -88px;padding: 198px 0 90px;margin: 0 0 -88px 0;}
.main-title::before{background: url(../images/common/main-ttl_bg.png) no-repeat top center / cover; content: "";inset: 0;mix-blend-mode: multiply;position: absolute;z-index: 1;}
.main-title .en {text-align:center;display: block;font-weight: bold;font-size: 20px;margin-bottom: 4px;text-transform: uppercase;}
.main-title .jp {text-align:center;display: block;font-size: 42px;font-weight: bold;letter-spacing: 4.2px;position: relative;z-index: 2;}
.main-title .main-title-frame{width: 1200px;margin: 0 auto 34px;}


h2.sub-title{ padding: 25px 20px 10px; margin-bottom: 50px; font-size: 28px; font-weight: bold; letter-spacing: 2px; text-align: center; border-bottom: solid 2px #000;}
.seo_bread_list{ width: 1200px; margin: 0 auto 20px; }
.seo_bread_list li{ margin-right: 20px; float: left;  }
.seo_bread_list li::after{ content: " >"; }
.seo_bread_list li:last-child::after{ content: ""; }

/*pc・タブレットcss*/
/*pc_defaultset*/
.pc { display: block !important; }
/*pcのみ表示ブロック*/
.pc2 { display: inline-block !important; }
/*pcのみ表示ブロック*/
.pc3 { display: block !important; }
/*pcのみ表示ブロック*/
.tab { display: none !important; }
/*tabのみ表示ブロック*/
.sp, .sp2 { display: none !important; }
/*スマホのみ表示ブロック*/
.h_menu { display: none; }
/*スマホ用ヘッダ*/
.sp-header { display: none; }
/*スマホ用メニュー*/
#sp-global-nav { display: none; }
/*スマホ用メニュー*/
.sp-fix-list { display: none; }
/* Antialiasing ※任意　*/

.fit img {object-fit: cover; font-family: "object-fit: cover;";}
.system-Frame.fit.gallery a img {max-width: 316px;width: 100%;height: 185px;margin-bottom: 11px;}
.system-Frame.fit.gallery a {position: relative;}
.system-Frame.fit.gallery a::after {content: "";position: absolute;background: url(../images/common/gallery_icon.svg) no-repeat center center / contain;width: 21px;aspect-ratio: 1;right: 0;top: -9px;z-index: 1;}

html { -webkit-font-smoothing: subpixel-antialiased; -moz-osx-font-smoothing: none; overflow-x: hidden; }

/* WEB FONTs 游ゴシックかすれ予防*/
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 100; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 200; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 300; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 400; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Bold"); font-weight: bold; }
@font-face { font-family: "Helvetica Neue"; src: local("Helvetica Neue Regular"); font-weight: 100; }
@font-face { font-family: "Helvetica Neue"; src: local("Helvetica Neue Regular"); font-weight: 200; }
.f-min { font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; }.f-min-02 { font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3","Sawarabi Mincho","Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
.f-gothic { font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック","Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro",  Verdana, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;}
body { -webkit-text-size-adjust: 100%; }
img { vertical-align: bottom;}
a { text-decoration: none; color: #090909; }
a:hover { text-decoration: underline; }
.nobd a:hover { text-decoration: none !important; }

/* clearfix */
.clearfix { zoom: 1; }
.clearfix:after { display: block; clear: both; height: 0; visibility: hidden; line-height: 0; content: "."; }
/* wysiwyg */
.wysiwyg { word-wrap: break-word; margin-bottom: 30px;}
.wysiwyg strong { font-weight: bolder; }
.wysiwyg em { font-family: "ＭＳ ゴシック",sans-serif; font-style: italic; }
.wysiwyg img { max-width: 100% !important; height: auto; }
.wysiwyg p { min-height: 15px; min-width: 10px; line-height: 2.25;}

.wysiwyg h1, .wysiwyg h2, .wysiwyg h3, .wysiwyg h4, .wysiwyg h5, .wysiwyg h6 { color: #333; font-weight: bold; text-align: left;}
.wysiwyg h1 { padding: 12px 24px; font-size: 24px; line-height: 1.6; margin: 10px 5px;}
.wysiwyg h2 { padding: 12px; font-size: 22px; line-height: 1.6; margin: 10px 5px;}
.wysiwyg h3 { padding: 5px 20px; font-size: 20px; line-height: 1.6; margin: 10px 5px;}
.wysiwyg h4 { padding: 0 0 10px; font-size: 18px; line-height: 1.6; margin: 10px 5px;}
.wysiwyg h5 { padding: 0 0 10px; font-size: 18px; line-height: 1.6; margin: 10px 5px;}
.wysiwyg h6 { padding: 10px; font-size: 16px; line-height: 1.6; margin: 10px 5px;}
.wysiwyg ul { list-style-type: disc; line-height: 1.6; font-size: 16px; margin: 5px 0 10px 20px}
.wysiwyg ol { list-style-type: decimal; line-height: 1.6; font-size: 16px; margin: 5px 0 10px 20px}
.wysiwyg table{ table-layout: fixed;}
.wysiwyg table th,
.wysiwyg table td { border: 1px solid #999; padding: 10px; font-size: 16px; margin: 10px 5px;}
.wysiwyg iframe{ height: 500px !important; width: 800px !important; margin: 0 auto 40px; display: block;}

.system-ttl-02 {text-align: center;margin-bottom: 10px;}
/* リンク透明 */
a img:hover { -ms-filter: "alpha( opacity=80 )"; filter: alpha(opacity=80); opacity: 0.8; }
/* リンク透明にしない */
.noop a img:hover { -ms-filter: "alpha( opacity=100 )"; filter: alpha(opacity=100); opacity: 1.0; }
/*---------------------------------------- 　　外部サービス ----------------------------------------*/
/* ggmap */
/* <div class="ggmap">iframeのコピーしたコード</div> */
.ggmap { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; }
.ggmap iframe, .ggmap object, .ggmap embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
/* <div class="youtube"><iframe  src="youtubeのURL?rel=0" frameborder="0" allowfullscreen></iframe></div> */
/* .youtube { position: relative; width: 100%; padding-top: 56.25%; }
.youtube iframe { position: absolute; top: 0; right: 0; width: 100% !important; height: 100% !important; } */
/*---------------------------------------- 　　webフォント（サーバー置き）　 ----------------------------------------*/
@font-face { font-family: 'jp-sttl01';
/* お好きな名前にしましょう */
src: url("../font/.eot");
/* IE9以上用 */
src: url("../font/bokutachi.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Medium.woff") format("woff"), url("../font/NotoSansCJKjp-Medium.woff") format("woff");
/* iOS, Android用 */
/* 念の為指定しておきます */
font-weight: normal;
/* 念の為指定しておきます */
font-style: normal; vertical-align: top; margin: 0px; padding: 0px; }
.myWebFontClass { font-family: 'jp-sttl01'; }

/* header 追加 */
.l-inner__wrap {
	overflow: hidden;
	margin: -90px auto 0;
}

.l-header {
	position: relative;
	z-index: 10;
	max-width: 1920px;
	width: 100%;
	margin-inline: auto;
}

.l-header__logo {
	align-items: start;
	display: flex;
	height: 89px;
	justify-content: space-between;
	margin-inline: auto;
}

.l-header__logo.page{
	padding: 0;
}

.l-header__logo-list {
	padding-top: 0;
	/* position: absolute; */
	/* top: 0; */
	/* left: 0; */
}

.l-header__logo-list a {
	display: flex;
	gap: 0 22px;
}

.l-header__logo-list a img {
	height: 100%;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.l-header__logo-list a img {
	height: 100%;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.l-header__logo-list2 {
	display: flex;
	gap: 0 30px;
	padding: 0 1% 0 0;
}

.l-inner {
	max-width: 1920px;
	margin-inline: auto;
}

.l-inner.lineup {
	max-width: 1920px;
	width: 100%;
	margin-inline: auto;
}

.l-inner.works {
	background: #fff;
	margin-bottom: 42px;
	margin-inline: auto;
	max-width: 1770px;
	padding: 36px 0 46px;
	width: 95%;
}

.l-inner.fv2 {
	position: relative;
	z-index: 1;
}

.l-inner.fv3 {
	margin: 0 auto;
	/* margin-left: auto; */
	max-width: 1510px;
	position: relative;
	width: 100%;
	z-index: 2;
}

.l-inner.reason {
	margin-inline: auto;
	max-width: 1394px;
	width: 95%;
}

.l-inner.contact {
	margin-inline: auto;
	max-width: 1291px;
	position: relative;
	width: 95%;
	z-index: 1;
}

.l-inner.web {
	position: relative;
	z-index: 3;
}

.l-inner.staff {
	position: relative;
	z-index: 2;
}

.l-inner.news {
	margin-inline: auto;
	max-width: 1280px;
	width: 95%;
}

.l-inner.archive-works {
	max-width: 1770px;
	width: 95%;
	margin-inline: auto;
	background: #fff;
	padding: 66px 0 100px;
}

.l-inner.archive-voice {
	max-width: 1770px;
	width: 95%;
	margin-inline: auto;
	padding: 66px 0 100px;
}

.l-inner.faq {
	max-width: 1200px;
	width: 95%;
	margin-inline: auto;
}

.l-header__nav {
	background: #E7322F;
	position: relative;
	margin-bottom: 60px;
	max-width: 1920px;
	width: 100%;
	margin-inline: auto;
}

.l-header__nav-lists {
	margin-left: auto;
	max-width: 1864px;
	width: 100%;
}

.l-header__nav-img {
	position: absolute;
	bottom: -64px;
	left: 20px;
	z-index: 10;
	width: 29%;
}

.l-header__nav-img img {
	width: 100%;
	height: auto;
}

.l-header__nav-img:before {
	background: url(../images/index/imakara.png) no-repeat center center/contain;
	content: "";
	height: 100%;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	top: -155px;
	width: 349px;	
}

.l-header__nav-list {
	/* align-items: center; */
	/* display: grid; */
	/* grid-template-columns: repeat(8, 1fr); */
	justify-content: flex-end;
	/* gap: 0 10px; */
	margin: 0 0 0 auto;
	max-width: 1250px;
	padding: 30px 0 19px;
	position: relative;
	width: 100%;
	z-index: 10;
	/* -ms-flex-wrap: wrap;
	flex-wrap: wrap; */
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-orient:horizontal;
	-webkit-box-direction:normal;
}

.l-header__nav-list li {
	text-align: left;
	font-size: 14px;
	/* width: 23%; */
	/* line-height: 1; */
}

.l-header__nav-list li a {
	color: #fff;
	display: inline-block;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 1.44px;
	line-height: 2;
	white-space: nowrap;
	width: -moz-fit-content;
	width: fit-content;
	padding: 0 1.7vw 0 0;
}

/* component */
.c-btn__more {
	margin: -50px 0 18px;
	margin-inline: auto;
	max-width: 1524px;
	text-align: end;
	width: 95%;
}

.c-btn__more a {
	background: #F2F2F2;
	border-radius: 27px;
	display: inline-block;
	padding: 7px 104px 14px 32px;
	position: relative;
	text-align: start;
	width: -moz-fit-content;
	width: fit-content;
}

.c-btn__more a::after {
	aspect-ratio: 1;
	background: url(../images/index/youtube_icon_red.svg) no-repeat center center/contain;
	content: "";
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
	width: 19px;
}

.c-btn__more.squire a {
	background: #fff;
	border-radius: 0;
}

.c-btn__more.squire02.reason {
	margin: 0;
	text-align: start;
}

.c-btn__more.squire02.reason a {
	background: #F2F2F2;
	max-width: 240px;
	width: 100%;
}

.c-btn__more.squire02 a {
	background: none;
	border: 1px solid #fff;
	border-radius: 0;
}

.c-btn__more.squire02 a::after {
	aspect-ratio: 1;
	background: url(../images/index/youtube_icon_white.svg) no-repeat center center/contain;
	content: "";
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
	width: 28px;
}

.c-btn__more.squire03.staff a {
	border: 1px solid #fff;
}

.c-btn__more.squire03 a {
	background: none;
	border: 1px solid #000;
	border-radius: 0;

}

.c-btn__more.squire03 a::after {
	aspect-ratio: 1;
	background: url(../images/index/youtube_icon_white.svg) no-repeat center center/contain;
	content: "";
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
	width: 28px;
}

.c-btn__list {
	margin-bottom: 114px;
	text-align: center;
}

.c-btn__list.web {
	margin-bottom: 153px;
}

.c-btn__list.voice {
	margin-bottom: 167px;
}

.c-btn__list a {
	background: #fff;
	border: 3px solid #000;
	display: inline-block;
	padding: 30px 198px;
	position: relative;
	width: -moz-fit-content;
	width: fit-content;
}

.c-btn__list.itv {
	margin-bottom: 163px;
}

.c-btn__list.itv a {
	padding: 30px 197px;
}

.c-btn__list a::after {
	aspect-ratio: 1;
	background: url(../images/index/youtube_icon_white.svg) no-repeat center center/contain;
	content: "";
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
	width: 36px;
}

.c-btn__list.view_more {
	margin-bottom: 0;
	/* text-align: start; */
}

.c-btn__list.view_more a {
	padding: 25px 177px;
}

.c-btn__list.view_more a img {
	width: 130px;
	height: auto;
}

.c-btn__click {
	padding: 0 32px;
}

.c-btn__click a {
	border: 3px solid #000;
	box-shadow: 6px 6px #000;
	display: inline-block;
	padding: 41px 113px;
	position: relative;
	transition: all 0.3s 0s ease;
	width: -moz-fit-content;
	width: fit-content;
}

.c-btn__click a:hover {
	box-shadow: 0 0 #fff;
	transform: translateY(4px);
}

.c-btn__click a::after {
	aspect-ratio: 1;
	background: url(../images/index/youtube_icon_white.svg) no-repeat center center/contain;
	content: "";
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
	width: 36px;
}

.c-btn__click-contact.tel span {
	background: #E7322F;
	border: 1px solid #fff;
	border-radius: 12px;
	box-shadow: 6px 6px #000;
	display: inline-block;
	padding: 18px 45px;
	transition: all 0.3s 0s ease;
	width: -moz-fit-content;
	width: fit-content;
}

.c-btn__click-contact.tel span:hover {
	box-shadow: 0 0 #fff;
	transform: translateY(4px);
}

.c-btn__click-contact.tel span p {
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 1.62px;
	line-height: 1.6111111111;
	margin-bottom: 10px;
	text-align: center;
}

.c-btn__click-contact.tel span p.time {
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0.84px;
	line-height: 2.1428571429;
}

.c-btn__click-contact.mail a {
	padding: 55px 37px;
	position: relative;
}

.c-btn__click-contact.mail a:before {
	background: url(../images/index/contact_tel_bg.svg) no-repeat center center/contain;
	color: #fff;
	content: "zoom相談も受付中！";
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 1.2px;
	line-height: 1.6;
	padding: 6px 43px 14px;
	position: absolute;
	right: calc(50% - 144px);
	text-align: center;
	top: -20px;
	width: -moz-fit-content;
	width: fit-content;
}

.c-btn__click-contact a {
	background: #E7322F;
	border: 1px solid #fff;
	border-radius: 12px;
	box-shadow: 6px 6px #000;
	display: inline-block;
	transition: all 0.3s 0s ease;
	width: -moz-fit-content;
	width: fit-content;
}

.c-btn__click-contact a:hover {
	box-shadow: 0 0 #fff;
	transform: translateY(4px);
}

.c-se__ttl {
	display: grid;
	gap: 15px 0;
	grid-template-columns: repeat(1, 1fr);
	margin-bottom: 50px;
	place-items: center;
}

.c-se__ttl.itv {
	margin-bottom: 28px;
}

.c-se__ttl.voice {
	margin-bottom: 28px;
}

.c-se__ttl.course {
	margin-bottom: 0px;
	background-color: #fff;
	padding: 0 0 50px 0;
}

.c-se__ttl02 {
	display: grid;
	gap: 9px 0;
	grid-template-columns: repeat(1, 1fr);
	place-items: center;
}

.c-se__ttl02 h3 {
	font-size: 28px;
	font-weight: 700;
	letter-spacing: 2.8px;
	line-height: 1.5714285714;
}

.c-se__ttl03 {
	align-items: flex-end;
	display: grid;
	gap: 0 14px;
	grid-template-columns: 67% 29%;
	max-width: 517px;
	width: 100%;
}

.c-se__ttl03.news {
	align-items: flex-end;
	display: grid;
	grid-template-columns: 70% 29%;
	max-width: 688px;
	width: 100%;
}

.c-btn__slider {
	align-items: center;
	display: flex;
	gap: 0 24px;
	justify-content: flex-end;
	margin-inline: auto;
	max-width: 1104px;
	width: 100%;
	position: absolute;
	right: 45px;
	bottom: 17px;
}

.c-btn__slider img.right {
	aspect-ratio: 1;
	width: 29px;
}

.c-web__ttl {
	text-align: center;
}
.p-contact {
	background: #E7322F;
	padding: 0 0 66px;
	position: relative;
	max-width: 1920px;
	width: 100%;
	margin-inline: auto;
}

.p-contact.item02 {
	margin-bottom: -26px;
}

.p-contact.page {
	margin-bottom: 0;
	margin-top: 0;
}

.p-contact:before {
	background: url(../images/index/contact_bg.png) no-repeat center center/cover;
	content: "";
	inset: 0;
	mix-blend-mode: multiply;
	position: absolute;
}

.p-contact__top {
	align-items: center;
	display: flex;
	justify-content: center;
	margin-bottom: -23px;
}

.p-contact__ttl {
	position: relative;
	left: -87px;
}

.p-contact__top-img {
	position: relative;
	top: -35px;
	left: -66px;
}

.p-contact__bottom-img {
	background: #FCD344;
	padding: 19px 45px;
	text-align: center;
	position: relative;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	max-width: 844px;
	width: 95%;
	margin-bottom: -80px;
}

.p-contact__center {
	background: #fff;
	border-radius: 245px;
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	padding: 97px 90px 124px;
	place-items: center;
}

.p-contact__center img.bottom {
	margin-bottom: 34px;
}

.p-contact__center-wrap {
	align-items: center;
	display: flex;
	justify-content: center;
}

.p-contact__bottom {
	align-items: center;
	display: flex;
	gap: 0 40px;
	justify-content: center;
	margin-top: -66px;
	position: relative;
	z-index: 2;
}

.p-contact.page.itv {
	margin-top: 5px;
}
.l-page__nav {
	background: #000;
	/* height: 76px; */
}
.l-page__nav-lists {
	margin-inline: auto;
	max-width: 1200px;
	width: 95%;
}
.l-page__nav-list {
	/* display: grid; */
	/* grid-template-columns: repeat(7, 1fr); */
	margin-top: -88px;
	padding: 19px 0;
	/* place-items: center; */
	display:-webkit-box;display:-ms-flexbox;display:flex;
	-ms-flex-wrap: wrap;flex-wrap: wrap;
	-webkit-box-orient:horizontal;-webkit-box-direction:normal;
	justify-content: center;align-items: center;
}

.l-page__nav-list .top{
    padding: 0 35px 0 0;
}

.l-page__nav-list li a {
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 1.44px;
	padding: 0 28px 0 28px;
	line-height: 1.3;
	text-align: center;
	white-space: nowrap;
	display: block;
	width: 31%;
}
.l-page__nav-list li.top a {
	font-size: 16px;
	padding: 0 0px 0 0;
}
.p-page__link {
	margin-bottom: 114px;
}
.p-page__link.itv {
	background: #FFFFFF;
	padding: 100px 0 110px;
	margin-bottom: 0;
}
.p-page__link.speed {
	background: #FFFFFF;
	padding: 89px 0 105px;
	margin-bottom: 0;
}
.p-page__link.know {
	background: #FFFFFF;
	padding: 87px 0 98px;
	margin-bottom: 0;
}
.p-page__link.subsidy {
	background: #FFFFFF;
	padding: 96px 0 142px;
	margin-bottom: 0;
}
.l-inner.page-link {
	margin-inline: auto;
	max-width: 1000px;
	width: 95%;
}
.p-page__link-txt {
	font-size: 34px;
	font-weight: 700;
	letter-spacing: 4.08px;
	line-height: 1.5294117647;
	margin-bottom: 45px;
	text-align: center;
}
.p-page__link-txt.itv {
	margin-bottom: 26px;
}
.p-page__link-txt.speed {
	margin-bottom: 33px;
}
.p-page__link-txt.know {
	margin-bottom: 34px;
}
.p-page__link-items {
	display: grid;
	gap: 0 40px;
	grid-template-columns: repeat(2, 1fr);
}
.p-page__link-item a img {
	height: auto;
	width: 100%;
	margin-bottom: 12px;
}
.p-page__link-item a p {
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 1.28px;
	line-height: 1.875;
	text-align: center;
	text-decoration: underline;
}
.l-inner.hp {
	max-width: 100%;
	position: relative;
	z-index: 2;
}
.l-inner.homepage-items {
	margin-inline: auto;
	max-width: 1274px;
	width: 95%;
}
.l-inner.homepage-items02 {
	margin-inline: auto;
	max-width: 1200px;
	width: 95%;
}
.l-inner.homepage__flow {
	margin-inline: auto;
	max-width: 1100px;
	width: 95%;
}
.l-inner.homepage__merit {
	margin-inline: auto;
	max-width: 1227px;
	width: 95%;
}
.l-inner.consul {
	max-width: 100%;
}
.l-inner.consul-items {
	margin-inline: auto;
	max-width: 1100px;
	width: 95%;
}
.l-inner.consul-fv2 {
	width: 100%;
}
.l-inner.consul-merit {
	margin-inline: auto;
	max-width: 1227px;
	width: 95%;
}

.p-page__link.consul {
	margin-bottom: 100px;
}
.p-page__link.company {
	margin-bottom: 136px;
}
.p-page__link.course {
	padding-top: 105px;
}
.l-inner.catalog-up {
	max-width: 100%;
	width: 100%;
}
}


@media screen and (min-width:768px) and ( max-width:1720px) {
	.l-header__logo-list a img.mapimg{width: 11.8vw;}
	.l-header__logo-list a img{width: 18vw;}
	#index .mapimg{top: 8px !important;left: 21vw !important;}
	.common-mapimg{position: absolute;top: 10px;left: 19vw;width: 11vw;}

	.l-header__nav-img {
		bottom: -69px;
	}
	.l-header__logo-list {
		/* padding-top: 8px; */
	}
	.l-header__logo-list2 {
		display: flex;
		gap: 0 0.5vw;
	}
	.l-header__logo-list2 img.tel {
		width: 16vw;
		padding-top: 2px;
		margin: 0 0.5vw 0 0;
	}
	.l-header__logo-list2 .movie img {
		width: 34vw;
	}
	.l-header__logo-list2 .contact img {
		width: 7.2vw;
	}	
	.l-header__nav-img:before {
		top: -134px;
		width: 310px;
	}
	.l-header__nav-list {
		align-items: flex-start;
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		justify-content: flex-end;
		gap: 0 10px;
		margin-left: auto;
		padding: 0;
		position: relative;
		width: 61%;
		z-index: 10;
		padding-right: 8px;
	}
	.l-header__nav {
		margin-bottom: 140px;
	}
}




@media screen and (min-width:768px) and ( max-width:1500px) {
	.l-header__logo-list a img.mapimg{width: 11.8vw;}
	.l-header__logo-list a img{width: 18vw;}
	#index .mapimg{top: 6px !important;width: 14vw;}

	.l-header__nav-img {
		bottom: -64px;
	}
	.l-header__logo-list {
		/* padding-top: 8px; */
	}
	.l-header__logo-list2 {
		display: flex;
		gap: 0 0.5vw;
	}
	.l-header__logo-list2 img.tel {
		width: 16vw;
		padding-top: 2px;
	}
	.l-header__logo-list2 .movie img {
		width: 28vw;
	}
	.l-header__logo-list2 .contact img {
		width: 6vw;
	}	
	.l-header__nav-img:before {		
		top: -120px;
		width: 310px;
	}
	.l-header__nav-list {
		align-items: flex-start;
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		justify-content: flex-end;
		gap: 0 10px;
		margin-left: auto;
		padding: 0;
		position: relative;
		width: 67%;
		z-index: 10;
		padding-right: 8px;
	}
	.l-header__nav {
		margin-bottom: 140px;
	}

}

@media screen and (min-width:768px) and ( max-width:1100px) {
	.l-header__nav-img {
		bottom: -60px;
	}
	.l-header__logo-list {
		width: 20%;
		/* padding-top: 4px; */
	}
	.l-header__logo-list img.bottom{
		width: 12vw;
	}
	.l-header__logo-list2 {
		width: 53%;
	}
	.l-header__logo-list2 img {
		width: 15vw;
	}
	.l-header__logo-list2 img.tel {
		margin-top: 0.5vw;
	}
	.l-header__logo{
		align-items: flex-start;
	}

	.l-header__nav-list li a {
		font-size: 14px;
	}
	.c-btn__click a {
		padding: 24px 110px 28px;
	}
	.c-btn__click a img {
		width: 270px;
	}
	.c-web__item-ttl img {
		width: 100%;
		height: auto;
	}
	.c-se__ttl03.news img {
		width: 100%;
		height: auto;
	}
	.c-se__ttl03.news {
		max-width: 450px;
	}
	.footer-Box__left {
		width: 40%;
	}
	.footer-Box__right-wrap {
		width: 60%;
	}
	.f-home-link a img {
		width: 80%;
		height: auto;
	}
	.f-home-company p {
		font-size: 14px;
	}
	.f-link-l {
		margin-right: 8px;
		width: 33%;
	}
	.f-link-c {
		margin-right: 24px;
		width: 33%;
	}
	.f-link-r {
		width: 33%;
	}
	.p-contact__top h2 img,
	.p-contact__top p img {
		width: 80%;
		height: auto;
	}
	.p-contact__top-img {
		left: 0;
	}
	.p-contact__bottom-img img {
		width: 100%;
		height: auto;
	}
	.p-contact__center img {
		width: 100%;
		height: auto;
	}
	.p-contact__center-wrap img {
		width: 100px;
		height: auto;
	}
	.p-contact__center {
		padding: 116px 16px;
	}
	.p-contact__bottom {
		display: flex;
		flex-flow: column;
		gap: 32px 0;
	}
	.pc3 { display: none !important; }
	/*pcのみ表示ブロック*/
	.tab { display: block !important; }
	/*tabのみ表示ブロック*/
	.l-page__nav-list {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 16px;
		margin-top: -88px;
		padding: 16px 0;
		place-items: center;
	}
	.main-title.page-contact {
		padding: 100px 0 90px;
	}
	.p-page__link-txt.course {
		font-size: 28px;
	}
	.c-btn__slider.work.bottom {
		position: relative;
		bottom: -60px;
	}	
	.p-contact__ttl {
		left: 56px;
		bottom: 8px;
	}		
	.c-btn__click {
		padding: 0 16px;
	}
	.c-btn__slider {
		right: 20px;
	}
	
}

@media screen and (max-width: 1200px) {
html { overflow: auto; }
body { overflow: visible; }
}

@media screen and (max-width: 900px) {
	.l-header__nav-img {
		width: 25%;
		left: 0;
	}

	.l-header__nav-img:before {
		top: -47px;
		width: 180px;
	}
}

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

.mw_wp_form input[type="file"] { display: inline-block; width: 100%; font-size: 3.8vw; }
html{ font-size:62.5%;}

body { overflow: hidden; font-size: 3.6vw; font-family: sans-serif; -webkit-text-size-adjust: 100%;line-height: 1.6; background: #F2F2F2;}
.pc, .pc2 { display: none !important; }
/*pcのみ表示ブロック*/
.pc3 { display: none !important; }
/*pcのみ表示ブロック*/
.tab { display: none !important; }
/*tabのみ表示ブロック*/
.sp { display: block !important; }
/*スマホのみ表示ブロック*/
.sp2 { display: inline-block !important; }
/*スマホのみ表示ブロック*/
.no-br { display: none; }
/*スマホでbrを解除したい場合に使用*/
.sp_display_block { display: block !important; }
/*スマホでflexboxを解除したい場合等に使用*/
.pc-menu{ display: none; }
.side-fix{ display: none; }
.fix-list{ display: none; }
#pc-menu-open{ display: none; }
#g-nav{ display: none; }


header{ }
.header-logo-frame{}
header .header-logo-frame .h-logo{max-width: 96.1vw;width: 100%;margin-left: auto;}
header .header-logo-frame .h-logo.page{margin: 0;}
header .header-logo-frame .h-logo.page a{display: flex;align-items: flex-start;}
header .header-logo-frame .h-logo img.top{width: 36.9vw;height: auto;margin-right: 2.8vw;padding-bottom: 1.9vw;}
header .header-logo-frame .h-logo img.bottom{width: 33vw;height: auto;}
header .h-logo-txt{font-size: 3.2vw;line-height: 1.6;font-weight:500;letter-spacing: 0px;}
.sp-header .h-menu img{}

.sp-header{  }
.sp-header .h-logo img {width: auto;}
.sp-header .h-menu {position: fixed;padding: 3.6vw;top: 0;right: 0;width: 11.5vw;aspect-ratio: 1; z-index: 997;background-color:#E7322F;display: flex;flex-direction: column;gap: 1.4vw 0;}

.bar{display: block;width: 100%;height: 0.24vw;background: #000;transition: all  0.3s ease;}
.bar.closebtn{display: block;width: 100%;height: 0.24vw;background: #000;}
.bar1.closebtn{position: relative; left: 50%;	transform: translateX(-50%) rotate(45deg);top: 1.6vw;}
.bar2.closebtn{display: none;}
.bar3.closebtn{position: relative;left: 50%;	transform: translateX(-50%) rotate(-45deg);top:1.6vw;}


nav#sp-global-nav .h-logo { background: #fff;}
nav#sp-global-nav .h-logo img { height: 13vw; width: auto;}
nav#sp-global-nav { font-size: 3.8vw; z-index: 999; overflow: scroll; position: fixed; top: 0; width: 100vw; height: 100vh; display: none; background: #E7322F; box-sizing: border-box; color: #fff; padding: 0px 0px 25vw 0px; }
nav#sp-global-nav .open-close-01 { position: fixed; top: 0; right: 0; width: 11.5vw;aspect-ratio: 1;z-index: 998;background-color:#FFFFFF;padding: 3.6vw;}
nav#sp-global-nav .open-link { width: 70vw; margin: 0 auto 4vw;}
nav#sp-global-nav .list {background: #E7322F;max-width: 89.3vw;width: 95%;margin: 0 auto 5.7vw;}
nav#sp-global-nav .list.bottom {margin-bottom: 9.6vw;}

nav#sp-global-nav .list li a { color: #fff; line-height: 3.3; text-decoration: none; display: block; border-bottom: 0.2vw solid #000; font-size: 4.3vw;font-weight: bold;letter-spacing: 0.43vw;}
nav#sp-global-nav .list2 {background: #fff;max-width: 89.3vw;width: 95%;margin: 0 auto 3.9vw;padding: 4.7vw 6.5vw 5.5vw;}
nav#sp-global-nav .list2 li { display: block;color: #100100;line-height: 2.1; text-decoration: none; display: block; font-size: 4.3vw;font-weight: bold;letter-spacing: 0.43vw;}
nav#sp-global-nav .list2 li a { color: #100100; line-height: 2.1; text-decoration: none; display: block; font-size: 4.3vw;font-weight: bold;letter-spacing: 0.43vw;}

.youtube-list{padding: 0px 5vw 8vw 5vw;}
.youtube-list li{margin:0 0 4vw 0;}



/* ◎追加-ナビメニュー- */
.open-color-Box {padding: 21vw 0 0;}
.open-logo{padding: 2.1vw 3.3vw;background: #000;position: fixed;top: 0;right: 0;z-index: 997;width: 100%;height: 11.5vw;}
.open-logo a{}
.open-logo a img{width: 30vw;height: auto;}
.open-items{background: #fff;max-width: 89.3vw;width: 95%;margin: auto;display:flex;justify-content: center;gap: 0 1.6vw;padding: 4.5vw 3.6vw;margin-bottom: 8.3vw;}
.open-item{width: 100%;height: 100%;}
.open-item a {aspect-ratio: 1 / 1;}
.open-item:nth-child(1) a {display: inline-block;border: 0.24vw solid #000;padding: 2.6vw 8.6vw 1.9vw;}
.open-item:nth-child(2) a {display: inline-block;background:#158E95;padding: 5.3vw 7.7vw 1.9vw;}
.open-item:nth-child(3) a {display: inline-block;background: #E7322F;padding: 2.8vw 5.3vw 1.9vw;}
.sns-list{max-width: 89.3vw;width: 95%;margin: 0 auto 28.6vw;display: flex;gap: 0 8.6vw;align-items: center;}

.side-fix{ display: none!important; }

.sp-fix-list {position: fixed; bottom: 0; width: 100%; z-index: 996; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; align-items: stretch;border-top: 0.24vw solid;border-image:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,0.07),rgba(0,0,0,1)) 1;height: 16vw;}
.sp-fix-list .tel {background: #FFFFFF; padding: 1.6vw 5.7vw;}
.sp-fix-list .tel img {width: 5.5vw;height: auto;}
.sp-fix-list .mail {background: #158E95; padding: 4.3vw 4.8vw;}
.sp-fix-list .mail img {width: 6.5vw;height: auto;}
.sp-fix-list .icon {background: #E7322F; padding: 1.7vw 2.8vw 7.7vw;}

#end-contact{margin: 0 0 0vw 0;}
#end-contact .ttl-en{text-align: center;margin: 0 auto 8vw auto;width: 100%;}
#end-contact .ttl-en img{width: 21vw;}
#end-contact .end-frame{min-width: 100%; margin: 0 auto;}
#end-contact .end-frame .end-left-telframe{width: 100%;position: relative;z-index: 10;background-color: #fff;padding: 9.8vw 8vw 9.5vw 8vw;box-shadow: 0px 0px 2vw 0px rgb(0 0 0 / 8%);}
#end-contact .end-frame .end-left-telframe .main-telframe{position: relative;background-image:url(../images/common/end-con-tel-line.svg);background-position:bottom 0px center;background-repeat:no-repeat;padding: 0 0 3.4vw 0;margin: 0 0 3vw 0;}
#end-contact .end-frame .end-left-telframe .main-telframe .ttl{text-align: center;margin: 0 auto 7vw auto;width: 100%;}
#end-contact .end-frame .end-left-telframe .main-telframe .ttl img{width: 58vw;}
#end-contact .end-frame .end-left-telframe .main-telframe .maintel{text-align: center;margin: 0 0 0.8vw 0;padding: 0 3vw 0 2vw;}
#end-contact .end-frame .end-left-telframe .main-telframe .timetxt{text-align: center;font-size: 3.1vw;line-height: 1.6;letter-spacing: 0vw;}
#end-contact .end-frame .end-left-telframe .sub-telframe{position: relative;width: 100%;margin: 0 auto;}
#end-contact .end-frame .end-left-telframe .sub-telframe .sub-txt{text-align: center;font-size:3.382vw;line-height: 1.85;letter-spacing: 0.2vw;margin: 0 0 1vw 0;}
#end-contact .end-frame .end-left-telframe .sub-telframe .subtel{text-align: center;padding: 0 21vw 0 0;}
#end-contact .end-frame .end-left-telframe .sub-telframe .name{position: absolute;bottom: 1vw;right: 4vw;font-size:3.382vw;line-height: 1.6;letter-spacing: 0.2vw;}
#end-contact .end-frame .end-right-contactframe{width: 100%; position: relative;background-image:url(../images/common/end-contact-bg.jpg);background-position:0px 0px;background-repeat:no-repeat;}
#end-contact .end-frame .end-right-contactframe a{width: 100%;position: relative;z-index: 10;display: inline-block;padding: 14vw 8vw 17vw 8vw;background-image:url(../images/common/end-contact-arrow.svg);background-position: left 47.5vw bottom 8.5vw;background-repeat:no-repeat;transition: .3s;}
#end-contact .end-frame .end-right-contactframe a:hover{text-decoration-color:#fff;text-decoration-thickness: 1.5px;background-position:  left 52vw bottom 8vw;}
#end-contact .end-frame .end-right-contactframe .subttl{text-align: center;margin: 0 0 6vw 0;}
#end-contact .end-frame .end-right-contactframe .ttl{text-align: center;font-size:5.797vw; line-height: 1.75;letter-spacing: 0.25vw; color: #fff;}
#end-contact .end-frame .end-right-contactframe .photo{position: absolute;bottom:0;right: 3vw;width: 20vw;}
#end-contact .end-frame .end-right-contactframe .photo img{width: 100%;}


.footer-bg-photo{ max-width: 100%; margin: 0 auto;}
.footer-bg-photo img{width: 100%;}

.footer-map{max-width: 100%;margin: 0 auto;background-image:url(../images/common/footer-map_sp.png);background-position:0px 0px;background-repeat:no-repeat;background-size: cover;}
.footer-map .footer-map-frame{width: 100%;margin: 0 auto;padding: 13.7vw 2vw 11.4vw 2vw;position: relative;text-align: center;}
.footer-map .footer-map-frame .ttl{font-size:4.348vw;line-height: 1.6;letter-spacing:0.5vw;color: #fff;font-weight: 500;margin: 0 0 2.9vw 0;}
.footer-map .footer-map-frame .txt{font-size:3.382vw;line-height: 1.96;letter-spacing: 0.25vw;color: #fff;font-weight: 500;}

.sp-page-top a { text-align: center; display: block; padding: 5vw 3vw;}
.sp-page-top a img { width: 20vw; height: auto;}

footer{background: url(../images/index/fv_bg_sp.jpg) no-repeat top center / cover; width: 100%;position: relative;z-index: 2;color: #fff;padding: 13.2vw 0 8.6vw;margin-bottom: -5vw;}
footer::before{content: "";position: absolute;inset: 0;background: #000;opacity: 0.7;z-index: 1;}
footer .footer-Box{max-width: 89.3vw; width: 95%; margin: auto;position: relative;z-index: 3;}
.footer-img{position: relative;z-index: 3;text-align: center;}
.footer-img img {width: 98vw;}
.f-home-link{margin-bottom: 4.5vw;  width: 66.2vw;}
.f-home-company{font-size: 3.865vw;line-height: 1.75;letter-spacing: 0.3vw;margin-bottom: 6.9vw;}
.f-home-company p span {font-size: 3.865vw;line-height: 1.75;letter-spacing: 0.3vw;color: #fff;}
.f-home-sns {margin-bottom: 30.1vw;}
.f-home-sns a{display: block; margin:0 0 3vw 0; }

footer .f-con-Box{width: 90vw;margin: 0 auto;padding: 16.2vw 8vw 15vw 8vw;background-color:#fff;}
footer .f-con-Box .f-logo{margin: 0 0 9.5vw 0;padding: 0 0 0 3vw;}
footer .f-con-Box .name{margin: 0 0 4vw 1vw;font-size:3.382vw;line-height: 1.6;letter-spacing:0.2vw;}
footer .f-con-Box .address{margin: 0 0 3.8vw 1vw;font-size:3.382vw;line-height: 1.7;letter-spacing:0.2vw;}
footer .f-con-Box .f-tel{margin: 0 0 9vw 0.9vw;font-size:3.382vw;line-height: 1.6;letter-spacing: 0.18vw;}
footer .f-con-Box .f-sns{margin: 0 0 0 0;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap: wrap;flex-wrap: wrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;
justify-content: center;}
footer .f-con-Box .f-sns li{margin: 0 4vw 0px 4vw;}

.works-other-photo img{height: 46vw;width: 100%;}
.copyright{font-size: 3.865vw;text-align: center;padding: 8.9vw 0px 10vw;letter-spacing: 0.309vw;background: #E7322F;color:#100100; font-weight: bold;position: relative;z-index: 3;display: block;height: 38vw;}

.main-title{background: #E7322F;color: #fff;position: relative;top: -21.256vw;padding: 31vw 0 12vw;position: relative;z-index: 1;margin: 0 0 -10vw 0;}
.main-title::before{background: url(../images/common/main_ttl_bg_sp.png) no-repeat top center / cover; content: "";inset: 0;mix-blend-mode: multiply;position: absolute;}
.main-title .en {text-align: center;color: #fff;display: block;font-size:3.623vw;margin-bottom: 1.691vw;text-transform: uppercase;}
.main-title .jp {text-align: center;color: #fff;display: block;font-size:6.763vw;font-weight: bold;letter-spacing: 0.676vw;position: relative;z-index: 2;}

#homepage .main-title{padding: 27vw 0 12vw;}
#catalog .main-title .jp {width: 62.8vw;margin: auto;}
#catalog .main-title{padding: 27vw 0 5vw;}
#course .main-title .jp {width: 53.2vw;margin: auto;}
#course .main-title{padding: 26vw 0 6vw;}
#itv .main-title .jp {width: 89.2vw;margin: auto;}
#speed .main-title {padding: 28vw 0 4vw;}
#speed .main-title .jp {width: 59.9vw;margin: auto;}
#know .main-title {padding: 27vw 0 5vw;}
#know .main-title .jp {width: 70.9vw;margin: auto;}
#subsidy .main-title {padding: 27vw 0 5vw;}
#subsidy .main-title .jp {width: 60.9vw;margin: auto;}

.p-page__line {background: #000;width: 100%;height: 2.415vw;margin-top: -22vw;}

.seo_bread_list{ display: none;}

h2.sub-title{ font-weight: bold; padding: 3vw 3vw 1vw; margin-bottom: 5vw; font-size: 5vw; letter-spacing: 0.3vw; text-align: center; border-bottom: solid #000 0.2vw;}

.seo_bread_list{ width: 100%; padding: 2vw 2vw 3.5vw; margin: 0 auto; font-size: 3.2vw; color: #666; line-height: 1.6;}
/*.seo_bread_list{display: none;}*/
 .seo_bread_list a { color: #666;}
.seo_bread_list li{ margin-right: 1.5vw; float: left;  }
.seo_bread_list li::after{ content: ">"; }
.seo_bread_list li:last-child::after{ content: none; } 

/* 2カラムサイト---------------- */
#tow-cl #side{ display: none;}

.fit img {object-fit: cover;}
.system-Frame.fit.gallery a img {width: 100%;height: 30vw;margin-bottom: 2.6vw;}
.wysiwyg img { width: auto !important; height: auto !important; }
.system-ttl-02 {text-align: center;margin-bottom: 2.4vw;}


html { -webkit-font-smoothing: subpixel-antialiased; -moz-osx-font-smoothing: none; overflow-x: hidden; }
/* WEB FONTs 游ゴシックかすれ予防*/
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 100; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 200; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 300; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 400; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Bold"); font-weight: bold; }
@font-face { font-family: "Helvetica Neue"; src: local("Helvetica Neue Regular"); font-weight: 100; }
@font-face { font-family: "Helvetica Neue"; src: local("Helvetica Neue Regular"); font-weight: 200; }
.f-min { font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; }
.f-min-02 { font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3","Sawarabi Mincho","Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
.f-gothic { font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック","Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro",  Verdana, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;}

*:focus { outline: none!important;}
a { -webkit-tap-highlight-color:rgba(0,0,0,0); cursor:pointer;}

body { -webkit-text-size-adjust: 100%; }
img {vertical-align: bottom;max-width: 100%;height: auto;}
a { text-decoration: none; color: #090909; }
a:hover { text-decoration: underline; }
.nobd a:hover { text-decoration: none !important; }
.clearfix { zoom: 1; }
.clearfix:after { display: block; clear: both; height: 0; visibility: hidden; line-height: 0; content: "."; }

/* wysiwyg */
.wysiwyg { word-wrap: break-word; margin-bottom: 10vw; font-size: 3.6vw;}
.wysiwyg strong { font-weight: bolder; }
.wysiwyg em { font-family: "ＭＳ ゴシック",sans-serif; font-style: italic; }
.wysiwyg img { max-width: 100% !important; height: auto; }
.wysiwyg p { min-height: 3vw; min-width: 3vw; line-height: 2.25;}
.wysiwyg h1, .wysiwyg h2, .wysiwyg h3, .wysiwyg h4, .wysiwyg h5, .wysiwyg h6 { color: #333; font-weight: bold; text-align: left;}
.wysiwyg h1 { padding: 3vw; font-size: 4.2vw; line-height: 1.6; margin: 0.2vw 0 4.2vw;}
.wysiwyg h2 { padding: 3vw; font-size: 4.2vw; line-height: 1.6; margin: 0.2vw 0 4.2vw;}
.wysiwyg h3 {font-size: 4.2vw;line-height: 1.6;padding: 1vw 2vw;margin: 0.2vw 0 4.2vw;}
.wysiwyg h4 { padding: 0 0 3vw; font-size: 4vw; line-height: 1.6; margin: 0.2vw 0 4.2vw;}
.wysiwyg h5 { padding: 0 0 3vw; font-size: 3.6vw; line-height: 1.6; margin: 0.2vw 0 4.2vw;}
.wysiwyg h6 { padding: 3vw; font-size: 3.6vw; line-height: 1.6; margin: 0.2vw 0 4.2vw;}
.wysiwyg ul { list-style-type: disc; line-height: 1.6; margin: 0.2vw 0 4.2vw 8vw}
.wysiwyg ol { list-style-type: decimal; line-height: 1.6; font-size: 3.6vw; margin: 0.2vw 0 4.2vw 8vw}
.wysiwyg table {width: 100% !important;/* table-layout: fixed; */}
.wysiwyg table th,
.wysiwyg table td { border: 0.2vw solid #999; padding: 3vw; font-size: 3.6vw; margin: 0.2vw 0 4.2vw 8vw}
.wysiwyg iframe{ height: 50vw !important; width: 100% !important; margin-bottom: 4vw!important; }

/* img-block */
/* アンカーリンク調整 */
.hideAnchor { display: block; height: 0; overflow: hidden; text-indent: -9999px; margin-top: -2vw; padding-bottom: 2vw; }
/* スクロール縦 */
.scroll-y { box-sizing: border-box; overflow-y: scroll; transform: translateZ(0); }
/* リンク透明 */
a img:hover { -ms-filter: "alpha( opacity=80 )"; filter: alpha(opacity=80); opacity: 0.8; }
/* リンク透明にしない */
.noop a img:hover { -ms-filter: "alpha( opacity=100 )"; filter: alpha(opacity=100); opacity: 1.0; }
/*---------------------------------------- 　　外部サービス ----------------------------------------*/
/* ggmap */
/* <div class="ggmap">iframeのコピーしたコード</div> */
.sp-ggmap { position: relative; padding-bottom: 56.25%; padding-top: 5vw; height: 0; overflow: hidden; }
.sp-ggmap iframe, .sp-ggmap object, .sp-ggmap embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
/* <div class="youtube"><iframe  src="youtubeのURL?rel=0" frameborder="0" allowfullscreen></iframe></div> */
/* .youtube { position: relative; width: 100%; padding-top: 56.25%; }
.youtube iframe { position: absolute; top: 0; right: 0; width: 100% !important; height: 100% !important; } */
/*---------------------------------------- 　　webフォント（サーバー置き）　 ----------------------------------------*/
@font-face { font-family: 'jp-sttl01';
/* お好きな名前にしましょう */
src: url("../font/.eot");
/* IE9以上用 */
src: url("../font/bokutachi.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Medium.woff") format("woff"), url("../font/NotoSansCJKjp-Medium.woff") format("woff");
/* iOS, Android用 */
/* 念の為指定しておきます */
font-weight: normal;
/* 念の為指定しておきます */
font-style: normal; vertical-align: top; margin: 0px; padding: 0px; }
.myWebFontClass { font-family: 'jp-sttl01'; }


.l-header {
	position: relative;
	z-index: 10;
}
.l-header__logo {
	display: none;
}
.l-header__logo-list {
	padding-top: 4.348vw;
}
.l-header__logo-list a {
	display: grid;
	gap: 0 2.899vw;
	grid-template-columns: 30.918vw 33.092vw;
}
.l-inner {
	max-width: 100%;
}
.l-inner.fv {
	margin-inline: auto;
	max-width: 92.271vw;
	width: 95%;
	height: 100%;
	position: relative;
	z-index: 3;
	padding-top: 53vw;
}
.l-inner.works {
	background: #fff;
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	margin-bottom: 9.2vw;
	margin-inline: auto;
	max-width: 94vw;
	padding: 9.6vw 0 13vw;
	width: 95%;
}
.l-inner.fv3 {
	margin: 0;
	margin-inline: auto;
	max-width: 100vw;
	position: relative;
	width: 100%;
	z-index: 2;
}
.l-inner.reason {
	margin-inline: auto;
	max-width: 95.203vw;
	width: 95%;
}
.l-inner.contact {
	margin-inline: auto;
	max-width: 94.203vw;
	position: relative;
	width: 100%;
	z-index: 1;}

.l-inner.staff {
	position: relative;
	z-index: 2;
}
.l-inner.recruit {
	margin-inline: auto;
	max-width: 89.372vw;
	width: 95%;
}
.l-inner.news {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	margin-inline: auto;
	max-width: 94.203vw;
	width: 95%;
}
.l-inner.web {
	position: relative;
	z-index: 3;
}
.l-inner.fv2 {
	position: relative;
	z-index: 1;
}
.l-inner.faq {
	max-width: 94.2vw;
	width: 95%;
	margin-inline: auto;
}
.l-inner.contact-form {
	width: 95%;
	margin-inline: auto;
}
.l-inner.recruit-form {
	width: 95%;
	margin-inline: auto;
}
.l-inner.catalog-form {
	margin-inline: auto;
	width: 95%;
}
.l-header__nav {
	background: #E7322F;
	height: 12.319vw;
	width: 100%;
}
.l-header__nav-img {
	margin-right: auto;
	max-width: 94vw;
	position: relative;
	top: -8.5vw;
	width: 100%;
	z-index: 2;
}
.l-header__nav-img:before {
	background: url(../images/index/imakara_sp.png) no-repeat center center/contain;
	content: "";
	height: 15.6vw;
	position: absolute;
	right: calc(50% - 36vw);
	top: -11.8vw;
	width: 69vw;
}
.c-btn__more {
	margin: 5.3vw 0 0;
	margin-inline: auto;
	max-width: 57.9vw;
	order: 3;
	text-align: center;
	width: 95%;
}
.c-btn__more a {
	background: #F2F2F2;
	border-radius: 6.5vw;
	display: inline-block;
	padding: 1.6vw 25.1vw 3.3vw 7.7vw;
	position: relative;
	text-align: start;
	width: -moz-fit-content;
	width: fit-content;
}
.c-btn__more a::after {
	aspect-ratio: 1;
	background: url(../images/index/youtube_icon_red.svg) no-repeat center center/contain;
	content: "";
	position: absolute;
	right: 3.865vw;
	top: 50%;
	transform: translateY(-50%);
	width: 4.589vw;
}
.c-btn__more.squire02 a {
	border: 0.24vw solid #fff;
	border-radius: 0;
	position: relative;
}
.c-btn__more.squire02 a::after {
	aspect-ratio: 1;
	background: url(../images/index/youtube_icon_white.svg) no-repeat center center / contain;
	content: "";
	position: absolute;
	right: 3.865vw;
	top: 50%;
	transform: translateY(-50%);
	width: 6.763vw;
}
.c-btn__more.squire03.staff {
	margin: 11.3vw 0 0;
	position: relative;
}
.c-btn__more.squire02.reason {
	margin: 0;
	max-width: 82.126vw;
	text-align: start;
	width: 100%;
}
.c-btn__more.squire02.reason a {
	max-width: 82.126vw;
	width: 100%;
	padding:1.6vw 24vw 3.3vw 4.5vw;
}
.c-btn__more.squire03.staff a {
	border: 0.24vw solid #fff;
	padding: 1.9vw 11.7vw 3.3vw 3.6vw;
}
.c-btn__more.squire03.staff a img {
	width: 25.121vw;
}
.c-btn__more.squire03 a {
	background: none;
	border: 0.24vw solid #000;
	border-radius: 0;
}
.c-btn__more.squire03.staff a::after {
	aspect-ratio: 1;
	background: url(../images/index/youtube_icon_white.svg) no-repeat center center/contain;
	content: "";
	position: absolute;
	right: 2.8vw;
	top: 5.5vw;
	width: 6.7vw;
}
.c-btn__more.squire03 a::after {
	aspect-ratio: 1;
	background: url(../images/index/youtube_icon_white.svg) no-repeat center center/contain;
	content: "";
	position: absolute;
	right: 3.865vw;
	top: 50%;
	transform: translateY(-50%);
	width: 6.763vw;
}
.c-btn__more.squire03 a img {
	width: 25.121vw;
}
.c-btn__more.squire03.news {
	order: 4;
}
.c-btn__more.squire03.news a {
	padding: 1.6vw 25.1vw 3.3vw 7.7vw;
}
.c-btn__list {
	margin: auto;
	margin-bottom: 19.5vw;
	max-width: 89.3vw;
	text-align: start;
	width: 100%;
}
.c-btn__list a {
	background: #fff;
	border: 0.7vw solid #000;
	display: inline-block;
	padding: 4vw 4.8vw;
	position: relative;
	width: 100%;
}
.c-btn__list a::after {
	aspect-ratio: 1;
	background: url(../images/index/youtube_icon_white.svg) no-repeat center center/contain;
	content: "";
	position: absolute;
	right: 3.8vw;
	top: 50%;
	transform: translateY(-50%);
	width: 6vw;
}
.p-btn__list.itv a {

}
.c-btn__list a img {
	height: auto;
	width: 46.8vw;
}
.c-btn__list.view_more.fv3 {
	text-align: center;
}
.c-btn__list.view_more.fv3 a {
	padding: 4.7vw 25.1vw;
	width: 78.2vw;
}
.c-btn__list.view_more.fv3 a::after {
	aspect-ratio: 1;
	width: 8.6vw;
}
.c-btn__list.web a img {
	width: 67.15vw;
}
.c-btn__list.itv a img {
	width: 46.377vw;
}
.c-btn__list.voice a {
	padding: 6.039vw 5.797vw;
}
.c-btn__list.voice a img {
	width: 61.353vw;
}
.c-btn__click {
	padding: 0 3.865vw;
}
.c-btn__click a {
	border: 0.72vw solid #000;
	box-shadow: 1.4vw 1.4vw #000;
	display: inline-block;
	padding: 6vw 16.9vw 6vw 4.8vw;
	position: relative;
	transition: all 0.3s 0s ease;
	width: -moz-fit-content;
	width: fit-content;
}
.c-btn__click a:hover {
	box-shadow: 0 0 #fff;
	transform: translateY(0.9vw);
}
.c-btn__click a::after {
	aspect-ratio: 1;
	background: url(../images/index/youtube_icon_white.svg) no-repeat center center/contain;
	content: "";
	position: absolute;
	right: 3.8vw;
	top: 50%;
	transform: translateY(-50%);
	width: 8.6vw;
}
.c-btn__click-contact {
	margin-inline: auto;
	max-width: 82.1vw;
	width: 100%;
}
.c-btn__click-contact.tel a {
	padding: 3.6vw 7vw 2.6vw;
}
.c-btn__click-contact.tel span:hover {
	box-shadow: 0 0 #fff;
	transform: translateY(0.9vw);
}
.c-btn__click-contact.tel span p {
	color: #fff;
	font-size: 3.8647342995vw;
	font-weight: 700;
	letter-spacing: 0.3vw;
	line-height: 1.625;
	margin-bottom: 0.9vw;
	text-align: center;
}
.c-btn__click-contact.tel span p.time {
	font-size: 3.3816425121vw;
	font-weight: 400;
	letter-spacing: 0.2vw;
	line-height: 2.14;
}
.c-btn__click-contact.mail a {
	padding: 12vw 6vw 6vw;
	position: relative;
}
.c-btn__click-contact.mail a:before {
	background: url(../images/index/contact_tel_bg.svg) no-repeat center center/contain;
	color: #fff;
	content: "zoom相談も受付中！";
	font-size: 4.831vw;
	font-weight: 700;
	letter-spacing: 0.29vw;
	line-height: 1.6;
	padding: 1.4vw 10.3vw 3.3vw;
	position: absolute;
	right: calc(50% - 34.7vw);
	text-align: center;
	top: -4.8vw;
	width: -moz-fit-content;
	width: fit-content;
}
.c-btn__click-contact a {
	background: #E7322F;
	border: 0.24vw solid #fff;
	border-radius: 2.899vw;
	box-shadow: 1.4vw 1.4vw #000;
	display: inline-block;
	transition: all 0.3s 0s ease;
	width: -moz-fit-content;
	width: fit-content;
}
.c-btn__click-contact a:hover {
	box-shadow: 0 0 #fff;
	transform: translateY(0.9vw);
}
.c-se__ttl img {
	margin-inline: auto;
	max-width: 19vw;
	width: 100%;
}
.c-se__ttl.itv {
	margin-bottom: 6.2vw;
}
.c-se__ttl.itv img {
	max-width: 29vw;
}
.c-se__ttl.itv h2 img {
	max-width: 51vw;
}
.c-se__ttl.voice {
	margin-bottom: 6.2vw;
	gap: 6.8vw 0;
}
.c-se__ttl.voice img {
	max-width: 16vw;
}
.c-se__ttl.voice h2 img {
	max-width: 77vw;
}
.c-se__ttl {
	display: grid;
	gap: 5.8vw 0;
	grid-template-columns: repeat(1, 1fr);
	margin-bottom: 7.2vw;
	place-items: center;
}
.c-se__ttl.course {
	margin-bottom: 9.2vw;
	padding: 0 0 10vw 0;
	gap: 5.8vw 0;
	background-color: #fff;
}
.c-se__ttl h2 img {
	height: 100%;
	max-width: 58vw;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.c-se__ttl.lineup {
	margin-bottom: 10.2vw;
}
.c-se__ttl.lineup h2 img {
	max-width: 88vw;
}
.c-se__ttl02 {
	display: grid;
	gap: 3.1vw 0;
	grid-template-columns: repeat(1, 1fr);
	margin-bottom: 4.5vw;
	order: 1;
	place-items: center;
}
.c-se__ttl02 h3 {
	font-size: 5.7971014493vw;
	font-weight: 700;
	letter-spacing: 0.5797101449vw;
	line-height: 1.29;
}
.c-se__ttl03 {
	display: grid;
	gap: 1.9vw 0;
	grid-template-columns: repeat(1, 1fr);
	place-items: end;
}
.c-se__ttl03 img {
	order: 2;
	width: 40.3vw;
}
.c-se__ttl03 h2 {
	order: 1;
}
.c-se__ttl03 h2 img {
	width: 27vw;
}
.c-se__ttl03.news {
	display: grid;
	gap: 1.9vw 0;
	grid-template-columns: repeat(1, 1fr);
	margin-bottom: 5.9vw;
	margin-inline: auto;
	max-width: 74.1vw;
	place-items: end;
	width: 95%;
}
.c-se__ttl03.news img {
	order: 2;
	width: 74.8vw;
}
.c-se__ttl03.news h2 {
	order: 1;
}
.c-se__ttl03.news h2 img {
	width: 36.9vw;
}
.c-btn__slider {
	align-items: center;
	display: flex;
	gap: 0 5.7vw;
	justify-content: flex-end;
	margin-inline: auto;
	max-width: 76vw;
	width: 100%;
}

.c-btn__slider img.right{
	width: 7vw;
	aspect-ratio: 1;
}

.c-web__ttl img {
	width: 45vw;
}
.c-web__item-ttl img {
	width: 73vw;
}
.c-web__item-ttl.item2 img {
	width: 87.9vw;
}
.p-contact.item02 {
	margin-bottom: 0;
}

.p-contact {
	background: #E7322F;
	padding: 9.7vw 0 8.7vw;
	position: relative;
}

.p-contact:before {
	background: url(../images/index/contact_bg_sp.png) no-repeat center center/cover;
	content: "";
	inset: 0;
	mix-blend-mode: multiply;
	position: absolute;
}

.p-contact__top {
	display: block;
	margin-bottom: -3vw;
}

.p-contact__ttl img {
	width: 72.362vw;
}

.p-contact__top-img {
	position: relative;
	top: -11vw;
	left: -7vw;
	text-align: end;
}

.p-contact__top-img img {
	width: 49vw;
	margin: -1vw 0 -0.2vw 0;
}

.p-contact__center {
	background: #fff;
	border-radius: 3.6vw;
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	padding: 13vw 0 33vw;
	place-items: center;
}

.p-contact__bottom-img {
	text-align: center;
	background: #FCD344;
	max-width: 82.126vw;
	width: 95%;
	padding: 2.8vw 4.3vw;
	position: relative;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	margin-bottom: -16.3vw;
}


.p-contact__center img.top {
	margin-bottom: 3.623vw;
}

.p-contact__center img.bottom {
	margin-bottom: 4.831vw;
}

.p-contact__center-wrap {
	display: block;
	margin-bottom: -5vw;
}

.p-contact__bottom {
	display: flex;
	flex-flow: column;
	gap: 7.2vw 0;
	margin-top: -21vw;
	position: relative;
	z-index: 2;
}

.p-page__link {
	margin-bottom: 23.188vw;
}

.p-page__link.course {
	padding-top: 14.9vw;
	margin-bottom: 15.1vw;
}

.p-page__link.speed {
	padding-top: 12.9vw;
	margin-bottom: 14.1vw;
	background: #fff;
}

.p-page__link.know {
	padding: 13.9vw 0 14.7vw;
	margin-bottom: -0.9vw;
	background: #fff;
}

.l-inner.page-link {
	margin-inline: auto;
	max-width: 94.203vw;
	width: 95%;
}

.p-page__link-txt {
	font-size: 5.797vw;
	font-weight: 700;
	letter-spacing: 0.58vw;
	line-height: 1.6666666667;
	text-align: center;
	margin-bottom: 7vw;
}

.p-page__link-txt.course {
	margin-bottom: 5vw;
}

.p-page__link-txt.speed {
	margin-bottom: 3vw;
}

.p-page__link-txt.know {
	margin-bottom: 3vw;
}

.p-page__link-items {
	display: grid;
	gap: 6.3vw 0;
	grid-template-columns: repeat(1, 1fr);
}

.p-page__link-items.speed {
	gap: 4.3vw 0;
}

.p-page__link-items.know {
	gap: 3.3vw 0;
}

.p-page__link-items.subsidy {
	gap: 9.3vw 0;
}

.p-page__link-item a img {
	height: auto;
	margin-bottom: 2.415vw;
	width: 100%;
}

.p-page__link-item a p {
	font-size: 3.382vw;
	font-weight: 400;
	letter-spacing: 0.271vw;
	line-height: 1.5714285714;
	text-align: center;
	text-decoration: underline;
}

.l-inner.hp {
	max-width: 100%;
	position: relative;
	z-index: 2;
}

.l-inner.homepage-items {
	margin-inline: auto;
	max-width: 94.203vw;
	width: 95%;
}

.l-inner.homepage-items02 {
	margin-inline: auto;
	max-width: 94.203vw;
	width: 95%;
}

.l-inner.homepage__flow {
	margin-inline: auto;
	max-width: 94.203vw;
	width: 95%;
}

.l-inner.homepage__merit {
	margin-inline: auto;
	max-width: 94.203vw;
	width: 95%;
}
.l-inner.consul {
	max-width: 100%;
}
.l-inner.consul-items {
	width: 100%;
}
.l-inner.consul-fv2 {
	width: 100%;
}
	
.l-inner.consul-merit {
	margin-inline: auto;
	max-width: 94.203vw;
	width: 95%;
}
.l-inner.archive-works{
	width: 100%;
	margin: 0 0 15vw 0;
	margin-inline: auto;
}
.p-page__link.company {
	margin-bottom: 28.1vw;
}
.p-page__link.itv {
	background: #FFFFFF;
	padding: 11.4vw 0 11.7vw;
	margin-bottom: 0;
}
.p-page__link-txt.itv {
	margin-bottom: 4vw;
}
.p-page__link-item a img.page-link-itv-img {
	margin-bottom: 2.4vw;
}
.p-page__link-items.itv {
	gap: 4.3vw 0;
}
}
@media screen and (max-height: 450px) {
   /* 高さ450px以下の場合 andoroidのフォーム対策 ストーカーバナー用　*/
	.sp-fix-list{display: none;}
}

.wysiwyg h1 { background-color: #dcdcdc;}
.wysiwyg h2 { border-top: 1px solid #333; border-bottom: 1px solid #333;}
.wysiwyg h3 { border-left: 6px solid #E7322F;}
.wysiwyg h4 { border-bottom: 1px solid #000;}
.wysiwyg h5 { border-bottom: 1px dashed #000;}
.wysiwyg h6 { background-color: #eee; border: 1px dotted #999;}