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


/* font
=========================================== */
@font-face {/*NotoSansJP*/
  font-family: 'NotoSansJP';
  src: url('../fonts/font/NotoSansJP-Thin.otf');
  src:
  url('../fonts/font/NotoSansJP-Thin.woff2') format('woff2'),
  url('../fonts/font/NotoSansJP-Thin.woff') format('woff'),
  url('../fonts/font/NotoSansJP-Thin.ttf') format('TrueType');
	font-weight: 100;
}

@font-face {/*NotoSansJP*/
  font-family: 'NotoSansJP';
  src: url('../fonts/font/NotoSansJP-Regular.otf');
  src:
  url('../fonts/font/NotoSansJP-Regular.woff2') format('woff2'),
  url('../fonts/font/NotoSansJP-Regular.woff') format('woff'),
  url('../fonts/font/NotoSansJP-Regular.ttf') format('TrueType');
	font-weight: 400;
}

@font-face {/*NotoSansJP*/
  font-family: 'NotoSansJP';
  src: url('../fonts/font/NotoSansJP-Medium.otf');
  src:
  url('../fonts/font/NotoSansJP-Medium.woff2') format('woff2'),
  url('../fonts/font/NotoSansJP-Medium.woff') format('woff'),
  url('../fonts/font/NotoSansJP-Medium.ttf') format('TrueType');
	font-weight: 500;
}

@font-face {/*NotoSansJP*/
  font-family: 'NotoSansJP';
  src: url('../fonts/font/NotoSansJP-Bold.otf');
  src:
  url('../fonts/font/NotoSansJP-Bold.woff2') format('woff2'),
  url('../fonts/font/NotoSansJP-Bold.woff') format('woff'),
  url('../fonts/font/NotoSansJP-Bold.ttf') format('TrueType');
	font-weight: 700;
}
@font-face {/*NotoSansJP*/
  font-family: 'NotoSansJP';
  src: url('../fonts/font/NotoSansJP-ExtraBold.otf');
  src:
  url('../fonts/font/NotoSansJP-ExtraBold.woff2') format('woff2'),
  url('../fonts/font/NotoSansJP-ExtraBold.woff') format('woff'),
  url('../fonts/font/NotoSansJP-ExtraBold.ttf') format('TrueType');
	font-weight: 800;
}

@font-face {/*Poppins*/
  font-family: 'Poppins';
  src: url('../fonts/font/Poppins-Medium.otf');
  src:
  url('../fonts/font/Poppins-Medium.woff2') format('woff2'),
  url('../fonts/font/Poppins-Medium.woff') format('woff'),
  url('../fonts/font/Poppins-Medium.ttf') format('TrueType');
	font-weight: 500;
}

@font-face {/*Poppins*/
  font-family: 'Poppins';
  src: url('../fonts/font/Poppins-SemiBold.otf');
  src:
  url('../fonts/font/Poppins-SemiBold.woff2') format('woff2'),
  url('../fonts/font/Poppins-SemiBold.woff') format('woff'),
  url('../fonts/font/Poppins-SemiBold.ttf') format('TrueType');
	font-weight: 600;
}


/* Link
=========================================== */

a:link, a:visited {
	color: #1E1E1E;text-decoration: none;
}
a:hover, a:active {
	color: #1E1E1E;text-decoration: underline;
}
a {
	outline: none;transition: 0.3s;
}
a img {transition: 0.3s;}

:focus { outline: none;}

/* LAYOUT
=========================================== */
html.showPage,
html.showPage body{min-width: 1200px;}

body {
	color: #1E1E1E;
	background: url("../img/common/body.png")no-repeat center top;background-size:1920px;
	font-size:16px;
	font-family: 'NotoSansJP',"メイリオ","Mayryo ","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	font-weight: 400;
    font-style: normal;
	overflow:hidden;
	max-width:1920px;
	margin:0 auto;
	line-height:1.6;
}
body.home {background: url("../img/common/bg01.png")no-repeat center top;background-size:2000px;max-width:2000px;}

h1,h2,h3,h4,h5,h6 {font-weight:700;}
body,li,th,td,p,dt,dd{}
body#tinymce{min-width:inherit!important;}

