@charset "utf-8";  
/*------------------------------------------------------------ 
	デフォルトスタイル	全ページ共通css
------------------------------------------------------------*/  

/**** フォントサイズ　*************

基本を12pxに、サイズは％指定。

====偶数====　　　====奇数====
■10px = 84%      ■11px = 92%
■12px = 100%     ■13px = 109%
■14px = 117%     ■15px = 125%
■16px = 134%     ■17px = 142%
■18px = 150%     ■19px = 159%
■20px = 167%     ■21px = 175%
■22px = 184%     ■23px = 192%
■24px = 200%     ■25px = 209%
■26px = 217%     ■27px = 226%

**********************************/

html,
body { margin: 0; padding: 0;}
body {
	font-size: 76%;
	background: #fff;
	-webkit-text-size-adjust: 100%;
	overflow-y:scroll;
}

html { font-size: 100%;}

div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, 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, figure, figcaption {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-family: 'Noto Sans JP', "游ゴシック", "Yu Gothic", YuGothic, 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	font-size: 100%;
	line-height: 1.5;
	font-weight: normal;
	vertical-align: baseline;
	background: transparent;
}  

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,main {
    display: block;
}

blockquote,
q { quotes: none;}

a {
	text-decoration: none;
	outline: none;
}

ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}

mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

del { text-decoration: line-through;}
abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #F3F9FA;
	margin: 1em 0;
	padding: 0;
}

input,
select,
textarea {
	font-size: 100%;
	vertical-align: middle;
	font-family: 'Noto Sans JP', "游ゴシック", "Yu Gothic", YuGothic, 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}

input[type=text],
input[type=tel],
input[type=password],
textarea{ -webkit-appearance:none;}

input[type=checkbox],
input[type=radio]{
	position:relative;
	top:-1px;
}

ul,ol { list-style-type: none;}
img { vertical-align: middle;}

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

.opacity { transition:all 0.2s ease-out;}

.opacity:hover { opacity: .7;}

.clear { clear: both;}
.clearfix { width: 100%;}
.clearfix:after {
	content: " ";
	display: block;
	clear: both;
	visibility:hidden;
	height:0.1px;
	font-size:0.1em;
	line-height:0;
}

.fl { float: left;}
.fr { float: right;}

.txtl { text-align: left;}
.txtr { text-align: right;}
.txtc { text-align: center;}

strong,
strong *,
.fwb {
	font-weight: normal;
}

.clrr { color: #26395C;}
.clrb { color: #333;}
.clrw { color: #fff;}
.clro { color: #6792BE;}

.il { display: inline;}
.bl { display: block;}
.no { display: none;}

.li2 { line-height: 2;}

/* margin */
.mt10 { margin-top: 10px;}
.mt20 { margin-top: 20px;}
.mt30 { margin-top: 30px;}

.mr10 { margin-right: 10px;}
.mr20 { margin-right: 20px;}
.mr30 { margin-right: 30px;}

.mb10 { margin-bottom: 10px;}
.mb20 { margin-bottom: 20px;}
.mb30 { margin-bottom: 30px;}

.ml10 { margin-left: 10px;}
.ml20 { margin-left: 20px;}
.ml30 { margin-left: 30px;}

/* padding */
.pt10 { padding-top: 10px;}
.pt20 { padding-top: 20px;}
.pt30 { padding-top: 30px;}

.pr10 { padding-right: 10px;}
.pr20 { padding-right: 20px;}
.pr30 { padding-right: 30px;}

.pb10 { padding-bottom: 10px;}
.pb20 { padding-bottom: 20px;}
.pb30 { padding-bottom: 30px;}

.pl10 { padding-left: 10px;}
.pl20 { padding-left: 20px;}
.pl30 { padding-left: 30px;}

/* font-size */
.font10 { font-size: 84%;}
.font11 { font-size: 92%;}
.font12 { font-size: 100%;}
.font13 { font-size: 109%;}
.font14 { font-size: 117%;}
.font15 {
	font-size: 125%;
	line-height: 2.0;
}
.font16 { font-size: 134%;}
.font17 { font-size: 142%;}
.font18 { font-size: 150%;}
.font19 { font-size: 159%;}
.font20 { font-size: 167%;}
.font21 { font-size: 175%;}
.font22 { font-size: 184%;}
.font23 { font-size: 192%;}
.font24 { font-size: 200%;}
.font25 { font-size: 209%;}
.font26 { font-size: 217%;}
.font27 { font-size: 226%;}



/*------------------------------------------------------------ 
    スタイル 
------------------------------------------------------------*/

.inner {
	width:auto;
	max-width: 1200px;
	margin: 0 auto;
	padding-right:15px;
	padding-left:15px;
}

.inner.detail{ max-width:960px;}

.list{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:justify;
	   -ms-flex-pack:justify;
	justify-content:space-between;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.hover{
	display:block;
	width:100%;
	height:100%;
}

.hover figure{ overflow:hidden;}

.hover img{ transition:all 0.4s ease-out;}

.hover:hover img{ transform:scale(1.1);}

.tel-link a{ font-family: 'Lato', sans-serif;}

/*------------------------------------------------------------ 
    ヘッダー 
------------------------------------------------------------*/

#header {
	width:100%;
	position:absolute;
	top:0;
	left:0;
	z-index:1000;
}

#hdLogo{
	width:304px;
	position:absolute;
	left:60px;
	top:30px;
}

#gNavi-lang{
	width:80px;
	height:80px;
	letter-spacing:-0.4em;
	text-align:center;
	background:#fff;
	position:absolute;
	right:80px;
	top:0;
	z-index:10000;
}

.open #gNavi-lang{ position:fixed;}

#gNavi-lang li{
	display:inline-block;
	vertical-align:middle;
	letter-spacing:normal;
	line-height:80px;
	font-size:134%;
	font-family: 'Lato', sans-serif;
}

#gNavi-lang li:first-child:after{
	content:"/";
	padding:0 3px;
}

