@charset "UTF-8";
/*===============================================================
	読み込み
===============================================================*/
/*===============================================================
	変数
===============================================================*/
/*　画面左右のマージン　*/
/*　幅　*/
/*	グリッド幅  */
/*	セクション、コンテンツ間のマージン　*/
:root {
		/* Sine（もっとも弱い） */
		--ease-sine-in: cubic-bezier(0.47, 0, 0.745, 0.715);
		--ease-sine-out: cubic-bezier(0.39, 0.575, 0.565, 1);
		--ease-sine-inout: cubic-bezier(0.445, 0.05, 0.55, 0.95);
		/* Quad（弱め。Sineより強く、Cubicより弱い） */
		--ease-quad-in: cubic-bezier(0.55, 0.085, 0.68, 0.53);
		--ease-quad-out: cubic-bezier(0.25, 0.46, 0.45, 0.94);
		--ease-quad-inout: cubic-bezier(0.455, 0.03, 0.515, 0.955);
		/* Cubic（Quadより強く、Quartより弱い） */
		--ease-cubic-in: cubic-bezier(0.55, 0.055, 0.675, 0.19);
		--ease-cubic-out: cubic-bezier(0.215, 0.61, 0.355, 1);
		--ease-cubic-inout: cubic-bezier(0.645, 0.045, 0.355, 1);
		/* Quart（Cubicより強く、Quintより弱い） */
		--ease-quart-in: cubic-bezier(0.895, 0.03, 0.685, 0.22);
		--ease-quart-out: cubic-bezier(0.165, 0.84, 0.44, 1);
		--ease-quart-inout: cubic-bezier(0.77, 0, 0.175, 1);
		/* Quint（Quartより強く、Expoより弱い） */
		--ease-quint-in: cubic-bezier(0.755, 0.05, 0.855, 0.06);
		--ease-quint-out: cubic-bezier(0.23, 1, 0.32, 1);
		--ease-quint-inout: cubic-bezier(0.86, 0, 0.07, 1);
		/* Expo（もっとも強い） */
		--ease-expo-in: cubic-bezier(0.95, 0.05, 0.795, 0.035);
		--ease-expo-out: cubic-bezier(0.19, 1, 0.22, 1);
		--ease-expo-inout: cubic-bezier(1, 0, 0, 1);
		/* Circ（Expoのような強さを持つが、加速や減速の時間がよりゆるやか。） */
		--ease-circ-in: cubic-bezier(0.6, 0.04, 0.98, 0.335);
		--ease-circ-out: cubic-bezier(0.075, 0.82, 0.165, 1);
		--ease-circ-inout: cubic-bezier(0.785, 0.135, 0.15, 0.86);
		/* Back（少し行き過ぎてから戻ってくるような動き） */
		--ease-back-in: cubic-bezier(0.6, -0.28, 0.735, 0.045);
		--ease-back-out: cubic-bezier(0.175, 0.885, 0.32, 1.275);
		--ease-back-inout: cubic-bezier(0.68, -0.55, 0.265, 1.55);
		/* ぼよんぼよんする動き */
		--ease-elastic-out: linear(0, 0.2178 2.1%, 1.1144 8.49%, 1.2959 10.7%, 1.3463 11.81%, 1.3705 12.94%, 1.3726, 1.3643 14.48%, 1.3151 16.2%, 1.0317 21.81%, 0.941 24.01%, 0.8912 25.91%, 0.8694 27.84%, 0.8698 29.21%, 0.8824 30.71%, 1.0122 38.33%, 1.0357, 1.046 42.71%, 1.0416 45.7%, 0.9961 53.26%, 0.9839 57.54%, 0.9853 60.71%, 1.0012 68.14%, 1.0056 72.24%, 0.9981 86.66%, 1);
		/* バウンス */
		--ease-bounce-out: linear(0, 0.004, 0.016, 0.035, 0.063 9.1%, 0.141, 0.25, 0.391, 0.563, 0.765, 1, 0.891, 0.813 45.5%, 0.785, 0.766, 0.754, 0.75, 0.754, 0.766, 0.785, 0.813 63.6%, 0.891, 1 72.7%, 0.973, 0.953, 0.941, 0.938, 0.941, 0.953, 0.973, 1, 0.988, 0.984, 0.988, 1);
}

/*===============================================================
	色 _color.scss
===============================================================*/
.color_main {
		color: #1A397F;
}

.color_main_hover {
		color: #0b43c6;
}

.color_sub {
		color: #A1394A;
}

.color_white {
		color: #fff;
}

p {
		color: #333;
}

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

	_reset.scss 2021/9/24

===============================================================*/
/* 初期化
----------------------------------------------------------------*/
html {
		font-size: 62.5%;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
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,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
		margin: 0;
		padding: 0;
		border: 0;
		font-style: normal;
		font-weight: normal;
		vertical-align: baseline;
		outline: none;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
}

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

blockquote,
q {
		quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
		content: "";
		content: none;
}

input,
textarea {
		margin: 0;
		padding: 0;
}

input[type=submit],
textarea {
		font-family: inherit;
}

button {
		background-color: transparent;
		border: none;
		cursor: pointer;
		outline: none;
		padding: 0;
		-webkit-appearance: none;
		   -moz-appearance: none;
		        appearance: none;
}

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

body {
		font-family: "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", Osaka, sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
li,
th,
td,
dt,
dd,
div {
		font-size: 1.6rem;
}
@media screen and (max-width: 800px) {
		h1,
		h2,
		h3,
		h4,
		h5,
		h6,
		p,
		li,
		th,
		td,
		dt,
		dd,
		div {
				font-size: 4vw;
		}
}

caption,
th,
td {
		text-align: left;
		vertical-align: top;
}

img {
		vertical-align: top;
		border: 0;
}

ul,
li {
		list-style: none;
}

option {
		padding-right: 1em;
}

address,
caption {
		font-style: normal;
		font-weight: normal;
}

a {
		text-decoration: underline;
}

ul a,
li a {
		zoom: 1;
}

strong {
		font-weight: bold;
}

em {
		font-style: italic;
}

/* HTML5
----------------------------------------------------------------*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
		display: block;
}

/*===============================================================
	_mixin.scss
===============================================================*/
/*===============================================================
	ボタン
	@include btn_base(#c00,#000,#fff,#fff,auto);
===============================================================*/
/*===============================================================
	矢印
	@include mx_arw();	
===============================================================*/
/*===============================================================
	三角
	@include mx_sankaku(幅,高さ,色,色hover,向き);	
===============================================================*/
/*===============================================================
	センタリング
	@include mx_margin_center();	
===============================================================*/
/*===============================================================
	斜線の背景
	@include mx_slash($color1,$color2,$width);	
===============================================================*/
/*===============================================================
	グラデーション
	@include mx_grade(色1,色2,向き（横:h / 縦:v）)
===============================================================*/
/*===============================================================
	font
===============================================================*/
@font-face {
		font-family: "Noto Sans JP";
		font-style: normal;
		font-weight: 400;
		src: url("/common/font/noto_sans/NotoSansCJKjp-Regular_subset.woff") format("woff");
}
@font-face {
		font-family: "Noto Sans JP";
		font-style: bold;
		font-weight: 800;
		src: url("/common/font/noto_sans/NotoSansCJKjp-Bold_subset.woff") format("woff");
}
@font-face {
		font-family: "YakuHanJP";
		font-style: normal;
		font-weight: normal;
		src: url("/common/font/yakuhan/YakuHanJP-Regular.woff2") format("woff2"), url("/common/font/yakuhan/YakuHanJP-Regular.woff") format("woff");
}
@font-face {
		font-family: "YakuHanJP";
		font-style: normal;
		font-weight: bold;
		src: url("/common/font/yakuhan/YakuHanJP-Bold.woff2") format("woff2"), url("/common/font/yakuhan/YakuHanJP-Bold.woff") format("woff");
}
body {
		font-family: "YakuHanJP", "Noto Sans JP", sans-serif;
}

/*===============================================================
	フォント
===============================================================*/
/*-------------------------------------------------------------
フォントサイズ
-------------------------------------------------------------*/
.fs_bass {
		font-size: 1.6rem;
}

.fs_xs {
		font-size: 1rem;
}

.fs_sm {
		font-size: 1.4rem;
}

.fs_md {
		font-size: 2rem;
}

.fs_lg {
		font-size: 2.5rem;
}

.fs_xl {
		font-size: 3rem;
}

.fs_xxl {
		font-size: 4rem;
}

.fs_xxxl {
		font-size: 5rem;
}

/* for TABLET */
/* SP */
@media screen and (max-width: 800px) {
		.fs_bass {
				font-size: 4vw;
		}
		.fs_xs {
				font-size: 3.2vw;
		}
		.fs_sm {
				font-size: 3.8vw;
		}
		.fs_md {
				font-size: 4.2vw;
		}
		.fs_lg {
				font-size: 4.2vw;
		}
		.fs_xl {
				font-size: 4.5vw;
		}
		.fs_xxl {
				font-size: 4.5vw;
		}
		.fs_xxxl {
				font-size: 5vw;
		}
}
/* for SP */
/*-------------------------------------------------------------
line-height
-------------------------------------------------------------*/
.lh_20 {
		line-height: 2;
}

.lh_19 {
		line-height: 1.9;
}

.lh_18 {
		line-height: 1.8;
}

.lh_17 {
		line-height: 1.7;
}

.lh_16 {
		line-height: 1.6;
}

.lh_15 {
		line-height: 1.5;
}

.lh_14 {
		line-height: 1.4;
}

.lh_13 {
		line-height: 1.3;
}

.lh_12 {
		line-height: 1.2;
}

.lh_11 {
		line-height: 1.1;
}

.lh_10 {
		line-height: 1;
}

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

	_common.scss 2021/9/24

===============================================================*/
/* html/body設定
----------------------------------------------------------------*/
body {
		width: 100%;
		color: #1A397F;
		background: #fff;
		text-align: left;
		position: relative;
		overflow-x: hidden;
		-webkit-text-size-adjust: none;
		/* 縦横文字サイズ同じ */
		-webkit-font-smoothing: antialiased;
}

a {
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		color: #A1394A;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
		text-decoration: underline;
}

a:hover {
		text-decoration: none;
}

/* a:focus {
	outline: 2px;
	box-shadow: 0 0 20px 0 $c_focus;
} */
a:focus,
button:focus,
select:focus {
		outline: 2px;
		-webkit-box-shadow: none;
		        box-shadow: none;
}

a:focus-visible,
button:focus-visible,
select:focus-visible,
.select_wrap:focus-within {
		outline: 2px;
		-webkit-box-shadow: 0 0 20px 0 #0b52a9;
		        box-shadow: 0 0 20px 0 #0b52a9;
}

.select_wrap:focus-within {
		outline: 2px;
		-webkit-box-shadow: 0 0 20px 0 #0b52a9;
		        box-shadow: 0 0 20px 0 #0b52a9;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～640px */
@media only screen and (max-width: 800px) {
		body {
				overflow-x: hidden;
		}
}
/* for SP max-width: 800px */
/*===============================================================

	基本文字サイズ、装飾

===============================================================*/
h1,
h2,
h3,
h4 {
		line-height: 1.5;
		font-weight: bold;
}

p {
		line-height: 2;
		color: #333;
}

sup {
		margin: 0;
		padding: 0;
		font-size: 1.1rem;
}

.bold {
		font-weight: bold;
}

.txt_caption {
		font-size: small;
		line-height: 1.4;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
		h1,
		h2,
		h3,
		h4,
		h5,
		h6,
		p,
		li,
		th,
		td,
		dt,
		dd,
		div {
				line-height: 1.6;
		}
		div,
		p {
				line-height: 1.8;
		}
		li {
				line-height: 1.6;
		}
}
/* for SP max-width: 800px */
@font-face {
		font-family: "icomoon";
		src: url("/common/font/iconmoon/icomoon.eot?9csyn6");
		src: url("/common/font/iconmoon/icomoon.eot?9csyn6#iefix") format("embedded-opentype"), url("/common/font/iconmoon/icomoon.ttf?9csyn6") format("truetype"), url("/common/font/iconmoon/icomoon.woff?9csyn6") format("woff"), url("/common/font/iconmoon/icomoon.svg?9csyn6#icomoon") format("svg");
		font-weight: normal;
		font-style: normal;
		font-display: block;
}
[class^=icon_], [class*=" icon_"] {
		/* use !important to prevent issues with browser extensions that change fonts */
		font-family: "icomoon" !important;
		speak: never;
		font-style: normal;
		font-weight: normal;
		font-variant: normal;
		text-transform: none;
		line-height: 1;
		/* Better Font Rendering =========== */
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
}

.icon_mail:before {
		content: "\e900";
}

.icon_new_tab_thin:before {
		content: "\e91e";
}

.icon_new_window_thin:before {
		content: "\e91f";
}

.icon_search_thin:before {
		content: "\e926";
}

.icon_sns_facebook:before {
		content: "\e931";
}

.icon_sns_instagram:before {
		content: "\e932";
}

.icon_sns_x:before {
		content: "\e934";
}

.icon_arw_s_down:before {
		content: "\e93b";
}

.icon_arw_s_left:before {
		content: "\e93c";
}

.icon_arw_s_right:before {
		content: "\e93d";
}

.icon_arw_s_up:before {
		content: "\e93e";
}

.icon_brank:before {
		content: "\e95e";
}

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

	skip_link

===============================================================*/
.skip_link {
		z-index: 99999;
		position: absolute;
		top: -100px;
		left: 5px;
		background-color: #1A397F;
		color: #fff;
		width: 22rem;
		line-height: 3;
		text-align: center;
		font-weight: bold;
		border-radius: 5px;
		font-size: 1.8rem;
}
.skip_link:focus {
		top: 5px;
}
.skip_link:hover {
		background-color: #1A397F;
		color: #fff;
}
.skip_link {
		/* タブレット */
}
.skip_link {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.skip_link {
				width: 20rem;
				font-size: 1.6rem;
		}
}
.skip_link {
		/* for SP */
}

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

	_utils.scss 2021/9/24

===============================================================*/
.align_center {
		text-align: center !important;
}

.align_right {
		text-align: right !important;
}

.align_left {
		text-align: left !important;
}

@media only screen and (max-width: 800px) {
		.sp_align_center {
				text-align: center !important;
		}
		.sp_align_right {
				text-align: right !important;
		}
		.sp_align_left {
				text-align: left !important;
		}
}
/* for SP  */
/*===============================================================

	フロート関係

===============================================================*/
.clear {
		width: 100%;
		overflow: hidden;
}

.clearboth {
		clear: both;
}

.cf:before,
.cf:after {
		content: " ";
		display: table;
}

.cf:after {
		clear: both;
}

.cf {
		*zoom: 1;
}

.flol {
		float: left;
}

.flor {
		float: right;
}

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

	PC/SP/TABLET

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

.tablet {
		display: none;
}

.sp {
		display: none;
}

.sp_tablet {
		display: none;
}

.none {
		display: none !important;
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
		.pc {
				display: none;
		}
		.tablet,
		.pc_tablet,
		.sp_tablet {
				display: block;
		}
}
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
		.sp {
				display: block;
		}
		.pc_tablet,
		.tablet {
				display: none;
		}
}
/* for SP max-width: 800px */
/*-------------------------------------------------------------
	font	
-------------------------------------------------------------*/
.font_ss {
		font-size: smaller;
		font-size: 70%;
}

.font_s {
		font-size: small;
		font-size: 80%;
}

.font_m {
		font-size: medium;
		font-size: 90%;
}

.font_l {
		font-size: large;
		font-size: 120%;
}

.font_xl {
		font-size: larger;
		font-size: 140%;
}

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

	img fig

===============================================================*/
.fig img,
.fitimg img,
.photo img {
		width: 100%;
		height: auto;
}

.video_container {
		position: relative;
		width: 100%;
		padding-top: 56.25%;
}

.video_container iframe {
		position: absolute;
		top: 0;
		right: 0;
		width: 100% !important;
		height: 100% !important;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～800px */
/* for SP max-width: 800px */
/*===============================================================
js_multilinkarea js_linkarea
===============================================================*/
.js_linkarea,
.js_multilinkarea {
		cursor: pointer;
}

/*===============================================================
    js_scroll
===============================================================*/
.js_scroll {
		-webkit-transition: all 1s;
		transition: all 1s;
		/* タブレット */
}
.js_scroll {
		/* for TABLET */
		/* SP */
}
.js_scroll {
		/* for SP */
}

/*===============================================================
    js_fadein
===============================================================*/
.js_fadein {
		opacity: 0;
}
.js_fadein.is_active {
		opacity: 1;
}
.js_fadein {
		/* タブレット */
}
.js_fadein {
		/* SP */
}
/*===============================================================
    js_fadein_up
===============================================================*/
.js_fadein_up {
		opacity: 0;
		-webkit-transform: translateY(3vw);
		        transform: translateY(3vw);
}
.js_fadein_up.is_active {
		opacity: 1;
		-webkit-transform: translateY(0vw);
		        transform: translateY(0vw);
}

/*===============================================================
    js_fadein_down
===============================================================*/
.js_fadein_down {
		opacity: 0;
		-webkit-transform: translateY(-3vw);
		        transform: translateY(-3vw);
}
.js_fadein_down.is_active {
		opacity: 1;
		-webkit-transform: translateY(0vw);
		        transform: translateY(0vw);
}

/*===============================================================
    js_fadein_left
===============================================================*/
.js_fadein_left {
		opacity: 0;
		-webkit-transform: translateX(-3vw);
		        transform: translateX(-3vw);
}
.js_fadein_left.is_active {
		opacity: 1;
		-webkit-transform: translateX(0vw);
		        transform: translateX(0vw);
}

/*===============================================================
    js_fadein_right
===============================================================*/
.js_fadein_right {
		opacity: 0;
		-webkit-transform: translateX(3vw);
		        transform: translateX(3vw);
}
.js_fadein_right.is_active {
		opacity: 1;
		-webkit-transform: translateX(0vw);
		        transform: translateX(0vw);
}

/*===============================================================
    js_fadein_photo
===============================================================*/
.js_fadein_photo {
		overflow: hidden;
}
.js_fadein_photo img {
		-webkit-transition: all 1s;
		transition: all 1s;
		opacity: 0;
		-webkit-transform: scale(1);
		        transform: scale(1);
}
.js_fadein_photo.is_active img {
		opacity: 1;
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
}

/*===============================================================
	js_gsap_parallax_photo
===============================================================*/
.js_gsap_parallax_photo_reverse,
.js_gsap_parallax_photo {
		background-color: #000;
		overflow: hidden;
}

/*===============================================================
	js_2step
===============================================================*/
.js_2step, .js_2step_down, .js_2step_up {
		display: inline-block;
		position: relative;
		z-index: 1;
		overflow: hidden;
		height: -webkit-fit-content;
		height: -moz-fit-content;
		height: fit-content;
}
.js_2step::before, .js_2step_down::before, .js_2step_up::before, .js_2step::after, .js_2step_down::after, .js_2step_up::after {
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		width: 100%;
		height: 100%;
		background-color: #eee;
		-webkit-transform-origin: 0 0;
		        transform-origin: 0 0;
		-webkit-transition: all 0.5s cubic-bezier(0.51, -0.01, 0.21, 1.01);
		transition: all 0.5s cubic-bezier(0.51, -0.01, 0.21, 1.01);
		z-index: 2;
}
.js_2step::after, .js_2step_down::after, .js_2step_up::after {
		background-color: #fff;
}
.js_2step.is_active::before, .is_active.js_2step_down::before, .is_active.js_2step_up::before, .js_2step.is_active::after, .is_active.js_2step_down::after, .is_active.js_2step_up::after {
		-webkit-transform-origin: 0 right;
		        transform-origin: 0 right;
}
.js_2step.is_active::after, .is_active.js_2step_down::after, .is_active.js_2step_up::after {
		left: auto;
		right: 0;
		width: 0%;
}
.js_2step.is_active::before, .is_active.js_2step_down::before, .is_active.js_2step_up::before {
		-webkit-transition-delay: 0.5s;
		        transition-delay: 0.5s;
		left: auto;
		right: 0;
		width: 0%;
}

/*===============================================================
	js_2step_up
===============================================================*/
.js_2step_up.is_active::before, .js_2step_up.is_active::after {
		-webkit-transform-origin: top 0;
		        transform-origin: top 0;
		top: 0;
		bottom: auto;
		left: auto;
		right: auto;
		width: 100%;
		height: 0%;
}

/*===============================================================
	js_2step_down
===============================================================*/
.js_2step_down.is_active::before, .js_2step_down.is_active::after {
		-webkit-transform-origin: bottom 0;
		        transform-origin: bottom 0;
		top: auto;
		bottom: 0;
		left: auto;
		right: auto;
		width: 100%;
		height: 0%;
}

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

	マージン

===============================================================*/
.mt0 {
		margin-top: 0px !important;
}

.mt05 {
		margin-top: 0.5rem !important;
}

.mt10 {
		margin-top: 1rem !important;
}

.mt15 {
		margin-top: 1.5rem !important;
}

.mt20 {
		margin-top: 2rem !important;
}

.mt25 {
		margin-top: 2.5rem !important;
}

.mt30 {
		margin-top: 3rem !important;
}

.mt40 {
		margin-top: 4rem !important;
}

.mt50 {
		margin-top: 5rem !important;
}

.mt60 {
		margin-top: 6rem !important;
}

.mt70 {
		margin-top: 7rem !important;
}

.mt80 {
		margin-top: 8rem !important;
}

.mt90 {
		margin-top: 9rem !important;
}

.mt100 {
		margin-top: 10rem !important;
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
		.mt0 {
				margin-top: 0px !important;
		}
		.mt05 {
				margin-top: 0.47vw !important;
		}
		.mt10 {
				margin-top: 0.93vw !important;
		}
		.mt15 {
				margin-top: 1.4vw !important;
		}
		.mt20 {
				margin-top: 1.87vw !important;
		}
		.mt25 {
				margin-top: 2.34vw !important;
		}
		.mt30 {
				margin-top: 2.8vw !important;
		}
		.mt40 {
				margin-top: 3.74vw !important;
		}
		.mt50 {
				margin-top: 4.67vw !important;
		}
		.mt60 {
				margin-top: 5.61vw !important;
		}
		.mt70 {
				margin-top: 6.54vw !important;
		}
		.mt80 {
				margin-top: 7.48vw !important;
		}
		.mt90 {
				margin-top: 8.41vw !important;
		}
		.mt100 {
				margin-top: 9.35vw !important;
		}
		.mb05 {
				margin-bottom: 0.47vw !important;
		}
		.mb10 {
				margin-bottom: 0.93vw !important;
		}
		.mb15 {
				margin-bottom: 1.4vw !important;
		}
		.mb20 {
				margin-bottom: 1.87vw !important;
		}
		.mb25 {
				margin-bottom: 2.34vw !important;
		}
		.mb30 {
				margin-bottom: 2.8vw !important;
		}
		.mt05 {
				margin-top: 0.47vw !important;
		}
		.mt10 {
				margin-top: 0.93vw !important;
		}
		.mt15 {
				margin-top: 1.4vw !important;
		}
		.mt20 {
				margin-top: 1.87vw !important;
		}
		.mt25 {
				margin-top: 2.34vw !important;
		}
		.mt30 {
				margin-top: 2.8vw !important;
		}
		.mt40 {
				margin-top: 3.74vw !important;
		}
		.mt50 {
				margin-top: 4.67vw !important;
		}
		.mt60 {
				margin-top: 5.61vw !important;
		}
		.mt70 {
				margin-top: 6.54vw !important;
		}
		.mt80 {
				margin-top: 7.48vw !important;
		}
		.mt90 {
				margin-top: 8.41vw !important;
		}
		.mt100 {
				margin-top: 9.35vw !important;
		}
		.mb05 {
				margin-bottom: 0.47vw !important;
		}
		.mb10 {
				margin-bottom: 0.93vw !important;
		}
		.mb15 {
				margin-bottom: 1.4vw !important;
		}
		.mb20 {
				margin-bottom: 1.87vw !important;
		}
		.mb25 {
				margin-bottom: 2.34vw !important;
		}
		.mb30 {
				margin-bottom: 2.8vw !important;
		}
		.mb40 {
				margin-bottom: 3.74vw !important;
		}
		.mb50 {
				margin-bottom: 4.67vw !important;
		}
		.mb60 {
				margin-bottom: 5.61vw !important;
		}
		.mb70 {
				margin-bottom: 6.54vw !important;
		}
		.mb80 {
				margin-bottom: 7.48vw !important;
		}
		.mb90 {
				margin-bottom: 8.41vw !important;
		}
		.mb100 {
				margin-bottom: 9.35vw !important;
		}
}
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～800px */
@media screen and (max-width: 800px) {
		.mt05 {
				margin-top: 0.63vw !important;
		}
		.mt10 {
				margin-top: 1.25vw !important;
		}
		.mt15 {
				margin-top: 1.88vw !important;
		}
		.mt20 {
				margin-top: 2.5vw !important;
		}
		.mt25 {
				margin-top: 3.13vw !important;
		}
		.mt30 {
				margin-top: 3.75vw !important;
		}
		.mt40 {
				margin-top: 5vw !important;
		}
		.mt50 {
				margin-top: 6.25vw !important;
		}
		.mt60 {
				margin-top: 7.5vw !important;
		}
		.mt70 {
				margin-top: 8.75vw !important;
		}
		.mt80 {
				margin-top: 10vw !important;
		}
		.mt90 {
				margin-top: 11.25vw !important;
		}
		.mt100 {
				margin-top: 12.5vw !important;
		}
		.mt0_sp {
				margin-top: 0 !important;
		}
		.mt05_sp {
				margin-top: 0.63vw !important;
		}
		.mt10_sp {
				margin-top: 1.25vw !important;
		}
		.mt15_sp {
				margin-top: 1.88vw !important;
		}
		.mt20_sp {
				margin-top: 2.5vw !important;
		}
		.mt25_sp {
				margin-top: 3.13vw !important;
		}
		.mt30_sp {
				margin-top: 3.75vw !important;
		}
		.mt40_sp {
				margin-top: 5vw !important;
		}
		.mt50_sp {
				margin-top: 6.25vw !important;
		}
		.mt60_sp {
				margin-top: 7.5vw !important;
		}
		.mt70_sp {
				margin-top: 8.75vw !important;
		}
		.mt80_sp {
				margin-top: 10vw !important;
		}
		.mt90_sp {
				margin-top: 11.25vw !important;
		}
		.mt100_sp {
				margin-top: 12.5vw !important;
		}
		.mb05_sp {
				margin-bottom: 0.63vw !important;
		}
		.mb10_sp {
				margin-bottom: 1.25vw !important;
		}
		.mb15_sp {
				margin-bottom: 1.88vw !important;
		}
		.mb20_sp {
				margin-bottom: 2.5vw !important;
		}
		.mb25_sp {
				margin-bottom: 3.13vw !important;
		}
		.mb30_sp {
				margin-bottom: 3.75vw !important;
		}
		.mb40_sp {
				margin-bottom: 5vw !important;
		}
		.mb50_sp {
				margin-bottom: 6.25vw !important;
		}
		.mb60_sp {
				margin-bottom: 7.5vw !important;
		}
		.mb70_sp {
				margin-bottom: 8.75vw !important;
		}
		.mb80_sp {
				margin-bottom: 10vw !important;
		}
		.mb90_sp {
				margin-bottom: 11.25vw !important;
		}
		.mb100_sp {
				margin-bottom: 12.5vw !important;
		}
}
/* for SP max-width: 800px */
/*-------------------------------------------------------------
 margin-bottom
-------------------------------------------------------------*/
.mb0 {
		margin-bottom: 0rem !important;
}

.mb05 {
		margin-bottom: 0.5rem !important;
}

.mb10 {
		margin-bottom: 1rem !important;
}

.mb15 {
		margin-bottom: 1.5rem !important;
}

.mb20 {
		margin-bottom: 2rem !important;
}

.mb25 {
		margin-bottom: 2.5rem !important;
}

.mb30 {
		margin-bottom: 3rem !important;
}

.mb40 {
		margin-bottom: 4rem !important;
}

.mb50 {
		margin-bottom: 5rem !important;
}

.mb60 {
		margin-bottom: 6rem !important;
}

.mb70 {
		margin-bottom: 7rem !important;
}

.mb80 {
		margin-bottom: 8rem !important;
}

.mb90 {
		margin-bottom: 9rem !important;
}

.mb100 {
		margin-bottom: 10rem !important;
}

@media screen and (max-width: 800px) {
		.mb05 {
				margin-bottom: 0.63vw !important;
		}
		.mb10 {
				margin-bottom: 1.25vw !important;
		}
		.mb15 {
				margin-bottom: 1.88vw !important;
		}
		.mb20 {
				margin-bottom: 2.5vw !important;
		}
		.mb25 {
				margin-bottom: 3.13vw !important;
		}
		.mb30 {
				margin-bottom: 3.75vw !important;
		}
		.mb40 {
				margin-bottom: 5vw !important;
		}
		.mb50 {
				margin-bottom: 6.25vw !important;
		}
		.mb60 {
				margin-bottom: 7.5vw !important;
		}
		.mb70 {
				margin-bottom: 8.75vw !important;
		}
		.mb80 {
				margin-bottom: 10vw !important;
		}
		.mb90 {
				margin-bottom: 11.25vw !important;
		}
		.mb100 {
				margin-bottom: 12.5vw !important;
		}
}
/* for SP */
/*-------------------------------------------------------------
 margin-left
-------------------------------------------------------------*/
.ml0 {
		margin-left: 0rem !important;
}

.ml05 {
		margin-left: 0.5rem !important;
}

.ml10 {
		margin-left: 1rem !important;
}

.ml15 {
		margin-left: 1.5rem !important;
}

.ml20 {
		margin-left: 2rem !important;
}

.ml25 {
		margin-left: 2.5rem !important;
}

.ml30 {
		margin-left: 3rem !important;
}

.ml40 {
		margin-left: 4rem !important;
}

.ml50 {
		margin-left: 5rem !important;
}

.ml60 {
		margin-left: 6rem !important;
}

.ml70 {
		margin-left: 7rem !important;
}

.ml80 {
		margin-left: 8rem !important;
}

.ml90 {
		margin-left: 9rem !important;
}

.ml100 {
		margin-left: 10rem !important;
}

@media screen and (max-width: 800px) {
		.ml05 {
				margin-left: 0.63vw !important;
		}
		.ml10 {
				margin-left: 1.25vw !important;
		}
		.ml15 {
				margin-left: 1.88vw !important;
		}
		.ml20 {
				margin-left: 2.5vw !important;
		}
		.ml25 {
				margin-left: 3.13vw !important;
		}
		.ml30 {
				margin-left: 3.75vw !important;
		}
		.ml40 {
				margin-left: 5vw !important;
		}
		.ml50 {
				margin-left: 6.25vw !important;
		}
		.ml60 {
				margin-left: 7.5vw !important;
		}
		.ml70 {
				margin-left: 8.75vw !important;
		}
		.ml80 {
				margin-left: 10vw !important;
		}
		.ml90 {
				margin-left: 11.25vw !important;
		}
		.ml100 {
				margin-left: 12.5vw !important;
		}
}
/* for SP */
/*-------------------------------------------------------------
 margin-right
-------------------------------------------------------------*/
.mr0 {
		margin-right: 0rem !important;
}

.mr05 {
		margin-right: 0.5rem !important;
}

.mr10 {
		margin-right: 1rem !important;
}

.mr15 {
		margin-right: 1.5rem !important;
}

.mr20 {
		margin-right: 2rem !important;
}

.mr25 {
		margin-right: 2.5rem !important;
}

.mr30 {
		margin-right: 3rem !important;
}

.mr40 {
		margin-right: 4rem !important;
}

.mr50 {
		margin-right: 5rem !important;
}

.mr60 {
		margin-right: 6rem !important;
}

.mr70 {
		margin-right: 7rem !important;
}

.mr80 {
		margin-right: 8rem !important;
}

.mr90 {
		margin-right: 9rem !important;
}

.mr100 {
		margin-right: 10rem !important;
}

@media screen and (max-width: 800px) {
		.mr05 {
				margin-right: 0.63vw !important;
		}
		.mr10 {
				margin-right: 1.25vw !important;
		}
		.mr15 {
				margin-right: 1.88vw !important;
		}
		.mr20 {
				margin-right: 2.5vw !important;
		}
		.mr25 {
				margin-right: 3.13vw !important;
		}
		.mr30 {
				margin-right: 3.75vw !important;
		}
		.mr40 {
				margin-right: 5vw !important;
		}
		.mr50 {
				margin-right: 6.25vw !important;
		}
		.mr60 {
				margin-right: 7.5vw !important;
		}
		.mr70 {
				margin-right: 8.75vw !important;
		}
		.mr80 {
				margin-right: 10vw !important;
		}
		.mr90 {
				margin-right: 11.25vw !important;
		}
		.mr100 {
				margin-right: 12.5vw !important;
		}
}
/* for SP */
/*===============================================================

	padding

===============================================================*/
.pt0 {
		padding-top: 0 !important;
}

.pb0 {
		padding-bottom: 0 !important;
}

@media screen and (max-width: 800px) {
		.pt0_sp {
				padding-top: 0 !important;
		}
}

@media screen and (max-width: 800px) {
		.pb0_sp {
				padding-bottom: 0 !important;
		}
}

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

    アニメーション

    animation: rotate_loop 40s linear infinite;

===============================================================*/
@-webkit-keyframes rotate_loop {
		0% {
				-webkit-transform: rotate(0deg);
				        transform: rotate(0deg);
		}
		100% {
				-webkit-transform: rotate(360deg);
				        transform: rotate(360deg);
		}
}
@keyframes rotate_loop {
		0% {
				-webkit-transform: rotate(0deg);
				        transform: rotate(0deg);
		}
		100% {
				-webkit-transform: rotate(360deg);
				        transform: rotate(360deg);
		}
}
@-webkit-keyframes rotate_loop_revers {
		0% {
				-webkit-transform: rotate(0deg);
				        transform: rotate(0deg);
		}
		100% {
				-webkit-transform: rotate(-360deg);
				        transform: rotate(-360deg);
		}
}
@keyframes rotate_loop_revers {
		0% {
				-webkit-transform: rotate(0deg);
				        transform: rotate(0deg);
		}
		100% {
				-webkit-transform: rotate(-360deg);
				        transform: rotate(-360deg);
		}
}
@-webkit-keyframes scale_bounse {
		0% {
				-webkit-transform: scale(1);
				        transform: scale(1);
		}
		50% {
				-webkit-transform: scale(1.1);
				        transform: scale(1.1);
		}
		100% {
				-webkit-transform: scale(1);
				        transform: scale(1);
		}
}
@keyframes scale_bounse {
		0% {
				-webkit-transform: scale(1);
				        transform: scale(1);
		}
		50% {
				-webkit-transform: scale(1.1);
				        transform: scale(1.1);
		}
		100% {
				-webkit-transform: scale(1);
				        transform: scale(1);
		}
}
@-webkit-keyframes kv_phone_animation {
		0% {
				-webkit-transform: translate(0, 0) rotate(0);
				        transform: translate(0, 0) rotate(0);
		}
		50% {
				-webkit-transform: translate(0, 2rem) rotate(-2deg);
				        transform: translate(0, 2rem) rotate(-2deg);
		}
		100% {
				-webkit-transform: translate(0, 0) rotate(0deg);
				        transform: translate(0, 0) rotate(0deg);
		}
}
@keyframes kv_phone_animation {
		0% {
				-webkit-transform: translate(0, 0) rotate(0);
				        transform: translate(0, 0) rotate(0);
		}
		50% {
				-webkit-transform: translate(0, 2rem) rotate(-2deg);
				        transform: translate(0, 2rem) rotate(-2deg);
		}
		100% {
				-webkit-transform: translate(0, 0) rotate(0deg);
				        transform: translate(0, 0) rotate(0deg);
		}
}
/*===============================================================

    c_return_to_top

===============================================================*/
.c_return_to_top {
		width: 100%;
		overflow: hidden;
}
.c_return_to_top a {
		display: block;
		right: 3rem;
		bottom: 3rem;
		width: 5rem;
		height: 5rem;
		color: #fff;
		background-color: #333;
		text-indent: 100%;
		overflow: hidden;
		white-space: nowrap;
		z-index: 101;
		position: fixed;
		border-radius: 3rem;
		-webkit-transform: translateY(10rem);
		        transform: translateY(10rem);
}
.c_return_to_top.show a {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
}
.c_return_to_top a:hover {
		background-color: #000;
}
.c_return_to_top a::after {
		position: absolute;
		content: " ";
		width: 1rem;
		height: 1rem;
		top: 2.2rem;
		left: 0;
		right: 0;
		bottom: auto;
		margin: auto;
		border-top: solid 2px #fff;
		border-left: solid 2px #fff;
		-webkit-transform: rotate(45deg);
		        transform: rotate(45deg);
		border-radius: 2px;
}
.c_return_to_top {
		/* タブレット */
}
.c_return_to_top {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_return_to_top a {
				width: 40px;
				height: 40px;
				right: 3vw;
				bottom: 3vw;
		}
		.c_return_to_top a::after {
				width: 8px;
				height: 8px;
				top: 17px;
				left: 0;
				right: 0;
				bottom: auto;
		}
}
.c_return_to_top {
		/* for SP */
		/*===============================================================
		    //	#btn_pagetop
		===============================================================*/
}

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

    テーブル

===============================================================*/
.c_table table, .editor-styles-wrapper .wp-block-table table,
.entry-content .wp-block-table table {
		width: 100%;
		text-align: left;
		font-size: 1.4rem;
		line-height: 1.5;
		border-collapse: separate;
		border-spacing: 0;
		border-bottom: solid 1px #A5BAD4;
}
.c_table th, .editor-styles-wrapper .wp-block-table th,
.entry-content .wp-block-table th,
.c_table td,
.editor-styles-wrapper .wp-block-table td,
.entry-content .wp-block-table td {
		padding: 1rem;
		border: solid 1px #A5BAD4;
		border-bottom: 0;
}
.c_table th, .editor-styles-wrapper .wp-block-table th,
.entry-content .wp-block-table th {
		font-weight: bold;
		border-right: 0;
		background: #EEF1F7;
}
.c_table td + td, .editor-styles-wrapper .wp-block-table td + td,
.entry-content .wp-block-table td + td {
		border-left: 0;
}
.c_table tr:nth-child(odd), .editor-styles-wrapper .wp-block-table tr:nth-child(odd),
.entry-content .wp-block-table tr:nth-child(odd) {
		background: #fff;
}
.c_table tr:nth-child(even), .editor-styles-wrapper .wp-block-table tr:nth-child(even),
.entry-content .wp-block-table tr:nth-child(even) {
		background: #EEF1F7;
}
.c_table, .editor-styles-wrapper .wp-block-table,
.entry-content .wp-block-table {
		/* タブレット */
}
.c_table, .editor-styles-wrapper .wp-block-table,
.entry-content .wp-block-table {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_table, .editor-styles-wrapper .wp-block-table,
		.entry-content .wp-block-table {
				overflow-y: scroll;
		}
		.c_table table, .editor-styles-wrapper .wp-block-table table,
		.entry-content .wp-block-table table {
				padding: 0;
				margin-top: 0px;
				min-width: 200vw;
		}
		.c_table th, .editor-styles-wrapper .wp-block-table th,
		.entry-content .wp-block-table th,
		.c_table td,
		.editor-styles-wrapper .wp-block-table td,
		.entry-content .wp-block-table td {
				padding: 0.5rem;
				font-size: 1.5rem;
				line-height: 1.6;
		}
		.c_table tr:nth-child(odd), .editor-styles-wrapper .wp-block-table tr:nth-child(odd),
		.entry-content .wp-block-table tr:nth-child(odd),
		.c_table tr:nth-child(even),
		.editor-styles-wrapper .wp-block-table tr:nth-child(even),
		.entry-content .wp-block-table tr:nth-child(even) {
				background: #fff;
		}
}
.c_table, .editor-styles-wrapper .wp-block-table,
.entry-content .wp-block-table {
		/* for SP */
		/*===============================================================
		    //	c_table
		===============================================================*/
}

[class^=c_btn] a,
[class^=c_btn] a:hover {
		text-decoration: none;
}

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

    btn_list

===============================================================*/
.c_btn_list li, .c_btn_list_round li {
		margin-top: 2rem;
}
.c_btn_list a, .c_btn_list_round a {
		text-decoration: none;
		display: block;
		padding: 2rem;
		border: solid 2px #fff;
		background-color: #fff;
		color: #fff;
}
.c_btn_list a .label, .c_btn_list_round a .label {
		font-weight: bold;
		font-size: 1.8rem;
		line-height: 1.4;
}
.c_btn_list a:hover, .c_btn_list_round a:hover {
		text-decoration: none;
		border: solid 2px #fff;
		background-color: #fff;
		color: #fff;
}
.c_btn_list, .c_btn_list_round {
		/* タブレット */
}
.c_btn_list, .c_btn_list_round {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_btn_list li, .c_btn_list_round li {
				margin-top: 1.5rem;
		}
		.c_btn_list a, .c_btn_list_round a {
				padding: 1.5rem 0.5rem;
		}
		.c_btn_list a .label, .c_btn_list_round a .label {
				font-size: 1.6rem;
		}
}
.c_btn_list, .c_btn_list_round {
		/* for SP */
		/*-------------------------------------------------------------
		    btn_list_2column	
		-------------------------------------------------------------*/
}
.c_btn_list.c_btn_list_2column, .c_btn_list_2column.c_btn_list_round {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
}
.c_btn_list.c_btn_list_2column li, .c_btn_list_2column.c_btn_list_round li {
		width: calc((100% - 2rem) / 2);
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
}
.c_btn_list.c_btn_list_2column li a, .c_btn_list_2column.c_btn_list_round li a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		width: 100%;
		height: auto;
}
.c_btn_list.c_btn_list_2column, .c_btn_list_2column.c_btn_list_round {
		/* タブレット */
}
.c_btn_list.c_btn_list_2column, .c_btn_list_2column.c_btn_list_round {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_btn_list.c_btn_list_2column, .c_btn_list_2column.c_btn_list_round {
				margin-top: -1.5rem;
		}
		.c_btn_list.c_btn_list_2column li, .c_btn_list_2column.c_btn_list_round li {
				width: calc((100% - 3vw) / 2);
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
		}
}
.c_btn_list.c_btn_list_2column, .c_btn_list_2column.c_btn_list_round {
		/* for SP */
}
.c_btn_list, .c_btn_list_round {
		/*===============================================================
		    //	btn_list
		===============================================================*/
}

/*-------------------------------------------------------------
    c_btn_list_round	
-------------------------------------------------------------*/
.c_btn_list_round a {
		border-radius: 1rem;
}
.c_btn_list_round {
		/* タブレット */
}
.c_btn_list_round {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_btn_list_round a {
				border-radius: 3vw;
		}
}
.c_btn_list_round {
		/* for SP */
}

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

    c_btn

===============================================================*/
.c_btn, .c_btn_round {
		width: 30%;
		max-width: 30rem;
		margin-left: auto;
		margin-right: auto;
}
* + .c_btn, * + .c_btn_round {
		margin-top: 3rem;
}
.c_btn a, .c_btn_round a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		min-height: 4em;
		padding: 0.75em 1.5em;
		text-align: center;
		font-weight: bold;
		color: #1A397F;
		border: solid #1A397F;
		border-width: 1px 1px 1px 8px;
		background-color: #fff;
		position: relative;
		overflow: hidden;
		z-index: 1;
		-webkit-transition: color 0.3s ease;
		transition: color 0.3s ease;
}
.c_btn a::before, .c_btn_round a::before {
		content: "";
		position: absolute;
		inset: 0;
		background-color: #1A397F;
		-webkit-transform: scaleX(0);
		        transform: scaleX(0);
		-webkit-transform-origin: left center;
		        transform-origin: left center;
		-webkit-transition: -webkit-transform 0.3s ease;
		transition: -webkit-transform 0.3s ease;
		transition: transform 0.3s ease;
		transition: transform 0.3s ease, -webkit-transform 0.3s ease;
		z-index: -1;
}
.c_btn a .label, .c_btn_round a .label {
		display: inline-block;
		font-weight: bold;
		font-size: 1.8rem;
		line-height: 1.3;
		position: relative;
		z-index: 2;
}
.c_btn.sub a, .sub.c_btn_round a {
		color: #A1394A;
		border: solid #A1394A;
		border-width: 1px 1px 1px 8px;
}
.c_btn.sub a::before, .sub.c_btn_round a::before {
		background-color: #A1394A;
}
.c_btn, .c_btn_round {
		/* 1. .label の中に icon_ がある場合 */
}
.c_btn, .c_btn_round {
		/* 2. .label はあるが、その中に icon_ がない場合 */
}
.c_btn a:has(.label):not(:has(.label [class^=icon_])):has([class^=icon_]), .c_btn_round a:has(.label):not(:has(.label [class^=icon_])):has([class^=icon_]) {
		padding-left: 1em;
		padding-right: 3em;
}
.c_btn, .c_btn_round {
		/* 3. .label の中にも外にも icon_ が存在しない場合 */
}
.c_btn a:has(.label):not(:has([class^=icon_])), .c_btn_round a:has(.label):not(:has([class^=icon_])) {
		padding-left: 1.5em;
		padding-right: 1.5em;
}
.c_btn a:hover, .c_btn_round a:hover {
		text-decoration: none;
		color: #fff;
		background-color: #fff;
}
.c_btn a:hover::before, .c_btn_round a:hover::before {
		-webkit-transform: scaleX(1);
		        transform: scaleX(1);
}
.c_btn .icon_arrow_r, .c_btn_round .icon_arrow_r {
		width: 4rem;
		height: 0.2rem;
		border-radius: 50rem;
		background-color: #1A397F;
		-webkit-transition: 0.2s;
		transition: 0.2s;
}
.c_btn .icon_arrow_r::before, .c_btn_round .icon_arrow_r::before {
		content: "";
		position: absolute;
		right: 0;
		top: 42%;
		width: 1.4rem;
		height: 0.2rem;
		border-radius: 50rem;
		background-color: #1A397F;
		-webkit-transform: rotate(45deg);
		        transform: rotate(45deg);
		-webkit-transform-origin: right center;
		        transform-origin: right center;
		-webkit-transition: 0.2s;
		transition: 0.2s;
}
.c_btn:hover .icon_arrow_r, .c_btn_round:hover .icon_arrow_r {
		background-color: #fff;
}
.c_btn:hover .icon_arrow_r::before, .c_btn_round:hover .icon_arrow_r::before {
		background-color: #fff;
}
.c_btn, .c_btn_round {
		/* タブレット */
}
.c_btn, .c_btn_round {
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_btn, .c_btn_round {
				width: 90%;
		}
		* + .c_btn, * + .c_btn_round {
				margin-top: 3rem;
		}
		.c_btn + .c_btn, .c_btn_round + .c_btn, .c_btn + .c_btn_round, .c_btn_round + .c_btn_round {
				margin-top: 1.5rem;
		}
		.c_btn a, .c_btn_round a {
				padding: 2.5vw 0;
		}
		.c_btn a .label, .c_btn_round a .label {
				font-size: 1.6rem;
		}
}

