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

/* タイトル */

/* タイトルユニット幅100% */
.headding_wrap.width_100_box .width_100_box_inner {
	max-width: calc(100vw - 10px);
}



.h1_basic {
	font-size: 20px;
	font-weight: 500;
	line-height: 1.3;
	padding-bottom: 8px;
	display: flex;
	column-gap: 8px;
	border-bottom: solid 2px rgba(255,255,255,0.76);
	position: relative;
}
.h1_basic::before {
	content: '';
	display: inline-block;
	width: 6px;
	border-radius:2px;
	background-color: #cfc4c0;
}
.h1_basic::after {
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	background-color: #cfc4c0;
	position: absolute;
	bottom: -3px;
	left: 0;
	right: 0;
}
@media (min-width: 576px) {
	.h1_basic {
		font-size: 28px;
		column-gap: 16px;
	}
	.h1_basic::before {
		width: 8px;
		border-radius:4px;
	}
	
}


.h3_basic {
	display: flex;
	align-items: center;
	justify-content: space-between;
	column-gap: 48px;
	text-box-trim: trim-both;
}


/*  見出し下線：h2 underLine */

:root {
	--h2-font-size-base: 34 ;
	--h2-font-size:     calc(var(--h2-font-size-base) * 1px);
	--h2-font-size-h_6: calc(var(--h2-font-size-base) * 1.4px) ;
	--h2-font-size-h_5: calc(var(--h2-font-size-base) * 1.3px) ;
	--h2-font-size-h_4: calc(var(--h2-font-size-base) * 1.2px) ;
	--h2-font-size-h_3: calc(var(--h2-font-size-base) * 1.1px) ;
	--h2-font-size-h_2: calc(var(--h2-font-size-base) * 0.85px) ;
	--h2-font-size-h_1: calc(var(--h2-font-size-base) * 0.7px) ;
	--h2-padding-bottom-size-underLine: 6px ;

	--h2-font-size-base-sm: 26 ;
	--h2-font-size-sm:     calc(var(--h2-font-size-base-sm) * 1px);
	--h2-font-size-h_6-sm: calc(var(--h2-font-size-base-sm) * 1.4px) ;
	--h2-font-size-h_5-sm: calc(var(--h2-font-size-base-underLine-sm) * 1.3px) ;
	--h2-font-size-h_4-sm: calc(var(--h2-font-size-base-sm) * 1.2px) ;
	--h2-font-size-h_3-sm: calc(var(--h2-font-size-base-sm) * 1.1px) ;
	--h2-font-size-h_2-sm: calc(var(--h2-font-size-base-sm) * 0.85px) ;
	--h2-font-size-h_1-sm: calc(var(--h2-font-size-base-sm) * 0.7px) ;
}
:root {
	--h3-font-size-base: 20 ;
	--h3-font-size:     calc(var(--h3-font-size-base) * 1px);
	--h3-font-size-h_6: calc(var(--h3-font-size-base) * 1.4px) ;
	--h3-font-size-h_5: calc(var(--h3-font-size-base) * 1.3px) ;
	--h3-font-size-h_4: calc(var(--h3-font-size-base) * 1.2px) ;
	--h3-font-size-h_3: calc(var(--h3-font-size-base) * 1.1px) ;
	--h3-font-size-h_2: calc(var(--h3-font-size-base) * 0.85px) ;
	--h3-font-size-h_1: calc(var(--h3-font-size-base) * 0.7px) ;
	--h3-padding-bottom-size-underLine: 6px ;

	--h3-font-size-base-sm: 17 ;
	--h3-font-size-sm:     calc(var(--h3-font-size-base-sm) * 1px);
	--h3-font-size-h_6-sm: calc(var(--h3-font-size-base-sm) * 1.4px) ;
	--h3-font-size-h_5-sm: calc(var(--h3-font-size-base-underLine-sm) * 1.3px) ;
	--h3-font-size-h_4-sm: calc(var(--h3-font-size-base-sm) * 1.2px) ;
	--h3-font-size-h_3-sm: calc(var(--h3-font-size-base-sm) * 1.1px) ;
	--h3-font-size-h_2-sm: calc(var(--h3-font-size-base-sm) * 0.85px) ;
	--h3-font-size-h_1-sm: calc(var(--h3-font-size-base-sm) * 0.7px) ;
}

