@charset "utf-8";

/**************************************************************/
@media screen and (min-width:651px){
	.isflex{display:flex;}
	.isflex2{display:flex;} .isflex2 li{width:48.5%;}
	.isflex2_dl{display:flex;} .isflex2_dl dt, .isflex2_dl dd{width:48.5%;}
	.isflex2_narrow{display:flex;}.isflex2_narrow li{width:50%;}
	.isflex2_64{display:flex;} .isflex2_64 dt{width:60%;} .isflex2_64 dd{width:38%;}
	.isflex2_73{display:flex;} .isflex2_73 dt{width:65%;} .isflex2_73 dd{width:28%;}
	.isflex2_82{display:flex;} .isflex2_82 dt{width:80%;} .isflex2_82 dd{width:18%;}
	.isflex3{display:flex;} .isflex3 li{width:32%;}
	.isflex4{display:flex;} .isflex4 li{width:23%;}
	.isflex5{display:flex;} .isflex5 li{width:18%;}
}
@media screen and (max-width:650px){
	.isflex_sp{display:flex;}
	.isflex2_sp{display:flex;}.isflex2_sp li,.isflex2_sp dt,.isflex2_sp dd{width:48.5%;}
	.isflex3_sp{display:flex;}.isflex3_sp li,.isflex3_sp dt,.isflex3_sp dd{width:32%;}
}
.isflex_jc_sb{justify-content:space-between;}
.t_center_left th{text-align:center;}.t_center_left td{text-align:left;}
.t_grey01 th{background:#ffe5f1;}/*e6e2de*/
.t_grey01 td{background:#f6f6f6;}/*f0ede9*/
.t_p_tb10lr5 th,
.t_p_tb10lr5 td{
	padding:15px 10px; 
	font-family: var(--font-family-goc);
}
.t_tlay_fixed{table-layout:fixed;}
.w100ps{width:100%;}
.m_top10{margin-top:10px;}
.w25per{width:25%;}
.t_center_center th, .t_center_center td {
    text-align: center;
}



/**************************************************************/
/* Google font Icon */
@import url(https://fonts.googleapis.com/icon?family=Material+Icons);
:root {
	--font-family-min: fot-tsukubrdgothic-std, sans-serif;
	--font-family-goc: "Noto Sans JP", sans-serif;
	--font-ct: "Crimson Text", serif;
	--font-eb: "EB Garamond", serif;
	--font-weight-500: 500;
	--font-weight-700: 700;
	--color-main: #121212;
	--color-white: #ffffff;
	--color-black: #000000;
	--color-blue01: #0b85e8;
	--color-blue02: #44b1c4;	
	--color-gray: #989a97;
	--color-gray02: #7b7b7b;
	--color-arbg01: #f2f4f5;
	--color-red: #a5212f;
	--color-green-2: #1e221b;
	--hover-option: .3s ease-in-out;
	--background-option: no-repeat 0 0 / 100%;
	--cont_margin-side: 100px;
	--cont_margin-top: 120px;
	--cont_margin-top02: 100px;
	--cont_margin-bottom: 200px;
	--cont_margin-bottom02: 150px;
	--cont_margin-bottom03: 100px;
	--cont_margin-bottom03b: 80px;
	--cont_margin-bottom04: 40px;
     --cont_margin-btf03: 3rem;
	--inline-page: 100px;
}
@media (max-width: 1300px) {
	:root {
		--cont_margin-side: 60px;
   }
}
@media screen and (max-width: 1024px) {
	:root {
		--inline-page: 40px;
		--cont_margin-bottom02: 120px;
	}
}
@media (max-width: 960px) {
	:root {
		--cont_margin-side: 50px;
	}
}
@media screen and (max-width: 480px) {
	:root {
	--inline-page: 5%;
	--cont_margin-side: 5%;
	 --cont_margin-top02: 80px;
	--cont_margin-bottom02: 80px;
    --cont_margin-bottom03: 80px;
	--cont_margin-bottom03b: 50px;	
	}
}


/**************************************************************/
* {
	margin: 0;
	padding: 0;
	color: #333333;
	font-weight: 400;
	font-style: normal;
	font-family: var(--font-family-goc);
	letter-spacing: .1em;
	line-height: 1.75;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	/*font-feature-settings: 'palt';*/
}
html {
	font-size: 62.5%;
}
body {
	font-size: 16px;
	font-size: 1.6rem;
	word-wrap: break-word;
/*	background: #f7f7f7;*/
	overflow-wrap: break-word;
	font-display: swap;
	overflow-x: hidden;
}
@media screen and (max-width: 480px) {
	body {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 374px) {
	html {
		font-size: 2.667vw;
	}
}
html.is-overflow,
body.is-overflow {
	width: 100%;
	position: fixed !important;
	overflow: hidden;
	z-index: 99999;
}
img {
	border: 0;
	vertical-align: bottom;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}
.mnimg_none{display: none;}

.c_red01 { color: #a5212f!important;}
.cl_red01 { color: #a5212f!important;}
.cl_blue01 { color: var(--color-blue01);}
strong { font-weight: bold!important;}

.mb_30p{margin-bottom: 30px;}


/* ---------- 表示----------*/
.sm-s4,
.sm-b3,
.sm-b2,
.sm-b1,
.sm-bs0,
.sm-s1,
.sm-s2 { display: none;}

.cp-s4,
.cp-b3,
.cp-b2,
.cp-b1,
.cp-bs0,
.cp-s1,
.cp-s2 { display: block;}

@media screen and (max-width: 1439px) {
	.sm-b3 { display: block;}
	.cp-b3 { display: none;}
}
@media screen and (max-width: 1200px) {
	.sm-b2 { display: block;}
	.cp-b2 { display: none;}
}
@media screen and (max-width: 1024px) {
	.sm-b1 { display: block;}
	.cp-b1 { display: none;}
}
@media screen and (max-width: 959px) {
	.sm-bs0 { display: block;}
	.cp-bs0 { display: none;}
}
@media screen and (max-width: 480px) {
	.sm-s1 { display: block;}
	.cp-s1 { display: none;}
}
@media screen and (max-width: 599px) {
	.sm-s2 { display: block;}
	.cp-s2 { display: none;}
}
@media screen and (max-width: 480px) {
	.sm-s4 { display: block;}
	.cp-s4 { display: none;}
}
/* ---------- ↑----------*/

/****/
@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@keyframes translete {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
		transform : translate(0, 0);
	}
}
@keyframes blur {
	0% {
		opacity: 0;
		-ms-filter: blur(6px);
		filter: blur(6px);
	}
	100% {
		opacity: 1;
		-ms-filter: blur(0);
		filter: blur(0);
	}
}
@keyframes blur2 {
	0% {
		opacity: 0;
		-ms-filter: blur(6px);
		filter: blur(6px);
	}
	100% {
		opacity: .7;
		-ms-filter: blur(0);
		filter: blur(0);
	}
}
@keyframes blur3 {
	0% {
		opacity: 0;
		-ms-filter: blur(6px);
		filter: blur(6px);
	}
	100% {
		opacity: .5;
		-ms-filter: blur(0);
		filter: blur(0);
	}
}
@keyframes blur3_sp {
	0% {
		opacity: 0;
		-ms-filter: blur(6px);
		filter: blur(6px);
	}
	100% {
		opacity: .3;
		-ms-filter: blur(0);
		filter: blur(0);
	}
}
@keyframes blur4 {
	0% {
		opacity: 0;
		-ms-filter: blur(6px);
		filter: blur(6px);
	}
	100% {
		opacity: .1;
		-ms-filter: blur(0);
		filter: blur(0);
	}
}

.-fadein {
	opacity: 0;
}
.-translete {
	opacity: 0;
	transform : translate(0, 20px);
}
.-blur {
	opacity: 0;
}
.ftv-fadein {
	opacity: 0;
	animation: fadeIn 0.5s ease-in-out 0.5s forwards;
}
.ftv-translete {
	opacity: 0;
	animation: translete 1.0s ease-in-out 1s forwards;
}
.ftv-blur {
	opacity: 0;
	animation: blur 1.0s ease-in-out 1.0s forwards;
}
.js-effct__fade {
	animation: fadeIn 0.5s ease-in-out 0.5s forwards;
}
.js-effct__blur {
	animation: blur 0.5s ease-in-out 0.2s forwards;
}
.js-effct__translete {
	animation: translete 0.5s ease-in-out 0.5s forwards;
}
@media screen and (max-width: 480px) {
	.-translete {
		opacity: 1;
		transform : none;
	}
	.js-effct__translete {
		animation: none;
	}
}



*, *::before, *::after {
	box-sizing: border-box
}
body, h1, h2, h3, h4, p, figure, blockquote, dl, dd {
	margin: 0
}
ul[role="list"], ol[role="list"] {
	list-style: none
}
html {
	scroll-behavior: smooth;
}
html:focus-within {
	scroll-behavior: smooth;
}
body {
	min-height: 100vh;
	text-rendering: optimizeSpeed;
	line-height: 1.5
}
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	text-decoration: none;
}
a:not([class]) {
	text-decoration-skip-ink: auto
}
img, picture {
	max-width: 100%;
	display: block
}
input, button, textarea, select {
	font: inherit
}
@media( prefers-reduced-motion:reduce ) {
	html:focus-within {
		scroll-behavior: auto
	}
	*, *::before, *::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
		scroll-behavior: auto !important
	}
}
li, ol, ul {
	list-style: none
}


.u_kkline01 {
  display: inline!important; 
    background-image: linear-gradient(to bottom, #a0e9f9 7px, transparent 7px);
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-size: 100% 12px;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
	font-size:inherit;
	font-weight: inherit;
}
.u_bxline01 {
    display: inline;
    font-size:inherit;
    font-weight: inherit;
	background-color: #a0e9f9;
	padding: 3px 0 3px;
	margin-top: 5px;
}


.mg_b20{margin-bottom: 20px;}
.mg_b40{margin-bottom: 40px;}

.fl_l{float: left;}