/*===============================================================
    //	btn
===============================================================*/
/*-------------------------------------------------------------
    c_btn_round	
-------------------------------------------------------------*/
.c_btn_round a {
		border-radius: 5rem;
}
.c_btn_round {
		/* タブレット */
}
.c_btn_round {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_btn_round a {
				border-radius: 100vw;
		}
}
.c_btn_round {
		/* for SP */
}

/*-------------------------------------------------------------
    icon	
-------------------------------------------------------------*/
span + [class^=icon_],
span + [class*=" icon_"] {
		position: absolute;
		top: 0;
		bottom: 0;
		right: 1.5rem;
		margin: auto;
		height: 1em;
		/* タブレット */
}
span + [class^=icon_],
span + [class*=" icon_"] {
		/* for TABLET */
		/* SP */
}
span + [class^=icon_],
span + [class*=" icon_"] {
		/* for SP */
}

/*-------------------------------------------------------------
    btn_line	
-------------------------------------------------------------*/
.c_btn_line a {
		border: solid 2px #fff;
		background-color: transparent;
		color: #fff;
		padding: calc(1.5em - 2px) 0;
}
.c_btn_line a:hover {
		background-color: transparent;
		color: #1A397F;
		border: solid 2px #1A397F;
}
.c_btn_line {
		/* タブレット */
}
.c_btn_line {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_btn_line a {
				padding: calc(2.5vw - 2px) 0;
		}
}
.c_btn_line {
		/* for SP */
}

/*-------------------------------------------------------------
    btn_flex	
-------------------------------------------------------------*/
.c_btn_flex {
		width: auto;
		display: inline-block;
		min-width: inherit;
		max-width: 60rem;
}
.c_btn_flex a {
		padding-left: 3rem;
		padding-right: 3rem;
}
.c_btn_flex {
		/* タブレット */
}
.c_btn_flex {
		/* for TABLET */
		/* SP */
}
.c_btn_flex {
		/* for SP */
}

/*-------------------------------------------------------------
    btn_deactive	
-------------------------------------------------------------*/
.c_btn_deactive a {
		pointer-events: none;
		border: dashed 2px rgba(255, 255, 255, 0.5);
		background-color: transparent;
		color: #fff;
		padding: calc(1.5em - 2px) 0;
}
.c_btn_deactive a .label {
		opacity: 0.5;
}
.c_btn_deactive a [class^=icon_],
.c_btn_deactive a [class*=" icon_"] {
		opacity: 0.2;
}
.c_btn_deactive a:focus {
		outline: none !important;
		-webkit-box-shadow: 0;
		        box-shadow: 0;
		-webkit-box-shadow: 0 0 20px 0 transparent;
		        box-shadow: 0 0 20px 0 transparent;
}
.c_btn_deactive {
		/* タブレット */
}
.c_btn_deactive {
		/* for TABLET */
		/* SP */
}
.c_btn_deactive {
		/* for SP */
}

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

    c_btn_white

===============================================================*/
.c_btn_white a {
		background-color: #fff;
		color: #1A397F;
}
.c_btn_white a:hover {
		background-color: #fff;
		color: #1A397F;
		opacity: 0.7;
}
/*===============================================================

    c_btns

===============================================================*/
.c_btns {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		margin-top: -3rem;
}
.c_btns [class^=c_btn] {
		margin: 0 0;
		margin-top: 3rem;
}
.c_btns {
		/* --- 子要素3つの場合 --- */
}
.c_btns:has(> [class^=c_btn]:nth-child(3):last-child) {
		--btn-count: 3;
		gap: 2rem;
}
.c_btns:has(> [class^=c_btn]:nth-child(3):last-child) [class^=c_btn] {
		width: calc((100% - 4rem) / 3);
}
.c_btns {
		/* --- 子要素4つの場合 --- */
}
.c_btns:has(> [class^=c_btn]:nth-child(4):last-child) {
		--btn-count: 4;
		gap: 1rem;
}
.c_btns:has(> [class^=c_btn]:nth-child(4):last-child) [class^=c_btn] {
		width: calc((100% - 3rem) / 4);
}
.c_btns {
		/* --- 子要素2つの場合 --- */
}
.c_btns:has(> [class^=c_btn]:nth-child(2):last-child) {
		--btn-count: 2;
		gap: 3rem;
}
.c_btns:has(> [class^=c_btn]:nth-child(2):last-child) [class^=c_btn] {
		width: calc((100% - 4rem) / 3);
}
.c_btns {
		/* タブレット */
}
.c_btns {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_btns {
				margin-top: -3vw;
		}
		.c_btns [class^=c_btn] {
				margin: 0 0;
				margin-top: 3vw;
		}
		.c_btns {
				/* --- 子要素3つの場合 --- */
		}
		.c_btns:has(> [class^=c_btn]:nth-child(3):last-child) {
				--btn-count: 3;
				gap: 0 3vw;
		}
		.c_btns:has(> [class^=c_btn]:nth-child(3):last-child) [class^=c_btn] {
				width: calc((100% - 3vw) / 2);
		}
		.c_btns {
				/* --- 子要素4つの場合 --- */
		}
		.c_btns:has(> [class^=c_btn]:nth-child(4):last-child) {
				--btn-count: 4;
				gap: 0 3vw;
		}
		.c_btns:has(> [class^=c_btn]:nth-child(4):last-child) [class^=c_btn] {
				width: calc((100% - 3vw) / 2);
		}
		.c_btns {
				/* --- 子要素2つの場合 --- */
		}
		.c_btns:has(> [class^=c_btn]:nth-child(2):last-child) {
				--btn-count: 2;
				gap: 0 3vw;
		}
		.c_btns:has(> [class^=c_btn]:nth-child(2):last-child) [class^=c_btn] {
				width: calc((100% - 3vw) / 2);
		}
		.c_btns .c_btn_sp_1column {
				width: 100% !important;
		}
}
.c_btns {
		/* for SP */
		/*===============================================================
		    //	c_btns
		===============================================================*/
}

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

    c_txtlink

===============================================================*/
.c_txtlink a {
		color: #A1394A;
		text-decoration: none;
		display: inline-block;
		position: relative;
}
.c_txtlink a:hover {
		color: #dd2846;
}
.c_txtlink [class^=icon_],
.c_txtlink [class*=" icon_"] {
		right: -1.2em;
		color: #dd2846;
}
.c_txtlink .icon_arw {
		vertical-align: -1px;
}
.c_txtlink {
		/* タブレット */
}
.c_txtlink {
		/* for TABLET */
		/* SP */
}
.c_txtlink {
		/* for SP */
		/*===============================================================
		    //	c_txtlink
		===============================================================*/
}

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

	c_datalist

===============================================================*/
.c_datalist {
		text-align: left;
}
.c_datalist dl {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		width: 100%;
		overflow: hidden;
		border-bottom: solid 1px #A5BAD4;
}
.c_datalist dt,
.c_datalist dd {
		border-top: solid 1px #A5BAD4;
		padding: 2rem 1rem;
}
.c_datalist dt {
		width: 25%;
		font-weight: bold;
}
.c_datalist dd {
		width: 75%;
}
.c_datalist {
		/* タブレット以下 */
}
.c_datalist {
		/* for tablet max-width: 960px */
		/* SP向けレイアウトの指定：～736px */
}
@media screen and (max-width: 800px) {
		.c_datalist {
				width: 100%;
				margin-top: 5vw;
		}
		.c_datalist dt,
		.c_datalist dd {
				width: 100%;
				font-size: 1.5rem;
				line-height: 1.4;
		}
		.c_datalist dt {
				padding: 1.5rem 0 0 0;
		}
		.c_datalist dd {
				width: 100%;
				border-top: none;
				padding: 0px 0 1.5rem 0;
				margin-top: 0.5rem;
		}
}
.c_datalist {
		/* for SP max-width: 736px */
}