#gNavi-lang a{
	color: #6792BE;
	font-family: 'Lato', sans-serif;
}

#rwdMenuWrap{
	width:320px;
	height:100%;
	padding-top:80px;
	background:#fff;
	position:fixed;
	top:0;
	right:-320px;
	z-index:9999;
	box-sizing:border-box;
}

#menuOverlay {
	display:none;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.1);
	position:fixed;
	z-index:998;
}

#gNavi-menu{
	height:calc(100vh - 80px);
	padding:40px 15px 0 50px;
	overflow:auto;
	box-sizing:border-box;
}

#gNavi-menu li{ padding-bottom:20px;}

#gNavi-menu a{
	display:block;
	width:auto;
	padding-left:30px;
	position:relative;
}

#gNavi-menu a:before{
	display:block;
	content:"";
	width:17px;
	height:17px;
	background:#6792BE;
	border-radius:50%;
	position:absolute;
	left:0;
	top:0;
}

#gNavi-menu a:after{
	display:block;
	content:"";
	width: 4px;
	height: 4px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(45deg);
	position:absolute;
	left:5px;
	top:6px;
}

.navi-jp{
	line-height:17px;
	margin-bottom:3px;
	color:#000;
	font-size:134%;
	font-weight:bold;
	transition:all 0.2s ease-out;
}

.navi-en{
	color:#a9a89f;
	line-height:1;
	font-family: 'Lato', sans-serif;
	transition:all 0.2s ease-out;
}

#gNavi-menu a:hover p{ color:#eb7a0c;}


#navBtn{
	width: 80px;
	height: 80px;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 10000;
	background-color: #26395C;
}

#navBtn a{
	display:block;
	width:100%;
	height:100%;
	padding-top:50px;
	box-sizing:border-box;
	position:relative;
}

.top-bar,
.middle-bar,
.bottom-bar{
	height:2px;
	background-color:#fff;
	transition: transform .1s 0s ease-in-out,top .1s .1s ease-in-out;
	transform-origin: 50% 50%;
	position: absolute;
}

.top-bar{
	width:26px;
	top:20px;
	left:27px;
}

.middle-bar{
	width:32px;
	top:28px;
	left:24px;
	transition: opacity 0s .15s linear;
}

.bottom-bar{
	width:26px;
	top:36px;
	left:27px;
}

.btnClose .top-bar{
	transform: rotate(45deg);
	top:28px;
	width:32px;
	left:24px;
}

.btnClose .middle-bar{ opacity: 0;}

.btnClose .bottom-bar{
	transform: rotate(-45deg);
	top:28px;
	width:32px;
	left:24px;
}

