@charset "UTF-8";

/*
======== table of content. ===============
summary:ページ共通要素（PC・SP）
==========================================
*/

/* Noto */
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:100,300,400,500,700,900|Noto+Serif+JP:200,300,400,500,600,700,900&display=swap&subset=japanese');
@import url('https://fonts.googleapis.com/css?family=Noto+Serif+JP:200,300,400,500,600,700,900&display=swap&subset=japanese');

/* Sawarabi Mincho */
@import url('https://fonts.googleapis.com/css2?family=Sawarabi+Mincho&display=swap');

/* common */
.forpc { display: block; }
.forsp { display: none; }

br.forpc,
img.forpc { display: inline; }
br.forsp,
img.forsp { display: none; }




/* 背景色 */
 .bg_gold { background-color: #e0981b; }
 /*.bg_yellow { background-color: #fdd901; }
 .bg_orange { background-color: #eb6739; }*/
 .bg_yellow { background-color: #e0c21b; }
 .bg_orange { background-color: #f29300; }
 .bg_wine { background-color: #cd355f; }
 .bg_blue { background-color: #1b70af; }
 .bg_deepblue { background-color: #0d496d; }
 .bg_emerald { background-color: #36a991; }
 .bg_green { background-color: #2f913a; }
 .bg_gray { background-color: #bdbdbd; }
 .bg_dark { background-color: #616161; }
 .bg_red { background-color: #e30a12; }
 .bg_black { background-color: #221815; }
 .bg_dark { background-color: #616161; }
 .bg_light { background-color: #e5e6e6; }
 .bg_pearl { background-color: #f7f7f7; }
 
 /* 文字色 */
 .txt_gold { color: #e0981b; }
 .txt_yellow { color: #fdd901; }
 .txt_orange { color: #f29300; }
 .txt_wine { color: #cd355f; }
 .txt_blue { color: #1b70af; }
 .txt_emerald { color: #36a991; }
 .txt_green { color: #2f913a; }
 .txt_gray { color: #bdbdbd; }
 .txt_dark { color: #616161; }
 .txt_red { color: #e30a12; }
 .txt_black { color: #221815; }
 .txt_dark { color: #616161; }
 .txt_light { color: #e5e6e6; }
 .txt_pearl { color: #f7f7f7; }



img { width:100%; height: auto; }

a { text-decoration: none; transition: opacity .7s cubic-bezier(0.230, 1.000, 0.320, 1.000),transform .7s cubic-bezier(0.230, 1.000, 0.320, 1.000),background .7s cubic-bezier(0.230, 1.000, 0.320, 1.000),color .7s cubic-bezier(0.230, 1.000, 0.320, 1.000); }

a.link_underline{
  text-decoration:underline;
}
html { font-size: 62.5%; }
body { margin: 0; padding: 0; font-size: 1.6rem; font-family: 'Noto Sans JP', sans-serif; letter-spacing: 0.04em; }

/* タイトル */
.ttl_border { margin-bottom: 1em; padding-left: .5em; border-left: 5px solid #333; font-size: 2rem; font-weight: 700; letter-spacing: 0.1em; }

#main_title  { margin-bottom: 8rem; padding: 5.27% 6.4% 4.39%; background-color: #e0a81b; color: #fff; text-align: center; }
#main_title.box_no_margin { margin-bottom: 0; }
#main_title h1 { margin-bottom: 4.39%; line-height: 1.5; font-size: 4.8rem; font-weight: bold; letter-spacing: 0.4rem; }
#main_title h1.ttl_no_margin { margin-bottom: 0; }
#main_title p { line-height: 1.8; font-size: 1.8rem; font-weight: bold; }

.ttl_icon_rounded { position: relative; margin-bottom: 1rem; padding-left: 3rem; font-size: 2rem; }
.ttl_icon_rounded strong { color: #e38c30; }
.ttl_icon_rounded span { display: inline-block; position: absolute; left:0; top:0.2rem; width: 2.4rem; padding: 0.5rem 0; border-radius: 50%; background-color: #333; line-height: 1; color: #fff; font-size: 1.4rem; text-align: center; }

.ttl_tag { margin-bottom: 1rem; text-align: left;  }
.ttl_tag span { display: inline-block; padding: 0.1em 1.2em; color: #fff; font-size: 1.6rem; font-weight: bold;  }

/* 画像 */
.img_sm { margin-bottom: 1.5rem; }
.img_ssm { margin-bottom: 1rem; }

/* 余白 */
.sec_margin { margin-bottom: 4.2rem; }

.txt_margin { margin-bottom: 1.2em; }
.txt_d_margin { margin-bottom: 2.4em; font-size: 2rem; font-weight: 700;}

/* レイアウト */
.sec_flex_bt { display: flex; justify-content: space-between; }
.sec_flex_bt--02 { display: flex; justify-content: space-between; align-items: flex-end; }
.sec_flex_c { display: flex; justify-content: center; flex-wrap: wrap; width: 96%; margin: 0 auto; }
.sec_flex_c--02 { display: flex; flex-wrap: wrap; justify-content:center;}
.sec_flex_c--03 { display: flex; flex-wrap: wrap; justify-content:center;width: 30%;margin: 0 auto;}

/* 2カラム */
.sec_flex_bt .col_2 { width:47.2%; }

/* 3カラム */
.sec_flex_bt .col_3 { width:30.33%; }
.sec_flex_bt--02 .col_3 { width:30.33%; }

/* 1〜2カラム */
.sec_flex_c .col_1,
.sec_flex_c .col_2 { width:30.33%; min-width: 335px; margin-left: 2.25%; margin-right: 2.25%;margin-bottom: 3.0%; }
.sec_flex_c .col_2_02 { width:30.33%; min-width: 335px; margin-left: 2.25%; margin-right: 2.25%; }
.sec_flex_c .col_1_02 { width: 90%; min-width: 335px; margin-left: 2.25%; margin-right: 2.25%; }
.sec_flex_c .col_1_03 { width: 65%; min-width: 335px; margin-left: 2.25%; margin-right: 2.25%; }
.paris_inner .sec_flex_bt .col_2{ width: 40%; margin-left: 2.25%; margin-right: 2.25%; }

/* 1カラム */
.sec_1col { padding:6.2% 18% 5.3%; text-align: center; }
.sec_1col h2 { margin-bottom: 6.2%; line-height: 1.5; font-size: 2.8rem; color:#e0a81b; letter-spacing: 0.1em; }
.sec_1col h2.ttl_s_margin { margin-bottom: 4.05%; }

.sec_1col_02 { padding:0 18% 0; text-align: center; }
.sec_1col_02 h2 { margin-bottom: 6.2%; line-height: 1.5; font-size: 2.4rem; color:#1164b4; letter-spacing: 0.1em; }
.sec_1col_02 h2.ttl_s_margin { margin-bottom: 4.05%; }
.sec_1col_03 { padding:0 10% 0; text-align: center; }
.sec_1col_03 h2 { margin-bottom: 6.2%; line-height: 1.5; font-size: 2.4rem; color:#e0a81b; letter-spacing: 0.1em; }

/* 2カラム */
.sec_2col { padding:6.2% 0 5.3%; text-align: center; }
.sec_2col.first { padding-bottom: 0; }
.sec_2col h2 { margin-bottom: 6.2%; line-height: 1.5; font-size: 2.8rem; color:#e0a81b; letter-spacing: 0.1em; }
.sec_2col h2.ttl_s_margin { margin-bottom: 4.05%; }

/* 3カラム */
.sec_3col { padding:6.2% 0 5.3%; text-align: center; }
.sec_3col h2 { margin-bottom: 6.2%; line-height: 1.5; font-size: 2.8rem; color:#e0a81b; letter-spacing: 0.1em; }
.sec_3col h2.ttl_s_margin { margin-bottom: 4.05%; }
.sec_flex_c .txt_tag{ width: 100%;}
.sec_flex_c--03 .txt_tag{ width: 100%; }

.sec_3col_02 h2 { margin-bottom: 6.2%; line-height: 1.5; font-size: 2.8rem; color:#e0a81b; letter-spacing: 0.1em;  margin-bottom:3%;}
.sec_3col_02 h2.ttl_s_margin { margin-bottom: 4.05%; }
.sec_3col_02{
	padding:6.2% 0 5.3%;
	text-align: center; 
	width:96%;
	height:500px;
	margin:0 2%;
}
.sec_3col_02_l{
	width:32%;
	margin:0 2% 0 0;
	float:left;
}
.sec_3col_02_r{
	width:32%;
	margin:0;
	float:right;
}


/* タグ */
.txt_tag { text-align: center; }
.txt_tag span { display: inline-block; padding: 0.1em 1.2em; color: #fff; font-size: 1.8rem; font-weight: bold; }
.txt_tag_s { text-align: center; }
.txt_tag_s span { display: inline-block; padding: 0.1em 0.8em; color: #fff; font-size: 1.6rem; font-weight: bold; }
.txt_tag_full { text-align: center; }
.txt_tag_full span { display: block; padding: 1em 1.2em; border-radius: 0.6rem; color: #fff; font-size: 1.8rem; font-weight: bold; }


/* ボタン */
.btn_blk { width:22em; margin: auto; font-weight: 700; }
.btn_blk a { position: relative; display: block; padding: .7em 1em; background: #000; border-radius: 5px; color:#fff; text-align: center;font-size: 2rem; }
.btn_blk__orange {background: #F29300; margin: 0;flex-shrink: 0;}
.btn_blk__orange a {background: #F29300;}
.btn_blk a::before { position: absolute; top: 0; bottom: 0; right: 4%; margin: auto; content: ""; vertical-align: middle; width: 4px; height: 4px; border-top: 1px solid #fff; border-right: 1px solid #fff; transform: rotate(45deg); }

.btn_blk a:hover { opacity: .7; }

.btn_blk_02 { width:22em; margin: 0 auto 100px auto; font-weight: 700; }
.btn_blk_02 a { position: relative; display: block; padding: 0.7em 1em; background: #000; border-radius: 5px; color:#fff; text-align: center; }
.btn_blk_02 a::before { position: absolute; top: 0; bottom: 0; right: 4%; margin: auto; content: ""; vertical-align: middle; width: 4px; height: 4px; border-top: 1px solid #fff; border-right: 1px solid #fff; transform: rotate(45deg); }

.btn_blk_02 a:hover { opacity: .7; }

.btn_blk_03 { width:22em; margin: 20px auto 20px auto; font-weight: 700; }
.btn_blk_03 a { position: relative; display: block; padding: 0.7em 1em; background: #000; border-radius: 5px; color:#fff; text-align: center; }
.btn_blk_03 a::before { position: absolute; top: 0; bottom: 0; right: 4%; margin: auto; content: ""; vertical-align: middle; width: 4px; height: 4px; border-top: 1px solid #fff; border-right: 1px solid #fff; transform: rotate(45deg); }

.btn_blk_03 a:hover { opacity: .7; }

.alignleft,
.sec_1col .alignleft { text-align: left; }

.aligncenter { text-align: center; }

.alignright,
.sec_1col .alignright { text-align: right; }


/* 関連リンク */
.sec_document figcaption { position: relative; padding-left: 1.2em; text-align: left; }
.sec_document figcaption::before { content: ""; display: inline-block; position: absolute; top: 0.5em; left: 0; width: 1.2rem; height: 1.2rem; background-color: #333; }

.sec_related  { position: relative; }
.sec_related .col_2 { padding: 1.5rem; background-color: #fff; }
.sec_related .col_2--02 { padding: 1.5rem; background-color:transparent; }
.sec_related  h3 { margin: 0 -1rem 0.5rem; font-size: 2rem; text-align: center; }
.sec_related .txt_tag_s { margin-bottom: 0.5rem; }
.sec_related  .txt_explain { margin-bottom: 1rem; text-align: left;  }
.sec_related .btn_blk { width: 100%; }
.sec_related .btn_blk a.exlink::after { content: ""; display: inline-block; width: 1em; height: 1em; margin-left: 0.5em; background: url(../images/icon_exlink.png) no-repeat center center / contain;  }
.sec_related .btn_blk_02 { width: 100%; }
.sec_related .btn_blk_02 a.exlink::after { content: ""; display: inline-block; width: 1em; height: 1em; margin-left: 0.5em; background: url(../images/icon_exlink.png) no-repeat center center / contain;  }
.sec_related .btn_blk_03 { width: 100%; }
.sec_related .btn_blk_03 a.exlink::after { content: ""; display: inline-block; width: 1em; height: 1em; margin-left: 0.5em; background: url(../images/icon_exlink.png) no-repeat center center / contain;  } 
.pc{
	display: block;
}
/*SP*/
@media screen and (max-width: 767px) {
.sec_related .col_2--02.pc{
	display: none;
}
body { font-size: 1.4rem; }

.forpc { display: none; }
.forsp { display: block; }

br.forpc,
img.forpc { display: none; }
br.forsp,
img.forsp { display: inline; }

/* タイトル */
.ttl_border { font-size: 1.8rem; }

#main_title  { margin-bottom: 4.5rem; padding: 12% 6.66%; }
#main_title h1 { margin-bottom: 3.5rem; font-size: 2.8rem; }
#main_title p { font-size: 1.6rem; text-align: left; }

.ttl_icon_rounded { position: relative; margin-bottom: 1rem; padding-left: 3rem; font-size: 2rem; }
.ttl_icon_rounded strong { color: #e38c30; }
.ttl_icon_rounded span { padding: 0.7rem 0; font-size: 1rem; }

.ttl_tag { margin-bottom: 1rem; text-align: left;  }
.ttl_tag span { display: inline-block; padding: 0.1em 1.2em; color: #fff; font-size: 1.6rem; font-weight: bold;  }


/* レイアウト */
.sec_flex_bt { flex-direction: column; }
.sec_flex_bt .col_2,
.sec_flex_bt .col_3 { width:100%; }

.sec_flex_bt .col_3:not(:last-child) { margin-bottom: 4.2rem; }

/* 1〜2カラム */
.sec_flex_c { flex-direction: column;}
.sec_flex_c .col_1,
.sec_flex_c .col_2 { width:100%; min-width: auto; margin-left: 0%; margin-right: 0%; }


/* 1カラム */
.sec_1col { padding:14.6% 5.3% 12.2%; }
.sec_1col h2,
.sec_1col h2.ttl_s_margin { margin-bottom: 14%; font-size: 2.4rem; }

.sec_1col_02 { padding:0 5.3% 0; }
.sec_1col_02 h2,
.sec_1col_02 h2.ttl_s_margin { margin-bottom: 14%; font-size: 2.1rem; }
.sec_1col_03 { padding: 0; }
.sec_1col_03 h2 { margin-bottom: 6.2%; line-height: 1.5; font-size: 2rem; }


/* 2カラム */
.sec_2col { padding:14.6% 0 12.2%;  }
.sec_2col h2,
.sec_2col h2.ttl_s_margin { margin-bottom: 14%; font-size: 2.4rem; }

.sec_3col_02 h2 { margin-bottom: 6.2%; line-height: 1.5; font-size: 2.8rem; color:#e0a81b; letter-spacing: 0.1em; }
.sec_3col_02 h2.ttl_s_margin { margin-bottom: 4.05%; }
.sec_3col_02{
	text-align: center; 
	width:96%;
	margin:0 2% 300px;
	padding:0 0 30px 0;
}
.sec_3col_02_l{
	width:100%;
	margin:0 auto 50px;
}
.sec_3col_02_l img{
	width:100%;
}
.sec_3col_02_r{
	width:100%;
	margin:0 auto 50px;
}
.sec_3col_02_r img{
	width:100%;
}
.paris_inner .sec_flex_bt .col_2{
	width: 100%;
	margin: 0;
}
.paris_inner .sec_flex_c{
	margin: 0;
	width: 100%;
}
.sec_flex_c .col_1_02{
	width: 100%;
	margin: 0;
}


/* タグ */
.txt_tag span { display: block; }
.txt_tag_s span { display: inline-block; font-size: 1.4rem; }
.txt_tag_full span { padding: 0.5em 1.2em; }


/* ボタン */
.btn_blk { width:100%; }
.btn_blk a { font-size: 1.6rem; }
.btn_blk_02 { width:100%; }
.btn_blk_03 { width:100%; }

/* 関連リンク */
.sec_related .col_2 + .col_2  { margin-top: 10.6%;  }
.sec_related  h3 { font-size:1.8rem; }
.sec_related .txt_tag_s { margin-bottom: 0.5rem; }

.txt_d_margin{
  font-size: 1.6rem;
}

}


/* iPhone SE */
@media screen and (max-width: 320px) {
/* タイトル */
#main_title h1 { font-size: 2.5rem; letter-spacing: 0.2rem; }

/* 1カラム */
.sec_1col h2 { font-size: 2.2rem; letter-spacing: 0.1rem; }
.sec_1col_02 h2 { font-size: 2.2rem; letter-spacing: 0.1rem; }

/* 2カラム */
.sec_2col h2 { font-size: 2.2rem; letter-spacing: 0.1rem; }




/* related修正 */
.box{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	width: 96%;
	margin: 0 auto;
}
.item{
	width: 32%;
	min-width: 335px;
	margin-left: 2.25%;
	margin-right: 2.25%;
}

}




/*
// CSS Transition Easing
// Default
https://easings.net
$linear: cubic-bezier(0.250, 0.250, 0.750, 0.750);
$ease: cubic-bezier(0.250, 0.100, 0.250, 1.000);
$ease-in: cubic-bezier(0.420, 0.000, 1.000, 1.000);
$ease-out: cubic-bezier(0.000, 0.000, 0.580, 1.000);
$ease-in-out: cubic-bezier(0.420, 0.000, 0.580, 1.000);
// In
$easeInQuad: cubic-bezier(0.550, 0.085, 0.680, 0.530);
$easeInCubic: cubic-bezier(0.550, 0.055, 0.675, 0.190);
$easeInQuart: cubic-bezier(0.895, 0.030, 0.685, 0.220);
$easeInQuint: cubic-bezier(0.755, 0.050, 0.855, 0.060);
$easeInSine: cubic-bezier(0.470, 0.000, 0.745, 0.715);
$easeInExpo: cubic-bezier(0.950, 0.050, 0.795, 0.035);
$easeInCirc: cubic-bezier(0.600, 0.040, 0.980, 0.335);
$easeInBack: cubic-bezier(0.600, -0.280, 0.735, 0.045);
// Out
$easeOutQuad: cubic-bezier(0.250, 0.460, 0.450, 0.940);
$easeOutCubic: cubic-bezier(0.215, 0.610, 0.355, 1.000);
$easeOutQuart: cubic-bezier(0.165, 0.840, 0.440, 1.000);
$easeOutQuint: cubic-bezier(0.230, 1.000, 0.320, 1.000);
$easeOutSine: cubic-bezier(0.390, 0.575, 0.565, 1.000);
$easeOutExpo: cubic-bezier(0.190, 1.000, 0.220, 1.000);
$easeOutCirc: cubic-bezier(0.075, 0.820, 0.165, 1.000);
$easeOutBack: cubic-bezier(0.175, 0.885, 0.320, 1.275);
// In Out
$easeInOutQuad: cubic-bezier(0.455, 0.030, 0.515, 0.955);
$easeInOutCubic: cubic-bezier(0.645, 0.045, 0.355, 1.000);
$easeInOutQuart: cubic-bezier(0.770, 0.000, 0.175, 1.000);
$easeInOutQuint: cubic-bezier(0.860, 0.000, 0.070, 1.000);
$easeInOutSine: cubic-bezier(0.445, 0.050, 0.550, 0.950);
$easeInOutExpo: cubic-bezier(1.000, 0.000, 0.000, 1.000);
$easeInOutCirc: cubic-bezier(0.785, 0.135, 0.150, 0.860);
$easeInOutBack: cubic-bezier(0.680, -0.550, 0.265, 1.550);
*/