/*-------------------------------------------------------------
    c_indent_list	
-------------------------------------------------------------*/
.c_indent_list {
		margin-top: 0.5em;
}
.c_indent_list li {
		font-size: 1.5rem;
		line-height: 1.6;
		padding-left: 1em;
		text-indent: -1em;
}
.c_indent_list li + li {
		margin-top: 0.3em;
}
.c_indent_list {
		/* タブレット */
}
.c_indent_list {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_indent_list li {
				font-size: 3.5vw;
		}
}
.c_indent_list {
		/* for SP */
}

/*---------------------------------------------------------------
		リスト
	---------------------------------------------------------------*/
.c_ul_list li, .editor-styles-wrapper ul li,
.entry-content ul li {
		position: relative;
		padding-left: 1.6rem;
}
.c_ul_list li::after, .editor-styles-wrapper ul li::after,
.entry-content ul li::after {
		content: "";
		position: absolute;
		top: 0.95rem;
		left: 0;
		width: 0.6rem;
		height: 0.6rem;
		border-radius: 50%;
		background: #1A397F !important;
}
.c_ul_list li + li, .editor-styles-wrapper ul li + li,
.entry-content ul li + li {
		margin-top: 0.5rem;
}
@media screen and (max-width: 800px) {
		.c_ul_list li, .editor-styles-wrapper ul li,
		.entry-content ul li {
				padding-left: 1.5rem;
		}
		.c_ul_list li::after, .editor-styles-wrapper ul li::after,
		.entry-content ul li::after {
				top: 1.15rem;
				width: 0.5rem;
				height: 0.5rem;
		}
		.c_ul_list li + li, .editor-styles-wrapper ul li + li,
		.entry-content ul li + li {
				margin-top: 0.5rem;
		}
}

/*---------------------------------------------------------------
		番号付きリスト
	---------------------------------------------------------------*/
.c_ol_list, .editor-styles-wrapper ol,
.entry-content ol {
		counter-reset: li;
}
.c_ol_list li, .editor-styles-wrapper ol li,
.entry-content ol li {
		position: relative;
		padding-left: 2rem;
}
.c_ol_list li:before, .editor-styles-wrapper ol li:before,
.entry-content ol li:before {
		content: counter(li) "";
		position: absolute;
		top: 0;
		left: 0;
		font-weight: bold;
		color: #1A397F !important;
		counter-increment: li;
}
.c_ol_list li + li, .editor-styles-wrapper ol li + li,
.entry-content ol li + li {
		margin-top: 0.5rem;
}
@media screen and (max-width: 800px) {
		.c_ol_list li, .editor-styles-wrapper ol li,
		.entry-content ol li {
				padding-left: 1.5rem;
		}
		.c_ol_list li + li, .editor-styles-wrapper ol li + li,
		.entry-content ol li + li {
				margin-top: 0.5rem;
		}
}

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

	_headline.scss 2021/9/24

===============================================================*/
/*-------------------------------------------------------------
	mixin	
-------------------------------------------------------------*/
/*-------------------------------------------------------------
	headline	
-------------------------------------------------------------*/
.headline {
		text-align: center;
}
.headline .title {
		font-size: 4rem;
		line-height: 1.3;
		border-bottom: none !important;
		padding-bottom: 0 !important;
}
.headline .lead {
		font-size: 1.8rem;
}
.headline .title + .lead {
		margin-top: 4rem;
}
.headline .lead + .title {
		margin-top: 0.5rem;
}
.content * + .headline {
		margin-top: 10rem;
}
@media screen and (max-width: 800px) {
		.headline .title {
				font-size: 6.5vw;
				line-height: 1.4;
		}
		.headline .lead {
				font-size: 3.8vw;
				line-height: 1.7;
		}
		.headline .title + .lead {
				margin-top: 5vw;
		}
		.headline .lead + .title {
				margin-top: 1vw;
		}
		.content * + .headline {
				margin-top: 5rem;
		}
}

/*-------------------------------------------------------------
	content_title	
-------------------------------------------------------------*/
.content_title {
		margin-bottom: 5rem;
}
.content_title .title {
		font-size: 3rem;
}
.content_title .lead {
		font-size: 1.8rem;
		line-height: 1.6;
}
.content_title .title + .lead {
		margin-top: 3rem;
}
.content_title .lead + .title {
		margin-top: 1rem;
}
.content * + .content_title {
		margin-top: 10rem;
}
@media screen and (max-width: 800px) {
		.content_title .title {
				font-size: 5vw;
		}
		.content_title .lead {
				font-size: 4vw;
				line-height: 1.5;
		}
		.content_title .title + .lead {
				margin-top: 2vw;
		}
		.content_title .lead + .title {
				margin-top: 2vw;
		}
		.content * + .content_title {
				margin-top: 5rem;
		}
}

/*-------------------------------------------------------------
	lv_1	
-------------------------------------------------------------*/
.lv_1 .title {
		font-size: 3rem;
		line-height: 1.4;
}
.lv_1 .lead {
		font-size: 2rem;
}
.content * + .lv_1 {
		margin-top: 10rem;
}
@media screen and (max-width: 800px) {
		.lv_1 .title {
				font-size: 6vw;
		}
		.lv_1 .lead {
				font-size: 4vw;
				line-height: 1.5;
		}
		.lv_1 .title + .lead {
				margin-top: 1vw;
		}
		.lv_1 .lead + .title {
				margin-top: 0vw;
		}
		.content * + .lv_1 {
				margin-top: 5rem;
		}
}

/*-------------------------------------------------------------
	lv_2	
-------------------------------------------------------------*/
.lv_2 .title {
		font-size: 2.5rem;
}
.lv_2 .lead {
		font-size: 1.8rem;
}
.lv_2 .title + .lead {
		margin-top: 0.5rem;
}
@media screen and (max-width: 800px) {
		.lv_2 .title {
				font-size: 5.2vw;
		}
		.lv_2 .lead {
				font-size: 4vw;
		}
		.lv_2 .title + .lead {
				margin-top: 1vw;
		}
		.lv_2 .lead + .title {
				margin-top: 0vw;
		}
}

/*-------------------------------------------------------------
	lv_3	
-------------------------------------------------------------*/
.lv_3 .title {
		font-size: 2rem;
}
.lv_3 .lead {
		font-size: 1.4rem;
}
@media screen and (max-width: 800px) {
		.lv_3 .title {
				font-size: 4.2vw;
		}
		.lv_3 .lead {
				font-size: 3.5vw;
				line-height: 1.6;
		}
		.lv_3 .title + .lead {
				margin-top: 1vw;
		}
		.lv_3 .lead + .title {
				margin-top: 0vw;
		}
		.lv_3.block_title + .block {
				margin-top: 1.5rem;
		}
}

/*-------------------------------------------------------------
	lv_4	
-------------------------------------------------------------*/
.lv_4 .title {
		font-size: 1.8rem;
}
.lv_4 .lead {
		font-size: 1.4rem;
}
@media screen and (max-width: 800px) {
		.lv_4 .title {
				font-size: 4vw;
		}
		.lv_4 .lead {
				font-size: 3.2vw;
				line-height: 1.4;
		}
		.lv_4 .title + .lead {
				margin-top: 1vw;
		}
		.lv_4 .lead + .title {
				margin-top: 0vw;
		}
		.lv_4.block_title + .block {
				margin-top: 1rem;
		}
}

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

	pankuzu

===============================================================*/
.pankuzu {
		text-align: left;
		padding: 0;
		padding-top: 50px;
}
.pankuzu li {
		display: inline-block;
		padding-left: 0.8rem;
}
.pankuzu li:first-child {
		padding-left: 0;
}
.pankuzu li a {
		text-decoration: none;
		position: relative;
		padding-right: 1.8rem;
		color: #1A397F;
}
.pankuzu li a:hover {
		color: #c00;
}
.pankuzu li a::after {
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		bottom: 0;
		right: 0;
		border-right: solid 1px #1A397F;
		border-bottom: solid 1px #1A397F;
		width: 0.6rem;
		height: 0.6rem;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
}
.pankuzu h1 {
		font-weight: normal;
}
.pankuzu {
		/* タブレット */
}
.pankuzu {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.pankuzu .full_width {
				padding: 0;
		}
		.pankuzu {
				border-top: 1px solid #ccc;
				padding: 0vw 3vw;
		}
		.pankuzu h1,
		.pankuzu li {
				padding-left: 1.5vw;
				font-size: 3vw;
		}
		.pankuzu li a {
				padding-right: 3vw;
		}
		.pankuzu li a:hover {
				color: #c00;
		}
		.pankuzu li a::after {
				width: 1.5vw;
				height: 1.5vw;
		}
		.pankuzu .update {
				font-size: 3.5vw;
		}
}
.pankuzu {
		/* for SP */
}

.detail .pankuzu .large_width,
.detail .pankuzu .content_width {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
}
.detail .pankuzu .large_width .update,
.detail .pankuzu .content_width .update {
		text-align: right;
}
.detail .pankuzu .large_width,
.detail .pankuzu .content_width {
		/* タブレット */
}
.detail .pankuzu .large_width,
.detail .pankuzu .content_width {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.detail .pankuzu .large_width,
		.detail .pankuzu .content_width {
				display: block;
		}
		.detail .pankuzu .large_width h1,
		.detail .pankuzu .content_width h1 {
				font-size: 100%;
		}
}
.detail .pankuzu .large_width,
.detail .pankuzu .content_width {
		/* for SP */
}

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

    c_photo

===============================================================*/
.c_photo img {
		width: 100%;
		height: auto;
}
.c_photo {
		/* タブレット */
}
.c_photo {
		/* for TABLET */
		/* SP */
}
.c_photo {
		/* for SP */
		/*===============================================================
		    //	c_photo
		===============================================================*/
}

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

    c_column

===============================================================*/
.c_column, .c_column_round {
		border: solid 1px #A5BAD4;
		padding: 5rem;
		/* タブレット */
}
.c_column, .c_column_round {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_column, .c_column_round {
				padding: 1.6rem;
		}
}
.c_column, .c_column_round {
		/* for SP */
		/*===============================================================
		    //	c_column
		===============================================================*/
}

/*-------------------------------------------------------------
    c_column_round	
-------------------------------------------------------------*/
.c_column_round {
		border-radius: 3rem;
		/* タブレット */
}
.c_column_round {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_column_round {
				border-radius: 3vw;
		}
}
.c_column_round {
		/* for SP */
}

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

    category_label

===============================================================*/
.c_category_label {
		min-height: 2.5rem;
		/*pointer-events: none;*/
}
.c_category_label a {
		text-decoration: none;
		display: block;
}
.c_category_label span {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		width: 100%;
		height: 100%;
		padding: 0 0.8em;
		padding-bottom: 1px;
		border-radius: 0.3rem;
		font-size: 1.6rem;
		line-height: 1.6;
		overflow: hidden;
		color: #fff;
}
@media screen and (max-width: 800px) {
		.c_category_label {
				width: 9rem;
				height: 5vw;
				border-radius: 3vw;
				margin-left: auto;
				margin-right: 0;
				font-size: 1.2rem;
		}
}
.c_category_label {
		/*-------------------------------------------------------------
		    ラベル色	
		-------------------------------------------------------------*/
}
.c_category_label .label_red {
		background-color: #f00;
}
.c_category_label .label_blue {
		background-color: #4E77FF;
}
.c_category_label .label_green {
		background-color: #18B100;
}
.c_category_label .label_brown {
		background-color: #847865;
}
.c_category_label .label_orange {
		background-color: #FF5500;
}
.c_category_label .label_line {
		color: #1A397F;
		background: #fff;
		border: solid 1px #A5BAD4;
		-webkit-transition: 0.3s;
		transition: 0.3s;
}
.c_category_label .label_line:hover {
		border: solid 1px #1A397F;
}
.c_category_label .label_solid {
		color: #fff;
		background: #1A397F;
		border: solid 1px #1A397F;
		-webkit-transition: 0.3s;
		transition: 0.3s;
}
.c_category_label .label_solid:hover {
		background: #fff;
		color: #1A397F;
}
.c_category_label .label_date {
		background-color: none !important;
		color: #1A397F;
		padding: 0;
		padding-bottom: 1px;
}

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

    c_category_label_list

===============================================================*/
.c_category_label_list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
		gap: 1rem;
}
@media screen and (max-width: 800px) {
		.c_category_label_list {
				gap: 0.5rem;
		}
		.c_category_label_list .c_category_label {
				margin: 0;
				min-width: 0;
				width: auto;
				font-size: 2.8vw;
		}
		.c_category_label_list .c_category_label span {
				width: 100%;
				margin: 0;
				padding: 0 0.5em;
		}
		.c_category_label_list .c_category_label .label_date {
				padding: 0;
		}
}

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

	c_topics_list

===============================================================*/
.c_topics_list {
		border-bottom: solid 1px #A5BAD4;
}
.c_topics_list .item {
		position: relative;
		border-top: solid 1px #A5BAD4;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
}
.c_topics_list .link {
		width: 100%;
		position: relative;
		padding: 2rem 1rem;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		text-decoration: none;
}
.c_topics_list .date,
.c_topics_list .text {
		z-index: 1;
		color: #1A397F;
}
.c_topics_list .date a,
.c_topics_list .text a {
		color: #1A397F;
		text-decoration: none;
}
.c_topics_list .date a:after,
.c_topics_list .text a:after {
		content: "";
		position: absolute;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		-webkit-transition: 0.1s;
		transition: 0.1s;
}
.c_topics_list .date a:hover:after,
.c_topics_list .text a:hover:after {
		color: #0b43c6;
		text-decoration: none;
		background-color: rgba(0, 0, 0, 0.05);
}
.c_topics_list .date a:hover,
.c_topics_list .text a:hover {
		background: none;
		/* キャンセルに必要 */
}
.c_topics_list .date a:hover,
.c_topics_list .text a:hover {
		opacity: 0.7;
}
.c_topics_list .date:hover .text,
.c_topics_list .link:hover .text {
		color: #0b43c6;
}
.c_topics_list .date {
		width: 130px;
}
.c_topics_list .c_category_label {
		z-index: 2;
		margin-right: 30px;
		margin-left: 15px;
}
.c_topics_list .c_category_label a {
		color: #1A397F;
		text-decoration: none;
}
.c_topics_list .c_category_label a:hover {
		opacity: 0.7;
}
.c_topics_list .text {
		width: calc(100% - 235px);
		text-decoration: none !important;
}
@media screen and (max-width: 800px) {
		.c_topics_list .link {
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				padding: 1.2rem 0.5rem;
		}
		.c_topics_list .date {
				width: calc(100% - 10rem);
				font-weight: bold;
				color: #1A397F;
				line-height: 1.4;
		}
		.c_topics_list .c_category_label {
				margin-left: auto;
				margin-right: 0;
		}
		.c_topics_list .c_category_label span {
				font-size: 1.4rem;
		}
		.c_topics_list .text {
				width: 100%;
				line-height: 1.5;
				margin-top: 0.5rem;
		}
}

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

	c_tab

===============================================================*/
.c_tab {
		/* タブレット */
}
.c_tab {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_tab {
				width: 100vw;
				margin: 0 calc(50% - 50vw);
				padding: 0 3vw;
		}
}
.c_tab {
		/* for SP */
		/*-------------------------------------------------------------
			c_tab tablist	
		-------------------------------------------------------------*/
}
.c_tab .tablist {
		position: relative;
		z-index: 2;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		gap: 2px;
}
.c_tab .tablist button[role=tab] {
		border: none;
		border-radius: 3rem 3rem 0 0;
		font-size: 2.5rem;
		line-height: 1.3;
		font-weight: bold;
		text-align: center;
		padding: 2.5rem 0rem 1.5rem 0 !important;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
		color: #f00;
		width: 40%;
		background-color: rgba(255, 0, 0, 0.1);
		border: solid 1px transparent;
		border-bottom: solid 1px #f00 !important;
}
.c_tab .tablist button[role=tab][aria-selected=true] {
		background-color: #fff;
		border: solid 1px #f00 !important;
		border-bottom: solid 1px transparent !important;
}
.c_tab .tablist button[role=tab][aria-selected=false]:hover {
		cursor: pointer;
		background-color: #f00;
		color: #fff;
}
.c_tab .tablist {
		/* タブレット */
}
.c_tab .tablist {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_tab .tablist {
				gap: 1px;
		}
		.c_tab .tablist button[role=tab] {
				padding: 1rem;
				border-radius: 3vw 3vw 0 0;
				font-size: 3.8vw;
				padding: 3vw 0rem 2vw 0 !important;
				width: 50%;
		}
}
.c_tab .tablist {
		/* for SP */
}
.c_tab {
		/*-------------------------------------------------------------
			c_tab tabbody	
		-------------------------------------------------------------*/
}
.c_tab .tabbody {
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
		position: relative;
		z-index: 1;
		background-color: #fff;
		border-radius: 3rem;
		overflow: hidden;
		border: solid 1px #f00 !important;
		margin-top: -1px;
		height: auto;
}
.c_tab .tabbody .inner {
		-webkit-transition: all 0.2s;
		transition: all 0.2s;
		padding: 8rem 8rem;
		opacity: 0;
}
.c_tab .tabbody .active .inner {
		opacity: 1;
		height: auto;
}
.c_tab .tabbody .tab_title {
		font-size: 3rem;
}
.c_tab .tabbody p {
		margin-top: 1em;
}
.c_tab .tabbody .tabcontent:nth-child(3) .inner {
		background-color: #000;
		color: #fff;
}
.c_tab .tabbody {
		/* タブレット */
}
@media screen and (max-width: 1070px) {
		.c_tab .tabbody .inner {
				-webkit-transition: all 0.2s;
				transition: all 0.2s;
				padding: 8rem 5rem;
				opacity: 0;
		}
}
.c_tab .tabbody {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_tab .tabbody {
				border-radius: 0 0 3vw 3vw;
		}
		.c_tab .tabbody .inner {
				padding: 8vw 5vw;
		}
}
.c_tab .tabbody {
		/* for SP */
}
.c_tab {
		/*===============================================================
		//	c_tab
		===============================================================*/
}

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

	carousel_slider

===============================================================*/
.c_carousel_slider {
		overflow: hidden;
}
.c_carousel_slider .slider {
		position: relative;
		opacity: 0;
}
.c_carousel_slider .slider .slide {
		position: relative;
}
.c_carousel_slider .slider .slide img {
		width: 100%;
		height: auto;
		display: block;
}
.c_carousel_slider {
		/* タブレット */
}
.c_carousel_slider {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_carousel_slider .slick-track {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
		}
		.c_carousel_slider .slick-slide {
				height: auto !important;
		}
		.c_carousel_slider .slick-list {
				margin-right: -3vw;
		}
		.c_carousel_slider .slick-slide {
				margin-right: 3vw;
		}
}
.c_carousel_slider {
		/* for SP */
		/*-------------------------------------------------------------
		block_pager
		-------------------------------------------------------------*/
}
.c_carousel_slider .block_pager {
		margin-top: 3rem;
		height: 50px;
		z-index: 5;
		width: 100%;
		position: relative;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		gap: 3rem;
}
.c_carousel_slider .block_pager .status {
		font-weight: bold;
		font-size: 2rem;
}
.c_carousel_slider .block_pager .goto_first a {
		position: absolute;
		top: 0;
		left: 0;
		margin: auto;
		display: inline-block;
		font-size: 1.6rem;
		line-height: 50px;
		padding: 0 1em;
		border-radius: 50px;
		color: #fff;
		background-color: #f00;
		text-decoration: none;
}
.c_carousel_slider .block_pager .goto_first.deactive {
		opacity: 0.5;
}
.c_carousel_slider .block_pager .goto_first.deactive a {
		background-color: #999;
}
@media screen and (max-width: 800px) {
		.c_carousel_slider .block_pager {
				margin-top: 3vw;
				gap: 2vw;
		}
		.c_carousel_slider .block_pager .goto_first a {
				top: 1.6vw;
				font-size: 3vw;
				line-height: 8vw;
				padding: 0 1em;
				border-radius: 8vw;
		}
}
.c_carousel_slider {
		/*-------------------------------------------------------------
		.slider .pager
		   -------------------------------------------------------------*/
}
.c_carousel_slider .slider .pager.deactive {
		opacity: 0.5;
}
.c_carousel_slider .slider .pager.deactive a {
		background-color: #999;
}
.c_carousel_slider {
		/* タブレット */
}
.c_carousel_slider {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_carousel_slider .slider .pager {
				width: 8vw;
				height: 8vw;
		}
}
.c_carousel_slider {
		/* for SP */
		/*-------------------------------------------------------------
			.slider .pager a
		-------------------------------------------------------------*/
}
.c_carousel_slider .slider .pager a {
		display: block;
		width: 50px;
		height: 50px;
		border-radius: 50% 50%;
		overflow: hidden;
		text-indent: -200%;
		position: relative;
		background-color: #f00;
}
.c_carousel_slider .slider .pager a:hover {
		opacity: 0.7;
}
.c_carousel_slider .slider .pager a:after {
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		border-right: solid 2px #fff;
		border-bottom: solid 2px #fff;
		width: 10px;
		height: 10px;
		-webkit-transform: rotate(-45deg) translate(-2px, -2px);
		        transform: rotate(-45deg) translate(-2px, -2px);
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
}
.c_carousel_slider .slider .prev a:after {
		-webkit-transform: rotate(135deg) translate(-2px, -2px);
		        transform: rotate(135deg) translate(-2px, -2px);
}
.c_carousel_slider {
		/* タブレット */
}
.c_carousel_slider {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_carousel_slider .slider .pager a {
				width: 8vw;
				height: 8vw;
		}
}
.c_carousel_slider {
		/* for SP */
}

.c_ui_selecter {
		display: inline-block;
		width: 100%;
		max-width: 100%;
		padding: 1.5rem 2rem;
		padding-right: 3rem;
		color: #000;
		font-size: 1.8rem;
		line-height: 1;
		background-color: #fff;
		border: 1px solid #f00;
		border-radius: 3rem;
		cursor: pointer;
		appearance: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		background-image: url("data:image/svg+xml;utf8,    <svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'>    <polygon points='2,4 10,4 6,8' fill='%23D7083C'/></svg>");
		background-repeat: no-repeat;
		background-position: right 1.5rem center;
		background-size: 18px;
}
.c_ui_selecter:hover {
		border-color: #e00;
}
.c_ui_selecter:focus {
		outline: none;
		border-color: #f00;
		-webkit-box-shadow: 0 0 0 3px rgba(255, 0, 0, 0.15);
		        box-shadow: 0 0 0 3px rgba(255, 0, 0, 0.15);
}
.c_ui_selecter:focus-visible {
		outline: none;
}
.c_ui_selecter:disabled {
		color: #999;
		background-color: #f5f5f5;
		cursor: not-allowed;
}
.c_ui_selecter:-moz-focusring {
		color: transparent;
		text-shadow: 0 0 0 #000;
}
@media screen and (max-width: 800px) {
		.c_ui_selecter {
				padding: 3vw 4vw;
				font-size: 4vw;
		}
}

.c_ui_checkbox {
		appearance: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		width: 18px;
		height: 18px;
		margin: 0 0.5em 0 0;
		border: 1px solid #f00;
		border-radius: 0;
		background-color: #fff;
		cursor: pointer;
		vertical-align: middle;
		position: relative;
}
.c_ui_checkbox:hover {
		border-color: #f00;
}
.c_ui_checkbox:checked {
		border-color: #f00;
		background-color: #f00;
}
.c_ui_checkbox:checked::after {
		content: "";
		position: absolute;
		left: 4px;
		top: 1px;
		width: 5px;
		height: 10px;
		border: solid #fff;
		border-width: 0 2px 2px 0;
		-webkit-transform: rotate(45deg);
		        transform: rotate(45deg);
}
.c_ui_checkbox:focus {
		outline: none;
		-webkit-box-shadow: 0 0 0 3px rgba(255, 0, 0, 0.2);
		        box-shadow: 0 0 0 3px rgba(255, 0, 0, 0.2);
}
.c_ui_checkbox:disabled {
		background-color: #f5f5f5;
		border-color: #A5BAD4;
		cursor: not-allowed;
}

label {
		cursor: pointer;
		font-size: 1.8rem;
		color: #1A397F;
}
@media screen and (max-width: 800px) {
		label {
				font-size: 3.5vw;
		}
}

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

c_faq

===============================================================*/
.c_faq .block_faq {
		margin-top: 5rem !important;
}
.c_faq .block_faq + .block {
		margin-top: 1rem !important;
}
@media screen and (max-width: 800px) {
		.c_faq .block_faq {
				margin-top: 3vw !important;
		}
		.c_faq .block_faq + .block {
				margin-top: 2vw !important;
		}
}
.c_faq .block_faq {
		/*-------------------------------------------------------------
		.accordion_header {
		    -------------------------------------------------------------*/
}
.c_faq .block_faq .accordion_header {
		position: relative;
		padding: 3rem 10rem 3rem 2.5rem;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
		cursor: pointer;
}
.c_faq .block_faq .accordion_header:hover {
		opacity: 0.7;
}
.c_faq .block_faq .accordion_header:before, .c_faq .block_faq .accordion_header:after {
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		right: 2rem;
		margin: auto;
		width: 3rem;
		height: 1px;
		background: #1A397F;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
}
.c_faq .block_faq .accordion_header:after {
		-webkit-transform: rotate(90deg);
		        transform: rotate(90deg);
}
.c_faq .block_faq .accordion_header.active {
		border-bottom: none;
}
.c_faq .block_faq .accordion_header.active::after {
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
}
@media screen and (max-width: 800px) {
		.c_faq .block_faq .accordion_header {
				padding: 3vw 12vw 3vw 3vw;
		}
		.c_faq .block_faq .accordion_header:before, .c_faq .block_faq .accordion_header:after {
				right: 4vw;
				width: 4.2vw;
		}
}
.c_faq .block_faq .accordion_header .title {
		font-size: 2rem;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		gap: 2rem;
}
.c_faq .block_faq .accordion_header .title::before {
		content: "Q";
		width: 4rem;
		height: 4rem;
		border-radius: 50%;
		background: #A1394A;
		font-size: 2rem;
		font-weight: bold;
		line-height: 1;
		color: #fff;
		text-align: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-flex: 0;
		    -ms-flex: 0 0 4rem;
		        flex: 0 0 4rem;
}
@media screen and (max-width: 800px) {
		.c_faq .block_faq .accordion_header .title {
				font-size: 3.8vw;
				gap: 4vw;
		}
		.c_faq .block_faq .accordion_header .title::before {
				width: 7vw;
				height: 7vw;
				font-size: 4vw;
				-webkit-box-flex: 0;
				    -ms-flex: 0 0 7vw;
				        flex: 0 0 7vw;
		}
}
.c_faq .block_faq {
		/*-------------------------------------------------------------
		.accordion
		    -------------------------------------------------------------*/
}
.c_faq .block_faq .accordion {
		width: 100%;
		border: 1px solid #1A397F;
		background: #fff;
		border-radius: 0.3rem;
		/*-------------------------------------------------------------
		.accordion_body 
		-------------------------------------------------------------*/
}
.c_faq .block_faq .accordion .accordion_body {
		position: relative;
}
.c_faq .block_faq .accordion .accordion_body::before {
		content: "";
		position: absolute;
		top: 0;
		width: 100%;
		border-top: 1px solid #A5BAD4;
}
.c_faq .block_faq .accordion .accordion_body .accordion_inner {
		padding: 3rem 2.5rem 2.5rem;
		line-height: 1.8;
}
.c_faq .block_faq .accordion .accordion_body .accordion_inner .txt + .sub_title {
		margin-top: 2rem;
}
.c_faq .block_faq .accordion .accordion_body .accordion_inner .sub_title + .txt {
		margin-top: 1rem;
}
.c_faq .block_faq .accordion .accordion_body .accordion_inner .txt + .txt {
		margin-top: 1rem;
}
.c_faq .block_faq .accordion .accordion_body .accordion_inner .sub_title {
		font-weight: bold;
		color: #A1394A;
}
.c_faq .block_faq .accordion .accordion_body .accordion_inner .txt strong {
		font-weight: bold;
}
@media screen and (max-width: 800px) {
		.c_faq .block_faq .accordion .accordion_body::before {
				left: 5vw;
				right: 5vw;
		}
		.c_faq .block_faq .accordion .accordion_body .accordion_inner {
				padding: 4.5vw 5vw 5vw;
		}
		.c_faq .block_faq .accordion .accordion_body .accordion_inner .txt + .sub_title {
				margin-top: 4vw;
		}
		.c_faq .block_faq .accordion .accordion_body .accordion_inner .sub_title + .txt {
				margin-top: 1vw;
		}
		.c_faq .block_faq .accordion .accordion_body .accordion_inner .txt + .txt {
				margin-top: 4vw;
		}
		.c_faq .block_faq .accordion .accordion_body .accordion_inner .sub_title {
				font-weight: bold;
		}
		.c_faq .block_faq .accordion .accordion_body .accordion_inner .txt {
				font-size: 3.5vw;
		}
}

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

    c_no_entry