:root {
	--h4-font-size-base: 17 ;
	--h4-font-size:     calc(var(--h4-font-size-base) * 1px);
	--h4-font-size-h_6: calc(var(--h4-font-size-base) * 1.4px) ;
	--h4-font-size-h_5: calc(var(--h4-font-size-base) * 1.3px) ;
	--h4-font-size-h_4: calc(var(--h4-font-size-base) * 1.2px) ;
	--h4-font-size-h_3: calc(var(--h4-font-size-base) * 1.1px) ;
	--h4-font-size-h_2: calc(var(--h4-font-size-base) * 0.85px) ;
	--h4-font-size-h_1: calc(var(--h4-font-size-base) * 0.7px) ;
	--h4-padding-bottom-size-underLine: 6px ;

	--h4-font-size-base-sm: 17 ;
	--h4-font-size-sm:     calc(var(--h4-font-size-base-sm) * 1px);
	--h4-font-size-h_6-sm: calc(var(--h4-font-size-base-sm) * 1.4px) ;
	--h4-font-size-h_5-sm: calc(var(--h4-font-size-base-underLine-sm) * 1.3px) ;
	--h4-font-size-h_4-sm: calc(var(--h4-font-size-base-sm) * 1.2px) ;
	--h4-font-size-h_3-sm: calc(var(--h4-font-size-base-sm) * 1.1px) ;
	--h4-font-size-h_2-sm: calc(var(--h4-font-size-base-sm) * 0.85px) ;
	--h4-font-size-h_1-sm: calc(var(--h4-font-size-base-sm) * 0.7px) ;
}
:root {
	--h5-font-size-base: 16 ;
	--h5-font-size:     calc(var(--h5-font-size-base) * 1px);
	--h5-font-size-h_6: calc(var(--h5-font-size-base) * 1.4px) ;
	--h5-font-size-h_5: calc(var(--h5-font-size-base) * 1.3px) ;
	--h5-font-size-h_4: calc(var(--h5-font-size-base) * 1.2px) ;
	--h5-font-size-h_3: calc(var(--h5-font-size-base) * 1.1px) ;
	--h5-font-size-h_2: calc(var(--h5-font-size-base) * 0.85px) ;
	--h5-font-size-h_1: calc(var(--h5-font-size-base) * 0.7px) ;
	--h5-padding-bottom-size-underLine: 6px ;

	--h5-font-size-base-sm: 26 ;
	--h5-font-size-sm:     calc(var(--h5-font-size-base-sm) * 1px);
	--h5-font-size-h_6-sm: calc(var(--h5-font-size-base-sm) * 1.4px) ;
	--h5-font-size-h_5-sm: calc(var(--h5-font-size-base-underLine-sm) * 1.3px) ;
	--h5-font-size-h_4-sm: calc(var(--h5-font-size-base-sm) * 1.2px) ;
	--h5-font-size-h_3-sm: calc(var(--h5-font-size-base-sm) * 1.1px) ;
	--h5-font-size-h_2-sm: calc(var(--h5-font-size-base-sm) * 0.85px) ;
	--h5-font-size-h_1-sm: calc(var(--h5-font-size-base-sm) * 0.7px) ;
}



h3 {
	line-height: 1.4;
	font-weight: 500;
	text-box-trim: trim-both;
	position: relative;
	font-size:  var(--h3-font-size);
}

h4 {
	line-height: 1.4;
	font-weight: 500;
	text-box-trim: trim-both;
	position: relative;
	font-size:  var(--h4-font-size);
}
h5 {
	line-height: 1.4;
	font-weight: 500;
	text-box-trim: trim-both;
	position: relative;
	font-size:  var(--h5-font-size);
}


h1.h_6,
h2.h_6,
h6.h_6 {
	font-size: var(--h2-font-size-h_6);
}
h3.h_6 {
	font-size: var(--h3-font-size-h_6);
}
h4.h_6 {
	font-size: var(--h4-font-size-h_6);
}
h5.h_6 {
	font-size: var(--h5-font-size-h_6);
}

h1.h_5,
h2.h_5,
h6.h_5 {
	font-size: var(--h2-font-size-h_5);
}
h3.h_5 {
	font-size: var(--h3-font-size-h_5);
}
h4.h_5 {
	font-size: var(--h4-font-size-h_5);
}
h5.h_5 {
	font-size: var(--h5-font-size-h_5);
}

h1.h_4,
h2.h_4,
h6.h_4 {
	font-size:  var(--h2-font-size-h_4);
}
h3.h_4 {
	font-size: var(--h3-font-size-h_4);
}
h4.h_4 {
	font-size: var(--h4-font-size-h_4);
}
h5.h_4 {
	font-size: var(--h5-font-size-h_4);
}


h1.h_3,
h2.h_3,
h6.h_3 {
	font-size:  var(--h2-font-size-h_3);
}
h3.h_3 {
	font-size: var(--h3-font-size-h_3);
}
h4.h_3 {
	font-size: var(--h4-font-size-h_3);
}
h5.h_3 {
	font-size: var(--h5-font-size-h_3);
}

h1.h_2,
h2.h_2,
h6.h_2 {
	font-size:  var(--h2-font-size-h_2);
}
h3.h_2 {
	font-size: var(--h3-font-size-h_2);
}
h4.h_2 {
	font-size: var(--h4-font-size-h_2);
}
h5.h_2 {
	font-size: var(--h5-font-size-h_2);
}

h1.h_1,
h2.h_1,
h6.h_1 {
	font-size:  var(--h2-font-size-h_1);
}
h3.h_1{
	font-size: var(--h3-font-size-h_1);
}
h4.h_1{
	font-size: var(--h4-font-size-h_1);
}
h5.h_1{
	font-size: var(--h5-font-size-h_1);
}




/*  タイトル：underLine　*/

h2.underLine,
h3.underLine,
h4.underLine,
h5.underLine,
h6.underLine {
	font-weight: 300;
	border-bottom: solid 1px #BBB;
	text-box-trim: trim-both;
}


/*  見出し下線：h2 underLine */

:root {
	--h2-font-size-base-underLine: 34 ;
	--h2-font-size-underLine:     calc(var(--h2-font-size-base-underLine) * 1px);
	--h2-font-size-h_6-underLine: calc(var(--h2-font-size-base-underLine) * 1.4px) ;
	--h2-font-size-h_5-underLine: calc(var(--h2-font-size-base-underLine) * 1.3px) ;
	--h2-font-size-h_4-underLine: calc(var(--h2-font-size-base-underLine) * 1.2px) ;
	--h2-font-size-h_3-underLine: calc(var(--h2-font-size-base-underLine) * 1.1px) ;
	--h2-font-size-h_2-underLine: calc(var(--h2-font-size-base-underLine) * 0.85px) ;
	--h2-font-size-h_1-underLine: calc(var(--h2-font-size-base-underLine) * 0.7px) ;
	--h2-padding-bottom-size-underLine: 6px ;

	--h2-font-size-base-underLine-sm: 26 ;
	--h2-font-size-underLine-sm:     calc(var(--h2-font-size-base-underLine-sm) * 1px);
	--h2-font-size-h_6-underLine-sm: calc(var(--h2-font-size-base-underLine-sm) * 1.4px) ;
	--h2-font-size-h_5-underLine-sm: calc(var(--h2-font-size-base-underLine-sm) * 1.3px) ;
	--h2-font-size-h_4-underLine-sm: calc(var(--h2-font-size-base-underLine-sm) * 1.2px) ;
	--h2-font-size-h_3-underLine-sm: calc(var(--h2-font-size-base-underLine-sm) * 1.1px) ;
	--h2-font-size-h_2-underLine-sm: calc(var(--h2-font-size-base-underLine-sm) * 0.85px) ;
	--h2-font-size-h_1-underLine-sm: calc(var(--h2-font-size-base-underLine-sm) * 0.7px) ;
}