p {}
.wrap {width: 1100px;margin:0 auto;position:relative;}
table {width:100%;}
img {max-width:100%;height:auto;}

/*共通設定*/
.btn01 {width:320px;height:70px;display:table;}
.btn01 a {display:table-cell;vertical-align:middle;color:#fff;font-weight:bold;text-decoration:none;border-radius:140px;padding-left:40px;background: url("../img/common/btn01.svg")no-repeat center right 22px #E20013;}
.btn01 a:hover {opacity:0.7;}

.btn02 {width:320px;height:70px;display:table;}
.btn02 a {display:table-cell;vertical-align:middle;font-weight:bold;text-decoration:none;border-radius:140px;padding-left:40px;background: url("../img/common/btn02.svg")no-repeat center right 22px #fff;border:1px solid #E20013;}
.btn02 a:hover {opacity:0.7;}

.title01 {text-align:center;}
.title01 .eng {font-size:24px;font-weight:600;font-family: 'Poppins'}
.title01 .eng span {display:inline-block;padding-left:18px;position:relative;}
.title01 .eng span::before {content:"";width:8px;height:8px;background:#E20013;border-radius:100%;position:absolute;top:0;bottom:0;left:0;margin:auto;}
.title01 .jap {font-size:50px;}
.title01 .jap .mini {font-size:20px;display:block;}

.title02 {text-align:center;}
.title02 .eng {font-weight:bold;}
.title02 .eng span {display:inline-block;padding:2px 20px;border:1px solid #E20013;border-radius:100px;color:#E20013;}
.title02 .jap {font-size:50px;margin-top:2px;}

.title03 {align-items: baseline;padding-bottom:20px!important;border-bottom:1px solid #ccc;position:relative;}
.title03 .eng {font-size:46px;margin-right:20px;padding-left:22px;position:relative;font-family: 'Poppins';font-weight:500;}
.title03 .eng::before {content:"";width:8px;height:8px;background:#E20013;border-radius:100%;position:absolute;top:0;bottom:0;left:0;margin:auto;}
.title03 .jap {}


/*ウェブフォント*/
.tcenter {text-align: center;}
.tright {text-align: right;}
.pop {font-family: 'Poppins';font-weight:500;}
.thin {font-weight: 100;}

/*色*/
.shiro {color:#fff;}
.red {color:#E20013;}
.blue {color:#007AFF;}
.mt20 {margin-top: 20px;}

.flex{width: 100%;
    margin: 0 ;
    padding: 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-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;
}

/* header */
/*-------------------------------------------*/
#header {width:100%;min-width:1100px;max-width: 2000px;position:fixed;transition: 0.3s;left:0;right: 0;top:0;margin: auto;z-index: 100;padding:10px 60px;box-sizing: border-box;}
.fixed #header {background: rgba(255,255,255,0.8);}
#header .header_inner {justify-content:space-between;align-items:center;}
#header .header_inner .logo_box {width:auto;align-items:center;}
#header .header_inner .logo_box .logo {}
#header .header_inner .logo_box .p01 {font-size:14px;margin-left:20px;}
#header .header_inner .right {}
#header .header_inner .right .right_in01 {width:auto;justify-content:flex-end;}

.sns_list {width:auto;}
.sns_list li {width:36px;margin-right:6px;}
.sns_list li:last-child {margin-right:0;}
.sns_list li a {display:block; }
.sns_list li a:hover {opacity:0.7;}
.cs_btn {font-size:14px;}
.cs_btn a {display:inline-block;padding-right:16px;background:url("../img/common/cs_btn.svg")no-repeat center right;}

#header .header_inner .right .right_in01 .cs_btn {margin-left:26px;}

#header .header_inner .right .right_in02 {width:auto;justify-content:flex-end;align-items:center;margin-top:-2px;}

.gnav {}
.gnav > ul {width:auto;}
.gnav > ul > li {margin-right:30px;font-weight:500;}
.gnav > ul > li > a {text-decoration:none;display:block;}
.gnav > ul > li > .a {position:relative;background: url("../img/common/pass01.svg")no-repeat right center;padding-right: 14px;display: block;}

.gnav > ul > li:hover > a {color:#E20013!important;}
.gnav > ul > li:hover > .a {color:#E20013!important;background: url("../img/common/pass02.svg")no-repeat right center;}

/*開閉部*/
.g_sub {position: fixed;background: #fff;box-sizing: border-box;overflow: hidden;width: calc(100% - 120px);min-width: 1100px;top:90px;left:0;right:0;height: 0;opacity: 0;transition: 0.3s;padding: 0;margin:auto;border-radius:10px;box-shadow: 6px 6px 30px rgba(0,0,0,0.06);}
.gnav > ul > li:hover .g_sub {overflow:visible;height:auto;opacity: 1;box-sizing: border-box;padding: 50px 0;}

.g_sub_in {width:1100px;margin: 0 auto;justify-content:space-between;}
.g_sub_in .g_sub_midashi {}
.g_sub_in .g_sub_midashi .eng {font-family: 'Poppins';font-weight:500;padding-left:14px;position:relative;}
.g_sub_in .g_sub_midashi .eng::before {content:"";width:6px;height:6px;background:#E20013;border-radius:100%;position:absolute;top:0;bottom:0;left:0;margin:auto;}
.g_sub_in .g_sub_midashi .jap {font-size:22px;font-weight:bold;}

.g_sub_in .g_sub_ul {width:auto;justify-content: flex-end;}
.g_sub_in .g_sub_ul li {width:200px;margin-right:15px;}
.g_sub_in .g_sub_ul li:last-child {margin-right:0;}
.g_sub_in .g_sub_ul li a {display:block;text-decoration:none;text-align:center;font-weight:500;}
.g_sub_in .g_sub_ul li a:hover {opacity:0.7;}
.g_sub_in .g_sub_ul li span {display:inline-block;padding-left:22px;background: url("../img/common/pass03.svg")no-repeat left center;margin-top: 12px;}

/*開閉部の間を埋める*/
.gnav > ul > li:hover .g_sub::before {content: "";width: 100%;height:13px;position: absolute;left:0;top:-13px;}

.h_entry {width:140px;height:50px;display:table;}
.h_entry a {display:table-cell;vertical-align:middle;text-align:center;background:#E20013;color:#fff;font-size:18px;text-decoration:none;border-radius:140px;}
.h_entry a {display:table-cell;vertical-align:middle;text-align:center;background:#E20013;color:#fff;font-size:18px;text-decoration:none;border-radius:140px;}
.h_entry a:hover {opacity:0.7;}

/* main */
/*-------------------------------------------*/
#main {}
#main.home_main {background:url("../img/main/top_il01.png")no-repeat center top;position:relative;}
#main.home_main .parallax-wrap {position: relative;}
#main.home_main .parallax-wrap .text_box {padding:640px 0 185px;position:relative;z-index:3;}
#main.home_main .parallax-wrap .text_box h2 {font-size:50px;line-height:1.4;margin-bottom:40px;}
#main.home_main .parallax-wrap .text_box h2 span {display:inline-block;padding-left:1em;}
#main.home_main .parallax-wrap .text_box h3 {font-size:24px;line-height:1.4;}

.main_sli01_box {position:absolute;width:100%;left: 50%;transform: translateX(-50%);top:120px;overflow: hidden;}
.main_sli01 {display:flex;align-items:flex-end;animation: scroll01 60s linear infinite;width: max-content!important;}
.main_sli01 img {display: block;height: 490px;max-width: fit-content;}

@keyframes scroll01 {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%); /* 半分の距離だけ動かす（画像を2セット入れてるから無限） */
  }
}
.main_sli02_box {position:absolute;width:100%;left: 50%;transform: translateX(-50%);top:100px;overflow: hidden;z-index: -1;}
.main_sli02 {display:flex;align-items:flex-end;animation: scroll01 80s linear infinite;width: max-content!important;}
.main_sli02 img {display: block;height: 437px;max-width: fit-content;}

@keyframes scroll02 {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%); /* 半分の距離だけ動かす（画像を2セット入れてるから無限） */
  }
}



.parallax {position: absolute;display:none;}

/* 配置例（自由に調整OK） */
.parallax.img01 {top:164px;left:-110px;width:340px;}
.parallax.img02 {top:110px;left:117px;width:200px;z-index: -1}
.parallax.img03 {top:202px;right:-11px;width:530px;}
.parallax.img04 {top:658px;right:-27px;width:380px;}
.parallax.img05 {top:513px;right:-149px;width:260px;z-index: -1}
.parallax.img06 {top:838px;right:253px;width:200px;z-index: -1}

.layer1 {z-index:2;}
.layer2 {filter: blur(10px);}

/* 下層 main */
/*-------------------------------------------*/
#main.kasou {margin-top:114px;height:380px;padding-top:120px;border-bottom:1px solid #D3D3D3;box-sizing:border-box;background: url("../img/main/kasou.png")no-repeat center;background-size:1920px;}
#main.kasou .eng {font-family: 'Poppins';font-weight:600;font-size:90px;line-height:1;margin-bottom:10px;}
#main.kasou .jap {font-size:20px;line-height:1.4;}

/*パンくず*/
div#bread {position: relative;height:0;top: calc(-1em - 55px);}
ul.bread-list {}
ul.bread-list li {font-size:14px;line-height:1.2;}
ul.bread-list li a {text-decoration:none;}
ul.bread-list li:after{content:"-";margin: 0 4px;}
ul.bread-list li:last-child:after{content:none;}

/* TOPへ戻る・追従 */
/*-------------------------------------------*/
#fixed_trigger {position: absolute;left: 0;top:110px;z-index: -100;}
.kahen_bg {margin: 0 auto;box-sizing:border-box;overflow:hidden;transition: width 0.5s ease;}

/* footer */
/*-------------------------------------------*/
#footer {background: url("../img/common/bg02.png")no-repeat center top;background-size:2000px;padding:80px 0 100px;}
.footer_entry {margin-bottom:140px;}
.footer_entry .cnt {justify-content:space-between;align-items:flex-start;position:relative;}
.footer_entry .cnt .title01 {padding-top:60px;text-align:left;}
.footer_entry .cnt .title01 .jap {margin-top:10px;font-size:40px;}
.footer_entry .cnt .img {width:480px;}
.footer_entry .cnt .btn01 {position:absolute;left:0;bottom:85px;}

.page-entry #footer {background: url("../img/common/entry_bg.png")no-repeat center top;background-size:1920px;padding:140px 0 208px;}

.footer_contact {margin-bottom:140px;}
.footer_contact .cnt {justify-content:space-between;align-items:flex-end;position:relative;margin-bottom:60px;}
.footer_contact .cnt .title01 {text-align:left;}
.footer_contact .cnt .title01 .jap {font-size:50px;}
.footer_contact .cnt .text01 {font-weight:500;width:450px;padding-bottom:13px;}
.footer_contact .btn01 {margin:0 auto 10px;}
.footer_contact .text02 {}


.footer {}
.footer .cnt01 {justify-content:space-between;margin-bottom:34px;}
.footer .cnt01 .left {}
.footer .cnt01 .left .logo {margin-bottom:25px;}
.footer .cnt01 .left .cnt01_in {width:auto;align-items:center;}
.footer .cnt01 .left .cnt01_in .address {font-size:11px;margin-right:30px;}

.footer .cnt01 .f_nav {width:auto;}
.footer .cnt01 .f_nav .f_nav_in {width:auto;}
.footer .cnt01 .f_nav .f_nav_in ul {margin-right:60px;}
.footer .cnt01 .f_nav .f_nav_in:last-child  ul:last-child {margin-right:0;}
.footer .cnt01 .f_nav li {margin-bottom:20px;font-weight:500;}
.footer .cnt01 .f_nav li.mini {margin-bottom:0;font-size:14px;font-weight:400;line-height:2;}
.footer .cnt01 .f_nav li:last-child {margin-bottom:0;}

.footer .cnt02 {justify-content:space-between;align-items:center;flex-direction:row-reverse;}
.footer .cnt02 .copyright {font-size:11px;}

/* wideWrap
=========================================== */
section{width:100%;}

aside,footer{position:relative;}

/* CLEARFIX
=========================================== */

.cf:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	overflow: hidden;
	font-size: 0.1em;
	line-height: 0;
}
.cf {
	min-height: 1px;
}
* html .cf {
	height: 1px;/*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
}

.no-pc{display: inline-block;pointer-events: none;text-decoration: none!important;}

.sp{display:none!important;}