===============================================================*/
.c_no_entry {
		border: solid 1px #A5BAD4;
		padding: 3rem;
		text-align: center;
}
@media screen and (max-width: 800px) {
		.c_no_entry {
				padding: 5vw 3vw;
		}
}

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

    c_sns_icons

===============================================================*/
.c_sns_icons {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
		margin-top: 2rem;
		padding: 0;
}
.c_sns_icons .icon {
		width: 6rem;
		height: 6rem;
		border: solid 1px #fff;
		padding: 1.3rem;
		border-radius: 25rem;
}
@media screen and (max-width: 800px) {
		.c_sns_icons {
				gap: 2vw;
		}
		.c_sns_icons .icon {
				width: 13vw;
				height: 13vw;
				padding: 3vw;
		}
}

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

    c_search_box

===============================================================*/
.c_search_box {
		background-color: #1A397F;
		border-radius: 0;
		padding: 3rem;
}
@media screen and (max-width: 800px) {
		.c_search_box {
				padding: 5vw;
				width: 100vw;
				margin: 0 calc(50% - 50vw);
				border-radius: 0;
		}
}
.c_search_box {
		/*===============================================================
		open
		===============================================================*/
}
.c_search_box.open .category_block .btn_tag a::before {
		-webkit-transform: rotate(0deg);
		        transform: rotate(0deg);
}
.c_search_box.open .tag_block {
		height: auto;
}
.c_search_box {
		/*===============================================================
		category_block
		===============================================================*/
}
.c_search_box .category_block {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		gap: 2rem;
}
@media screen and (max-width: 1070px) {
		.c_search_box .category_block {
				gap: 1rem;
		}
}
@media screen and (max-width: 800px) {
		.c_search_box .category_block {
				gap: 3vw;
		}
}
.c_search_box .category_block {
		/*-------------------------------------------------------------
		title_block
		-------------------------------------------------------------*/
}
.c_search_box .category_block .title_block {
		font-size: 2.5rem;
		line-height: 1;
		font-weight: bold;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
}
.c_search_box .category_block .title_block .label {
		font-size: 2.5rem;
		line-height: 1;
		font-weight: bold;
		color: #fff;
}
@media screen and (max-width: 1070px) {
		.c_search_box .category_block .title_block {
				width: 100%;
				padding-bottom: 1rem;
		}
}
@media screen and (max-width: 800px) {
		.c_search_box .category_block .title_block {
				padding-bottom: 1vw;
		}
		.c_search_box .category_block .title_block .label {
				font-size: 5vw;
		}
}
.c_search_box .category_block {
		/*-------------------------------------------------------------
		category_list
		-------------------------------------------------------------*/
}
.c_search_box .category_block .category_list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		gap: 1rem;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
}
.c_search_box .category_block .category_list a {
		display: block;
		font-size: 2rem;
		line-height: 2;
		font-weight: bold;
		padding: 0em 1.2em;
		color: #fff;
		border-radius: 0.3rem;
		background-color: #1A397F;
		border: solid 1px #fff;
		text-decoration: none;
}
.c_search_box .category_block .category_list a:hover {
		background-color: #fff;
		color: #1A397F;
}
@media screen and (max-width: 1070px) {
		.c_search_box .category_block .category_list {
				gap: 0.5rem;
		}
		.c_search_box .category_block .category_list a {
				font-size: 1.8rem;
		}
}
@media screen and (max-width: 800px) {
		.c_search_box .category_block .category_list {
				width: calc(100% + 5vw);
				margin-right: -5vw;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				overflow-x: auto;
				overflow-y: hidden;
				-webkit-box-pack: start;
				    -ms-flex-pack: start;
				        justify-content: flex-start;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
				gap: 2vw;
				-webkit-overflow-scrolling: touch;
		}
		.c_search_box .category_block .category_list::-webkit-scrollbar {
				display: none;
		}
		.c_search_box .category_block .category_list li {
				-webkit-box-flex: 0;
				    -ms-flex: 0 0 auto;
				        flex: 0 0 auto;
				width: 21vw;
		}
		.c_search_box .category_block .category_list a {
				display: block;
				font-size: 3.6vw;
				line-height: 1.8;
				font-weight: bold;
				padding: 1vw;
				border-radius: 1rem;
				text-align: center;
				white-space: nowrap;
		}
}
.c_search_box .category_block {
		/*-------------------------------------------------------------
		btn_tag
		-------------------------------------------------------------*/
}
.c_search_box .category_block .btn_tag {
		margin-left: auto;
		margin-right: 0;
}
.c_search_box .category_block .btn_tag a {
		display: block;
		font-size: 1.6rem;
		line-height: 4rem;
		padding: 0 1.2em;
		padding-right: 2.5em;
		border-radius: 0.3rem;
		color: #fff;
		background-color: #1A397F;
		text-decoration: none;
		position: relative;
		border: solid 1px #fff;
}
.c_search_box .category_block .btn_tag a::after, .c_search_box .category_block .btn_tag a::before {
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		right: 1em;
		margin: auto;
		width: 1.2em;
		height: 1px;
		background-color: #fff;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
}
.c_search_box .category_block .btn_tag a::before {
		-webkit-transform: rotate(90deg);
		        transform: rotate(90deg);
}
.c_search_box .category_block .btn_tag a:hover {
		color: #1A397F;
		background: #fff;
}
.c_search_box .category_block .btn_tag a:hover::after, .c_search_box .category_block .btn_tag a:hover::before {
		background-color: #1A397F;
}
@media screen and (max-width: 800px) {
		.c_search_box .category_block .btn_tag {
				width: 100%;
		}
		.c_search_box .category_block .btn_tag a {
				font-size: 3.5vw;
				padding: 0.5vw 3vw;
				width: 100%;
				text-align: center;
		}
}
.c_search_box {
		/*===============================================================
		tag_block
		===============================================================*/
}
.c_search_box .tag_block {
		margin-top: 2rem;
		border-radius: 0.3rem;
		background-color: #fff;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		padding: 2em;
		gap: 0.5em 1em;
		font-size: 1.4rem;
		line-height: 1.2;
		height: 0;
}
.c_search_box .tag_block a {
		color: #1A397F;
		text-decoration: none;
}
.c_search_box .tag_block a:hover {
		color: #A1394A;
}
@media screen and (max-width: 800px) {
		.c_search_box .tag_block {
				margin-top: 2vw;
				padding: 3vw 5vw;
				font-size: 3.2vw;
		}
}

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

	c_list

===============================================================*/
.c_list {
		max-width: 70rem;
		margin: 0 auto;
		margin-top: 3rem;
		text-align: left;
}
.c_list dl {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		width: 100%;
		overflow: hidden;
		border-bottom: solid 1px #A5BAD4;
}
.c_list dt,
.c_list dd {
		font-size: 2rem;
		padding: 2rem 1rem;
		border-top: solid 1px #A5BAD4;
}
.c_list dt {
		width: 24%;
		font-weight: bold;
		letter-spacing: 0.2rem;
}
.c_list dd {
		width: 76%;
		line-height: 1.8;
}
.c_list {
		/* タブレット以下 */
}
.c_list {
		/* for tablet max-width: 960px */
		/* SP向けレイアウトの指定：～736px */
}
@media screen and (max-width: 800px) {
		.c_list {
				width: 100%;
				margin-top: 3vw;
		}
		.c_list dt,
		.c_list dd {
				font-size: 3.5vw;
				padding: 1em 0.5em;
		}
		.c_list dt {
				width: 24%;
				font-weight: bold;
				letter-spacing: 0;
		}
		.c_list dd {
				width: 76%;
		}
}
.c_list {
		/* for SP max-width: 736px */
}

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

    c_main_title

===============================================================*/
.c_main_title {
		text-align: center;
		margin-top: -5.5rem;
		position: relative;
		z-index: 3;
		padding-bottom: 3rem;
}
.c_main_title .lead_block {
		width: 60%;
}
.c_main_title .title_block {
		margin-top: 2rem;
		width: 90%;
}
.c_main_title .c_btn, .c_main_title .c_btn_round {
		margin-left: 0;
}
@media screen and (max-width: 800px) {
		.c_main_title {
				margin-top: -6vw;
				padding-bottom: 5vw;
		}
		.c_main_title .lead_block {
				width: 80%;
		}
		.c_main_title .title_block {
				margin-top: 3vw;
				width: 100%;
		}
		.c_main_title .c_btn, .c_main_title .c_btn_round {
				margin-left: 0;
				width: 67%;
		}
		.c_main_title .c_btn a, .c_main_title .c_btn_round a {
				min-height: 3em;
		}
		.c_main_title .c_btn a .label, .c_main_title .c_btn_round a .label {
				font-size: 1.4rem;
		}
		.c_main_title .c_btn a .icon_arrow_r, .c_main_title .c_btn_round a .icon_arrow_r {
				width: 3rem;
		}
}
.c_main_title {
		/*===============================================================
		title_block
		===============================================================*/
}
/*-------------------------------------------------------------
	notfound	
-------------------------------------------------------------*/
.c_notfound {
		text-align: center;
}
.c_notfound .head {
		color: #1A397F;
		font-size: 3rem;
		line-height: 1.2;
		font-weight: bold;
}
.c_notfound .lead {
		font-size: 1.8rem;
		line-height: 1.8;
		font-weight: bold;
		margin-top: 3rem;
}
.c_notfound p {
		font-size: 1.6rem;
		line-height: 1.8;
		margin-top: 3rem;
}
.c_notfound .box {
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		padding: 4rem;
		margin: 0 auto;
		margin-top: 3rem;
		background: #f5f5f5;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
}
.c_notfound .box li {
		font-size: 1.4rem;
		line-height: 1.6;
		text-align: left;
		text-indent: -1em;
		padding-left: 1em;
}
.c_notfound .box li + li {
		margin-top: 1rem;
}
.c_notfound {
		/* タブレット */
}
.c_notfound {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.c_notfound .head {
				font-size: 6vw;
		}
		.c_notfound .lead {
				font-size: 4vw;
				margin-top: 4vw;
		}
		.c_notfound p {
				font-size: 4vw;
				margin-top: 4vw;
		}
		.c_notfound .box {
				padding: 4vw;
				margin-top: 4vw;
		}
		.c_notfound .box li {
				font-size: 3.5vw;
		}
		.c_notfound .box li + li {
				margin-top: 1vw;
		}
}
.c_notfound {
		/* for SP */
}

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

	レイアウト
	_rayout.scss

===============================================================*/
.full_width {
		padding-left: 0;
		padding-right: 0;
}
@media screen and (max-width: 800px) {
		.full_width {
				padding-left: 5vw;
				padding-right: 5vw;
		}
}

.max_width {
		max-width: 1800px;
		margin-left: auto;
		margin-right: auto;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
}
@media screen and (max-width: 1900px) {
		.max_width {
				padding: 0 5rem;
		}
}
@media screen and (max-width: 1170px) {
		.max_width {
				padding: 0 3rem;
		}
}
@media screen and (max-width: 800px) {
		.max_width {
				padding-left: 0;
				padding-right: 0;
		}
}

.wide_width {
		max-width: 150rem;
		margin-left: auto;
		margin-right: auto;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
}
@media screen and (max-width: 1600px) {
		.wide_width {
				padding: 0 5rem;
		}
		.max_width .wide_width {
				padding: 0;
		}
}
@media screen and (max-width: 1170px) {
		.wide_width {
				padding: 0 3rem;
		}
		.max_width .wide_width {
				padding: 0;
		}
}
@media screen and (max-width: 800px) {
		.wide_width {
				padding-left: 0;
				padding-right: 0;
		}
}

.large_width {
		max-width: 120rem;
		margin-left: auto;
		margin-right: auto;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
}
@media screen and (max-width: 1300px) {
		.large_width {
				padding: 0 5rem;
		}
		.max_width .large_width, .wide_width .large_width {
				padding: 0;
		}
}
@media screen and (max-width: 1170px) {
		.large_width {
				padding: 0 3rem;
		}
		.max_width .large_width, .wide_width .large_width {
				padding: 0;
		}
}
@media screen and (max-width: 800px) {
		.large_width {
				padding-left: 0;
				padding-right: 0;
		}
}

.content_width {
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
		max-width: 107rem;
		margin-left: auto;
		margin-right: auto;
}
@media screen and (max-width: 1170px) {
		.content_width {
				padding: 0 3rem;
		}
		.max_width .content_width, .wide_width .content_width, .large_width .content_width {
				padding: 0;
		}
}
@media screen and (max-width: 800px) {
		.content_width {
				padding-left: 0;
				padding-right: 0;
		}
}

.narrow_width {
		max-width: 70rem;
		margin-left: auto;
		margin-right: auto;
}
@media screen and (max-width: 800px) {
		.narrow_width {
				padding-left: 0;
				padding-right: 0;
		}
}

.btn_width {
		max-width: 40rem;
		margin-left: auto;
		margin-right: auto;
}
@media screen and (max-width: 800px) {
		.btn_width {
				padding-left: 0;
				padding-right: 0;
		}
}

.absolute_full_width {
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
}

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

	seciton
	headlineとcontentなど、複数の要素、機能を取りまとめるコンテナ的な親要素。
	幅はsection_innerに記述する

===============================================================*/
.section_wrp {
		overflow: hidden;
		display: block;
		min-height: calc(100vh - 10rem - 40rem);
}
@media screen and (max-width: 800px) {
		.section_wrp {
				min-height: calc(100vh - 16vw - 108vw);
		}
}

.section {
		width: 100%;
}

.section_inner {
		margin: 0 auto;
		padding-top: 12rem;
		padding-bottom: 14rem;
		padding-left: 0;
		padding-right: 0;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
}
@media screen and (max-width: 800px) {
		.section_inner {
				padding-top: 10vw;
				padding-bottom: 12vw;
				padding-left: 5vw;
				padding-right: 5vw;
		}
}

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

	content 
	個別のコンテンツ

===============================================================*/
.content + .content {
		margin-top: 10rem;
}

.headline + .content {
		margin-top: 6rem;
}

.content + .headline {
		margin-top: 10rem;
}

.content .content + *,
.content * + .content {
		margin-top: 6rem;
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
		.content {
				width: 100%;
				margin: 0 auto;
				-webkit-box-sizing: border-box;
				        box-sizing: border-box;
		}
}
/* for tablet */
/* SP向けレイアウトの指定：～736px */
@media screen and (max-width: 800px) {
		.content + .content {
				margin-top: 8rem;
		}
		.headline + .content {
				margin-top: 4rem;
		}
		.content + .headline {
				margin-top: 5rem;
		}
		.content .content + *,
		.content * + .content {
				margin-top: 4rem;
		}
		.content_title + .content {
				margin-top: 0;
		}
}
/* for SP */
/*-------------------------------------------------------------
	block	
-------------------------------------------------------------*/
.block + .block_title {
		margin-top: 5rem;
}
.block_title + .block {
		margin-top: 2rem;
}
.block + .block {
		margin-top: 3rem;
}
.block p + p {
		margin-top: 1em;
}
@media screen and (max-width: 800px) {
		.block + .block_title {
				margin-top: 4rem;
		}
		.block_title + .block {
				margin-top: 1.2rem;
		}
		.block + .block {
				margin-top: 3.2rem;
		}
}

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

    block_title

===============================================================*/
.block_title + .block_title {
		margin-top: 2rem;
}
.block_title {
		/* タブレット */
}
.block_title {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.block_title + .block_title {
				margin-top: 2.4rem;
		}
}
.block_title {
		/* for SP */
}

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

	_header.scss 2021/10/4

===============================================================*/
.wrapper {
		padding-top: 10rem;
}
@media screen and (max-width: 800px) {
		.wrapper {
				padding-top: 16vw;
		}
}

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

	header

===============================================================*/
.header {
		background-color: #fff;
		width: 100%;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 151;
}
.header .header_inner {
		padding: 0 3rem;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: nowrap;
		    flex-wrap: nowrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		height: 10rem;
}
.header .site_title {
		width: 80rem;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
}
.header .site_title a {
		margin-right: 2rem;
		text-decoration: none;
		width: 10rem;
		line-height: 1;
}
.header .site_title .lead {
		font-size: 1.3rem;
		line-height: 1.4;
		color: #1A397F;
		font-weight: normal;
}
.header .header_nav {
		width: calc(100% - 28rem);
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
}
.header {
		/* タブレット */
}
@media screen and (max-width: 1070px) {
		.header .header_inner {
				padding: 0 2rem;
		}
		.header .site_title {
				width: 53rem;
		}
		.header .site_title a {
				margin-right: 1rem;
				width: 9rem;
		}
		.header .site_title .lead {
				font-size: 1.2rem;
		}
		.header .header_nav {
				width: calc(100% - 45rem);
		}
}
.header {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.header .header_inner {
				padding: 0 3vw;
				height: 16vw;
		}
		.header .site_title {
				width: 20vw;
				-webkit-transform: translateY(1vw);
				        transform: translateY(1vw);
		}
		.header .site_title a {
				line-height: 1.8;
		}
		.header .lead {
				display: none;
		}
		.header .header_nav {
				width: calc(100% - 27vw);
		}
}
.header {
		/* for SP */
		/*===============================================================
		header_nav
		===============================================================*/
}
.header .header_nav .c_btn, .header .header_nav .c_btn_round {
		width: auto;
		margin-left: auto;
		margin-right: 6rem;
}
.header .header_nav .c_btn a, .header .header_nav .c_btn_round a {
		min-height: 5rem;
}
.header .header_nav .c_btn a .label, .header .header_nav .c_btn_round a .label {
		font-size: 1.6rem;
		line-height: 1em;
}
@media screen and (max-width: 1070px) {
		.header .header_nav .c_btn, .header .header_nav .c_btn_round {
				width: auto;
				margin-left: auto;
				margin-right: 6rem;
		}
		.header .header_nav .c_btn a, .header .header_nav .c_btn_round a {
				min-height: 5rem;
		}
		.header .header_nav .c_btn a .label, .header .header_nav .c_btn_round a .label {
				font-size: 1.4rem;
		}
}
.header .header_nav {
		/* SP */
}
@media screen and (max-width: 800px) {
		.header .header_nav .c_btn, .header .header_nav .c_btn_round {
				width: auto;
				margin-left: auto;
				margin-right: 14vw;
				max-width: 33rem;
		}
		.header .header_nav .c_btn a, .header .header_nav .c_btn_round a {
				padding-left: 2vw !important;
				padding-right: 11vw !important;
				min-height: 11vw;
		}
		.header .header_nav .c_btn a .label, .header .header_nav .c_btn_round a .label {
				line-height: 1;
				font-size: 3vw;
		}
		.header .header_nav .c_btn a .icon_mail, .header .header_nav .c_btn_round a .icon_mail {
				right: 2.6;
				font-size: 3.6vw;
		}
}

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

	_footer.scss 2021/10/4

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

	footer

===============================================================*/
.footer {
		background: #132753;
		color: #fff;
		/* タブレット */
}
.footer {
		/* for TABLET */
		/* SP */
}
.footer {
		/* for SP */
}
.footer .footer_bottom {
		color: #fff;
		text-align: center;
		padding: 1rem 2rem;
}
.footer .footer_bottom .copyright {
		font-size: 1.2rem;
}
.footer {
		/*===============================================================
		footer_inner
		===============================================================*/
}
.footer .footer_inner {
		padding: 5rem 5rem 3rem;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
}
@media screen and (max-width: 800px) {
		.footer .footer_inner {
				padding: 5vw;
		}
}
.footer {
		/*===============================================================
		info_block
		===============================================================*/
}
.footer .info_block {
		width: 45rem;
}
.footer .info_block a {
		text-decoration: none;
		color: #fff;
}
.footer .info_block a:hover {
		opacity: 0.7;
}
.footer .info_block .logo {
		width: 15rem;
}
.footer .info_block .business {
		font-size: 1.4rem;
		line-height: 1.4;
		margin-top: 2em;
}
.footer .info_block .name {
		font-size: 2.5rem;
		line-height: 1.2;
		font-weight: bold;
		margin-top: 3rem;
}
.footer .info_block .address {
		font-size: 1.4rem;
		line-height: 1.2;
		margin-top: 1em;
}
.footer .info_block .url {
		font-size: 1.4rem;
		line-height: 1.2;
		margin-top: 0.3em;
}
@media screen and (max-width: 800px) {
		.footer .info_block .logo {
				width: 12rem;
		}
		.footer .info_block .business {
				margin-top: 5vw;
				font-size: 3.2vw;
		}
		.footer .info_block .name {
				margin-top: 3vw;
				font-size: 5vw;
		}
		.footer .info_block .address {
				font-size: 3.5vw;
		}
		.footer .info_block .url {
				font-size: 3.5vw;
		}
		.footer .info_block .c_sns_icons {
				margin-top: 1em;
		}
}
.footer {
		/*===============================================================
		nav_block
		===============================================================*/
}
.footer .nav_block {
		width: 27rem;
}
.footer .nav_block .c_btn, .footer .nav_block .c_btn_round {
		width: auto;
		margin-left: auto;
		margin-right: 0;
}
.footer .nav_block .c_btn a, .footer .nav_block .c_btn_round a {
		padding-left: 1rem !important;
		padding-right: 4rem !important;
		min-height: 6rem;
		color: #132753;
		border-color: #132753;
}
.footer .nav_block .c_btn a .label, .footer .nav_block .c_btn_round a .label {
		font-size: 1.8rem;
		line-height: 1em;
}
.footer .nav_block .c_btn a .icon_mail, .footer .nav_block .c_btn_round a .icon_mail {
		font-size: 1.8rem;
}
.footer .nav_block .c_btn a::after, .footer .nav_block .c_btn_round a::after {
		content: "";
		position: absolute;
		inset: 0;
		border: solid #fff;
		border-width: 1px 1px 1px 8px;
		-webkit-transform: scaleX(0);
		        transform: scaleX(0);
		-webkit-transform-origin: left center;
		        transform-origin: left center;
		-webkit-transition: -webkit-transform 0.3s ease;
		transition: -webkit-transform 0.3s ease;
		transition: transform 0.3s ease;
		transition: transform 0.3s ease, -webkit-transform 0.3s ease;
		pointer-events: none;
		z-index: 3;
}
.footer .nav_block .c_btn a:hover, .footer .nav_block .c_btn_round a:hover {
		color: #fff;
}
.footer .nav_block .c_btn a:hover::before, .footer .nav_block .c_btn_round a:hover::before {
		background-color: #132753;
}
.footer .nav_block .c_btn a:hover::after, .footer .nav_block .c_btn_round a:hover::after {
		-webkit-transform: scaleX(1);
		        transform: scaleX(1);
}
@media screen and (max-width: 800px) {
		.footer .nav_block {
				width: 100%;
		}
		.footer .nav_block .c_sns_icons {
				margin-top: 8vw;
		}
		.footer .nav_block .c_btn, .footer .nav_block .c_btn_round {
				margin-left: 0;
				margin-right: 0;
				margin-top: 5vw;
				width: 100%;
				max-width: 100%;
		}
		.footer .nav_block .c_btn a .label, .footer .nav_block .c_btn_round a .label {
				font-size: 4vw;
		}
}

/*===============================================================
	_grid.scss
===============================================================*/
.grid_wrp {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		margin-top: -4rem;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
}
.grid_wrp .grid {
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		margin-top: 4rem;
}
.grid_wrp .grid .grid_wrp {
		margin-top: -2rem;
}
.grid_wrp .grid .grid {
		margin-top: 2rem;
}
.grid_wrp .grid_1_1 {
		width: 100%;
}
.grid_wrp .grid_2_1 {
		width: calc((100% - 4rem) / 2);
}
.grid_wrp .grid_3_1 {
		width: calc((100% - 4rem * 2) / 3);
		/* 40px * 2 = 80px */
}
.grid_wrp .grid_3_2 {
		width: calc(100% - (100% - 4rem * 2) / 3 - 4rem);
}
.grid_wrp .grid_4_1 {
		width: calc((100% - 4rem * 3) / 4);
		/* 40px * 3 = 120px */
}
.grid_wrp .grid_5_1 {
		width: calc((100% - 4rem * 2) / 5);
		/* 20px * 4 = 80px */
}
.grid_wrp .grid_6_1 {
		width: calc((100% - 4rem * 5) / 6);
		/* 50px * 5 = 100px */
}
.grid_wrp.grid_wrp3:after, .grid_wrp.grid_wrp4:after, .grid_wrp.grid_wrp4:before, .grid_wrp.grid_wrp5:after, .grid_wrp.grid_wrp5:before {
		content: "";
		display: block;
		height: 0;
		-webkit-box-ordinal-group: 2;
		    -ms-flex-order: 1;
		        order: 1;
}
.grid_wrp.grid_wrp3:after {
		width: calc((100% - 4rem * 2) / 3);
}
.grid_wrp.grid_wrp4:after, .grid_wrp.grid_wrp4:before {
		width: calc((100% - 4rem * 3) / 4);
}
.grid_wrp.grid_wrp5:after, .grid_wrp.grid_wrp5:before {
		width: calc((100% - 4rem * 2) / 5);
}
@media screen and (max-width: 800px) {
		.grid_wrp {
				margin-top: -5vw;
		}
		.grid_wrp .grid {
				margin-top: 5vw;
		}
		.grid_wrp .grid .grid_wrp {
				margin-top: -3vw;
		}
		.grid_wrp .grid .grid {
				margin-top: 3vw;
		}
		.grid_wrp .grid_1_1 {
				width: 100%;
		}
		.grid_wrp .grid_2_1 {
				width: 100%;
		}
		.grid_wrp .grid_3_1 {
				width: calc((100% - 5vw) / 2);
		}
		.grid_wrp .grid_3_2 {
				width: 100%;
		}
		.grid_wrp .grid_4_1 {
				width: calc((100% - 5vw) / 2);
		}
		.grid_wrp .grid_5_1 {
				width: calc((100% - 5vw) / 2);
		}
		.grid_wrp .grid_6_1 {
				width: calc((100% - 10vw) / 3);
		}
		.grid_wrp.grid_wrp3:after {
				width: calc((100% - 80px) / 3);
		}
		.grid_wrp.grid_wrp4:after, .grid_wrp.grid_wrp4:before {
				width: calc((100% - 120px) / 4);
		}
		.grid_wrp.grid_wrp5:after, .grid_wrp.grid_wrp5:before {
				width: calc((100% - 80px) / 5);
		}
		.grid_wrp .sp_grid_1 {
				width: 100% !important;
		}
}

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

	navigation_panel