.btn-text{
	color:#fff;
	text-align:center;
	font-size:117%;
	line-height:1;
	font-family: 'Lato', sans-serif;
}


/*------------------------------------------------------------ 
    コンテンツ 
------------------------------------------------------------*/ 

.contents{ background:#F3F9FA;}


.link{
	color:#4F6D8B;
	text-decoration:underline;
}

.link:hover{ text-decoration:none;}

.headline{
	width:auto;
	max-width:1200px;
	padding:80px 15px 10px;
	margin:0 auto 35px;
	text-align:center;
	position:relative;
}

.headline-en{
	font-size:30px;
	letter-spacing:3px;
	line-height:1;
	font-family: 'Lato', sans-serif;
}

.headline-jp{
	font-size:125%;
	margin-top:10px;
}
 
.text{
	text-align:center;
	color:#424241;
	font-size:125%;
	line-height:1.8;
	padding:0 15px;
	margin-top:40px;
}

.lead{
	display:block;
	color:#516c9d;
	font-size:175%;
	font-weight:500;
	margin-bottom:20px;
}

.listItem{
	width:33.333333%;
	background:#fff;
	box-sizing:border-box;
}

.listlabel{
	width:100%;
	padding:18px 52px 18px 20px;
	color:#000;
	font-weight:500;
	font-size:134%;
	line-height:22px;
	position:relative;
	box-sizing:border-box;
}

.listlabel span{
	font-size:92%;
	color:#424241;
}

.listItem:not(:nth-child(3n)) .listlabel{ border-right:1px solid #ECEDE8;}

.listlabel:before{
	display:block;
	content:"";
	width:20px;
	height:20px;
	position:absolute;
	right:20px;
	top:18px;
	border:1px solid #6792BE;
	border-radius:50%;
}

.listlabel:after{
	display:block;
	content:"";
	width: 5px;
	height: 5px;
	border-top: 1px solid #6792BE;
	border-right: 1px solid #6792BE;
	position:absolute;
	right:29px;
	top:26px;
	transform: rotate(45deg);
}

/* detail */

#contents{ position:relative;}

#contents:before{
	display:block;
	content:"";
	width:100%;
	height:378px;
	background-repeat:no-repeat;
	background-position:50% 50%;
	background-size:cover;
}

.image{
	width:100%;
	max-width:1200px;
	margin:0 auto;
}

/*------------------------------------------------------------ 
    フッター 
------------------------------------------------------------*/  

#pagetop{
	display:none;
	width:48px;
	height:48px;
	position:fixed;
	right:15px;
	bottom:15px;
	z-index:500;
}

#pagetop a{
	display:block;
	opacity:0.7;
	transition:opacity 0.2s ease-out;
}

#footer{
	width:100%;
	margin-top:70px;
	padding:45px 0 60px;
	background:#F3F9FA;
}

#ftLogo{
	width:240px;
	float:left;
	margin-right:40px;
}

#ftTxt{
	width:calc(100% - 280px);
	float:left;
	padding-top:25px;
	font-size:117%;
}

#ftTxt p{
	display:inline-block;
	vertical-align:top;
	line-height:2;
}

#ftTxt p span{ font-family: 'Lato', sans-serif;}

#ftTxt p:first-child{ margin-right:30px;}

.ftBtn{
	display:block;
	width:160px;
	line-height:34px;
	margin-top:10px;
	text-align:center;
	border:1px solid #516c9d;
	color:#516c9d;
	font-family: 'Lato', sans-serif;
	border-radius:18px;
	transition:all 0.2s ease-out;
}

.ftBtn:hover{
	color:#fff;
	background:#516c9d;
}

#copyright{
	clear:both;
	padding-top:15px;
	text-align:right;
}

#copyright small{
	color:#7c7b78;
	font-family: 'Lato', sans-serif;
}


/*------------------------------------------------------------ 
    MediaQuery 
------------------------------------------------------------*/  

/* TABLET */
@media screen and (min-width: 789px){

.tb-show{ display:none;}

#pagetop a:hover{ opacity:1;}

}

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

.tb-hide{ display:none;}

/* header */

#hdLogo{
	width:220px;
	left:20px;
	top:20px;
}


/* contents */

.headline{
	padding-top:60px;
	margin-bottom:20px;
}