h2.underLine {
	font-size:      var(--h2-font-size-underLine-sm);
	padding-bottom: calc(var(--h2-padding-bottom-size-underLine) * 1.3);
	font-weight: 300;
}
h2.underLine.h_6 {
	font-size:      var(--h2-font-size-h_6-underLine-sm);
	padding-bottom: calc(var(--h2-padding-bottom-size-underLine) * 1.3);
}
h2.underLine.h_5 {
	font-size:      var(--h2-font-size-h_5-underLine-sm);
	padding-bottom: calc(var(--h2-padding-bottom-size-underLine) * 1.3);
}
h2.underLine.h_4 {
	font-size:      var(--h2-font-size-h_4-underLine-sm);
	padding-bottom: calc(var(--h2-padding-bottom-size-underLine) * 1.2);
}
h2.underLine.h_3 {
	font-size:       var(--h2-font-size-h_3-underLine-sm);
	padding-bottom: calc(var(--h2-padding-bottom-size-underLine) * 1.1);
}
h2.underLine.h_2 {
	font-size:      var(--h2-font-size-h_2-underLine-sm);
	padding-bottom: calc(var(--h2-padding-bottom-size-underLine) * 1);
}
h2.underLine.h_1 {
	font-size:       var(--h2-font-size-h_1-underLine-sm);
	padding-bottom: calc(var(--h2-padding-bottom-size-underLine) * 0.9);
}



@media (min-width: 576px) {
	h2.underLine, h2.underLine span {
		font-size:      var(--h2-font-size-underLine);
		padding-bottom: calc(var(--h2-padding-bottom-size-underLine) * 1.2);
		font-weight: 300;
	}
	h2.underLine.h_6, h2.underLine.h_6 span  {
		font-size:      var(--h2-font-size-h_6-underLine);
		padding-bottom: calc(var(h--2-padding-bottom-size-underLine) * 1.2);
	}
	h2.underLine.h_5, h2.underLine.h_5 span {
		font-size:      var(--h2-font-size-h_5-underLine);
		padding-bottom: calc(var(--h2-padding-bottom-size-underLine) * 1.1);
	}
	h2.underLine.h_4, h2.underLine.h_4 span  {
		font-size:      var(--h2-font-size-h_4-underLine);
		padding-bottom: calc(var(--h2-padding-bottom-size-underLine) * 1.1);
	}
	h2.underLine.h_3, h2.underLine.h_3 span  {
		font-size:       var(--h2-font-size-h_3-underLine);
		padding-bottom: calc(var(--h2-padding-bottom-size-underLine) * 1);
	}
	h2.underLine.h_2, h2.underLine.h_2 span  {
		font-size:      var(--h2-font-size-h_2-underLine);
		padding-bottom: calc(var(--h2-padding-bottom-size-underLine) * 0.9);
	}
	h2.underLine.h_1,  h2.underLine.h_1 span {
		font-size:       var(--h2-font-size-h_1-underLine);
		padding-bottom: calc(var(--h2-padding-bottom-size-underLine) * 0.9);
	}
}



/*  見出し下線：h3 */

:root {
	--h3-font-size-base-underLine: 22 ;
	--h3-font-size-underLine:     calc(var(--h3-font-size-base-underLine) * 1px);
	--h3-font-size-h_6-underLine: calc(var(--h3-font-size-base-underLine) * 1.4px) ;
	--h3-font-size-h_5-underLine: calc(var(--h3-font-size-base-underLine) * 1.3px) ;
	--h3-font-size-h_4-underLine: calc(var(--h3-font-size-base-underLine) * 1.2px) ;
	--h3-font-size-h_3-underLine: calc(var(--h3-font-size-base-underLine) * 1.1px) ;
	--h3-font-size-h_2-underLine: calc(var(--h3-font-size-base-underLine) * 0.85px) ;
	--h3-font-size-h_1-underLine: calc(var(--h3-font-size-base-underLine) * 0.7px) ;
	--h3-padding-bottom-size: 6px ;

	--h3-font-size-base-underLine-sm: 20 ;
	--h3-font-size-underLine-sm:     calc(var(--h3-font-size-base-underLine-sm) * 1px);
	--h3-font-size-h_6-underLine-sm: calc(var(--h3-font-size-base-underLine-sm) * 1.4px) ;
	--h3-font-size-h_5-underLine-sm: calc(var(--h3-font-size-base-underLine-sm) * 1.3px) ;
	--h3-font-size-h_4-underLine-sm: calc(var(--h3-font-size-base-underLine-sm) * 1.2px) ;
	--h3-font-size-h_3-underLine-sm: calc(var(--h3-font-size-base-underLine-sm) * 1.1px) ;
	--h3-font-size-h_2-underLine-sm: calc(var(--h3-font-size-base-underLine-sm) * 0.85px) ;
	--h3-font-size-h_1-underLine-sm: calc(var(--h3-font-size-base-underLine-sm) * 0.7px) ;

}