===============================================================*/
.navigation_panel {
		position: fixed;
		z-index: 152;
		width: 100vw;
		height: 100vh;
		top: 0;
		left: 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		display: none;
		-webkit-transition: all 0.5s;
		transition: all 0.5s;
		opacity: 0;
		padding-top: 10rem;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		-ms-scroll-chaining: none;
		    overscroll-behavior: contain;
}
.menu_open .navigation_panel {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		opacity: 0;
}
.menu_show .navigation_panel {
		opacity: 1;
}
.navigation_panel {
		color: #1A397F;
		background-color: #f5f5f5;
}
.navigation_panel a {
		text-decoration: none;
}
.navigation_panel a:hover {
		text-decoration: none;
}
.navigation_panel .navigation_panel_inner {
		-webkit-transition: all 0.5s;
		transition: all 0.5s;
		-webkit-transition-delay: 0.5s;
		        transition-delay: 0.5s;
		opacity: 0;
		-webkit-transform: translateY(3rem);
		        transform: translateY(3rem);
}
.menu_show .navigation_panel .navigation_panel_inner {
		opacity: 1;
		-webkit-transform: translateY(-6rem);
		        transform: translateY(-6rem);
		width: 70%;
		max-width: 100rem;
}
.menu_hide .navigation_panel .navigation_panel_inner {
		-webkit-transition-delay: 0s;
		        transition-delay: 0s;
		opacity: 0;
		-webkit-transform: translateY(3rem);
		        transform: translateY(3rem);
}
.navigation_panel {
		/* タブレット */
}
@media screen and (max-width: 1070px) {
		.menu_show .navigation_panel {
				width: 100%;
		}
		.navigation_panel .navigation_panel_inner {
				min-width: 85%;
		}
}
.navigation_panel {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.navigation_panel {
				-webkit-box-align: baseline;
				    -ms-flex-align: baseline;
				        align-items: baseline;
		}
		.navigation_panel .navigation_panel_inner {
				min-width: 90%;
		}
		.menu_show .navigation_panel .navigation_panel_inner {
				-webkit-transform: translateY(0) !important;
				        transform: translateY(0) !important;
		}
}
.navigation_panel {
		/* for SP */
		/*-------------------------------------------------------------
		title_block
		-------------------------------------------------------------*/
}
.navigation_panel .title_block .site_title {
		width: 80rem;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
}
.navigation_panel .title_block .site_title a {
		margin-right: 2rem;
		text-decoration: none;
		width: 18rem;
		-webkit-transition: 0.3s;
		transition: 0.3s;
}
.navigation_panel .title_block .site_title a:hover {
		opacity: 0.8;
}
.navigation_panel .title_block .site_title .lead {
		font-size: 1.8rem;
		line-height: 1.4;
}
.navigation_panel .title_block {
		/* タブレット */
}
@media screen and (max-width: 1070px) {
		.navigation_panel .title_block .site_title a {
				width: 16rem;
		}
		.navigation_panel .title_block .site_title .lead {
				font-size: 1.6rem;
		}
}
.navigation_panel .title_block {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.navigation_panel .title_block .site_title {
				width: 100%;
		}
		.navigation_panel .title_block .site_title a {
				margin-right: 0;
				width: 28vw;
		}
		.navigation_panel .title_block .site_title .lead {
				display: none;
		}
}
.navigation_panel .title_block {
		/* for SP */
}
.navigation_panel {
		/*-------------------------------------------------------------
		body_block
		-------------------------------------------------------------*/
}
.navigation_panel .body_block {
		width: 100%;
		margin: 0 auto;
		margin-top: 2rem;
}
.navigation_panel .body_block .navigation_menu {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		padding: 0;
		margin: 0;
		list-style: none;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		gap: 0 2%;
}
.navigation_panel .body_block .navigation_menu li {
		width: 32%;
		margin-top: 3rem;
}
.navigation_panel .body_block .navigation_menu .c_btn, .navigation_panel .body_block .navigation_menu .c_btn_round {
		max-width: 100%;
		width: 100%;
}
.navigation_panel .body_block {
		/* タブレット */
}
.navigation_panel .body_block {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.navigation_panel .body_block {
				width: 100%;
				padding: 0;
				margin-top: 4vw;
		}
		.navigation_panel .body_block .navigation_menu {
				margin-top: 5vw;
		}
		.navigation_panel .body_block .navigation_menu li {
				width: 100%;
				margin-top: 0;
		}
		.navigation_panel .body_block .navigation_menu li + li {
				margin-top: 2vw;
		}
		.navigation_panel .body_block .navigation_menu .c_btn, .navigation_panel .body_block .navigation_menu .c_btn_round {
				width: 100%;
		}
		.navigation_panel .body_block .navigation_menu .c_btn a, .navigation_panel .body_block .navigation_menu .c_btn_round a {
				min-height: 3rem;
		}
		.navigation_panel .body_block .navigation_menu .c_btn a .label, .navigation_panel .body_block .navigation_menu .c_btn_round a .label {
				font-size: 4vw;
		}
}
.navigation_panel .body_block {
		/* for SP */
		/*-------------------------------------------------------------
		navigation_menu_sub
		-------------------------------------------------------------*/
}
.navigation_panel .body_block .navigation_menu_sub {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		margin-top: 3rem;
}
.navigation_panel .body_block .navigation_menu_sub li {
		width: 33.3%;
		margin-top: 0.5rem;
}
.navigation_panel .body_block .navigation_menu_sub a {
		font-size: 1.4rem;
}
.navigation_panel .body_block .navigation_menu_sub a .label {
		font-weight: normal !important;
}
@media screen and (max-width: 800px) {
		.navigation_panel .body_block .navigation_menu_sub {
				margin-top: 5vw;
		}
		.navigation_panel .body_block .navigation_menu_sub li {
				width: 50%;
				margin-top: 3vw;
		}
		.navigation_panel .body_block .navigation_menu_sub .about_shitei {
				width: 100%;
		}
		.navigation_panel .body_block .navigation_menu_sub a {
				font-size: 3.5vw;
		}
}
.navigation_panel .body_block {
		/*===============================================================
		c_search_box
		===============================================================*/
}
.navigation_panel .body_block .c_search_box {
		width: 100%;
		border-radius: 0.3rem;
}
.navigation_panel .body_block .c_search_box .category_block .category_list .category a {
		font-size: 1.8rem;
}
.navigation_panel .body_block .c_search_box .tag_block {
		max-height: calc(100vh - 60rem);
		overflow-y: scroll;
}
@media screen and (max-width: 1070px) {
		.navigation_panel .body_block .c_search_box .category_block .title_block {
				width: -webkit-fit-content;
				width: -moz-fit-content;
				width: fit-content;
		}
		.navigation_panel .body_block .c_search_box .category_block .title_block .label {
				font-size: 2rem;
		}
		.navigation_panel .body_block .c_search_box .category_block .category_list .category a {
				font-size: 1.7rem;
		}
}
@media screen and (max-width: 800px) {
		.navigation_panel .body_block .c_search_box {
				width: 100vw;
				border-radius: 0;
		}
		.navigation_panel .body_block .c_search_box .tag_block {
				max-height: calc(100vh - 16vw - 100vw);
				overflow-y: scroll;
		}
		.navigation_panel .body_block .c_search_box .category_list .category a {
				font-size: 3.6vw;
		}
}
.navigation_panel {
		/*-------------------------------------------------------------
			btn_close_navigation_panel
		-------------------------------------------------------------*/
}
.navigation_panel .btn_close_navigation_panel {
		margin-top: 2rem;
}
.navigation_panel .btn_close_navigation_panel a {
		display: inline-block;
		min-width: 20rem;
		font-size: 1.6rem;
		color: #fff;
		border: solid 1px #fff;
		padding: 1rem 3rem;
}
.navigation_panel .btn_close_navigation_panel a:hover {
		opacity: 0.6;
}
.navigation_panel .btn_close_navigation_panel {
		/* タブレット */
}
.navigation_panel .btn_close_navigation_panel {
		/* for TABLET */
		/* SP */
}
.navigation_panel .btn_close_navigation_panel {
		/* for SP */
}

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

hamburger_menu

===============================================================*/
.hamburger_menu {
		position: fixed;
		z-index: 500;
		top: 2.5rem;
		right: 2.5rem;
		width: 5rem;
		height: 5rem;
}
.hamburger_menu .hamburger_menu_inner {
		position: relative;
		width: 5rem;
		height: 5rem;
}
.hamburger_menu {
		/* タブレット */
}
.hamburger_menu {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.hamburger_menu {
				top: 2.5vw;
				right: 2.5vw;
				width: 11vw;
				height: 11vw;
		}
		.hamburger_menu .hamburger_menu_inner {
				width: 11vw;
				height: 11vw;
		}
}
.hamburger_menu {
		/* for SP */
		/*-------------------------------------------------------------
		hamburger_menu_btn_bg
		-------------------------------------------------------------*/
}
.hamburger_menu .hamburger_menu_btn_bg {
		background-color: #fff;
		width: 5rem;
		height: 5rem;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
}
.menu_open .hamburger_menu .hamburger_menu_btn_bg {
		background: #f5f5f5;
}
.hamburger_menu .hamburger_menu_btn_bg {
		/* タブレット */
}
.hamburger_menu .hamburger_menu_btn_bg {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.hamburger_menu .hamburger_menu_btn_bg {
				width: 11vw;
				height: 11vw;
				border: solid 1px #A5BAD4;
		}
		.menu_open .hamburger_menu .hamburger_menu_btn_bg {
				background: #f5f5f5;
				border: none;
		}
}
.hamburger_menu .hamburger_menu_btn_bg {
		/* for SP */
}
.hamburger_menu {
		/*-------------------------------------------------------------
		hamburger_menu_btn
		-------------------------------------------------------------*/
}
.hamburger_menu .hamburger_menu_btn {
		padding: 0;
		margin: 0;
		width: 5rem;
		height: 5rem;
		border-radius: 5rem;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		/* タブレット */
}
.hamburger_menu .hamburger_menu_btn {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.hamburger_menu .hamburger_menu_btn {
				width: 11vw;
				height: 11vw;
				border-radius: 11vw;
		}
}
.hamburger_menu .hamburger_menu_btn {
		/* for SP */
}
.hamburger_menu {
		/*-------------------------------------------------------------
		 menu_btn
		-------------------------------------------------------------*/
}
.hamburger_menu .menu_btn, .hamburger_menu .menu_btn_no_txt {
		display: block;
		position: relative;
		background-color: transparent !important;
		border: 0;
		width: 5rem;
		height: 5rem;
		border-radius: 5rem;
		padding: 0 !important;
		cursor: pointer;
}
.hamburger_menu .menu_btn .label, .hamburger_menu .menu_btn_no_txt .label {
		display: block;
		position: absolute;
		text-align: center;
		bottom: 10px;
		left: 0;
		right: 0;
		margin: auto;
		font-size: 11px;
		line-height: 12px;
		height: 12px;
		width: 100%;
		-webkit-animation-delay: 0.3s;
		        animation-delay: 0.3s;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
		opacity: 1;
		color: #000;
		pointer-events: none;
		font-weight: bold;
}
.hamburger_menu .menu_btn::after, .hamburger_menu .menu_btn_no_txt::after, .hamburger_menu .menu_btn::before, .hamburger_menu .menu_btn_no_txt::before {
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		width: 2rem;
		height: 2px;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
}
.hamburger_menu .menu_btn::after, .hamburger_menu .menu_btn_no_txt::after {
		background-color: #000;
		-webkit-transform: translateY(-2px) translateX(0px);
		        transform: translateY(-2px) translateX(0px);
}
.hamburger_menu .menu_btn::before, .hamburger_menu .menu_btn_no_txt::before {
		background-color: #000;
		-webkit-transform: translateY(-10px) translateX(0px);
		        transform: translateY(-10px) translateX(0px);
}
.hamburger_menu .menu_btn:hover::after, .hamburger_menu .menu_btn_no_txt:hover::after {
		-webkit-transform: translateY(-2px) translateX(3px);
		        transform: translateY(-2px) translateX(3px);
}
.hamburger_menu .menu_btn:hover::before, .hamburger_menu .menu_btn_no_txt:hover::before {
		-webkit-transform: translateY(-10px) translateX(-3px);
		        transform: translateY(-10px) translateX(-3px);
}
.hamburger_menu .menu_btn:hover, .hamburger_menu .menu_btn_no_txt:hover {
		text-decoration: none;
}
.menu_open .hamburger_menu .menu_btn::after, .menu_open .hamburger_menu .menu_btn_no_txt::after, .menu_open .hamburger_menu .menu_btn::before, .menu_open .hamburger_menu .menu_btn_no_txt::before {
		width: 1.5rem;
}
.menu_open .hamburger_menu .menu_btn::after, .menu_open .hamburger_menu .menu_btn_no_txt::after {
		-webkit-transform: rotate(-45deg) translate(5px, -5px);
		        transform: rotate(-45deg) translate(5px, -5px);
}
.menu_open .hamburger_menu .menu_btn::before, .menu_open .hamburger_menu .menu_btn_no_txt::before {
		-webkit-transform: rotate(45deg) translate(-5px, -5px);
		        transform: rotate(45deg) translate(-5px, -5px);
}
.menu_open .hamburger_menu .menu_btn:hover::after, .menu_open .hamburger_menu .menu_btn_no_txt:hover::after, .menu_open .hamburger_menu .menu_btn:hover::before, .menu_open .hamburger_menu .menu_btn_no_txt:hover::before {
		width: 2.5rem;
}
.hamburger_menu .menu_btn, .hamburger_menu .menu_btn_no_txt {
		/* タブレット */
}
.hamburger_menu .menu_btn, .hamburger_menu .menu_btn_no_txt {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.hamburger_menu .menu_btn, .hamburger_menu .menu_btn_no_txt {
				width: 11vw;
				height: 11vw;
				border-radius: 11vw;
		}
}
.hamburger_menu .menu_btn, .hamburger_menu .menu_btn_no_txt {
		/* for SP */
}
.hamburger_menu {
		/*-------------------------------------------------------------
		menu_btn_no_txt
		-------------------------------------------------------------*/
}
.hamburger_menu .menu_btn_no_txt .label {
		opacity: 0;
}
.hamburger_menu .menu_btn_no_txt::after {
		background-color: #000;
		-webkit-transform: translateY(3px) translateX(0px);
		        transform: translateY(3px) translateX(0px);
}
.hamburger_menu .menu_btn_no_txt::before {
		background-color: #000;
		-webkit-transform: translateY(-3px) translateX(0px);
		        transform: translateY(-3px) translateX(0px);
}
.hamburger_menu .menu_btn_no_txt:hover::after {
		-webkit-transform: translateY(3px) translateX(3px);
		        transform: translateY(3px) translateX(3px);
}
.hamburger_menu .menu_btn_no_txt:hover::before {
		-webkit-transform: translateY(-3px) translateX(-3px);
		        transform: translateY(-3px) translateX(-3px);
}
.menu_open .hamburger_menu .menu_btn_no_txt::after {
		-webkit-transform: rotate(-45deg);
		        transform: rotate(-45deg);
}
.menu_open .hamburger_menu .menu_btn_no_txt::before {
		-webkit-transform: rotate(45deg);
		        transform: rotate(45deg);
}
.hamburger_menu .menu_btn_no_txt {
		/* タブレット */
}
.hamburger_menu .menu_btn_no_txt {
		/* for TABLET */
		/* SP */
}
.hamburger_menu .menu_btn_no_txt {
		/* for SP */
}
.hamburger_menu {
		/*===============================================================
		//hamburger
		===============================================================*/
}

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

	c_pagenation

===============================================================*/
.c_pagenation {
		/*-------------------------------------------------------------
		c_pagenavi共通設定
		-------------------------------------------------------------*/
		/*-------------------------------------------------------------
		WP-PageNavi
		-------------------------------------------------------------*/
}
.c_pagenation .wp-pagenavi {
		text-align: center;
		position: relative;
		vertical-align: middle;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		gap: 10px;
}
.c_pagenation .wp-pagenavi a,
.c_pagenation .wp-pagenavi span {
		display: block;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		text-decoration: none;
		border-radius: 0;
}
.c_pagenation .wp-pagenavi .backtolistlink,
.c_pagenation .wp-pagenavi .page,
.c_pagenation .wp-pagenavi .current {
		border: solid 1px #A5BAD4;
		background: #fff;
		color: #1A397F;
		border-color: #A5BAD4;
		border-radius: 0.3rem;
		font-size: 18px;
		width: 40px;
		line-height: 38px;
}
@media screen and (max-width: 800px) {
		.c_pagenation .wp-pagenavi .backtolistlink,
		.c_pagenation .wp-pagenavi .page,
		.c_pagenation .wp-pagenavi .current {
				font-size: 4vw;
				width: 10vw;
				line-height: 10vw-2px;
		}
}
.c_pagenation .wp-pagenavi .backtolistlink {
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		padding: 0 40px;
		border-radius: 0.3rem;
}
@media screen and (max-width: 800px) {
		.c_pagenation .wp-pagenavi .backtolistlink {
				padding: 0 6vw;
		}
}
.c_pagenation .wp-pagenavi .pages {
		display: block;
		padding-bottom: 10px;
		width: 100%;
}
.c_pagenation .wp-pagenavi .current {
		color: #fff;
		background: #1A397F;
		border: solid 1px #A5BAD4;
}
.c_pagenation .wp-pagenavi a:focus,
.c_pagenation .wp-pagenavi a:hover {
		color: #fff;
		background: #1A397F;
		border: solid 1px #1A397F;
}
@media screen and (max-width: 800px) {
		.c_pagenation .wp-pagenavi {
				gap: 1vw;
				-webkit-box-pack: justify;
				    -ms-flex-pack: justify;
				        justify-content: space-between;
				-webkit-box-pack: center;
				    -ms-flex-pack: center;
				        justify-content: center;
		}
}
.c_pagenation {
		/*-------------------------------------------------------------
		前のページ/次のページ
		-------------------------------------------------------------*/
}
.c_pagenation .wp-pagenavi .previouspostslink,
.c_pagenation .wp-pagenavi .nextpostslink {
		position: relative;
		color: transparent;
		border: solid 1px #A5BAD4;
		white-space: nowrap;
		overflow: hidden;
		text-indent: 100%;
		border-radius: 0.3rem;
		font-size: 18px;
		width: 40px;
		line-height: 38px;
}
@media screen and (max-width: 800px) {
		.c_pagenation .wp-pagenavi .previouspostslink,
		.c_pagenation .wp-pagenavi .nextpostslink {
				font-size: 4vw;
				width: 10vw;
				line-height: 10vw-2px;
		}
}
.c_pagenation .wp-pagenavi .previouspostslink::after,
.c_pagenation .wp-pagenavi .nextpostslink::after {
		content: "";
		display: inline-block;
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		width: 8px;
		height: 8px;
		border-right: solid 1px #1A397F;
		border-bottom: solid 1px #1A397F;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
}
@media screen and (max-width: 800px) {
		.c_pagenation .wp-pagenavi .previouspostslink::after,
		.c_pagenation .wp-pagenavi .nextpostslink::after {
				width: 2vw;
				height: 2vw;
		}
}
.c_pagenation .wp-pagenavi .previouspostslink::after {
		left: 5px;
		right: 0;
		-webkit-transform: rotate(135deg);
		        transform: rotate(135deg);
}
.c_pagenation .wp-pagenavi .nextpostslink::after {
		left: 0;
		right: 5px;
		-webkit-transform: rotate(-45deg);
		        transform: rotate(-45deg);
}
.c_pagenation .wp-pagenavi .previouspostslink:focus,
.c_pagenation .wp-pagenavi .nextpostslink:focus,
.c_pagenation .wp-pagenavi .previouspostslink:hover,
.c_pagenation .wp-pagenavi .nextpostslink:hover {
		color: transparent;
		background: #1A397F;
}
.c_pagenation .wp-pagenavi .previouspostslink:focus::after,
.c_pagenation .wp-pagenavi .nextpostslink:focus::after,
.c_pagenation .wp-pagenavi .previouspostslink:hover::after,
.c_pagenation .wp-pagenavi .nextpostslink:hover::after {
		border-color: #fff !important;
}
.c_pagenation .wp-pagenavi .txt_label {
		color: #1A397F;
		text-indent: 0 !important;
		padding: 0 28px;
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
}
.c_pagenation .wp-pagenavi .txt_label:focus,
.c_pagenation .wp-pagenavi .txt_label:hover {
		color: #fff;
		background: #1A397F;
		border: solid 1px #A5BAD4;
}
.c_pagenation .wp-pagenavi .previouspostslink.txt_label::after {
		left: 15px;
		right: auto;
}
.c_pagenation .wp-pagenavi .nextpostslink.txt_label::after {
		left: auto;
		right: 15px;
}
@media screen and (max-width: 800px) {
		.c_pagenation .wp-pagenavi .txt_label {
				padding: 0 3vw;
		}
		.c_pagenation .wp-pagenavi .previouspostslink.txt_label {
				padding-left: 6vw;
		}
		.c_pagenation .wp-pagenavi .nextpostslink.txt_label {
				padding-right: 6vw;
		}
		.c_pagenation .wp-pagenavi .previouspostslink.txt_label::after {
				left: 3vw;
		}
		.c_pagenation .wp-pagenavi .nextpostslink.txt_label::after {
				right: 3vw;
		}
}
.c_pagenation .wp-pagenavi .deactive {
		visibility: hidden;
		pointer-events: none;
		color: rgba(26, 57, 127, 0.3);
		border: solid 1px rgba(165, 186, 212, 0.3);
		background: transparent;
}
.c_pagenation .wp-pagenavi .deactive::after {
		opacity: 0.3;
}
.c_pagenation {
		/*-------------------------------------------------------------
		最初のページ/最後のページ
		-------------------------------------------------------------*/
}
.c_pagenation .wp-pagenavi .first,
.c_pagenation .wp-pagenavi .last {
		position: relative;
		color: transparent;
		border: solid 1px #A5BAD4;
		border-radius: 0.3rem;
		font-size: 18px;
		width: 40px;
		line-height: 38px;
}
@media screen and (max-width: 800px) {
		.c_pagenation .wp-pagenavi .first,
		.c_pagenation .wp-pagenavi .last {
				font-size: 4vw;
				width: 10vw;
				line-height: 10vw-2px;
		}
}
.c_pagenation .wp-pagenavi .first {
		margin-left: 0;
}
.c_pagenation .wp-pagenavi .last {
		margin-right: 0;
}
.c_pagenation .wp-pagenavi .first::before,
.c_pagenation .wp-pagenavi .first::after,
.c_pagenation .wp-pagenavi .last::before,
.c_pagenation .wp-pagenavi .last::after {
		content: "";
		display: inline-block;
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		width: 7px;
		height: 7px;
		border-right: solid 1px #A5BAD4;
		border-bottom: solid 1px #A5BAD4;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
}
@media screen and (max-width: 800px) {
		.c_pagenation .wp-pagenavi .first::before,
		.c_pagenation .wp-pagenavi .first::after,
		.c_pagenation .wp-pagenavi .last::before,
		.c_pagenation .wp-pagenavi .last::after {
				width: 2vw;
				height: 2vw;
		}
}
.c_pagenation .wp-pagenavi .first::before {
		left: 14px;
		right: auto;
		-webkit-transform: rotate(135deg);
		        transform: rotate(135deg);
}
.c_pagenation .wp-pagenavi .first::after {
		left: 19px;
		right: auto;
		-webkit-transform: rotate(135deg);
		        transform: rotate(135deg);
}
.c_pagenation .wp-pagenavi .last::before {
		right: 14px;
		left: auto;
		-webkit-transform: rotate(-45deg);
		        transform: rotate(-45deg);
}
.c_pagenation .wp-pagenavi .last::after {
		right: 19px;
		left: auto;
		-webkit-transform: rotate(-45deg);
		        transform: rotate(-45deg);
}
.c_pagenation .wp-pagenavi .first:focus,
.c_pagenation .wp-pagenavi .last:focus,
.c_pagenation .wp-pagenavi .first:hover,
.c_pagenation .wp-pagenavi .last:hover {
		color: transparent !important;
		background: #1A397F;
}
.c_pagenation .wp-pagenavi .first:focus::before,
.c_pagenation .wp-pagenavi .first:focus::after,
.c_pagenation .wp-pagenavi .last:focus::before,
.c_pagenation .wp-pagenavi .last:focus::after,
.c_pagenation .wp-pagenavi .first:hover::before,
.c_pagenation .wp-pagenavi .first:hover::after,
.c_pagenation .wp-pagenavi .last:hover::before,
.c_pagenation .wp-pagenavi .last:hover::after {
		border-color: #fff;
}
@media screen and (max-width: 800px) {
		.c_pagenation .wp-pagenavi .first {
				margin-right: 1vw;
		}
		.c_pagenation .wp-pagenavi .first::before {
				left: 3.3vw;
		}
		.c_pagenation .wp-pagenavi .first::after {
				left: 4.7vw;
		}
		.c_pagenation .wp-pagenavi .last::before {
				right: 4.7vw;
		}
		.c_pagenation .wp-pagenavi .last::after {
				right: 3.3vw;
		}
}
.c_pagenation {
		/*-------------------------------------------------------------
		省略マーク
		-------------------------------------------------------------*/
}
.c_pagenation .wp-pagenavi .extend {
		font-size: 18px;
		display: inline-block;
		margin: 0;
		color: #1A397F;
		vertical-align: bottom;
}
@media screen and (max-width: 800px) {
		.c_pagenation .wp-pagenavi .extend {
				font-size: 3vw;
				margin: 0;
		}
}
.c_pagenation {
		/*===============================================================
		//	c_pagenation
		===============================================================*/
}

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

    entry-title

===============================================================*/
.entry-title .title {
		font-size: 4rem;
		color: #A1394A;
}
.entry-title * + .title {
		margin-top: 0.5em;
}
@media screen and (max-width: 800px) {
		.entry-title .title {
				font-size: 6vw;
				line-height: 1.5;
		}
		.entry-title * + .title {
				margin-top: 0.5em;
		}
}

.entry-title + .entry-content {
		margin-top: 5rem;
}
@media screen and (max-width: 800px) {
		.entry-title + .entry-content {
				margin-top: 5vw;
		}
}

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

.entry-content   //  フロント
.editor-styles-wrapper　//　管理画面

