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

/* font
=========================================== */
@font-face {/*NotoSansJP*/
  font-family: 'NotoSansJP';
  src: url('../fonts/font/NotoSansJP-Regular.ttf');
  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.ttf');
  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/NotoSansJP-Bold.ttf');
  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: "Noto Serif JP";
  src: url('../fonts/NotoSerifJP-Bold.otf');
  src:
  url('../fonts/font/NotoSerifJP-Bold.woff2') format('woff2'),
  url('../fonts/font/NotoSerifJP-Bold.woff') format('woff'),
  url('../fonts/font/NotoSerifJP-Bold.otf') format('opentype');
	font-weight: 700;
}


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

a:link, a:visited {
	color: #000000;text-decoration: none;
}
a:hover, a:active {
	color: #000000;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: #000000;
	background: #FFFFFF;
	font-size:17px;
	line-height:2.2;
	font-family: 'NotoSansJP',"メイリオ","Mayryo ","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	font-weight: 400;
    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: 100%;height: 81px;max-width: 356px;}
.btn01 a {display: flex;width: 100%;height: 100%;background: linear-gradient(90deg, rgba(65,111,198,1) 0%, rgba(72,132,245,1) 100%);color: #fff;position: relative;border-radius: 58px;text-decoration: none;align-items: center;}
.btn01 a::after {content: "";display: block;width: 41px;height: 41px;background: url(../img/common/arrow.png) no-repeat center;position: absolute;top: 50%;right: 25px;transform: translateY(-50%);background-size: cover;transition: 0.3s;}
.btn01 a span {display: block;padding-right: 30px; width: 100%;font-size: 23px;font-weight: 500;box-sizing: border-box;line-height: 25px;text-align: center;}
.btn01 a:hover::after {right: 10px;}

.btn01.btn_shiro a {background: #FEFEFF;color: #1A4687;}
.btn01.btn_shiro a::after {background: url(../img/common/arrow02.png) no-repeat center;background-size: 41px;}

.title01 {position: relative;padding-top: 120px;z-index: 1;}
.title01 .eng {font-family: "Noto Serif JP";font-size: 125px;font-weight: 700;line-height: 180px;color: #416FC6;opacity: 0.12;position: absolute;top: 0;left: -37px;z-index: -1;}
.title01 .title {font-size: 38px;letter-spacing: 0.02em;line-height: 47px;color: #1A4687;}
.title01 .title .sub_text {display: block;font-size: 28px;line-height: 40px;margin-bottom: 8px;}

/*ウェブフォント*/
.bold{font-weight: 700;}

.tcenter {text-align: center;}
.tleft {text-align: left;}
.tright {text-align: right;}

.serif {font-family: "Noto Serif JP";}

/*色*/
.shiro {color:#fff;}
.kon {color: #1A4687;}
.red {color: #FF0000;}

.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%;height: 109px;min-width:1100px;max-width: 1920px;position:fixed;transition: 0.3s;left:0;right: 0;top:0;margin: auto;z-index: 100;background: #fff;}
#header .header_inner {width: 100%;max-width: 1332px;height: 100%;justify-content: space-between;align-items: center;flex-wrap: nowrap;margin: 0 auto;}
#header .header_inner .logo_box {}
#header .header_inner .logo {width: 398px;height: 86px;}
#header .header_inner .logo a:hover {opacity: 0.7;}

#header .header_inner .right {height: 100%;justify-content: flex-end;}
#header .header_inner .right .right_in01 {height: 100%;margin-right: 25px;}
#header .header_inner .right .right_in01 .tel_box {height: 55%;padding-top: 12px;box-sizing: border-box;}
#header .header_inner .right .contact_btn {width:198px;height: 150px;background: #416FC6; }
#header .header_inner .right .contact_btn a {display: flex;width: 100%;height: 100%;flex-direction: column;align-items: center;padding-top: 30px;box-sizing: border-box;}
#header .header_inner .right .contact_btn a p{color: #fff;margin-top: 2.6px;}
#header .header_inner .right .contact_btn a p span{display: block;line-height: 24px;}
#header .header_inner .right .contact_btn a:hover {text-decoration: none;opacity: 0.7;}

.tel_box {align-items: center;justify-content: flex-end;}
.tel_box .tel {font-weight: 500;line-height: 39px;}
.tel_box .tel .num {font-size: 23px;margin-left: 4px;}
.tel_box .text {margin-left: 17px;line-height: 39px;}

/*gnav*/
.gnav {height: 50px;}
.gnav > ul.flex {width:auto;height: 100%;justify-content: flex-end;flex-wrap: nowrap;}
.gnav > ul > li {margin-right:24px;}
.gnav > ul > li:last-child {margin-right:0;}
.gnav > ul > li > a, .gnav > ul > li > p {height: 100%;line-height: 1;position: relative;display: block;}
.gnav > ul > li > a:hover {text-decoration:none;opacity: 0.7;}
.gnav .gnav_first {position: relative;}
.gnav .gnav_first > p {background: url("../img/common/nav_arrow.svg")no-repeat bottom 15.4px center;transition: 0.3s;}
.gnav .gnav_first > p:hover {background-position: bottom 5.4px center;}

.gnav_second{position: absolute;background:#5D8CE3;box-sizing: border-box;overflow: hidden;top: 49px;left:0;height: 0;opacity: 0;transition: 0.3s;}
.gnav_second li {white-space: nowrap;padding: 5px 40px;line-height: 40px;border-bottom: 1px solid #fff;}
.gnav_second li:last-child {border-bottom: none;}
.gnav_second li a {text-decoration:none;display:block;color:#fff;}
.gnav_second li a:hover {opacity:0.7;}
.gnav .gnav_first:hover .gnav_second {overflow:visible;height:auto;position: absolute;opacity: 1;}

/* main */
/*-------------------------------------------*/
#main {margin-top:109px;position: relative;}
#main::before {content: "";display: block;width: 100%;height: 118px;background: linear-gradient(180deg, rgba(242,246,251,1) 0%, rgba(248,250,252,0) 100%);position: absolute;top: 0;left: 0;}
#main.home_main {height: 595px; }
#main.home_main::after {content: "";display: block;width: 12.7px;height: 97.5px;background: url("../img/main/arrow.png") no-repeat center;position: absolute;bottom: -36px;left: 50%;transform: translateX(-50%);background-size: cover;}
#main.home_main .main_box{position: relative;}
#main.home_main .main_text {width: 497px;margin-top: 108px;}
#main.home_main .main_text h2 {font-size: 71px;font-weight: 500;line-height: 91px;margin-bottom: 3px;}
#main.home_main .main_text span {display: inline-block;background: linear-gradient(90deg, rgba(65,111,198,1) 0%, rgba(135,172,242,1) 100%);padding: 0 43px 0 31px;box-sizing: border-box;font-size: 24px;line-height: 51px;border-radius: 26px;margin-bottom: 23.5px;}
#main.home_main .main_text .main_list {height: 70px; align-items: center;}
#main.home_main .main_text .main_list li {height: 100%;display: flex;align-items: center;font-size: 23px;font-weight: 500;color: #565656;line-height: 24px;text-align: center;margin-right: 62px;position: relative;}
#main.home_main .main_text .main_list li::after {content: "";display: block;width: 3px;height: 97px;opacity: 0.88;background: #CFDEF4;transform: rotate(44.5deg);position: absolute;top: -14px;right: -30px;}
#main.home_main .main_text .main_list li:last-child {margin-right: 0;}
#main.home_main .main_text .main_list li:last-child::after {display: none;}

#main.home_main .main_img {width: 832px;height: 588px;position: absolute;top: 0;right: -102px;}

/* 下層 main */
/*-------------------------------------------*/
#main.kasou {padding-top: 66px;}
#main.kasou .wrap {}
#main.kasou .wrap .main-title {font-size: 35px;font-weight: 500;line-height: 51px;}
#main.kasou .wrap .main-title .eng {display: block;font-size: 16px;line-height: 22px;}

/*パンくず*/
div#bread {width: 100%;margin-top: 8px;}
div#bread .wrap {width: 1204px;}
ul.bread-list {font-size:14px;}
ul.bread-list li {color: #575757;line-height: 20px;}
ul.bread-list li a {text-decoration:none;color: #575757;line-height: 20px;}
ul.bread-list li a:hover {text-decoration:underline;}
ul.bread-list li:after{content:"＞";margin: 0 5px;}
ul.bread-list li:last-child:after{content:none;}

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

/* footer */
/*-------------------------------------------*/
#footer {background: url("../img/common/footer_bg.jpg") no-repeat center top;background-size: cover;padding: 97px 0 68.5px;position: relative;overflow: hidden;}
#footer .footer_box {}
#footer .footer_box .cnt{}
#footer .footer_box .cnt .logo{width: 303px;height: 74px;margin-right: 64px;}
#footer .footer_box .cnt .tel_box .tel {font-size: 22px;}
#footer .footer_box .cnt .tel_box .tel a {color: #fff;}
#footer .footer_box .cnt .tel_box .tel .num {font-size: 29px;margin-left: 2px;}
#footer .footer_box .cnt .tel_box .text {font-size: 16px;font-weight: 500;margin-left: 0;line-height: 24px;}

#footer .footer_box .list {margin-bottom: 30px;}
#footer .footer_box .list li {min-width: 117px;height: 34px;color: #fff;font-size: 18px;font-weight: 500;line-height: 34px;padding: 0 20px;box-sizing: border-box;margin-right: 8px;background: #184F97;text-align: center;}

.navs-list {margin-bottom: 23px;}
.navs-list > ul {margin-bottom: 17px;}
.navs-list > ul:last-child {margin-bottom: 0;}
.navs-list > ul > li {line-height: 17px;position: relative;padding: 0 10px;border-right: 1px solid #fff;}
.navs-list > ul > li a {color: #fff;}
.navs-list > ul > li:first-child {padding-left: 0;}
.navs-list > ul > li:last-child {padding-right: 0;border-right: none;}

#footer .footer_box .contact_btn {}
#footer .footer_box .contact_btn a {color: #fff;padding-left: 26px;background: url("../img/common/arrow.png") no-repeat center left;background-size: 22px;}

#footer .bottom_box {margin-top: 23px;align-items: center;justify-content: space-between;}
#footer .bottom_box .link_list {width: auto;}
#footer .bottom_box .link_list li {line-height: 17px;position: relative;padding: 0 10px;border-right: 1px solid #fff;}
#footer .bottom_box .link_list li:first-child {padding-left: 0;}
#footer .bottom_box .link_list li:last-child {padding-right: 0;border-right: none;}
#footer .bottom_box .link_list li a {color: #fff;}

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