h3.underLine {
	font-size:      var(--h3-font-size-underLine-sm);
	padding-bottom: var(--h3-padding-bottom-size);
	font-weight:    400;
}
@media (min-width: 576px){
	h3.under {
		font-size:      var(--h3-font-size-underLine);
	}
}
h3.underLine.h_6  {
	font-size:       var(--h3-font-size-h_6-underLine-sm);
}
@media (min-width: 576px){
	h3.underLine.h_6  {
		font-size:       var(--h3-font-size-h_6-underLine);
	}
}
h3.underLine.h_5  {
	font-size:       var(--h3-font-size-h_5-underLine-sm);
}
@media (min-width: 576px){
	h3.underLine.h_5  {
		font-size:       var(--h3-font-size-h_5-underLine);
	}
}
h3.underLine.h_4  {
	font-size:       var(--h3-font-size-h_4-underLine-sm);
}
@media (min-width: 576px){
	h3.underLine.h_4  {
		font-size:       var(--h3-font-size-h_4-underLine);
	}
}
h3.underLine.h_3  {
	font-size:       var(--h3-font-size-h_3-underLine-sm);
}
@media (min-width: 576px){
	h3.underLine.h_3  {
		font-size:       var(--h3-font-size-h_3-underLine);
	}
}
h3.underLine.h_2  {
	font-size:       var(--h3-font-size-h_2-underLine-sm);
}
@media (min-width: 576px){
	h3.underLine.h_2  {
		font-size:   var(--h3-font-size-h_2-underLine);
	}	
}
h3.underLine.h_1  {
	font-size:       var(--h3-font-size-h_1-underLine-sm);
}
@media (min-width: 576px){
	h3.underLine.h_1  {
		font-size:   var(--h3-font-size-h_1-underLine);
	}
}



/*  見出し下線：h4 */

:root {
	--h4-font-size-base-underLine: 17 ;
	--h4-font-size-underLine:     calc(var(--h4-font-size-base-underLine) * 1px);
	--h4-font-size-h_6-underLine: calc(var(--h4-font-size-base-underLine) * 1.4px) ;
	--h4-font-size-h_5-underLine: calc(var(--h4-font-size-base-underLine) * 1.3px) ;
	--h4-font-size-h_4-underLine: calc(var(--h4-font-size-base-underLine) * 1.2px) ;
	--h4-font-size-h_3-underLine: calc(var(--h4-font-size-base-underLine) * 1.1px) ;
	--h4-font-size-h_2-underLine: calc(var(--h4-font-size-base-underLine) * 0.85px) ;
	--h4-font-size-h_1-underLine: calc(var(--h4-font-size-base-underLine) * 0.7px) ;
	--h4-padding-bottom-size-underLine: 6px ;

	--h4-font-size-base-underLine-sm: 16 ;
	--h4-font-size-underLine-sm:     calc(var(--h4-font-size-base-underLine-sm) * 1px);
	--h4-font-size-h_6-underLine-sm: calc(var(--h4-font-size-base-underLine-sm) * 1.4px) ;
	--h4-font-size-h_5-underLine-sm: calc(var(--h4-font-size-base-underLine-sm) * 1.3px) ;
	--h4-font-size-h_4-underLine-sm: calc(var(--h4-font-size-base-underLine-sm) * 1.2px) ;
	--h4-font-size-h_3-underLine-sm: calc(var(--h4-font-size-base-underLine-sm) * 1.1px) ;
	--h4-font-size-h_2-underLine-sm: calc(var(--h4-font-size-base-underLine-sm) * 0.85px) ;
	--h4-font-size-h_1-underLine-sm: calc(var(--h4-font-size-base-underLine-sm) * 0.7px) ;

}
h4.underLine {
	font-size:       var(--h4-font-size-underLine-sm);
	padding-bottom:  var(--h4-padding-bottom-size-underLine);
	font-weight:     500;
}
@media (min-width: 576px){
	h4.underLine {
		font-size:       var(--h4-font-size-underLine);
	}
}
h4.underLine.h_6  {
	font-size:       var(--h4-font-size-h_6-underLine-sm);
}
@media (min-width: 576px){
	h4.underLine.h_6  {
		font-size:       var(--h4-font-size-h_6-underLine);
	}
}
h4.underLine.h_5  {
	font-size:       var(--h4-font-size-h_5-underLine-sm);
}
@media (min-width: 576px){
	h4.underLine.h_5  {
		font-size:       var(--h4-font-size-h_5-underLine);
	}
}
h4.underLine.h_4  {
	font-size:       var(--h4-font-size-h_4-underLine-sm);
}
@media (min-width: 576px){
	h4.underLine.h_4  {
		font-size:       var(--h4-font-size-h_4-underLine);
	}
}
h4.underLine.h_3  {
	font-size:       var(--h4-font-size-h_3-underLine-sm);
}
@media (min-width: 576px){
	h4.underLine.h_3  {
		font-size:       var(--h4-font-size-h_3-underLine);
	}
}
h4.underLine.h_2  {
	font-size:       var(--h4-font-size-h_2-underLine-sm);
}
@media (min-width: 576px){
	h4.underLine.h_2  {
		font-size:       var(--h4-font-size-h_2-underLine);
	}
}
h4.underLine.h_1  {
	font-size:       var(--h4-font-size-h_1-underLine-sm);
}
@media (min-width: 576px){
	h4.underLine.h_1  {
		font-size:       var(--h4-font-size-h_1-underLine);
	}
}


/*  見出し下線：h5 */

:root {
	--h5-font-size-base-underLine: 17 ;
	--h5-font-size-underLine:     calc(var(--h5-font-size-base-underLine) * 1px);
	--h5-font-size-h_6-underLine: calc(var(--h5-font-size-base-underLine) * 1.4px) ;
	--h5-font-size-h_5-underLine: calc(var(--h5-font-size-base-underLine) * 1.3px) ;
	--h5-font-size-h_4-underLine: calc(var(--h5-font-size-base-underLine) * 1.2px) ;
	--h5-font-size-h_3-underLine: calc(var(--h5-font-size-base-underLine) * 1.1px) ;
	--h5-font-size-h_2-underLine: calc(var(--h5-font-size-base-underLine) * 0.85px) ;
	--h5-font-size-h_1-underLine: calc(var(--h5-font-size-base-underLine) * 0.7px) ;
	--h5-padding-bottom-size-underLine: 6px ;
}
h5.underLine, h5.underLine span {
	font-size:       var(--h5-font-size-underLine);
	padding-bottom:  var(--h5-padding-bottom-size-underLine: 6px);
	font-weight:     500;
}