===============================================================*/
.editor-styles-wrapper a,
.entry-content a {
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
}
.editor-styles-wrapper,
.entry-content {
		/* タブレット */
}
.editor-styles-wrapper,
.entry-content {
		/* for TABLET */
		/* SP */
}
.editor-styles-wrapper,
.entry-content {
		/* for SP */
		/*-------------------------------------------------------------
		記事タイトル
		-------------------------------------------------------------*/
}
.editor-styles-wrapper .wp-block-post-title,
.entry-content .wp-block-post-title {
		font-size: var(--heading--font-size-h1);
		letter-spacing: var(--heading--letter-spacing-h1);
		line-height: var(--heading--line-height-h1);
		font-weight: bold;
		border-bottom: solid 3px #1A397F;
		padding-bottom: 0.5em;
		margin-bottom: 1em;
}
.editor-styles-wrapper,
.entry-content {
		/*-------------------------------------------------------------
		    マージン
		-------------------------------------------------------------*/
}
.editor-styles-wrapper > :first-child,
.entry-content > :first-child {
		margin-top: 0 !important;
}
.editor-styles-wrapper .wp-block-heading:first-of-type:first-child,
.entry-content .wp-block-heading:first-of-type:first-child {
		margin-top: 0 !important;
}
.editor-styles-wrapper .wp-block-heading,
.entry-content .wp-block-heading {
		font-weight: bold;
		margin-bottom: 0;
}
.editor-styles-wrapper h1.wp-block-heading,
.entry-content h1.wp-block-heading {
		font-size: var(--heading--font-size-h1);
		letter-spacing: var(--heading--letter-spacing-h1);
		line-height: var(--heading--line-height-h1);
}
@media screen and (max-width: 800px) {
		.editor-styles-wrapper h1.wp-block-heading,
		.entry-content h1.wp-block-heading {
				margin-top: 1.5em;
				font-size: 5vw;
		}
}
.editor-styles-wrapper h2.wp-block-heading,
.entry-content h2.wp-block-heading {
		margin-top: 8rem;
		font-size: var(--heading--font-size-h2);
		letter-spacing: var(--heading--letter-spacing-h2);
		line-height: var(--heading--line-height-h2);
}
@media screen and (max-width: 800px) {
		.editor-styles-wrapper h2.wp-block-heading,
		.entry-content h2.wp-block-heading {
				margin-top: 1.5em;
				font-size: 5vw;
				line-height: 1.6;
		}
}
.editor-styles-wrapper h3.wp-block-heading,
.entry-content h3.wp-block-heading {
		margin-top: 5rem;
		font-size: var(--heading--font-size-h3);
		letter-spacing: var(--heading--letter-spacing-h3);
		line-height: var(--heading--line-height-h3);
}
@media screen and (max-width: 800px) {
		.editor-styles-wrapper h3.wp-block-heading,
		.entry-content h3.wp-block-heading {
				margin-top: 1.5em;
				font-size: 4.5vw;
		}
}
.editor-styles-wrapper h4.wp-block-heading,
.entry-content h4.wp-block-heading {
		margin-top: 4rem;
		font-size: var(--heading--font-size-h4);
		font-weight: var(--heading--font-weight-strong);
		letter-spacing: var(--heading--letter-spacing-h4);
		line-height: var(--heading--line-height-h4);
}
@media screen and (max-width: 800px) {
		.editor-styles-wrapper h4.wp-block-heading,
		.entry-content h4.wp-block-heading {
				margin-top: 1.5em;
				font-size: 4vw;
		}
}
.editor-styles-wrapper h5.wp-block-heading,
.entry-content h5.wp-block-heading {
		margin-top: 3rem;
		font-size: var(--heading--font-size-h5);
		font-weight: var(--heading--font-weight-strong);
		letter-spacing: var(--heading--letter-spacing-h5);
		line-height: var(--heading--line-height-h5);
}
@media screen and (max-width: 800px) {
		.editor-styles-wrapper h5.wp-block-heading,
		.entry-content h5.wp-block-heading {
				margin-top: 1.5em;
				font-size: 4vw;
		}
}
.editor-styles-wrapper h6.wp-block-heading,
.entry-content h6.wp-block-heading {
		margin-top: 3rem;
		font-size: var(--heading--font-size-h6);
		font-weight: var(--heading--font-weight-strong);
		letter-spacing: var(--heading--letter-spacing-h6);
		line-height: var(--heading--line-height-h6);
}
@media screen and (max-width: 800px) {
		.editor-styles-wrapper h6.wp-block-heading,
		.entry-content h6.wp-block-heading {
				margin-top: 1.5em;
				font-size: 4vw;
		}
}
.editor-styles-wrapper .wp-block-image,
.editor-styles-wrapper .wp-block-columns,
.editor-styles-wrapper .wp-block-table,
.editor-styles-wrapper .wp-block-buttons,
.editor-styles-wrapper .wp-block-gallery,
.editor-styles-wrapper .wp-block-embed,
.editor-styles-wrapper .wp-block-quote,
.editor-styles-wrapper .wp-block-pullquote,
.editor-styles-wrapper .wp-block-audio,
.editor-styles-wrapper * + ul,
.editor-styles-wrapper * + ol,
.editor-styles-wrapper * + p,
.entry-content .wp-block-image,
.entry-content .wp-block-columns,
.entry-content .wp-block-table,
.entry-content .wp-block-buttons,
.entry-content .wp-block-gallery,
.entry-content .wp-block-embed,
.entry-content .wp-block-quote,
.entry-content .wp-block-pullquote,
.entry-content .wp-block-audio,
.entry-content * + ul,
.entry-content * + ol,
.entry-content * + p {
		margin-top: 2rem;
		margin-bottom: 0;
}
.editor-styles-wrapper p + .wp-block-quote,
.editor-styles-wrapper p + .wp-block-pullquote,
.entry-content p + .wp-block-quote,
.entry-content p + .wp-block-pullquote {
		margin-top: 5rem;
}
.editor-styles-wrapper,
.entry-content {
		/*-------------------------------------------------------------
		    テーブル（表組） 
		-------------------------------------------------------------*/
}
.editor-styles-wrapper,
.entry-content {
		/*-------------------------------------------------------------
		    カラム
		-------------------------------------------------------------*/
}
.editor-styles-wrapper .wp-block-columns .wp-block-column,
.entry-content .wp-block-columns .wp-block-column {
		margin-bottom: 0;
}
.editor-styles-wrapper,
.entry-content {
		/*-------------------------------------------------------------
		    ボタン
		-------------------------------------------------------------*/
}
.editor-styles-wrapper .wp-block-buttons a,
.entry-content .wp-block-buttons a {
		background-color: #1A397F;
		border-radius: 0.3rem;
		-webkit-transition: 0.3s;
		transition: 0.3s;
}
.editor-styles-wrapper .wp-block-buttons a:hover,
.entry-content .wp-block-buttons a:hover {
		opacity: 0.8;
}
.editor-styles-wrapper,
.entry-content {
		/*-------------------------------------------------------------
		    画像
		-------------------------------------------------------------*/
}
.editor-styles-wrapper,
.entry-content {
		/*-------------------------------------------------------------
		    キャプション 
		-------------------------------------------------------------*/
}
.editor-styles-wrapper .wp-element-caption,
.entry-content .wp-element-caption {
		font-size: 1.4rem;
		margin-top: 1rem;
		margin-bottom: 0;
		text-align: left;
		color: #1A397F !important;
}
.editor-styles-wrapper,
.entry-content {
		/*-------------------------------------------------------------
		    リスト ul/ol
		-------------------------------------------------------------*/
}
.editor-styles-wrapper,
.entry-content {
		/*-------------------------------------------------------------
		    引用
		-------------------------------------------------------------*/
}
.editor-styles-wrapper .wp-block-quote,
.entry-content .wp-block-quote {
		background-color: #EEF1F7 !important;
		padding: 3rem;
		border-radius: 1rem;
		border-left: 0;
}
.editor-styles-wrapper .wp-block-quote::before,
.entry-content .wp-block-quote::before {
		display: none;
}
.editor-styles-wrapper .wp-block-quote cite,
.entry-content .wp-block-quote cite {
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		font-size: 1.2rem;
		margin-top: 2rem;
		display: block;
}
.editor-styles-wrapper .wp-block-pullquote,
.entry-content .wp-block-pullquote {
		border: solid 1px #A5BAD4 !important;
		padding: 3rem;
}
.editor-styles-wrapper .wp-block-pullquote blockquote::before,
.entry-content .wp-block-pullquote blockquote::before {
		display: none;
}
.editor-styles-wrapper .wp-block-quote cite,
.editor-styles-wrapper .wp-block-pullquote cite,
.entry-content .wp-block-quote cite,
.entry-content .wp-block-pullquote cite {
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		font-size: 1.2rem;
		margin-top: 2rem;
		display: block;
}
.editor-styles-wrapper,
.entry-content {
		/*-------------------------------------------------------------
		    ギャラリー
		-------------------------------------------------------------*/
}
.editor-styles-wrapper,
.entry-content {
		/*-------------------------------------------------------------
		    YouTube
		-------------------------------------------------------------*/
}
.editor-styles-wrapper .wp-block-embed,
.entry-content .wp-block-embed {
		position: relative;
}
.editor-styles-wrapper .wp-block-embed .wp-block-embed__wrapper,
.entry-content .wp-block-embed .wp-block-embed__wrapper {
		position: relative;
}
.editor-styles-wrapper .wp-block-embed .wp-block-embed__wrapper::before,
.entry-content .wp-block-embed .wp-block-embed__wrapper::before {
		position: relative;
		content: "";
		display: block;
		padding-top: 56.25%;
		z-index: 1;
}
.editor-styles-wrapper .wp-block-embed .wp-block-embed__wrapper iframe,
.entry-content .wp-block-embed .wp-block-embed__wrapper iframe {
		bottom: 0;
		height: 100%;
		left: 0;
		position: absolute;
		right: 0;
		top: 0;
		width: 100%;
		z-index: 2;
}
.editor-styles-wrapper,
.entry-content {
		/*-------------------------------------------------------------
		    音声ファイル
		-------------------------------------------------------------*/
}
.editor-styles-wrapper,
.entry-content {
		/*-------------------------------------------------------------
		    モーダルのボタン
		-------------------------------------------------------------*/
}
.editor-styles-wrapper .wp-lightbox-container button,
.entry-content .wp-lightbox-container button {
		padding: 0 !important;
		margin: 0 !important;
}
.editor-styles-wrapper .wp-lightbox-container svg,
.entry-content .wp-lightbox-container svg {
		fill: #eee;
		width: 1.6rem;
		height: 1.6rem;
}
.editor-styles-wrapper,
.entry-content {
		/*-------------------------------------------------------------
		has-background
		-------------------------------------------------------------*/
}
.editor-styles-wrapper .has-background,
.entry-content .has-background {
		border-radius: 2rem;
		padding: 3rem;
}
@media screen and (max-width: 800px) {
		.editor-styles-wrapper .has-background,
		.entry-content .has-background {
				border-radius: 2vw;
				padding: 5vw;
		}
}
.editor-styles-wrapper,
.entry-content {
		/*===============================================================
		//entry-content
		===============================================================*/
}

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

    section_blog

===============================================================*/
@media screen and (max-width: 800px) {
		.section_blog .content + .content {
				margin-top: 6vw !important;
		}
}
.section_blog {
		/*===============================================================
		blog_headline
		===============================================================*/
}
.section_blog .blog_headline {
		text-align: center;
}
.section_blog .blog_headline .title {
		font-size: 3rem;
		font-weight: bold;
}
/*===============================================================

    blog_area_wrp

===============================================================*/
.blog_area_wrp {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
}
.blog_area_wrp .blog_area_main {
		width: calc(100% - 350px);
}
.blog_area_wrp .blog_area_sub {
		width: 300px;
}
@media screen and (max-width: 800px) {
		.blog_area_wrp {
				-webkit-box-orient: vertical;
				-webkit-box-direction: normal;
				    -ms-flex-direction: column;
				        flex-direction: column;
		}
		.blog_area_wrp .blog_area_main {
				width: 100%;
		}
		.blog_area_wrp .blog_area_sub {
				width: 100%;
				margin-top: 10vw;
		}
}

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

    blog_main_area

===============================================================*/
.blog_area_main .mainimg {
		margin-top: 5rem;
}
@media screen and (max-width: 800px) {
		.blog_area_main .mainimg {
				margin-top: 5vw;
		}
}

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

    blog_sub_area

===============================================================*/
.blog_area_sub {
		/*===============================================================
		widget
		===============================================================*/
}
.blog_area_sub .widget + .widget {
		margin-top: 5rem;
}
.blog_area_sub .widget .widget-title {
		font-size: 2.5rem;
		font-size: 2rem;
}
@media screen and (max-width: 800px) {
		.blog_area_sub .widget {
				padding-top: 8vw;
				border-top: solid 1px #666 !important;
		}
		.blog_area_sub .widget + .widget {
				margin-top: 10vw;
		}
}
.blog_area_sub .widget {
		/*-------------------------------------------------------------
		ul
		-------------------------------------------------------------*/
}
.blog_area_sub .widget ul {
		border-top: solid 1px #A5BAD4;
		margin-top: 2rem;
}
.blog_area_sub .widget ul li a {
		text-underline-offset: 5px;
		color: #1A397F;
		text-decoration-color: #ccc;
		text-decoration: none;
		padding: 1rem;
		font-size: 1.6rem;
		line-height: 1.5;
		display: block;
		border-bottom: solid 1px #A5BAD4;
}
.blog_area_sub .widget ul li a:hover {
		background-color: #EEF1F7;
}
@media screen and (max-width: 800px) {
		.blog_area_sub .widget ul {
				margin-top: 3vw;
		}
		.blog_area_sub .widget ul li a {
				padding: 1rem;
				font-size: 3.5vw;
		}
}

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

    widget_search

===============================================================*/
.blog_area_wrp {
		/*===============================================================
		    search-form
		===============================================================*/
}
.blog_area_wrp input[type=search] {
		color: #A5BAD4;
		background: #fff;
		background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0));
		border: 1px solid #A5BAD4;
		border-radius: 0.3rem;
		display: block;
		padding: 0.7em;
		width: 100%;
		font-size: 1.4rem;
}
.blog_area_wrp button,
.blog_area_wrp input[type=button],
.blog_area_wrp input[type=submit] {
		border: 0;
		border-radius: 0.3rem;
		-webkit-box-shadow: none;
		box-shadow: none;
		color: #fff;
		cursor: pointer;
		display: inline-block;
		font-size: 1.4rem;
		font-weight: 800;
		line-height: 1;
		padding: 0em 2em;
		text-shadow: none;
}
.blog_area_wrp input + button,
.blog_area_wrp input + input[type=button],
.blog_area_wrp input + input[type=submit] {
		padding: 0.75em 2em;
}
.blog_area_wrp [type=search] {
		-webkit-appearance: textfield;
		outline-offset: -2px;
}
.blog_area_wrp .search-form {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		gap: 8px;
		max-width: 400px;
		margin: 0 auto;
}
.blog_area_wrp .search-form label {
		position: absolute;
		left: -9999px;
}
.blog_area_wrp .search-form .search-field {
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
		padding: 10px 12px;
		font-size: 1.4rem;
		line-height: 1;
		border: 1px solid #ccc;
		border-radius: 0.3rem;
		-webkit-transition: border-color 0.3s, -webkit-box-shadow 0.3s;
		transition: border-color 0.3s, -webkit-box-shadow 0.3s;
		transition: border-color 0.3s, box-shadow 0.3s;
		transition: border-color 0.3s, box-shadow 0.3s, -webkit-box-shadow 0.3s;
}
.blog_area_wrp .search-form .search-field:focus {
		border-color: #1f70ae;
		-webkit-box-shadow: 0 0 0 3px rgba(49, 143, 214, 0.2);
		        box-shadow: 0 0 0 3px rgba(49, 143, 214, 0.2);
		outline: none;
}
.blog_area_wrp .search-form .search-submit {
		padding: 14px 10px !important;
		font-size: 1.4rem;
		line-height: 1;
		font-weight: bold;
		color: #fff;
		background: #1A397F !important;
		border: solid 1px #1A397F !important;
		border-radius: 0.3rem;
		cursor: pointer;
		-webkit-transition: background 0.3s;
		transition: background 0.3s;
}
.blog_area_wrp .search-form .search-submit:hover {
		background: #fff !important;
		color: #1A397F;
}
.blog_area_wrp .search-form .search-submit:active {
		background: #fff !important;
		color: #1A397F;
}
/*===============================================================

    blog_area_wrp

===============================================================*/
.blog_area_wrp .widget_calendar #wp-calendar {
		width: 100%;
		border-collapse: separate;
		border-spacing: 0;
		table-layout: fixed;
		color: #222;
}
.blog_area_wrp .widget_calendar #wp-calendar caption {
		margin-bottom: 12px;
		font-weight: 700;
		font-size: clamp(16px, 2.4vw, 18px);
		text-align: left;
		letter-spacing: 0.02em;
}
.blog_area_wrp .widget_calendar #wp-calendar thead th {
		font-weight: 600;
		font-size: 12px;
		text-align: center;
		color: #8a8a8a;
		padding: 8px 0;
		border-bottom: 1px solid #EDEDED;
		border-top: 1px solid #EDEDED;
}
.blog_area_wrp .widget_calendar #wp-calendar thead th:nth-child(6) {
		color: #3057D8;
}
.blog_area_wrp .widget_calendar #wp-calendar thead th:nth-child(7) {
		color: #E02D3B;
}
.blog_area_wrp .widget_calendar #wp-calendar tbody td {
		position: relative;
		text-align: center;
		padding: 10px 0;
		height: 48px;
		font-size: 14px;
		border-bottom: 1px solid #f2f2f2;
		-webkit-transition: background-color 0.2s ease, color 0.2s ease;
		transition: background-color 0.2s ease, color 0.2s ease;
		-webkit-user-select: none;
		   -moz-user-select: none;
		    -ms-user-select: none;
		        user-select: none;
}
.blog_area_wrp .widget_calendar #wp-calendar tbody td:not(.pad) {
		border-right: 1px solid #f7f7f7;
}
.blog_area_wrp .widget_calendar #wp-calendar tbody td:not(.pad):hover {
		background: #f8fbff;
}
.blog_area_wrp .widget_calendar #wp-calendar tbody td:last-child {
		border-right: none;
}
.blog_area_wrp .widget_calendar #wp-calendar tbody td:nth-child(6) {
		color: rgb(37.8109756098, 75.6219512195, 200.6890243902);
}
.blog_area_wrp .widget_calendar #wp-calendar tbody td:nth-child(7) {
		color: rgb(212.1784232365, 31.3215767635, 45.4668049793);
}
.blog_area_wrp .widget_calendar #wp-calendar tbody td#today {
		font-weight: 700;
		color: #3057D8;
		background-color: rgba(48, 87, 216, 0.08);
		outline-offset: -2px;
}
.blog_area_wrp .widget_calendar #wp-calendar tbody td#today:hover {
		background: rgba(48, 87, 216, 0.08);
}
.blog_area_wrp .widget_calendar #wp-calendar tbody td.pad {
		color: transparent;
		border-bottom: none;
		background: transparent;
		pointer-events: none;
}
.blog_area_wrp .widget_calendar #wp-calendar tbody tr:last-child td {
		border-bottom: 0;
}
.blog_area_wrp .widget_calendar .wp-calendar-nav {
		margin-top: 10px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		gap: 8px;
}
.blog_area_wrp .widget_calendar .wp-calendar-nav .pad {
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
}
.blog_area_wrp .widget_calendar .wp-calendar-nav a {
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		gap: 6px;
		font-size: 13px;
		font-weight: 600;
		color: #3057D8;
		border-radius: 8px;
		text-decoration: none;
		-webkit-transition: background-color 0.2s ease, border-color 0.2s ease, -webkit-transform 0.04s ease;
		transition: background-color 0.2s ease, border-color 0.2s ease, -webkit-transform 0.04s ease;
		transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.04s ease;
		transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.04s ease, -webkit-transform 0.04s ease;
}
.blog_area_wrp .widget_calendar .wp-calendar-nav a .svg-icon {
		-webkit-box-flex: 0;
		    -ms-flex: 0 0 auto;
		        flex: 0 0 auto;
}
.blog_area_wrp .widget_calendar .wp-calendar-nav a:hover {
		background: #eef4ff;
		border-color: rgba(48, 87, 216, 0.3);
}
.blog_area_wrp .widget_calendar .wp-calendar-nav a:active {
		-webkit-transform: translateY(1px);
		        transform: translateY(1px);
}
.blog_area_wrp .widget_calendar .wp-calendar-nav .wp-calendar-nav-next a[href=""],
.blog_area_wrp .widget_calendar .wp-calendar-nav .wp-calendar-nav-next a[href="#"], .blog_area_wrp .widget_calendar .wp-calendar-nav .wp-calendar-nav-next:empty,
.blog_area_wrp .widget_calendar .wp-calendar-nav .wp-calendar-nav-prev a[href=""],
.blog_area_wrp .widget_calendar .wp-calendar-nav .wp-calendar-nav-prev a[href="#"],
.blog_area_wrp .widget_calendar .wp-calendar-nav .wp-calendar-nav-prev:empty {
		pointer-events: none;
		opacity: 0.4;
		-webkit-filter: grayscale(1);
		        filter: grayscale(1);
}
.blog_area_wrp .widget_calendar a:focus-visible,
.blog_area_wrp .widget_calendar button:focus-visible,
.blog_area_wrp .widget_calendar td#today:focus-visible {
		outline: 3px solid rgba(48, 87, 216, 0.35);
		outline-offset: 2px;
		border-radius: 10px;
}
@media (max-width: 480px) {
		.blog_area_wrp .widget_calendar .calendar_wrap {
				padding: 12px;
				border-radius: 10px;
		}
		.blog_area_wrp .widget_calendar #wp-calendar caption {
				margin-bottom: 10px;
				font-size: 16px;
		}
		.blog_area_wrp .widget_calendar #wp-calendar thead th {
				font-size: 11px;
				padding: 6px 0;
		}
		.blog_area_wrp .widget_calendar #wp-calendar tbody td {
				height: 40px;
				font-size: 13px;
				padding: 6px 0;
				border-bottom: 1px solid #f5f5f5;
		}
		.blog_area_wrp .widget_calendar .wp-calendar-nav a {
				padding: 7px 9px;
				font-size: 12px;
				border-radius: 7px;
		}
}

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

    _serch_result

===============================================================*/
.serch_result {
		/*===============================================================
		page-header
		===============================================================*/
}
.serch_result .page-header .page-title {
		font-size: 3rem;
}
.serch_result .page-header .search-term {
		color: #1A397F;
}
.serch_result {
		/*===============================================================
		search-result-count
		===============================================================*/
}
.serch_result .search-result-count {
		font-size: 1.6rem;
}
.serch_result {
		/*===============================================================
		    entry
		===============================================================*/
}
.serch_result .entry {
		border: solid 1px #ccc;
		margin-top: 3rem;
		padding: 3rem;
}
.serch_result .entry .entry-title {
		font-size: 2rem;
}
.serch_result .entry .entry-content p {
		font-size: 90%;
		line-height: 1.6;
}
.serch_result .entry .entry-content .searchtext {
		background-color: #ff0;
}
@media screen and (max-width: 800px) {
		.serch_result .entry {
				margin-top: 5vw;
				padding: 5vw;
		}
		.serch_result .entry .entry-content p {
				font-size: 90%;
				line-height: 1.6;
				overflow-wrap: anywhere;
				/* 収まらない場合に折り返す */
				word-break: normal;
				/* 単語の分割はデフォルトに依存 */
				line-break: strict;
				/* 禁則処理を厳格に適用 */
		}
		.serch_result .entry .entry-content .searchtext {
				background-color: #ff0;
		}
}
.serch_result {
		/*-------------------------------------------------------------
		c_pagenation
		-------------------------------------------------------------*/
}
.serch_result .c_pagenation {
		margin-top: 50px;
}
@media screen and (max-width: 800px) {
		.serch_result .c_pagenation {
				margin-top: 10vw;
		}
}

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

    blog_entry_list

===============================================================*/
.blog_entry_list {
		/*===============================================================
		entry_wrp
		===============================================================*/
}
.blog_entry_list .entry_wrp {
		border-top: 2px solid #000;
		padding-top: 3rem;
}
.blog_entry_list .entry_wrp + .entry_wrp {
		margin-top: 12rem;
}
.blog_entry_list {
		/*===============================================================
		entry-title
		===============================================================*/
}
.blog_entry_list .entry-title .title {
		font-size: 3rem;
}
.blog_entry_list {
		/*===============================================================
		entry-content
		===============================================================*/
}
.blog_entry_list {
		/*===============================================================
		entry-permalink
		===============================================================*/
}
.blog_entry_list .entry-permalink {
		margin-top: 3rem;
		padding: 2rem;
		background-color: #eee;
		border-radius: 10px;
		font-size: 1.4rem;
		line-height: 1.4;
}
/*===============================================================

    blog_entry_list_tile

===============================================================*/
.blog_entry_list_tile {
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: (1fr)[4];
		grid-template-columns: repeat(4, 1fr);
		position: relative;
		width: 100vw;
		left: 50%;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
}
.blog_entry_list_tile .entry_tile {
		border-bottom: 1px solid #A5BAD4;
}
.blog_entry_list_tile .entry_tile:nth-child(-n+4) {
		border-top: 1px solid #A5BAD4;
}
.blog_entry_list_tile .entry_tile:not(:nth-child(4n)) {
		border-right: 1px solid #A5BAD4;
}
@media screen and (max-width: 1070px) {
		.blog_entry_list_tile {
				-ms-grid-columns: (1fr)[3];
				grid-template-columns: repeat(3, 1fr);
		}
		.blog_entry_list_tile .entry_tile:nth-child(-n+4) {
				border-top: none;
		}
		.blog_entry_list_tile .entry_tile:not(:nth-child(4n)) {
				border-right: none;
		}
		.blog_entry_list_tile .entry_tile:nth-child(-n+3) {
				border-top: 1px solid #A5BAD4;
		}
		.blog_entry_list_tile .entry_tile:not(:nth-child(3n)) {
				border-right: 1px solid #A5BAD4;
		}
}
@media screen and (max-width: 800px) {
		.blog_entry_list_tile {
				-ms-grid-columns: (1fr)[2];
				grid-template-columns: repeat(2, 1fr);
		}
		.blog_entry_list_tile .entry_tile:nth-child(-n+4) {
				border-top: none;
		}
		.blog_entry_list_tile .entry_tile:not(:nth-child(4n)) {
				border-right: none;
		}
		.blog_entry_list_tile .entry_tile:nth-child(-n+3) {
				border-top: none;
		}
		.blog_entry_list_tile .entry_tile:not(:nth-child(3n)) {
				border-right: none;
		}
		.blog_entry_list_tile .entry_tile:nth-child(-n+2) {
				border-top: 1px solid #A5BAD4;
		}
		.blog_entry_list_tile .entry_tile:not(:nth-child(2n)) {
				border-right: 1px solid #A5BAD4;
		}
}
.blog_entry_list_tile {
		/*===============================================================
		entry_tile
		===============================================================*/
}
.blog_entry_list_tile .entry_tile {
		color: #1A397F;
		text-decoration: none;
		position: relative;
		padding: 8rem 4.6rem 6rem;
}
.blog_entry_list_tile .entry_tile .title {
		line-height: 1.6;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		line-clamp: 2;
		overflow: hidden;
		margin-top: 0.5em;
		font-size: 1.8rem;
		color: #1A397F;
}
.blog_entry_list_tile .entry_tile .thumbnail {
		aspect-ratio: 5/4;
		overflow: hidden;
}
.blog_entry_list_tile .entry_tile .thumbnail img {
		display: block;
		aspect-ratio: 5/4;
		-o-object-fit: cover;
		   object-fit: cover;
		-webkit-transition: -webkit-transform 0.3s ease;
		transition: -webkit-transform 0.3s ease;
		transition: transform 0.3s ease;
		transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.blog_entry_list_tile .entry_tile:hover {
		background: #EEF1F7;
}
.blog_entry_list_tile .entry_tile:hover .thumbnail img {
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
}
.blog_entry_list_tile .entry_tile:hover .c_category_label .label_line {
		border: solid 1px #1A397F;
}
@media screen and (max-width: 1200px) {
		.blog_entry_list_tile .entry_tile {
				padding: 8rem 3rem 6rem;
		}
}
@media screen and (max-width: 1070px) {
		.blog_entry_list_tile .entry_tile {
				padding: 6rem 4rem 4rem;
		}
}
@media screen and (max-width: 800px) {
		.blog_entry_list_tile .entry_tile {
				padding: 12vw 4vw 8vw;
		}
		.blog_entry_list_tile .entry_tile .title {
				font-size: 3.2vw;
		}
}
.blog_entry_list_tile {
		/*===============================================================
		c_category_label_list
		===============================================================*/
}
.blog_entry_list_tile .c_category_label_list {
		margin-top: 0.5em;
		gap: 0.5rem 0.5rem;
}
.blog_entry_list_tile .c_category_label_list .c_category_label span {
		font-size: 1.3rem;
		line-height: 1;
}
.blog_entry_list_tile .c_category_label_list .c_category_label:nth-child(1) {
		padding-right: 0.5em;
}
@media screen and (max-width: 800px) {
		.blog_entry_list_tile .c_category_label_list {
				gap: 0.25em 0.25em;
		}
		.blog_entry_list_tile .c_category_label_list .c_category_label span {
				font-size: 3vw;
				font-size: 2.5vw;
		}
}
.blog_entry_list_tile {
		/*===============================================================
		category_label
		===============================================================*/
}
.blog_entry_list_tile .category_label {
		position: absolute;
		font-size: 1.4rem;
		line-height: 3rem;
		font-weight: bold;
		display: inline-block;
		background-color: #1A397F;
		color: #fff;
		padding: 0em 2rem;
		border-radius: 0.3rem;
		top: 3rem;
		left: 2rem;
		letter-spacing: 0.1em;
}
@media screen and (max-width: 1070px) {
		.blog_entry_list_tile .category_label {
				top: 2rem;
		}
}
@media screen and (max-width: 800px) {
		.blog_entry_list_tile .category_label {
				font-size: 3vw;
				line-height: 2em;
				top: 4vw;
				left: 3vw;
		}
}

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

    section_about

===============================================================*/
#about_recs {
		scroll-margin-top: 80px;
}
@media screen and (max-width: 800px) {
		#about_recs {
				scroll-margin-top: 16vw;
		}
}

