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


/* font
=========================================== */

@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-SemiBold.otf');
  src:
  url('../fonts/font/NotoSansJP-SemiBold.woff2') format('woff2'),
  url('../fonts/font/NotoSansJP-SemiBold.woff') format('woff'),
  url('../fonts/font/NotoSansJP-SemiBold.ttf') format('TrueType');
	font-weight: 600;
}

@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 {/*NotoSerifJP*/
  font-family: 'NotoSerifJP';
  src: url('../fonts/font/NotoSerifJP-Regular.otf');
  src:
  url('../fonts/font/NotoSerifJP-Regular.woff2') format('woff2'),
  url('../fonts/font/NotoSerifJP-Regular.woff') format('woff'),
  url('../fonts/font/NotoSerifJP-Regular.ttf') format('TrueType');
	font-weight: 400;
}


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

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


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

a:link, a:visited {
	color: #000;text-decoration: none;
}
a:hover, a:active {
	color: #000;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: #000;
	background:#fff;
	font-size:16px;
	line-height:normal;
	font-family: 'NotoSansJP',"メイリオ","Mayryo ","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	font-weight: 500;
    font-style: normal;
	overflow:hidden;
	max-width:1920px;
	margin:0 auto;
}

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:131px;height:114px;display:table;}
.btn01 a {display:table-cell;vertical-align:middle;text-align:center;font-weight:600;line-height: 18px;cursor:pointer;letter-spacing:-0.02em;position:relative;}
.btn01 a::before {content:"";width:92px;height:92px;border:2px solid #908B8B;box-sizing:border-box;position:absolute;inset:0;margin:auto;border-radius: 100%;}
.btn01 a::after {content:"";width:100%;height:100%;background:url("../img/common/btn_waku01.svg") no-repeat;background-size:contain!important;position:absolute;inset:0;margin:auto;animation:rotation 10s linear infinite;}
.btn01 a span {display: inline-block;padding:24px 0;background:url("../img/common/btn01.svg") no-repeat left 50% bottom;position: relative;transition:0.3s;}
.btn01 a:hover span {background-position:left 60% bottom 10%;}

.btn02 a {color:#fff;}
.btn02 a::before {border-color:#fff;}
.btn02 a::after {;background:url("../img/common/btn_waku02.svg") no-repeat}

.k_btn01 {width:340px;height:80px;display:table;margin:0 auto;}
.k_btn01 a {display:table-cell;vertical-align:middle;text-align:center;border:1px solid #1A2FB5;border-radius:40px;color:#fff;font-weight:bold;text-decoration:none;background:url("../img/p02/k_btn01.svg") no-repeat center right 25px #1A2FB5;}
.k_btn01 a:hover {background:url("../img/p02/k_btn01.svg") no-repeat center right 25px;color:#1A2FB5;}

.title01 {}
.title01 .eng {font-size:32px;font-family: 'Oswald';font-weight: 500;}
.title01 .jap {font-size:48px;}

.title02 {align-items:center;}
.title02 .jap {font-size:38px;margin-right:30px;}
.title02 .eng {font-size:24px;font-family: 'Oswald';font-weight: 500;}

.common_text {line-height:2;}

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

/*色*/
.shiro {color:#fff;}
.ao {color:#1A2FB5;}
.ki {color:#FDFD03;}
.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: 1920px;position:fixed;transition: 0.3s;left:0;right: 0;top:0;margin: auto;z-index: 100;}
.fixed #header {background:#fff;}
#header .header_inner {justify-content:space-between;align-items:center;box-sizing:border-box;}
#header .header_inner .left {}
#header .header_inner .left .p01 {font-size:12px;font-weight:400;padding-left:8px;}
#header .header_inner .left .logo {width:292px;}

.nav-btn {width: 100px;height:100px;display: table;position:relative;z-index: 1;}
.nav-btn span {display:table-cell;vertical-align:top;text-align:center;background:#FDFD03;font-size:17px;font-weight:bold;padding-top:20px;color:#3C3926;cursor:pointer;}
.nav-btn:before{content:"";width:40px;height:3px;background: #3C3926;position: absolute;bottom:40px;left:0;right:0;margin:auto;transition: 0.3s;box-shadow: 0 10px 0 0 #3C3926;}
.nav-btn:after{content:"";width:40px;height:3px;background: #3C3926;position: absolute;bottom:20px;left:0;right:0;margin:auto;transition: 0.3s;}

.nav-btn.on:before {transform: rotateZ(45deg);bottom: 30px;box-shadow: none!important;}
.nav-btn.on:after {transform: rotateZ(-45deg);bottom: 30px;}

.nav-box {position:fixed;top:0;left:0;width:100%;background:rgba(0,21,125,0.95);padding:0;height:0;transition:0.5s;overflow:hidden;}
.nav-box.on {height:auto;padding:150px 0 80px;}

.nav-box .nav-box_in {justify-content:center;}
.nav-box .nav-box_in .gnav {justify-content:center;margin-right:100px;width:auto;}
.nav-box .nav-box_in .gnav ul {margin-right:50px;}
.nav-box .nav-box_in .gnav ul:last-child {margin-right:0;}
.nav-box .nav-box_in .gnav ul li {margin-bottom:16px;}
.nav-box .nav-box_in .gnav ul li:last-child {margin-bottom:0;}
.nav-box .nav-box_in .gnav ul li a {color:#fff;text-decoration:none;padding-left:24px;background:url("../img/common/pass01.svg") no-repeat center left;position:relative;}
.nav-box .nav-box_in .gnav ul li a::after {content:'';background:#FDFD03;bottom: -2px;display: block;width: 0;height: 1px;left: 24px;position: absolute;transition: 0.3s linear;}
.nav-box .nav-box_in .gnav ul li a:hover::after {width: calc(100% - 24px);}

.nav-box .nav-box_in .nav-box_info {width:auto;align-items:flex-end;}
.nav-box .nav-box_in .nav-box_info .left {margin-right:40px;}
.nav-box .nav-box_in .nav-box_info .left .p02 {font-size:7px;margin-bottom:6px;}
.nav-box .nav-box_in .nav-box_info .left .logo {width:246px;margin-bottom:20px;}
.nav-box .nav-box_in .nav-box_info .left .zenkoku {margin-bottom:7px;}
.nav-box .nav-box_in .nav-box_info .left .zenkoku span {display:inline-block;padding:0 6px 1px;border:1px solid #fff;}
.nav-box .nav-box_in .nav-box_info .left .tel {margin-bottom:8px;}
.nav-box .nav-box_in .nav-box_info .left .tel a {color:#fff;}
.nav-box .nav-box_in .nav-box_info .left .tel a span {font-size:35px;margin-left:2px;}
.nav-box .nav-box_in .nav-box_info .left .time {font-size:15px;font-weight:400;}

.nav-box .nav-box_in .nav-box_info .right {}
.h_contact {width:260px;height:54px;display:table;margin-bottom:8px;}
.h_contact a {display:table-cell;vertical-align:middle;text-align:center;color:#1C1C08;font-weight:bold;text-decoration:none;background:#FDFD03;border:2px solid #FDFD03;border-radius:30px;}
.h_contact a:hover {background:#fff;}
.nav-box .nav-box_in .nav-box_info .right .p03 {font-size:15px;}

/* 槍 */
/*-------------------------------------------*/
.nagare_ya {position:fixed;top: 50%;left: 50%;transform: translate(-50%,-50%);width: 100%;height: 0;padding-top: 34%;z-index: 100;pointer-events: none;clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);}

.nagare_ya.on {
	animation-name:nagare_ya01;
	animation-iteration-count: infinite;
	animation-duration:20s;
	animation-timing-function:linear;
}

@-webkit-keyframes nagare_ya01 {
  0% {
   clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
  }
  1.5% {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
  }
  3% {
    clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
  }
}

.nagare_ya::before {content:"";background:url("../img/top/nagare_ya.png") no-repeat;background-size: contain;width: 7%;height: 0;padding-bottom: 7.2%;position: absolute;top: -10%;right: -7%;transform: rotate(37deg);}

.nagare_ya.on::before {
	animation-name:nagare_ya02;
	animation-iteration-count: infinite;
	animation-duration:20s;
	animation-timing-function:linear;
}


@-webkit-keyframes nagare_ya02 {
	0% {
		top: -10%;
		right: -7%;
		transform: rotate(37deg);
	}
	1% {
		top: -5%;
		right: 24%;
		transform: rotate(28deg);
	}
	1.5% {
		top: 6%;
		right: 40%;
		transform: rotate(22deg);
	}
	2% {
		top: 40%;
 		right: 70%;
		transform: rotate(13deg);
	}
	2.5% {
		top: 77%;
		right: 93%;
		transform: rotate(2deg);
	}
	3% {
		top: 100%;
		right: 100%;
		transform: rotate(2deg);
	}
}

/* ロード中
=========================================== */
.loading_anime {position: fixed;left:0;top:0;background:#000;width:100%;height:100%;z-index: 1000;}
.loading_anime .loading_anime01 {width:0;height:0;position:absolute;inset:0;margin:auto;animation:la01 2s ease-out 0.5s forwards;}
.loading_anime .loading_anime01 img {max-width:none;width:100%;}
@keyframes la01 {
	0% {width:0;height:0;opacity:1;}
	100% {width:100vw;height:100vw;opacity:0;}
}

.loading_anime .loading_anime02 {width:100vw;height:100vw;position:absolute;inset:0;margin:auto;opacity:0;animation:la02 1.5s ease-in 2.5s forwards;}
.loading_anime .loading_anime02 img {max-width:none;width:100%;}

@keyframes la02 {
	0% {width:100vw;height:100vw;opacity:0;}
	100% {width:0;height:0;opacity:1;}
}

.loading_anime .loading_anime03 {width:100%;height:100%;position:absolute;inset:0;margin:auto;opacity:0;animation:la03 0.5s 3.5s forwards;}
@keyframes la03 {
	0% {opacity:0;}
	100% {opacity:1;}
}

.loading_anime .loading_anime03 .wrap {height: 100%;}
.loading_anime .loading_anime03 .wrap::before {content:"";height:100%;width:99px;background:url("../img/loading/loading_anime03_02.svg") repeat-y;position:absolute;top:0;right:-65px;animation: bgMove 30s linear infinite;}
.loading_anime .loading_anime03 .wrap::after {content:"";height:100%;width:92px;background:url("../img/loading/loading_anime03_03.svg") repeat-y;position:absolute;top:0;right:-175px;animation: bgMove 20s linear infinite;}

.loading_anime03_01 {margin-left: -130px;padding-top: 100px;scale: 0.9;}
.latext_box {color:#fff;width:100%;height:100%;position:absolute;left:0;right:0;top: -60px;margin:auto;scale: 0.9;}
.latext_box .latext_box_in {display:block;height:100%;position:relative;}
.latext_box .latext_box_in .latext {position:absolute;}
.latext_box .latext_box_in .latext_in {display:block;font-family: 'NotoSerifJP';font-weight:400;}
.latext_box .latext_box_in .latext01 {font-size:67px;letter-spacing:-0.02em;top:42px;left:-130px;white-space: nowrap;}
.latext_box .latext_box_in .latext02 {font-size:65px;line-height:81px;top:140px;left:550px;}
.latext_box .latext_box_in .latext03 {font-size:67px;letter-spacing:-0.01em;top:395px;left:-130px;}
.latext_box .latext_box_in .latext04 {font-size:17px;line-height:27px;left:-130px;top:495px;}
.latext_box .latext_box_in .latext05 {font-size:15px;line-height:22.5px;letter-spacing:-0.02em;left:-130px;top:555px;}

/* main */
/*-------------------------------------------*/
#main {}
#main.home_main {background:url("../img/main/main.png") no-repeat center bottom;background-size:1920px;position:relative;}
#main.home_main::after {content:'';background:url("../img/main/kaku.png") no-repeat;width:1920px;height:182px;;background-size:contain;position:absolute;bottom:0;left: 50%;transform: translate(-50%);}

#main.home_main .cnt {align-items:center;}
#main.home_main .cnt h2 {text-align:center;font-size:50px;letter-spacing:-0.03em;padding-left:30px;}
#main.home_main .cnt h2 .big {display:block;}
#main.home_main .cnt h2 .big.big01 {font-size:87px;letter-spacing:-0.03em;margin: -10px 0 -15px;}
#main.home_main .cnt h2 .big.big02 {font-size:85px;letter-spacing:0em;}
#main.home_main .cnt .tate_slider_box {width:1000px;margin-left:60px;margin-right: -340px;}
#main.home_main .cnt .tate_slider_box .tate_slider {width:50%;margin-bottom:0!important;}
#main.home_main .cnt .tate_slider_box .tate_slider .tate01 {border: 0 !important;}

#main.home_main .scroll_btn {position: absolute;bottom:35px;left:0;width:190px;height:165px;display:table;z-index: 1;}
#main.home_main .scroll_btn a {display:table-cell;vertical-align:middle;text-align:center;font-size:14px;line-height: 18px;cursor:pointer;}
#main.home_main .scroll_btn a::before {content:"";background:url("../img/main/scroll.png") no-repeat center #64605F;background-size:162px;clip-path: polygon(50px 0, calc(100% - 50px) 0, 100% 50%,  calc(100% - 50px) 100%, 50px 100%, 0 50%);position:absolute;inset:0;margin:auto;animation:rotation 10s linear infinite;}
#main.home_main .scroll_btn a .text {font-family: 'Oswald';font-size:12px;letter-spacing:-0.02em;color:#fff;display: inline-block;padding-bottom:35px;background:url("../img/main/ya.svg") no-repeat center bottom 5px;position: relative;transition:0.3s;}
#main.home_main .scroll_btn a:hover .text {background-position:center bottom;}


/* 下層 main */
/*-------------------------------------------*/
#main.kasou {padding:240px 0 80px;position:relative;z-index: 2;}
#main.kasou::before {content:'';background:url("../img/main/kasou.png") no-repeat;width:1920px;height:620px;position: absolute;top: 0;left: 50%;transform: translate(-50%);}
#main.kasou .eng {font-size:32px;font-family: 'Oswald';font-weight: 500;color:#1A2FB5;}
#main.kasou .jap {font-size:48px;}

/*パンくず*/
div#bread {height:0;position:relative;top:103px;z-index:3;}
ul.bread-list {}
ul.bread-list li {font-size:12px;font-weight:400;}
ul.bread-list li a {text-decoration:none;color:#1A2FB5;}
ul.bread-list li:after{content:"／";margin: 0 12px;color:#ccc;}
ul.bread-list li:last-child:after{content:none;}

/* TOPへ戻る・追従 */
/*-------------------------------------------*/
#fixed_trigger {position: absolute;left: 0;top:100px;z-index: -100;}

/* footer */
/*-------------------------------------------*/
#footer {}

.footer_address {}
.footer_address .footer_address_in {width:50%;}
.footer_address .footer_address_in .img {}
.footer_address .footer_address_in .gmap {width:100%;height:264px;}
.footer_address .footer_address_in .gmap iframe {width:100%;height:100%;}
.footer_address .footer_address_in .footer_address_box {padding:40px;background:#1A2FB5 }
.footer_address .footer_address_in .footer_address_box h3 {font-size:28px;}
.footer_address .footer_address_in .footer_address_box h3 span {display:inline-block;padding:0 47px;background:url("../img/common/pass02.svg") no-repeat center left,url("../img/common/pass02.svg") no-repeat center right;}
.footer_address .footer_address_in .footer_address_box .num_box_list {}
.footer_address .footer_address_in .footer_address_box .num_box_list li {margin-top:20px;}
.footer_address .footer_address_in .footer_address_box .num_box_list li .num {font-size:24px;}
.footer_address .footer_address_in .footer_address_box .num_box_list li .num a {color:#fff;}
.footer_address .footer_address_in .footer_address_box .num_box_list li .num .big {font-size:40px;margin-left:20px;}
.footer_address .footer_address_in .footer_address_box .num_box_list li .time {font-size:18px;}
.footer_address .footer_address_in02 .footer_address_box {background:#3F54D6;}
.footer_address .footer_address_in02 .footer_address_box h3 span {background:url("../img/common/pass03.svg") no-repeat center left,url("../img/common/pass03.svg") no-repeat center right;}

.footer {padding:80px 0 40px;background:url("../img/common/footer.png") no-repeat center top #04126E;background-size:1920px;}
.footer .cnt {justify-content:space-between;}
.footer .cnt .left {}
.footer .cnt .left .p01 {margin-bottom:8px;font-size:12px;}
.footer .cnt .left .logo {width:380px;margin-bottom:40px;}

.footer .cnt .left .zenkoku {}
.footer .cnt .left .zenkoku span {display:inline-block;padding:4px 7px;border:1px solid #707070;background:#fff;color:#04126E;}
.footer .cnt .left .tel {font-size:24px;}
.footer .cnt .left .tel a {color:#fff;}
.footer .cnt .left .tel a span {font-size:40px;margin-left:20px;}
.footer .cnt .left .time {font-size:18px;margin-bottom:40px;}
.footer .cnt .left .h_contact {margin-bottom:16px;}
.footer .cnt .left .p02 {}
.footer .cnt .left .yari_btn {margin-top:40px;width:103px;height:90px;display:table;position:relative;cursor:pointer;}
.footer .cnt .left .yari_btn::after {content:'';background:url("../img/common/ya01.png") no-repeat;width:68px;height:45.5px;background-size:contain;position: absolute;top:-5px;left:13.5px;}
.footer .cnt .left .yari_btn .waku {display:table-cell;vertical-align:middle;text-align:center;font-size:14px;line-height: 18px;}
.footer .cnt .left .yari_btn .waku::before {content:"";background:#1A2FB5;clip-path: polygon(26px 0, calc(100% - 26px) 0, 100% 50%,  calc(100% - 26px) 100%, 26px 100%, 0 50%);position:absolute;inset:0;margin:auto;animation:rotation 10s linear infinite;}

@-webkit-keyframes rotation {
  0% {
    transform:rotate(0)
  }
  100% {
    transform:rotate(1turn)
  }
}
.footer .cnt .left .yari_btn .waku .text {display: inline-block;padding-bottom:17px;background:url("../img/common/kaku01.svg") no-repeat left 50% bottom;position: relative;transition:0.3s;z-index: 2;}
.footer .cnt .left .yari_btn:hover .waku .text {background-position:left 55% bottom 5%;}
.footer .cnt .left .yari_btn .waku .yari_btn_text {display:block;}


.footer .cnt .right {padding-top:156px;}
.footer .cnt .right .f_nav {justify-content:center;width:auto;}
.footer .cnt .right .f_nav ul {margin-right:85px;}
.footer .cnt .right .f_nav ul:last-child {margin-right:30px;}
.footer .cnt .right .f_nav ul li {margin-bottom:16px;}
.footer .cnt .right .f_nav ul li:last-child {margin-bottom:0;}
.footer .cnt .right .f_nav ul li a {color:#fff;text-decoration:none;padding-left:24px;background:url("../img/common/pass01.svg") no-repeat center left;position:relative;}
.footer .cnt .right .f_nav ul li a::after {content:'';background:#FDFD03;bottom: -2px;display: block;width: 0;height: 1px;left: 24px;position: absolute;transition: 0.3s linear;}
.footer .cnt .right .f_nav ul li a:hover::after {width: calc(100% - 24px);}

.footer .cnt .right .policy {width: 160px;margin: 40px 0 0 auto;}
.footer .cnt .right .policy li {margin-bottom:16px;}
.footer .cnt .right .policy li:last-child {margin-bottom:0;}
.footer .cnt .right .policy li a {color:#fff;text-decoration:none;position:relative;}
.footer .cnt .right .policy li a::after {content:'';background:#FDFD03;bottom: -2px;display: block;width: 0;height: 1px;left: 0;position: absolute;transition: 0.3s linear;}
.footer .cnt .right .policy li a:hover::after {width:100%;}
.footer .copyright {text-align:center;margin-top:-12px;color:#fff;font-weight:400;}


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

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;}