h5.underLine.h_6, h5.underLine.h_6 span {
	font-size:       var(--h5-font-size-h_6-underLine);
}
h5.underLine.h_5, h5.underLine.h_5 span  {
	font-size:       var(--h5-font-size-h_5-underLine);
}
h5.underLine.h_4, h5.underLine.h_4 span  {
	font-size:       var(--h5-font-size-h_4-underLine);
}
h5.underLine.h_3, h5.underLine.h_3 span  {
	font-size:       var(--h5-font-size-h_3-underLine);
}
h5.underLine.h_2, h5.underLine.h_2 span  {
	font-size:       var(--h5-font-size-h_2-underLine);
}
h5.underLine.h_1, h5.underLine.h_1 span  {
	font-size:       var(--h5-font-size-h_1-underLine);
}



/*  見出し下線：h6 */
:root {
	--h6-font-size-base-underLine: 16 ;
	--h6-font-size-underLine:     calc(var(--h6-font-size-base-underLine) * 1px);
	--h6-font-size-h_6-underLine: calc(var(--h6-font-size-base-underLine) * 1.4px) ;
	--h6-font-size-h_5-underLine: calc(var(--h6-font-size-base-underLine) * 1.3px) ;
	--h6-font-size-h_4-underLine: calc(var(--h6-font-size-base-underLine) * 1.2px) ;
	--h6-font-size-h_3-underLine: calc(var(--h6-font-size-base-underLine) * 1.1px) ;
	--h6-font-size-h_2-underLine: calc(var(--h6-font-size-base-underLine) * 0.85px) ;
	--h6-font-size-h_1-underLine: calc(var(--h6-font-size-base-underLine) * 0.7px) ;
	--h6-padding-bottom-size-underLine: 3px ;
}

h6.underLine, h6.underLine span {
	font-size:      var(--h6-font-siz-underLinee);
	padding-bottom: var(--h6-padding-bottom-size-underLine);
	font-weight:    500;
}
h6.underLine.h_6, h6.underLine.h_6 span  {
	font-size:      var(--h6-font-size-h_6-underLine);
}
h6.underLine.h_5, h6.underLine.h_5 span  {
	font-size:      var(--h6-font-size-h_5-underLine);
}
h6.underLine.h_4, h6.underLine.h_4 span  {
	font-size:      var(--h6-font-size-h_4-underLine);
}
h6.underLine.h_3, h6.underLine.h_3 span  {
	font-size:      var(--h6-font-size-h_3-underLine);
}
h6.underLine.h_2, h6.underLine.h_2 span  {
	font-size:      var(--h6-font-size-h_2-underLine);
}
h6.underLine.h_1, h6.underLine.h_1 span  {
	font-size:      var(--h6-font-size-h_1-underLine);
}








/*  タイトル：h2_centerline　*/

.h2_centerline {
	text-box-trim: trim-both;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	column-gap: 16px;
	font-size: 26px;
	font-weight: 500;

}
.h2_centerline::before,
.h2_centerline::after {
	content: "";
	height: 3px;
	flex-grow: 1;
	background-color: #e0dcdc;
}

@media (min-width: 768px){
	.h2_centerline {
		column-gap: 48px;
		font-size: 32px;
	}
}




/*  見出し：タイトル：title　*/
/*  見出し：タイトル：titleデフォルト　*/

h2.title {
	padding: 4px;
	border-radius: 4px;
	font-size: 20px;
}
@media (min-width: 576px){
	h2.title {
		padding: 10px;
		border-radius: 4px;
		font-size: 24px;
	}
}



:root {
	--h3-font-size-base-title: 20 ;
	--h3-font-size-title:     calc(var(--h3-font-size-base-title) * 1px);
	--h3-font-size-h_6-title: calc(var(--h3-font-size-base-title) * 1.5px) ;
	--h3-font-size-h_5-title: calc(var(--h3-font-size-base-title) * 1.32px) ;
	--h3-font-size-h_4-title: calc(var(--h3-font-size-base-title) * 1.2px) ;
	--h3-font-size-h_3-title: calc(var(--h3-font-size-base-title) * 1.1px) ;
	--h3-font-size-h_2-title: calc(var(--h3-font-size-base-title) * 0.85px) ;
	--h3-font-size-h_1-title: calc(var(--h3-font-size-base-title) * 0.7px) ;

	--h3-font-size-base-title-sm: 17 ;
	--h3-font-size-title-sm:     calc(var(--h3-font-size-base-title-sm) * 1px);
	--h3-font-size-h_6-title-sm: calc(var(--h3-font-size-base-title-sm) * 1.5px) ;
	--h3-font-size-h_5-title-sm: calc(var(--h3-font-size-base-title-sm) * 1.32px) ;
	--h3-font-size-h_4-title-sm: calc(var(--h3-font-size-base-title-sm) * 1.2px) ;
	--h3-font-size-h_3-title-sm: calc(var(--h3-font-size-base-title-sm) * 1.1px) ;
	--h3-font-size-h_2-title-sm: calc(var(--h3-font-size-base-title-sm) * 0.85px) ;
	--h3-font-size-h_1-title-sm: calc(var(--h3-font-size-base-title-sm) * 0.7px) ;
}