.section_about {
		/*===============================================================
		about_headline
		===============================================================*/
}
.section_about .about_headline {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		text-align: center;
		color: #fff;
		position: relative;
		background: #1A397F;
		height: 26rem;
		padding: 5rem;
}
.section_about .about_headline .title {
		font-size: 10rem;
		letter-spacing: 0.4rem;
}
.section_about .about_headline .ja {
		font-size: 2rem;
		font-weight: bold;
		line-height: 1;
		position: absolute;
		bottom: 2.4em;
}
@media screen and (max-width: 1070px) {
		.section_about .about_headline {
				height: 22rem;
				padding: 3rem;
		}
		.section_about .about_headline .title {
				font-size: 8rem;
		}
		.section_about .about_headline .ja {
				bottom: 1.8em;
		}
}
@media screen and (max-width: 800px) {
		.section_about .about_headline {
				width: 100%;
				height: 32vw;
				padding: 1vw 5vw 9vw 5vw;
				-webkit-box-orient: horizontal;
				-webkit-box-direction: normal;
				    -ms-flex-direction: row;
				        flex-direction: row;
		}
		.section_about .about_headline .title {
				font-size: 10vw;
				letter-spacing: 0.2rem;
		}
		.section_about .about_headline .ja {
				font-size: 5vw;
				bottom: 9vw;
		}
}
.section_about {
		/*-------------------------------------------------------------
		title_block
		-------------------------------------------------------------*/
}
.section_about .title_block {
		width: 80rem;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		gap: 1rem;
}
@media screen and (max-width: 800px) {
		.section_about .title_block {
				width: 100vw;
				gap: 2vw;
		}
}
.section_about {
		/*===============================================================
		content_message
		===============================================================*/
}
.section_about .content_message {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
}
.section_about .content_message .js_gsap_line {
		width: 1px;
		background: #A5BAD4;
		-ms-flex-item-align: stretch;
		    -ms-grid-row-align: stretch;
		    align-self: stretch;
		margin-top: -120px;
		margin-bottom: -125px;
		-webkit-transform: scaleY(0);
		        transform: scaleY(0);
		-webkit-transform-origin: top center;
		        transform-origin: top center;
}
.section_about .content_message .fig_block,
.section_about .content_message .txt_block {
		width: calc((100% - 14rem) / 2);
}
.section_about .content_message .txt_block .title {
		font-size: 3.8rem;
		padding: 0.6rem 1.4rem 0.8rem;
		display: inline-block;
		background: #A1394A;
		color: #fff;
		border-radius: 0.3rem;
		line-height: 1;
}
.section_about .content_message .txt_block p {
		font-size: 1.8rem;
		margin-top: 1.2em;
}
@media screen and (max-width: 1070px) {
		.section_about .content_message .fig_block,
		.section_about .content_message .txt_block {
				width: calc((100% - 6rem) / 2);
		}
		.section_about .content_message .txt_block .title {
				font-size: 3rem;
		}
		.section_about .content_message .txt_block p {
				font-size: 1.6rem;
				line-height: 1.6;
		}
}
@media screen and (max-width: 800px) {
		.section_about .content_message {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-orient: vertical;
				-webkit-box-direction: normal;
				    -ms-flex-direction: column;
				        flex-direction: column;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				-webkit-box-pack: justify;
				    -ms-flex-pack: justify;
				        justify-content: space-between;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
		}
		.section_about .content_message .fig_block,
		.section_about .content_message .txt_block {
				width: 100%;
		}
		.section_about .content_message .js_gsap_line {
				display: none;
		}
		.section_about .content_message .txt_block {
				margin-top: 4vw;
		}
		.section_about .content_message .txt_block .title {
				font-size: 4.6vw;
		}
		.section_about .content_message .txt_block p {
				margin-top: 3.5vw;
				font-size: 3.5vw;
		}
}
.section_about {
		/*===============================================================
		    content_service
		===============================================================*/
}
.section_about .content_service {
		position: relative;
		margin-top: 16rem !important;
		padding: 15rem 10rem 10rem;
		border: solid 1px #A5BAD4;
}
.section_about .content_service .content_title {
		position: absolute;
		top: -4rem;
		left: 50%;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
		margin-bottom: 0;
}
.section_about .content_service .content_title .title {
		font-size: 4rem;
		color: #1A397F;
		background-color: #EEF1F7;
		border: solid 1px #A5BAD4;
		padding: 1rem 4rem;
		border-radius: 0.3rem;
}
.section_about .content_service .block + .block {
		margin-top: 8rem;
}
.section_about .content_service .block {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
}
.section_about .content_service .block .fig_block,
.section_about .content_service .block .txt_block {
		width: calc((100% - 5rem) / 2);
}
.section_about .content_service .block .txt_block .title {
		font-size: 3rem;
		line-height: 1.6;
}
.section_about .content_service .block .txt_block .sub_title {
		font-size: 22px;
		font-weight: bold;
		color: #A1394A;
		line-height: 1;
}
.section_about .content_service .block .txt_block p {
		font-size: 1.8rem;
		line-height: 1.6;
}
.section_about .content_service .block .txt_block .title + p {
		margin-top: 1rem;
}
.section_about .content_service .block .txt_block .sub_title + p {
		margin-top: 1rem;
}
.section_about .content_service .block .txt_block p + .sub_title {
		margin-top: 2.2rem;
}
@media screen and (max-width: 1070px) {
		.section_about .content_service {
				padding: 8rem 4rem 8rem !important;
		}
		.section_about .content_service .content_title {
				top: -3.6rem;
				margin-bottom: 0;
		}
		.section_about .content_service .content_title .title {
				font-size: 3rem;
		}
		.section_about .content_service .block + .block {
				margin-top: 6rem;
		}
		.section_about .content_service .block {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-orient: horizontal;
				-webkit-box-direction: normal;
				    -ms-flex-direction: row;
				        flex-direction: row;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				-webkit-box-pack: justify;
				    -ms-flex-pack: justify;
				        justify-content: space-between;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
		}
		.section_about .content_service .block .fig_block,
		.section_about .content_service .block .txt_block {
				width: calc((100% - 4rem) / 2);
		}
		.section_about .content_service .block .txt_block .title {
				font-size: 2.6rem;
				line-height: 1.6;
		}
		.section_about .content_service .block .txt_block .sub_title {
				font-size: 2rem;
				line-height: 1;
		}
		.section_about .content_service .block .txt_block p {
				font-size: 1.6rem;
				line-height: 1.6;
		}
		.section_about .content_service .block .txt_block .title + .p {
				margin-top: 0.6rem;
		}
		.section_about .content_service .block .txt_block .sub_title + p {
				margin-top: 0.6rem;
		}
		.section_about .content_service .block .txt_block p + .sub_title {
				margin-top: 1.2rem;
		}
}
@media screen and (max-width: 800px) {
		.section_about .content_service {
				margin-top: 18vw !important;
				padding: 12vw 5vw 8vw !important;
		}
		.section_about .content_service .content_title {
				top: -6vw;
		}
		.section_about .content_service .content_title .title {
				font-size: 5.2vw;
				width: 60vw;
				padding: 2vw 4vw;
				text-align: center;
		}
		.section_about .content_service .block + .block {
				margin-top: 8vw;
		}
		.section_about .content_service .block {
				-webkit-box-orient: vertical;
				-webkit-box-direction: normal;
				    -ms-flex-direction: column;
				        flex-direction: column;
		}
		.section_about .content_service .block .fig_block,
		.section_about .content_service .block .txt_block {
				width: 100%;
		}
		.section_about .content_service .block .txt_block {
				margin-top: 3vw;
		}
		.section_about .content_service .block .txt_block .title {
				font-size: 4.4vw;
		}
		.section_about .content_service .block .txt_block .sub_title {
				font-size: 4.4vw;
		}
		.section_about .content_service .block .txt_block p {
				font-size: 3.5vw;
		}
		.section_about .content_service .block .txt_block .title + .p {
				margin-top: 2vw;
		}
		.section_about .content_service .block .txt_block .sub_title + p {
				margin-top: 2vw;
		}
		.section_about .content_service .block .txt_block p + .sub_title {
				margin-top: 3vw;
		}
}

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

    section_kv

===============================================================*/
.section_kv .section_inner {
		position: relative;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		padding: 4%;
		background-image: url("/common/images/kv/bg_kv.svg");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
		min-height: 60rem;
		height: 100%;
		overflow: hidden;
		min-height: 36vw;
}
@media screen and (max-width: 1070px) {
		.section_kv .section_inner {
				min-height: 44vw;
		}
}
@media screen and (max-width: 800px) {
		.section_kv .section_inner {
				background-image: url("/common/images/kv/bg_kv_sp.svg");
				min-height: 114vw;
		}
}
.section_kv {
		/*===============================================================
		    main_title
		===============================================================*/
}
.section_kv .main_title {
		text-align: center;
		position: relative;
		z-index: 3;
		width: 55%;
		min-width: 70rem;
}
@media screen and (max-width: 1070px) {
		.section_kv .main_title {
				min-width: 62rem;
		}
}
@media screen and (max-width: 800px) {
		.section_kv .main_title {
				width: 100%;
				min-width: 100%;
		}
}
.section_kv .main_title {
		/*===============================================================
		title_block
		===============================================================*/
}
.section_kv .main_title .lead_block {
		width: 74%;
}
.section_kv .main_title .lead + .lead {
		margin-top: 2.4%;
}
.section_kv .main_title .lead {
		position: relative;
		padding-top: 0.4rem;
		padding-bottom: 0.4rem;
		line-height: 1;
		width: auto;
}
.section_kv .main_title .lead img {
		position: relative;
		z-index: 1;
		width: 100%;
		text-align: left;
		-webkit-animation: leadSlideIn 0.5s cubic-bezier(0.22, 1, 0.36, 1) forwards;
		        animation: leadSlideIn 0.5s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
.section_kv .main_title .lead::before {
		content: "";
		position: absolute;
		left: 0;
		-webkit-transform-origin: left center;
		        transform-origin: left center;
		-webkit-animation: bgExpand 0.4s ease-out forwards;
		        animation: bgExpand 0.4s ease-out forwards;
		background-repeat: no-repeat;
		background-position: left center;
		background-size: contain;
}
.section_kv .main_title .lead_01 {
		padding-left: 1rem;
		padding-right: 3rem;
}
.section_kv .main_title .lead_01::before {
		top: 50%;
		width: 100%;
		height: 6vw;
		background-image: url("/common/images/kv/label_01.svg");
		-webkit-transform: translateY(-50%) scaleX(0);
		        transform: translateY(-50%) scaleX(0);
}
.section_kv .main_title .lead_02 {
		padding-left: 1.2rem;
		padding-right: 3rem;
		width: 95%;
}
.section_kv .main_title .lead_02::before {
		top: 50%;
		width: 100%;
		height: 6vw;
		background-image: url("/common/images/kv/label_02.svg");
		-webkit-transform: translateY(-50%) scaleX(0);
		        transform: translateY(-50%) scaleX(0);
}
@-webkit-keyframes bgExpand {
		from {
				-webkit-transform: translateY(-50%) scaleX(0);
				        transform: translateY(-50%) scaleX(0);
		}
		to {
				-webkit-transform: translateY(-50%) scaleX(1);
				        transform: translateY(-50%) scaleX(1);
		}
}
@keyframes bgExpand {
		from {
				-webkit-transform: translateY(-50%) scaleX(0);
				        transform: translateY(-50%) scaleX(0);
		}
		to {
				-webkit-transform: translateY(-50%) scaleX(1);
				        transform: translateY(-50%) scaleX(1);
		}
}
@-webkit-keyframes leadSlideIn {
		from {
				opacity: 0;
				-webkit-transform: translateX(-1rem);
				        transform: translateX(-1rem);
		}
		to {
				opacity: 1;
				-webkit-transform: translateX(0);
				        transform: translateX(0);
		}
}
@keyframes leadSlideIn {
		from {
				opacity: 0;
				-webkit-transform: translateX(-1rem);
				        transform: translateX(-1rem);
		}
		to {
				opacity: 1;
				-webkit-transform: translateX(0);
				        transform: translateX(0);
		}
}
.section_kv .main_title .title_block {
		margin-top: 2rem;
		text-align: left;
}
@media screen and (max-width: 1070px) {
		.section_kv .main_title .lead + .lead {
				margin-top: 1%;
		}
		.section_kv .main_title .lead_01::before {
				height: 3rem;
		}
		.section_kv .main_title .lead_02::before {
				height: 4rem;
		}
}
@media screen and (max-width: 800px) {
		.section_kv .main_title .lead_block {
				width: 100%;
		}
		.section_kv .main_title .lead {
				padding-left: 2vw;
				padding-right: 4vw;
				padding-left: 2vw;
				padding-right: 6vw;
				padding-top: 1.4vw;
				padding-bottom: 1vw;
		}
		.section_kv .main_title .lead_01 {
				height: 6vw;
		}
		.section_kv .main_title .lead_01::before {
				height: 6vw;
		}
		.section_kv .main_title .lead_02 {
				height: 6vw;
				width: 93%;
		}
		.section_kv .main_title .lead_02::before {
				height: 6vw;
		}
		.section_kv .main_title .title_block {
				margin-top: 5vw;
		}
}
.section_kv {
		/*===============================================================
		  btn
		  ===============================================================*/
}
.section_kv .c_btn, .section_kv .c_btn_round {
		opacity: 0;
		width: 40%;
		max-width: 30rem;
		margin-left: 0;
		margin-top: 5rem;
		-webkit-animation: fadeIn 0.5s ease 2.2s forwards;
		        animation: fadeIn 0.5s ease 2.2s forwards;
}
.section_kv .c_btn a, .section_kv .c_btn_round a {
		min-height: 3rem;
}
@media screen and (max-width: 1070px) {
		.section_kv .c_btn, .section_kv .c_btn_round {
				margin-top: 3rem;
				width: 48%;
		}
}
@media screen and (max-width: 800px) {
		.section_kv .c_btn, .section_kv .c_btn_round {
				margin-top: 10vw;
				width: 60%;
				-webkit-animation: fadeIn 0.5s ease 2.4s forwards;
				        animation: fadeIn 0.5s ease 2.4s forwards;
		}
		.section_kv .c_btn a, .section_kv .c_btn_round a {
				padding-left: 2vw !important;
				padding-right: 7vw !important;
		}
		.section_kv .c_btn a .label, .section_kv .c_btn_round a .label {
				font-size: 3.8vw;
		}
		.section_kv .c_btn a .icon_arrow_r, .section_kv .c_btn_round a .icon_arrow_r {
				width: 2.6rem;
				right: 1.6vw;
		}
		.section_kv .c_btn a .icon_arrow_r::before, .section_kv .c_btn_round a .icon_arrow_r::before {
				width: 1rem;
		}
}

@-webkit-keyframes fadeIn {
		to {
				opacity: 1;
		}
}

@keyframes fadeIn {
		to {
				opacity: 1;
		}
}
/*===============================================================
   bg_deco
===============================================================*/
.deco {
		position: absolute;
}
.deco.deco_01 {
		bottom: -104%;
		right: -16%;
		width: 75%;
}
.deco.deco_02 {
		bottom: -83%;
		left: -24%;
		width: 40%;
}
.deco.deco_03 {
		top: -61%;
		left: -13%;
		width: 33%;
}
@media screen and (max-width: 1070px) {
		.deco.deco_01 {
				bottom: -104%;
				right: -21%;
				width: 90%;
		}
		.deco.deco_02 {
				bottom: -55%;
				left: -16%;
				width: 35%;
		}
		.deco.deco_03 {
				top: -42%;
				left: -13%;
				width: 33%;
		}
}
@media screen and (max-width: 1070px) and (max-width: 800px) {
		.deco.deco_01 {
				bottom: -45%;
				right: -26%;
				width: 100%;
		}
		.deco.deco_02 {
				display: none;
		}
		.deco.deco_03 {
				top: -32%;
				left: -22%;
				width: 58%;
		}
}

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

	title_svg

============================================================*/
#kv_title .st0 {
		fill: transparent;
		stroke: #fff;
		stroke-miterlimit: 10;
}

.kv_title {
		width: 93%;
}
@media screen and (max-width: 800px) {
		.kv_title {
				width: 100%;
		}
}

/*------------------------------------------------------------
	FILL
------------------------------------------------------------*/
@-webkit-keyframes svg-fill {
		from {
				fill: transparent;
		}
		to {
				fill: #fff;
		}
}
@keyframes svg-fill {
		from {
				fill: transparent;
		}
		to {
				fill: #fff;
		}
}
/*------------------------------------------------------------
	STROKE
------------------------------------------------------------*/
@-webkit-keyframes svg-stroke {
		from {
				stroke-dashoffset: var(--path-length);
		}
		to {
				stroke-dashoffset: 0;
		}
}
@keyframes svg-stroke {
		from {
				stroke-dashoffset: var(--path-length);
		}
		to {
				stroke-dashoffset: 0;
		}
}
/*------------------------------------------------------------
	PATHS
------------------------------------------------------------*/
.svg-elem-1 {
		--path-length: 336.2909240722656px;
		stroke-dasharray: var(--path-length);
		-webkit-animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0s both, svg-fill 0.5s ease 0.4s both;
		        animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0s both, svg-fill 0.5s ease 0.4s both;
}

.svg-elem-2 {
		--path-length: 639.73095703125px;
		stroke-dasharray: var(--path-length);
		-webkit-animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s both, svg-fill 0.5s ease 0.5s both;
		        animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s both, svg-fill 0.5s ease 0.5s both;
}

.svg-elem-3 {
		--path-length: 595.2879638671875px;
		stroke-dasharray: var(--path-length);
		-webkit-animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s both, svg-fill 0.5s ease 0.6s both;
		        animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s both, svg-fill 0.5s ease 0.6s both;
}

.svg-elem-4 {
		--path-length: 256.64195251464844px;
		stroke-dasharray: var(--path-length);
		-webkit-animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s both, svg-fill 0.5s ease 0.7s both;
		        animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s both, svg-fill 0.5s ease 0.7s both;
}

.svg-elem-5 {
		--path-length: 273.3352355957031px;
		stroke-dasharray: var(--path-length);
		-webkit-animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.48s both, svg-fill 0.5s ease 0.8s both;
		        animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.48s both, svg-fill 0.5s ease 0.8s both;
}

.svg-elem-6 {
		--path-length: 343.7801513671875px;
		stroke-dasharray: var(--path-length);
		-webkit-animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s both, svg-fill 0.5s ease 0.9s both;
		        animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s both, svg-fill 0.5s ease 0.9s both;
}

.svg-elem-7 {
		--path-length: 441.7903747558594px;
		stroke-dasharray: var(--path-length);
		-webkit-animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.72s both, svg-fill 0.5s ease 1s both;
		        animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.72s both, svg-fill 0.5s ease 1s both;
}

.svg-elem-8 {
		--path-length: 579.47314453125px;
		stroke-dasharray: var(--path-length);
		-webkit-animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.84s both, svg-fill 0.5s ease 1.1s both;
		        animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.84s both, svg-fill 0.5s ease 1.1s both;
}

.svg-elem-9 {
		--path-length: 283.6816101074219px;
		stroke-dasharray: var(--path-length);
		-webkit-animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.96s both, svg-fill 0.5s ease 1.2s both;
		        animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.96s both, svg-fill 0.5s ease 1.2s both;
}

.svg-elem-10 {
		--path-length: 283.7776794433594px;
		stroke-dasharray: var(--path-length);
		-webkit-animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.08s both, svg-fill 0.5s ease 1.3s both;
		        animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.08s both, svg-fill 0.5s ease 1.3s both;
}

.svg-elem-11 {
		--path-length: 100.14053344726562px;
		stroke-dasharray: var(--path-length);
		-webkit-animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s both, svg-fill 0.5s ease 1.4s both;
		        animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s both, svg-fill 0.5s ease 1.4s both;
}

.svg-elem-12 {
		--path-length: 3481.617919921875px;
		stroke-dasharray: var(--path-length);
		-webkit-animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.32s both, svg-fill 0.5s ease 1.5s both;
		        animation: svg-stroke 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.32s both, svg-fill 0.5s ease 1.5s both;
}

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

    section_to_customers

===============================================================*/
.section_to_customers {
		position: relative;
		overflow: visible;
}
.section_to_customers .section_inner {
		position: relative;
		z-index: 2;
}
@media screen and (max-width: 1070px) {
		.section_to_customers .section_inner {
				padding-top: 10rem !important;
				padding-bottom: 10rem !important;
		}
}
@media screen and (max-width: 800px) {
		.section_to_customers .section_inner {
				padding-top: 20vw !important;
				padding-bottom: 20vw !important;
		}
}
.section_to_customers {
		/*===============================================================
			外側円・回転アニメーション用CSS
		===============================================================*/
}
.section_to_customers .circle_wrap_inner {
		position: absolute;
		top: 50%;
		left: 50%;
		width: 76rem; /* 背景円サイズ */
		height: 76rem;
		-webkit-transform: translate(-50%, -50%) scale(0.9);
		        transform: translate(-50%, -50%) scale(0.9);
		opacity: 0;
		pointer-events: none;
		z-index: 0;
}
.section_to_customers {
		/* 中央塗り */
}
.section_to_customers .circle_bg_fill {
		position: absolute;
		inset: 0;
		border-radius: 50%;
		background: rgba(234, 239, 245, 0.9);
}
.section_to_customers {
		/* 内側細線 */
}
.section_to_customers .circle_bg_border {
		position: absolute;
		inset: -1rem;
		border-radius: 50%;
		border: 1px solid #b7c7dc;
}
.section_to_customers {
		/* 外側SVG */
}
.section_to_customers .circle_svg {
		position: absolute;
		top: 50%;
		left: 50%;
		width: 90rem;
		height: 90rem;
		-webkit-transform: translate(-50%, -50%);
		        transform: translate(-50%, -50%);
}
.section_to_customers .circle_dash {
		fill: none;
		stroke: #b7c7dc;
		stroke-width: 0.4;
		stroke-linecap: round;
		opacity: 0;
}
.section_to_customers .circle_rotate {
		-webkit-animation: circleRotate 25s linear infinite;
		        animation: circleRotate 25s linear infinite;
}
@-webkit-keyframes circleRotate {
		from {
				-webkit-transform: translate(-50%, -50%) rotate(0deg);
				        transform: translate(-50%, -50%) rotate(0deg);
		}
		to {
				-webkit-transform: translate(-50%, -50%) rotate(360deg);
				        transform: translate(-50%, -50%) rotate(360deg);
		}
}
@keyframes circleRotate {
		from {
				-webkit-transform: translate(-50%, -50%) rotate(0deg);
				        transform: translate(-50%, -50%) rotate(0deg);
		}
		to {
				-webkit-transform: translate(-50%, -50%) rotate(360deg);
				        transform: translate(-50%, -50%) rotate(360deg);
		}
}
@media screen and (max-width: 1070px) {
		.section_to_customers .circle_wrap_inner {
				width: 70rem;
				height: 70rem;
		}
		.section_to_customers {
				/* 外側SVG */
		}
		.section_to_customers .circle_svg {
				width: 80rem;
				height: 80rem;
		}
}
@media screen and (max-width: 800px) {
		.section_to_customers .circle_wrap_inner {
				width: 134vw;
				height: 134vw;
		}
		.section_to_customers {
				/* 外側SVG */
		}
		.section_to_customers .circle_svg {
				position: absolute;
				width: 154vw;
				height: 154vw;
		}
		.section_to_customers .circle_rotate {
				-webkit-animation: circleRotate 18s linear infinite;
				        animation: circleRotate 18s linear infinite;
		}
}
.section_to_customers {
		/*===============================================================
		content_to_customers
		===============================================================*/
}
.section_to_customers .headline + .content {
		margin-top: 5rem;
}
.section_to_customers .headline .title {
		font-size: 3rem;
		color: #A1394A;
}
.section_to_customers .content_to_customers {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		text-align: center;
}
.section_to_customers .content_to_customers .lead_block .lead_txt {
		font-size: 4rem;
		font-weight: bold;
		line-height: 1.8;
		color: #1A397F;
}
.section_to_customers .content_to_customers .lead_block .txt {
		margin-top: 2rem;
		color: #1A397F;
}
.section_to_customers .content_to_customers .area_block {
		margin-top: 5rem;
}
.section_to_customers .content_to_customers .area_block .block_title {
		font-size: 2rem;
}
.section_to_customers .content_to_customers .area_block p {
		font-size: 1.8rem;
}
.section_to_customers .content_to_customers .btn_block {
		margin-top: 5rem;
}
@media screen and (max-width: 1070px) {
		.section_to_customers .headline + .content {
				margin-top: 2rem;
		}
		.section_to_customers .headline .title {
				font-size: 2.8rem;
		}
		.section_to_customers .content_to_customers .lead_block .lead_txt {
				font-size: 3.6rem;
				line-height: 1.6;
		}
		.section_to_customers .content_to_customers .area_block {
				margin-top: 2rem;
		}
		.section_to_customers .content_to_customers .btn_block {
				margin-top: 3rem;
		}
}
@media screen and (max-width: 800px) {
		.section_to_customers .headline + .content {
				margin-top: 2vw;
		}
		.section_to_customers .headline .title {
				font-size: 4.6vw;
		}
		.section_to_customers .content_to_customers .lead_block .lead_txt {
				font-size: 5.6vw;
		}
		.section_to_customers .content_to_customers .lead_block .txt {
				margin-top: 3vw;
				line-height: 1.6;
		}
		.section_to_customers .content_to_customers .area_block {
				margin-top: 5vw;
		}
		.section_to_customers .content_to_customers .area_block .block_title {
				font-size: 5vw;
		}
		.section_to_customers .content_to_customers .area_block p {
				font-size: 3.5;
		}
		.section_to_customers .content_to_customers .btn_block {
				margin-top: 5vw;
		}
}

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

	_top.scss 2024/2/16

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

	page_top