.headline-en{
	font-size:217%;
	letter-spacing:2px;
}

.headline-jp{ font-size:117%;}

.text{
	font-size:117%;
	line-height:1.6;
	margin-top:30px;
}

.lead{
	font-size:150%;
	margin-bottom:15px;
}

.listlabel{
	padding:15px 52px 15px 15px;
	font-size:125%;
}

.listlabel:before{ top:15px;}
.listlabel:after { top:23px;}

#contents:before{ height:284px;}



/* footer */

#ftLogo{
	width:228px;
	float:none;
	margin:0 auto;
}

#ftTxt{
	width:100%;
	float:none;
	font-size:109%;
	text-align:center;
}

#ftTxt p{ text-align:left;}
#ftTxt p:first-child{ margin-right:15px;}

#copyright{
	padding-top:30px;
	text-align:center;
}

}


/* SP */
@media screen and (min-width: 561px){

.sp-show{ display:none!important;}

}

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

.sp-hide{ display:none;}


/* header */

#hdLogo{
	left:15px;
	top:10px;
}

#gNavi-lang{ display:none;}
.open #gNavi-lang{ display:block;}

#navBtn{
	width:60px;
	height:60px;
}

#navBtn a{ padding-top:38px;}

.top-bar{
	top:12px;
	left:17px;
}

.middle-bar{
	top:20px;
	left:14px;
}

.bottom-bar{
	top:28px;
	left:17px;
}

.btnClose .top-bar{
	top:20px;
	left:14px;
}

.btnClose .bottom-bar{
	top:20px;
	left:14px;
}

.btn-text{ font-size:109%;}

#gNavi-lang{
	width:60px;
	height:60px;
	right:60px;
}

#gNavi-lang li{
	line-height:60px;
	font-size:117%;
}

#rwdMenuWrap{
	width:280px;
	padding-top:60px;
	right:-280px;
}

#gNavi-menu{
	height:calc(100vh - 60px);
	padding:30px 15px 0 30px;
}

#gNavi-menu li{ padding-bottom:15px;}

.navi-jp{ font-size:125%;}



/* contents */

.headline{
	padding-top:40px;
	margin-bottom:15px;
}

.headline-en{
	font-size:175%;
	letter-spacing:2px;
}

.headline-jp{ font-size:109%;}

.text{
	font-size:109%;
	margin-top:20px;
}

.lead{
	font-size:134%;
	margin-bottom:10px;
}

.listItem{ width:100%;}

.listItem:not(:last-child){ margin-bottom:15px;}

.listItem:not(:nth-child(3n)) .listlabel{ border-right:none;}



/* footer */

#footer{
	margin-top:40px;
	padding:30px 0 40px;
}

#ftLogo{ width:152px;}

#ftTxt{
	padding-top:20px;
	font-size:100%;
}

#ftTxt p{
	display:block;
	width:300px;
	margin:0 auto;
}

#ftTxt p:first-child{ margin-right:auto;}

.ftBtn{
	width:200px;
	font-size:109%;
	margin:10px auto 0;
}

}


/*** レスポンシブテーブルデザイン ***/
.shokai{
	width: 80%;
	border: 2px solid #d6ceb4;
	overflow: hidden;
	word-break: break-all;
	word-wrap: break-word;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 15px;
	margin-top: 10px;
	font-size: 125%;
}
 
.shokai th{
	padding: 15px;
	border-top: solid 1px #ffffff;
	width: 50%;
	overflow: hidden;
	color: #13131e;
	font-style: normal;
	font-weight: bold;
	font-size: 100%;
	text-align: left;
	word-break: break-all;
	word-wrap: break-word;
	vertical-align: middle;
	background-color: #FFF8E5;
}
 
.shokai td{
padding: 15px;
text-align: left;
vertical-align: top;
color: #595960;
background-color: #ffffff;
border-top: dotted 1px #e0dccc;
overflow: hidden;
word-break: break-all;
word-wrap: break-word;
}
 
@media (max-width: 560px){
.shokai{
	width: 95%;
}
.shokai th{
  width:100%;
  display:block;
  margin: 0 auto;
  border:none;
  border-radius: 3px;
}
.shokai td{
  display: list-item;
  width: 95%;
  border-top: none !important;
}
}
/*** レスポンシブテーブルデザイン　おわり ***/