h3.title {
	font-size:    var(--h3-font-size-title-sm);
	padding:      8px;
	border-radius: 4px;
	background-color:#fff;
	margin-bottom: 16px;
}

@media(min-width: 576px){
	h3.title {
		font-size: var(--h3-font-size-title);
	}
}
h3.title.h_6 {
	font-size:     var(--h3-font-size-h_6-title-sm);
	padding:       5px;
	border-radius: 4px;
}
@media(min-width: 576px){
	h3.title.h_6 {
		font-size:     var(--h3-font-size-h_6-title);
		padding:       8px;
		border-radius: 4px;
	}
}
h3.title.h_5 {
	font-size:     var(--h3-font-size-h_5-title-sm);
	padding:       6px;
	border-radius: 4px;
}
@media(min-width: 576px){
	h3.title.h_5 {
		font-size:     var(--h3-font-size-h_5-title);
		padding:       8px;
		border-radius: 4px;
	}
}
h3.title.h_4 {
	font-size:     var(--h3-font-size-h_4-title-sm);
	padding:　　　　5px;
	border-radius: 4px;
}
@media(min-width: 576px){
	h3.title.h_4 {
		font-size:     var(--h3-font-size-h_4-title);
		padding:　　　　5px;
		border-radius: 4px;
	}
}
h3.title.h_3 {
	font-size:     var(--h3-font-size-h_3-title-sm);
	padding:　　　　4px;
	border-radius: 4px;
}
@media(min-width: 576px){
	h3.title.h_3 {
		font-size:     var(--h3-font-size-h_3-title);
		padding:　　　　6px;
		border-radius: 4px;
	}
}
h3.title.h_2, h3.title.h_2 span {
	font-size:     var(--h3-font-size-h_2-title-sm);
	padding:      4px;
	border-radius: 4px;
}
@media(min-width: 576px){
	h3.title.h_2 {
		font-size:     var(--h3-font-size-h_2-title);
		padding:      6px;
		border-radius: 4px;
	}
}
h3.title.h_1 {
	font-size:     var(--h3-font-size-h_1-title-sm);
	padding:       4px;
	border-radius: 3px;
}
@media(min-width: 576px){
	h3.title.h_1 {
		font-size:     var(--h3-font-size-h_1-title);
		padding:       5px;
		border-radius: 3px;
	}
}


:root {
	--h4-font-size-base-title: 20 ;
	--h4-font-size-title:     calc(var(--h4-font-size-base-title) * 1px);
	--h4-font-size-h_6-title: calc(var(--h4-font-size-base-title) * 1.5px) ;
	--h4-font-size-h_5-title: calc(var(--h4-font-size-base-title) * 1.35px) ;
	--h4-font-size-h_4-title: calc(var(--h4-font-size-base-title) * 1.2px) ;
	--h4-font-size-h_3-title: calc(var(--h4-font-size-base-title) * 1.1px) ;
	--h4-font-size-h_2-title: calc(var(--h4-font-size-base-title) * 0.85px) ;
	--h4-font-size-h_1-title: calc(var(--h4-font-size-base-title) * 0.7px) ;

	--h4-font-size-base-title-sm: 18 ;
	--h4-font-size-title-sm:     calc(var(--h4-font-size-base-title-sm) * 1px);
	--h4-font-size-h_6-titl-sme: calc(var(--h4-font-size-base-title-sm) * 1.5px) ;
	--h4-font-size-h_5-title-sm: calc(var(--h4-font-size-base-title-sm) * 1.35px) ;
	--h4-font-size-h_4-title-sm: calc(var(--h4-font-size-base-title-sm) * 1.2px) ;
	--h4-font-size-h_3-title-sm: calc(var(--h4-font-size-base-title-sm) * 1.1px) ;
	--h4-font-size-h_2-title-sm: calc(var(--h4-font-size-base-title-sm) * 0.85px) ;
	--h4-font-size-h_1-title-sm: calc(var(--h4-font-size-base-title-sm) * 0.7px) ;
}

h4.title, h4.title span {
	font-size:     var(--h4-font-size-title-sm);
	padding:      10px;
	border-radius: 3px;
	background-color:#fff;
	margin-bottom: 16px;
}
@media(min-width: 576px){
	h4.title, h4.title span {
		font-size:     var(--h4-font-size-title);
		padding:      10px;
		border-radius: 4px;
		margin-bottom: 16px;
	}	
}
h4.title.h_6, h4.title.h_6 span {
	font-size:     var(--h4-font-size-h_6-title-sm);
	padding:　　　　10px;
	border-radius: 4px;
}
@media(min-width: 576px){
	h4.title.h_6, h4.title.h_6 span {
		font-size:     var(--h4-font-size-h_6-title);
		padding:　　　　10px;
		border-radius: 4px;
	}
}

h4.title.h_5, h4.title.h_5 span {
	font-size:     var(--h4-font-size-h_5-title-sm);
	padding:　　　　10px;
	border-radius: 4px;
}
@media(min-width: 576px){
	h4.title.h_5, h4.title.h_5 span {
		font-size:     var(--h4-font-size-h_5-title);
		padding:　　　　10px;
		border-radius: 4px;
	}
}
h4.title.h_4, h4.title.h_4 span {
	font-size:     var(--h4-font-size-h_4-title-sm);
	padding:　　　　10px;
	border-radius: 4px;
}	
@media(min-width: 576px){
	h4.title.h_4, h4.title.h_4 span {
		font-size:     var(--h4-font-size-h_4-title);
		padding:　　　　10px;
		border-radius: 4px;
	}	
}

h4.title.h_3, h4.title.h_3 span {
	font-size:     var(--h4-font-size-h_3-title-sm);
	padding:　　　　10px;
	border-radius: 4px;
}
@media(min-width: 576px){
	h4.title.h_3, h4.title.h_3 span {
		font-size:     var(--h4-font-size-h_3-title);
		padding:　　　　10px;
		border-radius: 4px;
	}
}