===============================================================*/
.page_top {
		/* タブレット */
}
.page_top {
		/* for TABLET */
		/* SP */
}
.page_top {
		/* for SP */
		/*===============================================================
			//	page_top
		===============================================================*/
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color] {
		border: 0;
		border-radius: 0;
		color: #1A397F !important;
		line-height: 1.6;
		padding: 0;
		margin: 0;
		max-width: 100%;
}

input[type=text],
.site textarea {
		border: 0;
		border-radius: 0;
		color: #333 !important;
		line-height: 1.6;
		padding: 0;
		margin: 0;
		max-width: 100%;
}

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

	form_section

===============================================================*/
.form_section {
		margin: 0 auto;
}
.form_section .headline .title {
		font-size: 30px;
		line-height: 1.4;
		font-weight: bold;
}
.form_section {
		/* タブレット */
}
@media screen and (max-width: 1070px) {
		.form_section {
				width: 100%;
				margin: 0 auto;
				-webkit-box-sizing: border-box;
				        box-sizing: border-box;
		}
}
.form_section {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.form_section .headline .title {
				font-size: 6vw;
		}
}
.form_section {
		/* for SP */
		/*-------------------------------------------------------------
			.txt 	
		-------------------------------------------------------------*/
}
.form_section .txt {
		margin-top: 30px;
}
.form_section .txt p {
		font-size: 14px;
		line-height: 1.6;
}
.form_section {
		/* タブレット以下 */
}
.form_section {
		/* for tablet max-width: 1030px */
		/* SP向けレイアウトの指定：～736px */
}
@media screen and (max-width: 800px) {
		.form_section .txt {
				margin-top: 4vw;
		}
		.form_section .txt p {
				font-size: 4vw;
		}
}
.form_section {
		/* for SP max-width: 736px */
		/*-------------------------------------------------------------
			form_section ここまで
		-------------------------------------------------------------*/
}

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

	form_content

===============================================================*/
.form_content {
		text-align: left;
		/* タブレット */
}
.form_content {
		/* for TABLET */
		/* SP */
}
@media screen and (max-width: 800px) {
		.form_content {
				font-size: 4vw;
				margin-top: 4vw;
		}
}
.form_content {
		/* for SP */
		/*-------------------------------------------------------------
			form_table	
		-------------------------------------------------------------*/
}
.form_content .form_table {
		margin: 0;
}
.form_content .form_table dt {
		font-weight: bold;
		padding: 25px 0 10px;
		margin-right: 2%;
		font-size: 20px;
}
.form_content .form_table dt span {
		padding-left: 3px;
}
.form_content .form_table dd {
		width: 100%;
}
.form_content .form_table dd + dt {
		margin-top: 40px;
}
.form_content .form_table .sample {
		font-size: small;
		font-weight: normal;
		padding-left: 10px;
}
.form_content .form_table .red {
		color: #A1394A;
		font-size: small;
		font-weight: normal;
		padding-left: 10px;
}
.form_content .form_table {
		/* タブレット以下 */
}
.form_content .form_table {
		/* for tablet max-width: 1030px */
		/* SP向けレイアウトの指定：～736px */
}
@media screen and (max-width: 800px) {
		.form_content .form_table dt {
				float: none;
				width: 100%;
				font-size: 4.5vw;
				line-height: 1.6;
				padding: 3vw 0 0 0;
		}
		.form_content .form_table dd {
				width: 100%;
				font-size: 4vw;
				line-height: 1.6;
				margin-top: 2vw;
		}
		.form_content .form_table dd + dt {
				margin-top: 8vw;
		}
		.form_content .form_table .sample {
				font-size: 2.5vw;
		}
		.form_content .form_table .red {
				font-size: 2.5vw;
		}
}
.form_content .form_table {
		/* for SP max-width: 736px */
}
.form_content {
		/*-------------------------------------------------------------
			.phase_confirm form_table	
		-------------------------------------------------------------*/
}
.form_content .phase_confirm .form_table {
		margin: 0;
}
.form_content .phase_confirm .form_table dd {
		background: #eee;
		padding: 20px;
		border-radius: 5px;
}
.form_content .phase_confirm .form_table {
		/* タブレット以下 */
}
.form_content .phase_confirm .form_table {
		/* for tablet max-width: 1030px */
		/* SP向けレイアウトの指定：～736px */
}
@media screen and (max-width: 800px) {
		.form_content .phase_confirm .form_table dd {
				padding: 3vw;
		}
}
.form_content .phase_confirm .form_table {
		/* for SP max-width: 736px */
}
.form_content {
		/*-------------------------------------------------------------
			form_content ここまで
		-------------------------------------------------------------*/
}

/*-------------------------------------------------------------
	テキスト入力
-------------------------------------------------------------*/
.txtinput {
		vertical-align: bottom;
		width: 100%;
		-webkit-appearance: none;
		outline: 0;
		font-size: 18px !important;
		line-height: 1.6 !important;
		margin: 0 !important;
		padding: 10px !important;
		border: solid 1px #A5BAD4 !important;
		border-radius: 3px !important;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		-webkit-transition: all 0.1s linear;
		transition: all 0.1s linear;
		color: #333 !important;
}
.txtinput.txtinput_postal {
		width: 150px;
}
.txtinput:focus, .txtinput:focus {
		border-color: #A5BAD4;
}
.txtinput {
		/* タブレット以下 */
}
.txtinput {
		/* for tablet max-width: 1030px */
		/* SP向けレイアウトの指定：～736px */
}
@media screen and (max-width: 800px) {
		.txtinput {
				font-size: 4vw !important;
				padding: 3vw !important;
		}
}
.txtinput {
		/* for SP max-width: 736px */
}

/*-------------------------------------------------------------
	ラジオボタン
-------------------------------------------------------------*/
.radio {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
}
.radio li {
		width: 50%;
}
.radio li input {
		border: 0;
		margin: 0;
		display: inline-block;
		width: 1.9rem;
		height: 1.9rem;
		border: 1px solid #A5BAD4;
		vertical-align: middle;
}
.radio li input::after {
		position: absolute;
		top: 0.3rem;
		left: 0.3rem;
		width: 0.5rem;
		height: 0.5rem;
}
.radio li label {
		cursor: pointer;
}
.radio li {
		padding: 0;
}
.radio {
		/*	li label:before {
			content: "";
			position: absolute;
			top: 0;
			bottom: 0;
			left: 0;
			margin: auto;
			width: 16px;
			height: 16px;
			background: #fff;
			border: 1px solid #333;
			border-radius: 50%;
			box-sizing: border-box;
		}
		li label:after {
			content: "";
			position: absolute;
			top: 0;
			bottom: 0;
			left: 4px;
			margin: auto;
			width: 8px;
			height: 8px;
			background: $c_red;
			border-radius: 50%;
			transition: all 0.1s linear;
			transform: scale(0);
		}
		li input:checked + label:after {
			transform: scale(1);
		}*/
		/* タブレット以下 */
}
@media screen and (max-width: 1070px) {
		.radio {
				-webkit-box-orient: vertical;
				-webkit-box-direction: normal;
				    -ms-flex-direction: column;
				        flex-direction: column;
		}
		.radio li {
				width: 100%;
		}
		.radio li + li {
				margin-top: 0.5rem;
		}
}
.radio {
		/* for tablet max-width: 1030px */
		/* SP向けレイアウトの指定：～736px */
}
@media screen and (max-width: 800px) {
		.radio li label {
				font-size: 1.6rem;
				line-height: 1.5;
		}
		.radio li + li {
				margin-top: 1.2rem;
		}
}
.radio {
		/* for SP max-width: 736px */
}

/*-------------------------------------------------------------
	チェックボックス
-------------------------------------------------------------*/
.checkbox {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
}
.checkbox li {
		width: 50%;
		padding: 0;
}
.checkbox input {
		border: 0;
		margin: 0;
		display: inline-block;
		width: 1.9rem;
		height: 1.9rem;
		border: 1px solid #000;
		vertical-align: middle;
}
.checkbox input::after {
		position: absolute;
		top: 0.3rem;
		left: 0.3rem;
		width: 0.5rem;
		height: 0.5rem;
}
.checkbox label {
		cursor: pointer;
}
.checkbox {
		/*  
		  display: flex;
		  flex-wrap:wrap;
		  align-items: center;
			li {
				width: 33.3333%;
				padding: 0;
			}
			li:nth-child(4),
			li:nth-child(5),
			li:nth-child(6) {
				margin-top: 10px;
			}
			&.agreebox {
				font-size: 14px; 
				line-height: 20px;
				text-align: center;
				padding-top: 20px;
			}
			li input,
			&.agreebox input {
				width: auto;
				display: none;
				border: 0;
				margin: 0;
			}
		*/
		/*　チェックボックスの装飾　*/
		/*
			li label,
			&.agreebox label {
				display: inline-block;
				vertical-align: middle; 
				position: relative;
				cursor: pointer;
			}
			li label:before,
			&.agreebox label:before {
				content: "";
				position: absolute;
				top: 0;
				bottom: 0;
				left: 0;
				margin: auto;
				width: 16px;
				height: 16px;
				background: #fff;
				border-radius: 10%;
				border: 1px solid #333;
				box-sizing: border-box;
			}
			li label:after,
			&.agreebox label:after {
				content: "";
				position: absolute;
				top: -4px;
				left: 5px;
				margin: auto;
				width: 6px;
				height: 14px;
				border-right: 2px solid transparent;
				border-bottom: 2px solid transparent;
				transform: rotate(40deg);
				transition: border-bottom-color, border-right-color .2s linear;
			}
			li input:checked + label:after,
			&.agreebox input:checked + label:after {
				border-color: #333;
			}
		*/
		/* タブレット以下 */
}
.checkbox {
		/* for tablet max-width: 1030px */
		/* SP向けレイアウトの指定：～736px */
}
@media screen and (max-width: 800px) {
		.checkbox li {
				width: 100%;
		}
		.checkbox li + li {
				margin-top: 3vw;
		}
		.checkbox li label,
		.checkbox .agreebox label {
				font-size: 4vw;
		}
		.checkbox .agreebox {
				font-size: 4vw;
				text-align: left;
				padding-top: 3vw;
		}
}
.checkbox {
		/* for SP max-width: 736px */
}

/*-------------------------------------------------------------
	.セレクト 
-------------------------------------------------------------*/
.select {
		width: 200px;
		font-size: 18px;
		cursor: pointer;
}
.select option {
		color: #333;
		background: #fff;
}
.select optgroup.area {
		color: #333;
		background: #eee;
}
.select {
		/* タブレット以下 */
}
.select {
		/* for tablet max-width: 1030px */
		/* SP向けレイアウトの指定：～736px */
}
@media screen and (max-width: 800px) {
		.select {
				font-size: 4.5vw;
				padding: 10px;
		}
}
.select {
		/* for SP max-width: 736px */
}

/*-------------------------------------------------------------
	.セレクタの装飾 
-------------------------------------------------------------*/
.select {
		appearance: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		border: 1px solid #8F8F8F;
		border-radius: 3px;
		padding: 10px 25px 10px 10px;
		font-size: 1.2rem;
		cursor: pointer;
}

.select:disabled {
		pointer-events: none;
		background-color: #f1f1f1;
		color: #8F8F8F;
}

.select {
		position: relative;
		display: inline-block;
}

.select_wrp {
		position: relative;
		display: inline-block;
}

.select_wrp::after {
		content: "";
		position: absolute;
		border: 4px solid #333;
		border-bottom: 0;
		border-left-color: transparent;
		border-right-color: transparent;
		top: calc(50% - 3px);
		right: 10px;
		width: 0;
		height: 0;
}

.select_wrp--disabled::after {
		border-top-color: #8F8F8F;
}

/*
.select_wrap {
		position: relative;
		overflow: hidden;
		display: inline-block;
		min-width: 30em;
		color: #333;
		background-color: #fff;
//		background-image: linear-gradient(top, #fff 0%, #eee 100%);
		border: 1px solid $form_border_color;
		border-radius: 3px;
		box-sizing: border-box;
		transition: all 0.1s linear;
	&:hover {
		border: 1px solid #999;
	}
	&.select_wrap2 {
		min-width: 20em;
	}
	&.select_wrap3 {
		min-width: 10em;
		margin-right: 5px;
	}
	&:after {
		content: '';
		position: absolute;
		bottom: 10px;
		right: 10px;
		width: 5px;
		height: 5px;
		border-top: 4px solid rgba(0,0,0,0.5);
		border-right: 4px solid transparent;
		border-bottom: 4px solid transparent;
		border-left: 4px solid transparent;
		box-sizing: border-box;
	}
	&:before {
		content: '';
		position: absolute;
		top: 10px;
		right: 10px;
		width: 5px;
		height: 5px;
		border-top: 4px solid transparent;
		border-right: 4px solid transparent;
		border-bottom: 4px solid rgba(0,0,0,0.5);
		border-left: 4px solid transparent;
		box-sizing: border-box;
	}
*/
/* SP向けレイアウトの指定：～736px */
@media screen and (max-width: 800px) {
		/*	 セレクタの装飾 */
		/*
			min-width: auto;
			width: 100%;
			padding: 0;
			margin: 0;

			& + .select_wrap {
				margin-top: 10px;
			}	

			&:after {
				content: '';
				position: absolute;
				bottom: 8px;
				right: 10px;
				width: 5px;
				height: 5px;
				border-top: 4px solid rgba(0,0,0,0.5);
				border-right: 4px solid transparent;
				border-bottom: 4px solid transparent;
				border-left: 4px solid transparent;
				box-sizing: border-box;
			}
			&:before {
				content: '';
				position: absolute;
				top: 8px;
				right: 10px;
				width: 5px;
				height: 5px;
				border-top: 4px solid transparent;
				border-right: 4px solid transparent;
				border-bottom: 4px solid rgba(0,0,0,0.5);
				border-left: 4px solid transparent;
				box-sizing: border-box;
			}
		}	/* for SP max-width: 736px */
}
/*-------------------------------------------------------------
	添付ファイル 
-------------------------------------------------------------*/
.fileinput {
		width: auto;
		display: none;
		border: 0;
		margin: 0;
}
.fileinput .file_btn {
		display: inline-block;
		min-width: 20em;
		color: #333;
		padding: 10px;
		font-size: 14px;
		line-height: 1.6;
		background-color: #fff;
		background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#eee));
		background-image: linear-gradient(top, #fff 0%, #eee 100%);
		border: 1px solid #ddd;
		border-radius: 3px;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		-webkit-transition: all 0.1s linear;
		transition: all 0.1s linear;
		cursor: pointer;
}
.fileinput .file_btn:hover {
		border: 1px solid #999;
}
.fileinput .filename {
		display: inline-block;
		font-size: 14px;
		line-height: 1.6;
		margin-left: 5px;
}
.fileinput {
		/* タブレット以下 */
}
.fileinput {
		/* for tablet max-width: 1030px */
		/* SP向けレイアウトの指定：～736px */
}
@media screen and (max-width: 800px) {
		.fileinput .file_btn {
				min-width: auto;
				width: 100%;
				font-size: 4.5vw;
		}
		.fileinput .filename {
				display: block;
				font-size: 3.5vw;
				margin-left: 0;
				margin-top: 2vw;
		}
}
.fileinput {
		/* for SP max-width: 736px */
}

/*-------------------------------------------------------------
	個人情報保護方針
-------------------------------------------------------------*/
.agreebox {
		display: block;
		text-align: center;
		margin: 0 auto;
		margin-top: 1rem;
}

/*　チェックボックスの装飾　*/
.checkbox label,
.agreebox label {
		display: inline-block;
		vertical-align: middle;
		position: relative;
		cursor: pointer;
}

.checkbox label:before,
.agreebox label:before {
		/*  content: "";
		 position: absolute;
		 top: 0;
		 bottom: 0;
		 left: 0;
		 margin: auto;
		 width: 16px;
		 height: 16px;
		 background: #fff;
		 border-radius: 10%;
		 border: 1px solid #333;
		 box-sizing: border-box;*/
}

.checkbox label:after,
.agreebox label:after {
		/* content: "";
		 position: absolute;
		 top: -4px;
		 left: 5px;
		 margin: auto;
		 width: 6px;
		 height: 14px;
		 border-right: 2px solid transparent;
		 border-bottom: 2px solid transparent;
		 transform: rotate(40deg);
		 transition: border-bottom-color, border-right-color 0.2s linear;*/
}

.checkbox input:checked + label:after,
.agreebox input:checked + label:after {
		/*  border-color: #333;*/
}

/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
		.checkbox li {
				width: 100%;
		}
		.checkbox li + li {
				margin-top: 1rem;
		}
		.agreebox {
				padding: 0 0.5rem;
		}
		.agreebox {
				text-align: left;
		}
}
/* for SP max-width: 736px */
/*-------------------------------------------------------------
	サブミット
-------------------------------------------------------------*/
.submit {
		padding: 60px 0 60px 0;
		margin: 0;
}
.submit input {
		width: 400px;
		margin: 0 auto;
		padding: 20px 0;
		display: block;
		color: #fff !important;
		font-size: 22px;
		line-height: 1;
		font-weight: bold;
		text-decoration: none;
		border: 0;
		background-color: #1A397F !important;
		-webkit-transition: all 0.1s linear;
		transition: all 0.1s linear;
		cursor: pointer;
		-webkit-appearance: none;
		border: solid 1px #1A397F !important;
}
.submit input:hover {
		background-color: #fff !important;
		color: #1A397F !important;
		border: solid 1px #1A397F !important;
}
.submit .cap {
		color: #666;
		font-size: 12px;
		line-height: 1.6;
		text-align: center;
		margin-top: 40px;
}
.submit {
		/* タブレット以下 */
}
.submit {
		/* for tablet max-width: 1030px */
		/* SP向けレイアウトの指定：～736px */
}
@media screen and (max-width: 800px) {
		.submit {
				padding: 6vw 0;
		}
		.submit input {
				width: 100%;
				font-size: 4.5vw;
				padding: 5vw 0;
		}
		.submit .cap {
				font-size: 3vw;
				margin-top: 4vw;
		}
}
.submit {
		/* for SP max-width: 736px */
}

/*-------------------------------------------------------------
	サブミット2
-------------------------------------------------------------*/
.submit_two {
		width: auto;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: row-reverse;
		        flex-direction: row-reverse;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		margin: 0 auto;
}
.submit_two .btn {
		padding: 0 15px;
}
.submit_two .btn.back input {
		color: #000 !important;
		background-color: #fff !important;
		border: solid 1px #000 !important;
}
.submit_two .btn.back input:hover {
		color: #fff !important;
		background-color: #000 !important;
}
.submit_two {
		/* タブレット以下 */
}
.submit_two {
		/* for tablet max-width: 1030px */
		/* SP向けレイアウトの指定：～736px */
}
@media screen and (max-width: 800px) {
		.submit_two {
				-webkit-box-orient: vertical;
				-webkit-box-direction: normal;
				    -ms-flex-direction: column;
				        flex-direction: column;
		}
		.submit_two .btn {
				width: 100%;
				padding: 3vw 0;
		}
}
.submit_two {
		/* for SP max-width: 736px */
}

/*-------------------------------------------------------------	
	jquery mailform バリデート
-------------------------------------------------------------*/
.validate {
		margin-bottom: 10px;
}
.validate p {
		color: #f00;
		font-size: 12px;
		line-height: 1.2;
		padding: 10px 20px;
		background: #fee;
		display: inline-block;
		border-radius: 50px;
}
.validate.validate_submit {
		text-align: center;
		margin: 0 auto;
		padding-bottom: 20px;
}
.validate.validate_submit p {
		text-align: center;
		margin: 0 auto;
}
.validate {
		/* タブレット以下 */
}
.validate {
		/* for tablet max-width: 1030px */
		/* SP向けレイアウトの指定：～736px */
}
@media screen and (max-width: 800px) {
		.validate {
				margin-bottom: 3vw;
		}
		.validate p {
				font-size: 3vw;
				padding: 2vw 4vw;
		}
		.validate.validate_submit {
				margin: 0 auto;
		}
}
.validate {
		/* for SP max-width: 736px */
}

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

	郵便番号からの住所検索用プリローダー

===============================================================*/
.zipcodelayout {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
}
.zipcodelayout .txtinput {
		width: 40%;
}
.zipcodelayout .zipsearchbtn {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		background: #eee;
		padding: 10px 20px;
		border-radius: 25px;
}
.zipcodelayout .zipsearchbtn:hover {
		background: #f7f7f7;
}
.zipcodelayout .ziploader {
		width: 20px;
}
.zipcodelayout {
		/* タブレット */
}
.zipcodelayout {
		/* for TABLET */
		/* SP */
}
.zipcodelayout {
		/* for SP */
}

/*-------------------------------------------------------------
	search_box	
-------------------------------------------------------------*/
.search_box {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		width: 300px;
}
.search_box input {
		width: 230px;
}
.search_box .search_btn {
		width: 60px;
}
.search_box .search_btn a {
		display: block;
		color: #fff;
		font-size: 15px;
		line-height: 2.8;
		text-align: center;
		letter-spacing: 0.2em;
		background: #a00;
		border-radius: 3px;
		margin-top: 1px;
}
.search_box .search_btn a:hover {
		text-decoration: none;
		background: #c00;
}
.search_box {
		/* タブレット以下 */
}
.search_box {
		/* for tablet max-width: 1030px */
		/* SP向けレイアウトの指定：～736px */
}
@media screen and (max-width: 800px) {
		.search_box {
				width: 100%;
		}
		.search_box input {
				width: calc(100% - 22vw);
		}
		.search_box .search_btn {
				width: 20vw;
		}
		.search_box .search_btn a {
				font-size: 4.6vw;
				line-height: 2.8;
		}
}
.search_box {
		/* for SP max-width: 736px */
}

/* |||||||||| */
/* |||||||||| */
/*===============================================================

	login_wrp

===============================================================*/
.login_wrp .box {
		border: solid 1px #ccc;
		padding: 30px;
		margin-top: 40px;
}
.login_wrp .form_content {
		border: none;
		margin: 0;
}
.login_wrp .form_content dl {
		border: none;
}
.login_wrp .form_content dd {
		padding-bottom: 0;
}
.login_wrp .form_content .title {
		font-size: 22px;
		line-height: 1.6;
		text-align: center;
		font-weight: bold;
}
.login_wrp .form_content .read {
		font-size: 16px;
		line-height: 1.6;
		text-align: center;
		margin-top: 20px;
}
.login_wrp .form_content .submit {
		padding-bottom: 0;
}
.login_wrp .linklist {
		margin-top: 30px;
}
.login_wrp .linklist li {
		font-size: 16px;
		line-height: 1.6;
}
.login_wrp {
		/* タブレット以下 */
}
.login_wrp {
		/* for tablet max-width: 1070px */
		/* SP向けレイアウトの指定：～800px */
}
@media screen and (max-width: 800px) {
		.login_wrp .box {
				padding: 5vw;
				margin-top: 6vw;
		}
		.login_wrp .form_content dt {
				padding-top: 3vw;
		}
		.login_wrp .form_content .title {
				font-size: 4.5vw;
		}
		.login_wrp .form_content .read {
				font-size: 4vw;
				margin-top: 2vw;
		}
		.login_wrp .form_content .submit {
				padding-bottom: 0;
		}
		.login_wrp .linklist {
				margin-top: 6vw;
		}
		.login_wrp .linklist li {
				font-size: 4vw;
		}
}
.login_wrp {
		/* for SP max-width: 800px */
}

/*===============================================================
	mixinテスト
===============================================================*/
.under_line {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(0%, rgba(255, 0, 0, 0.3)));
		background: linear-gradient(transparent 70%, rgba(255, 0, 0, 0.3) 0%);
		display: inline;
}

.under_marker {
		background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, #ff0));
		background: linear-gradient(transparent 0%, #ff0 0%);
		display: inline;
}

.btn_link {
		width: 300px;
}
.btn_link a {
		display: block;
		text-align: center;
		background: #fff;
		color: #000;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
		padding: 20px;
		text-decoration: none;
}
@media screen and (max-width: 800px) {
		.btn_link a {
				padding: 3vw;
		}
}
.btn_link a:hover {
		background: #000;
		color: #fff;
		text-decoration: none;
}
.btn_link {
		margin-left: auto;
		margin-right: auto;
}
.btn_link a {
		position: relative;
}
.btn_link a::after {
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		border: solid 1px #000;
		width: 6px;
		height: 6px;
		border-top: none;
		border-left: none;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
		right: 10px;
		-webkit-transform: rotate(-45deg) translate(-1px, -1px);
		        transform: rotate(-45deg) translate(-1px, -1px);
}
.btn_link a:hover::after {
		border: solid 1px #fff;
		border-top: none;
		border-left: none;
}
.btn_link {
		border: solid 1px #000;
}
@media screen and (max-width: 800px) {
		.btn_link {
				width: 80%;
		}
}

.btn_sankaku {
		width: 300px;
}
.btn_sankaku a {
		display: block;
		text-align: center;
		background: #000;
		color: #fff;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
		padding: 20px;
		text-decoration: none;
}
@media screen and (max-width: 800px) {
		.btn_sankaku a {
				padding: 3vw;
		}
}
.btn_sankaku a:hover {
		background: #fff;
		color: #000;
		text-decoration: none;
}
.btn_sankaku {
		margin-left: auto;
		margin-right: auto;
}
.btn_sankaku a {
		position: relative;
}
.btn_sankaku a::after {
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
		width: 0;
		height: 0;
		border-style: solid;
		left: 10px;
		border-width: 5px 8px 5px 0;
		border-color: transparent #fff transparent transparent;
}
.btn_sankaku a:hover::after {
		border-width: 5px 8px 5px 0;
		border-color: transparent #000 transparent transparent;
}
.btn_sankaku {
		border: solid 1px #000;
}
@media screen and (max-width: 800px) {
		.btn_sankaku {
				width: 80%;
		}
}

.bg_slash {
		background-image: linear-gradient(-45deg, #fff 25%, #eee 25%, #eee 50%, #fff 50%, #fff 75%, #eee 75%, #eee);
		background-size: 5px 5px;
		padding: 30px;
}

.bg_grade {
		background: #FF6EC9;
		background: -webkit-gradient(linear, left top, right top, from(#FF6EC9), to(#5DCAFC));
		background: linear-gradient(to right, #FF6EC9 0%, #5DCAFC 100%);
		filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF6EC9', endColorstr=' #5DCAFC', GradientType=1);
		padding: 30px;
}
/*# sourceMappingURL=style.css.map */