/* イメージリスト */
#imageList5{
	max-width: 990px;
	overflow: hidden;
	margin-top: 20px;
	margin-right: auto;
	margin-left: auto;
}

#imageList5 li{
	width:33.3333%;
	float:left;
	margin-bottom:20px;
	padding:0 15px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	list-style: none;
}

#imageList5 p{
	line-height:45px;
	text-align:center;
	color:#FFFFFF;
	font-size:120%;
	font-weight:bold;
	background-color: #333333;
}


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


/* TABLET */
@media screen and (max-width: 788px){

#imageList5 li{
	width:50%;
	float:left;
	padding:0 15px;
}
}

/* TABLET */
@media screen and (max-width: 400px){

#imageList5 li{
	width:100%;
	float:none;
	padding:0 ;
}


}




/* イメージリスト */
#imageList6{
	max-width: 600px;
	overflow: hidden;
	margin-top: 20px;
	margin-right: auto;
	margin-left: auto;
}

#imageList6 li{
	width:48%;
	float:left;
	margin-bottom:20px;
	padding:0 15px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	list-style: none;
}

#imageList6 p{
	line-height:45px;
	text-align:center;
	color:#FFFFFF;
	font-size:120%;
	font-weight:bold;
	background-color: #333333;
}


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


/* TABLET */
@media screen and (max-width: 788px){

#imageList6 li{
	width:50%;
	float:left;
	padding:0 15px;
}
}

/* TABLET */
@media screen and (max-width: 400px){

#imageList6 li{
	width:100%;
	float:none;
	padding:0 ;
}


}



/*------------------------------------------------------------ 
    フロー
------------------------------------------------------------*/  

#flowWrap{
	width:100%;
	letter-spacing: -0.5em;
}

.flow{
	display:inline-block;
	vertical-align:top;
	letter-spacing:normal;
	width:31.66666666666667%;
	margin-right:2.5%;
	margin-bottom:20px;
	border:1px solid #F3F9FA;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	background:#fff;
}

.flow:nth-child(3n){ margin-right:0;}

.flowHd{
	display:table;
	width:100%;
	height:50px;
	padding:10px 0;
	background:#F3F9FA;
}

.flowHd p{
	display:table-cell;
	vertical-align:middle;
	width:32px;
	height:32px;
	padding:0 10px 0 20px;
}

.flowHd p span{
	display: block;
	width: 32px;
	height: 32px;
	text-align: center;
	line-height: 32px;
	color: #61613A;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 150%;
	background: #fff;
	border-radius: 50%;
}

.flowHd h4{
	display: table-cell;
	vertical-align: middle;
	color: #61613A;
	font-size: 150%;
	font-weight: bold;
	padding-right: 10px;
}

.txt{
	padding:15px;
	color:#070707;
	font-size:125%;
	line-height:1.6;
}

.flowTxt{
	width:auto;
	padding:25px;
	font-size:125%;
	background:#FFEDC6;
}

.flowTxt dt{
	font-weight:bold;
	position:relative;
}

.flowTxt dt:before{
	display:inline-block;
	content:"";
	width:12px;
	height:12px;
	margin-right:8px;
	background:#F77433;
	border-radius:50%;
}

.flowTxt dd{
	padding:10px 0 0 20px;
	font-weight:bold;
	line-height:1.4;
}

.flowTxt dd span{
	color:#F50D0D;
	font-weight:bold;
}


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

.flow{
	width:47.94952681388013%;
	margin-right:4.100946372239748%;
}

.flow:nth-child(3n){ margin-right:4.100946372239748%;}
.flow:nth-child(2n){ margin-right:0;}

}


/* SP */
@media screen and (max-width: 560px){

.flow{
	display:block;
	width:100%;
	margin-right:0;
}

.flow:nth-child(3n){ margin-right:0;}

.flowHd{ padding:5px 0;}
.flowHd h4{ font-size:134%;}

.txt{
	font-size:109%;
	padding:15px 10px;
}

.flowTxt{
	padding:15px;
	font-size:117%;
}
}

/*======================================

	PC改行

=======================================*/
@media screen and (max-width: 960px) {
.pc { display: none; }
}

/*======================================

	スマホ改行

=======================================*/
.sp { display:none; }

@media screen and (max-width: 960px) {
.sp { display: block; }
}