h4.title.h_2, h4.title.h_2 span {
	font-size:     var(--h4-font-size-h_2-title-sm);
	padding:      6px;
	border-radius: 4px;
}
@media(min-width: 576px){
	h4.title.h_2, h4.title.h_2 span {
		font-size:     var(--h4-font-size-h_2-title);
		padding:      6px;
		border-radius: 4px;
	}
}

h4.title.h_1, h4.title.h_1 span {
	font-size:     var(--h4-font-size-h_1-title-sm);
	padding:       5px;
	border-radius: 3px;
}


@media(min-width: 576px){
	h4.title.h_1, h4.title.h_1 span {
		font-size:     var(--h4-font-size-h_1-title);
		padding:       5px;
		border-radius: 3px;
	}

}





h4.title {
	padding: 10px;
	border-radius: 4px;
	font-size: 18px;
}
h5.title {
	padding: 8px;
	border-radius: 4px;
	font-size: 15px;
}
h6.title {
	padding: 6px;
	border-radius: 4px;
	font-size: 15px;
}





/*  タイトル：ライン左　*/

h2.leftLine,
h3.leftLine,
h4.leftLine,
h5.leftLine,
h6.leftLine {
	padding-left: 8px;
	font-weight: 600;
    border-left: solid 6px #009CC4;
}
h3.leftLine.h_6 {
	padding-left: 16px;
}
h3.leftLine.h_5,
h3.leftLine.h_4 {
	padding-left: 12px;
}
h3.leftLine.h_3,
h3.leftLine.h_2 {
	padding-left: 8px;
	font-weight: 400;
    border-left: solid 4px #009CC4;
}
h3.leftLine.h_1 {
	padding-left: 6px;
	font-weight: 400;
    border-left: solid 4px #009CC4;
}







/*  見出し：キャッチ　*/
.headding_wrap h2.catch1,
.headding_wrap h3.catch1,
.headding_wrap h4.catch1,
.headding_wrap h5.catch1,
.headding_wrap h6.catch1 {
	text-box-trim: trim-both;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	column-gap: 16px;
	margin-bottom: 0;
	font-weight: 400;
}
.headding_wrap h2.catch1::before, .headding_wrap h2.catch1::after,
.headding_wrap h3.catch1::before, .headding_wrap h3.catch1::after,
.headding_wrap h4.catch1::before, .headding_wrap h4.catch1::after,
.headding_wrap h5.catch1::before, .headding_wrap h5.catch1::after,
.headding_wrap h6.catch1::before, .headding_wrap h6.catch1::after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #AAA;
}
.headding_wrap h2.h_1.catch1::before, .headding_wrap h2.h_1.catch1::after,
.headding_wrap h3.h_1.catch1::before, .headding_wrap h3.h_1.catch1::after,
.headding_wrap h4.h_1.catch1::before, .headding_wrap h4.h_1.catch1::after,
.headding_wrap h5.h_1.catch1::before, .headding_wrap h5.h_1.catch1::after,
.headding_wrap h6.h_1.catch1::before, .headding_wrap h6.h_1.catch1::after {
    background-color: #CCC;
}



:root {
	--h2-font-size-base-catch1: 30 ;
	--h2-font-size-catch1:     calc(var(--h2-font-size-base-catch1) * 1px);
	--h2-font-size-h_6-catch1: calc(var(--h2-font-size-base-catch1) * 1.5px) ;
	--h2-font-size-h_5-catch1: calc(var(--h2-font-size-base-catch1) * 1.32px) ;
	--h2-font-size-h_4-catch1: calc(var(--h2-font-size-base-catch1) * 1.2px) ;
	--h2-font-size-h_3-catch1: calc(var(--h2-font-size-base-catch1) * 1.1px) ;
	--h2-font-size-h_2-catch1: calc(var(--h2-font-size-base-catch1) * 0.85px) ;
	--h2-font-size-h_1-catch1: calc(var(--h2-font-size-base-catch1) * 0.7px) ;

	--h2-font-size-base-catch1-sm: 20 ;
	--h2-font-size-catch1-sm:     calc(var(--h2-font-size-base-catch1-sm) * 1px);
	--h2-font-size-h_6-catch1-sm: calc(var(--h2-font-size-base-catch1-sm) * 1.5px) ;
	--h2-font-size-h_5-catch1-sm: calc(var(--h2-font-size-base-catch1-sm) * 1.32px) ;
	--h2-font-size-h_4-catch1-sm: calc(var(--h2-font-size-base-catch1-sm) * 1.2px) ;
	--h2-font-size-h_3-catch1-sm: calc(var(--h2-font-size-base-catch1-sm) * 1.1px) ;
	--h2-font-size-h_2-catch1-sm: calc(var(--h2-font-size-base-catch1-sm) * 0.85px) ;
	--h2-font-size-h_1-catch1-sm: calc(var(--h2-font-size-base-catch1-sm) * 0.7px) ;
}

h2.catch1 {
	font-size:     var(--h2-font-size-catch1-sm);
	padding:      10px 0;
	border-radius: 3px;
	margin-bottom: 16px;
}
h2.catch1.h_6 {
	font-size:     var(--h2-font-size-h_6-catch1-sm);
}
h2.catch1.h_5 {
	font-size:     var(--h2-font-size-h_5-catch1-sm);
}
h2.catch1.h_4 {
	font-size:     var(--h2-font-size-h_4-catch1-sm);
}
h2.catch1.h_3 {
	font-size:     var(--h2-font-size-h_3-catch1-sm);
}
h2.catch1.h_2 {
	font-size:     var(--h2-font-size-h_2-catch1-sm);
}
h2.catch1.h_1 {
	font-size:     var(--h2-font-size-h_1-catch1-sm);
}

@media(min-width: 576px){
	h2.catch1 {
		font-size:     var(--h2-font-size-catch1);
		padding:      10px 0;
		border-radius: 3px;
		margin-bottom: 16px;
	}
	h2.catch1.h_6 {
		font-size:     var(--h2-font-size-h_6-catch1);
	}
	h2.catch1.h_5 {
		font-size:     var(--h2-font-size-h_5-catch1);
	}
	h2.catch1.h_4 {
		font-size:     var(--h2-font-size-h_4-catch1);
	}
	h2.catch1.h_3 {
		font-size:     var(--h2-font-size-h_3-catch1);
	}
	h2.catch1.h_2 {
		font-size:     var(--h2-font-size-h_2-catch1);
	}
	h2.catch1.h_1 {
		font-size:     var(--h2-font-size-h_1-catch1);
	}
}






:root {
	--h3-font-size-base-catch1: 20 ;
	--h3-font-size-catch1:     calc(var(--h3-font-size-base-catch1) * 1px);
	--h3-font-size-h_6-catch1: calc(var(--h3-font-size-base-catch1) * 1.5px) ;
	--h3-font-size-h_5-catch1: calc(var(--h3-font-size-base-catch1) * 1.32px) ;
	--h3-font-size-h_4-catch1: calc(var(--h3-font-size-base-catch1) * 1.2px) ;
	--h3-font-size-h_3-catch1: calc(var(--h3-font-size-base-catch1) * 1.1px) ;
	--h3-font-size-h_2-catch1: calc(var(--h3-font-size-base-catch1) * 0.85px) ;
	--h3-font-size-h_1-catch1: calc(var(--h3-font-size-base-catch1) * 0.7px) ;

	--h3-font-size-base-catch1-sm: 17 ;
	--h3-font-size-catch1-sm:     calc(var(--h3-font-size-base-catch1-sm) * 1px);
	--h3-font-size-h_6-catch1-sm: calc(var(--h3-font-size-base-catch1-sm) * 1.5px) ;
	--h3-font-size-h_5-catch1-sm: calc(var(--h3-font-size-base-catch1-sm) * 1.32px) ;
	--h3-font-size-h_4-catch1-sm: calc(var(--h3-font-size-base-catch1-sm) * 1.2px) ;
	--h3-font-size-h_3-catch1-sm: calc(var(--h3-font-size-base-catch1-sm) * 1.1px) ;
	--h3-font-size-h_2-catch1-sm: calc(var(--h3-font-size-base-catch1-sm) * 0.85px) ;
	--h3-font-size-h_1-catch1-sm: calc(var(--h3-font-size-base-catch1-sm) * 0.7px) ;
}














/* タイトル */

h1.h_align_left,
h2.h_align_left,
h3.h_align_left,
h4.h_align_left,
h5.h_align_left,
h6.h_align_left{
	text-align: left;
}
h1.h_align_center,
h2.h_align_center,
h3.h_align_center,
h4.h_align_center,
h5.h_align_center,
h6.h_align_center{
	text-align: center;
}
h1.h_align_right,
h2.h_align_right,
h3.h_align_right,
h4.h_align_right,
h5.h_align_right,
h6.h_align_right{
	text-align: right;
}




h1.mb-0 {
	margin-bottom: 0;
}
h1.mb-1 {
	margin-bottom: 15px;
}
h1.mb-2 {
	margin-bottom: 30px;
}
h1.mb-3 {
	margin-bottom: 45px;
}
h1.mb-4 {
	margin-bottom: 60px;
}
h1.mb-5 {
	margin-bottom: 75px;
}
h1.mb-6 {
	margin-bottom: 90px;
}

h2.mb-0 {
	margin-bottom: 0;
}
h2.mb-1 {
	margin-bottom: 15px;
}
h2.mb-2 {
	margin-bottom: 30px;
}
h2.mb-3 {
	margin-bottom: 45px;
}
h2.mb-4 {
	margin-bottom: 60px;
}
h2.mb-5 {
	margin-bottom: 75px;
}
h2.mb-6 {
	margin-bottom: 90px;
}


h3.mb-0 {
	margin-bottom: 0;
}
h3.mb-1 {
	margin-bottom: 15px;
}
h3.mb-2 {
	margin-bottom: 30px;
}
h3.mb-3 {
	margin-bottom: 45px;
}
h3.mb-4 {
	margin-bottom: 60px;
}
h3.mb-5 {
	margin-bottom: 75px;
}
h3.mb-6 {
	margin-bottom: 90px;
}


h4.mb-0 {
	margin-bottom: 0;
}
h4.mb-1 {
	margin-bottom: 15px;
}
h4.mb-2 {
	margin-bottom: 30px;
}
h4.mb-3 {
	margin-bottom: 45px;
}
h4.mb-4 {
	margin-bottom: 60px;
}
h4.mb-5 {
	margin-bottom: 75px;
}
h4.mb-6 {
	margin-bottom: 90px;
}


h5.mb-0 {
	margin-bottom: 0;
}
h5.mb-1 {
	margin-bottom: 15px;
}
h5.mb-2 {
	margin-bottom: 30px;
}
h5.mb-3 {
	margin-bottom: 45px;
}
h5.mb-4 {
	margin-bottom: 60px;
}
h5.mb-5 {
	margin-bottom: 75px;
}
h5.mb-6 {
	margin-bottom: 90px;
}


h6.mb-0 {
	margin-bottom: 0;
}
h6.mb-1 {
	margin-bottom: 15px;
}
h6.mb-2 {
	margin-bottom: 30px;
}
h6.mb-3 {
	margin-bottom: 45px;
}
h6.mb-4 {
	margin-bottom: 60px;
}
h6.mb-5 {
	margin-bottom: 75px;
}
h6.mb-6 {
	margin-bottom: 90px;
}




