@charset "utf-8";

/*
/*    CSS MENU
/*

/*
*********************************************************************************
/*
/* コメントタイプ
/*
/*******************************************************************************/


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
中コメント */


/*------------------------------------------------------------------------------
小コメント */


/* コメント */


/*
*********************************************************************************
/*
/* common
/*
/*******************************************************************************/

#wrapper {
	min-height: 100vh;
}


/*
*********************************************************************************
/*
/* header
/*
/*******************************************************************************/

header {
	height: 57px;
	z-index: 100;
	width: 100%;
	background: #fff;
}

.h_con {
	padding: 1px 4vw 0;
}

header .hlogo {
	width: 147px;
	line-height: 1;
	margin-left: auto;
	margin-right: auto;
}

header h1 {
	color: #221551;
	font-size: 10px;
	margin-bottom: 2px;
	text-align: center;
}

.gnav {
	display: none;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	right: auto;
	background: rgb(236 231 255 / 95%);
	max-width: 800px;
	z-index: 9998;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

.gnav nav {
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	height: 100%;
	padding: 70px 4vw;
}

.hamburger {
	position: fixed;
	right: 3.4vw;
	width: 40px;
	height: 40px;
	top: 15px;
	color: #fff;
	cursor: pointer;
	font-size: 10px;
	text-align: center;
	letter-spacing: 0;
	z-index: 9999;
	background: #221551;
	border: 5px solid #221551;
}

.hamburger em:before,
.hamburger em:after {
	position: absolute;
	content: "";
	width: 100%;
	height: 2px;
	background: #fff;
	bottom: 9px;
	left: 0;
	transition: 0.5s;
}

.hamburger em:after {
	bottom: 2px;
}

header.on .hamburger em:before {
	-webkit-transform: rotate(25deg);
	transform: rotate(25deg);
	bottom: 5px;
}

header.on .hamburger em:after {
	-webkit-transform: rotate(-25deg);
	transform: rotate(-25deg);
	bottom: 5px;
}

.gnav nav a {
	text-decoration: none;
	font-size: 1.4rem;
}

.gnav .nav01 {
	border-top: 1px solid #221551;
	padding-top: 4vw;
}

.gnav .nav01 li + li {
	margin-top: 3vw;
}

.gnav .nav01 a {
	font-size: 1.8rem;
	padding-left: 7vw;
	position: relative;
}

.gnav .nav01 a:before {
	position: absolute;
	content: "";
	background: #221551;
	width: 5vw;
	height: 5vw;
	border-radius: 50%;
	top: 1.1vw;
	left: 0;
}

.gnav .nav01 a:after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0.7vw 0 0.7vw 1.2vw;
	border-color: transparent transparent transparent #ffffff;
	top: 2.8vw;
	left: 2.1vw;
}

.gnav .nav02 {
	border-top: 1px solid #221551;
	padding-top: 4vw;
	margin-top: 4vw;
}

.gnav .nav02 a {
	position: relative;
	padding-left: 3vw;
}

.gnav .nav02 a:before {
	position: absolute;
	content: "";
	background: url(../images/link.png) no-repeat center center / contain;
	width: 1.5vw;
	height: 2.25vw;
	top: 1.5vw;
	left: 0;
}

.gnav .nav02 li + li {
	margin-top: 2vw;
}

.nav_line {
	margin-top: 3vw;
}

.nav_line a {
	color: #fff;
	display: block;
	position: relative;
	background: #00b900;
	border-radius: 3vw;
	padding: 3vw 3vw 3.5vw 9vw;
	font-size: 1.6rem !important;
	width: 64.1vw;
}

.nav_line a:before {
	position: absolute;
	content: "";
	background: url(../images/nav_line.png) no-repeat center center / contain;
	width: 6vw;
	height: 6vw;
	top: 2.8vw;;
	left: 2.1vw;
}

/*
*********************************************************************************
/*
/* footer + pagetop
/*
/*******************************************************************************/

footer {
	margin-top: 15vw;
}

footer .area {
	font-size: 2.3vw;
	line-height: 1.8;
}

footer small {
	border-top: 1px solid #221551;
	display: block;
	text-align: center;
	font-size: 2.3vw;
	margin-top: 10vw;
	padding: 5vw 5vw 21vw 5vw;
}

.fixnav {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100vw;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.fixnav li {
	width: 25%;
	line-height: 1;
}


/*
*********************************************************************************
/*
/* モジュール
/*
/*******************************************************************************/


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
テキスト */

.wb_ba {
	word-break: break-all;
}

.link {
	position: relative;
	padding-left: 3vw;
}

.link:before {
	position: absolute;
	content: "";
	background: url(../images/link.png) no-repeat center center / contain;
	width: 1.5vw;
	height: 2.25vw;
	top: 1.9vw;
	left: 0;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
タイトル */

.pagetl {
	background: #ded8f2;
	text-align: center;
	padding: 10vw 6vw;
	letter-spacing: 0.075em;
	font-size: 1.95rem;
	margin-bottom: 5vw;
	font-family: 'Noto Serif JP', serif;
}

.lead {
	text-align: center;
	color: #221551;
	font-size: 2.45rem;
	line-height: 1.5;
	margin-bottom: 5vw;
	margin-top: 5vw;
	font-family: 'Noto Serif JP', serif;
}

h3:not([class]),
h3.mt00 {
	position: relative;
	margin-bottom: 6vw;
	font-size: 2.3rem;
	padding: 8vw 6vw 0 6vw;
	line-height: 1.5;
	font-family: 'Noto Serif JP', serif;
	margin-top: 10vw;
	margin-left: -6vw;
	margin-right: -6vw;
	color: #221551;
	font-weight: 600;
}

h3:not([class]):before,
h3.mt00:before {
	position: absolute;
	content: "";
	background: url(../images/tl01.png) repeat-x center top / contain;
	width: 100vw;
	height: 15vw;
	left: 0;
	top: 0;
	z-index: -1;
}

h4:not([class]) {
	margin-top: 6vw;
	margin-bottom: 6vw;
	font-size: 2.12rem;
	line-height: 1.5;
	border-bottom: 2px solid #221551;
	padding-bottom: 3vw;
	font-family: 'Noto Serif JP', serif;
	color: #221551;
}

h5:not([class]) {
	border-left: 6px solid #221551;
	margin-top: 6vw;
	margin-bottom: 6vw;
	font-size: 2.12rem;
	line-height: 1.5;
	color: #221551;
	padding: 1vw 0 1vw 4vw;
	font-family: 'Noto Serif JP', serif;
	color: #221551;
}

h6:not([class]) {
	margin-top: 5vw;
	margin-bottom: 4vw;
	font-size: 1.95rem;
	line-height: 1.5;
	font-family: 'Noto Serif JP', serif;
}

.catch {
	margin-top: 5vw;
	margin-bottom: 4vw;
	font-size: 1.8rem;
	line-height: 1.5;
	font-family: 'Noto Serif JP', serif;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
リスト */

.li_check li {
	position: relative;
	padding-left: 8vw;
}

.li_check li:before {
	position: absolute;
	content: "";
	background: url(../images/li_check.png) no-repeat center center / contain;
	width: 6.2vw;
	height: 6vw;
	top: 0.4vw;
	left: 0;
}

.li_check li + li {
	margin-top: 1vw;
}

.li_check_border {
	border-bottom: 1px solid #221551;
	padding-bottom: 2.5vw;
}

.li_check_border li {
	border-top: 1px solid #221551;
	padding-top: 2.5vw;
}

.li_check_border li:before {
	top: 2.5vw;
}

.li_check_border li + li {
	margin-top: 3vw;
}

ul:not([class]) li {
	position: relative;
	padding-left: 2.3vw;
}

ul:not([class]) li:before {
	position: absolute;
	content: "";
	background: #221551;
	top: 2.6vw;
	left: 0;
	width: 1vw;
	height: 1vw;
	border-radius: 50%;
}

.li_mt li + li {
	margin-top: 3vw !important;
}

.li_b li {
	font-weight: 700;
}

.li_num {
	counter-reset: li_num;
}

.li_num li {
	position: relative;
	padding-left: 8vw;
}

.li_num li:before {
	position: absolute;
	background: #221551;
	content: counter(li_num) "";
	counter-increment: li_num;
	width: 5.5vw;
	height: 5.5vw;
	top: 0;
	left: 0;
	color: #fff;
	font-weight: 400;
	text-align: center;
	border-radius: 50%;
	line-height: 5.3vw;
}

.li_num li + li {
	margin-top: 1vw;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
表 */

table:not([class]) th,
table:not([class]) td {
	padding: 2vw 0 2.2vw;
}

table:not([class]) th {
	border-bottom: 1px solid #221551;
	width: 25%;
	color: #221551;
	vertical-align: top;
}

table:not([class]) td {
	border-bottom: 1px solid #bdbbc5;
}

table:not([class]) thead th {
	background: #d5eff6;
	text-align: center;
	color: #000;
	font-size: 2.12rem;
	font-weight: 700;
	letter-spacing: 0.075em;
	border-bottom: none;
	border-radius: 2vw;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
フォーム
 */

input[type=text],
select,
textarea {
	background: #fff;
	border: 1px solid #d4d4d4;
	width: 100%;
	font-size: 16px;
	padding: 2vw;
	border-radius: 3px;
}

input[type=date] {
	background: #fff;
	border: 1px solid #d4d4d4;
	width: 300px;
	font-size: 16px;
	padding: 2vw;
	border-radius: 3px;
}

input:disabled {
	background: #f7f7f7;
	border: 1px solid #cccccc;
	color: #bbb;
}

input.minitxt {
	width: 9em;
}

.selectblock {
	position: relative;
}

select::-ms-expand {
	display: none;
}

.selectblock:before {
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
	content: "";
	border: #aeaeae 1px solid;
	background: #e1e1e1;
	height: 100%;
	width: 30px;
	border-radius: 0 3px 3px 0;
	pointer-events: none;
}

.selectblock:after {
	content: "";
	position: absolute;
	top: 46%;
	right: 10px;
	-webkit-transform: translate(0, -50%) rotate(-45deg);
	transform: translate(0, -50%) rotate(-45deg);
	width: 10px;
	height: 10px;
	border-left: 2px solid #727272;
	border-bottom: 2px solid #727272;
	pointer-events: none;
}

textarea {
	height: 40vw;
	resize: vertical;
}

.radio_style_narabi {
	margin-top: -4vw;
}

.radio_style_narabi li {
	display: inline-block;
	margin-top: 4vw;
}

.radio_style label {
	display: inline-block;
	margin: 0 5px 0 0;
}

.radio_style input[type="radio"] {
	box-sizing: border-box;
	max-width: 100%;
	font-size: 100%;
	padding: 0;
	vertical-align: baseline;
	width: auto;
	margin: 0 5px 0 0;
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.radio_style span {
	padding-left: 8vw;
	position: relative;
	cursor: pointer;
	padding-right: 4vw;
	display: block;
	width: 101%;
	width: -webkit-calc(100% + 2px);
	width: calc(100% + 2px);
}

.radio_style span:before {
	content: "";
	display: block;
	border: 1px solid #dedede;
	background: #fff;
	border-radius: 50%;
	width: 5vw;
	height: 5vw;
	position: absolute;
	top: 50%;
	left: 0%;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
}

.radio_style input:checked + .radio_txt:after {
	content: "";
	display: block;
	width: 2.9vw;
	height: 2.9vw;
	background: #221551;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 1.1vw;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
}

.checkbox_style_narabi li {
	display: inline-block;
	margin-top: 4vw;
}

form .other_box {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	margin-top: 4vw;
}

form .other_box li {
	width: 26vw;
}

form .other_box li + li {
	-webkit-flex: 1;
	flex: 1;
	width: auto;
}

.checkbox_style_narabi {
	margin-top: -4vw;
}

.checkbox_style label {
	display: inline-block;
	margin: 0 5px 0 0;
}

.checkbox_style input[type="checkbox"] {
	box-sizing: border-box;
	max-width: 100%;
	font-size: 100%;
	padding: 0;
	vertical-align: baseline;
	width: auto;
	margin: 0 5px 0 0;
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.checkbox_style span {
	padding-left: 8vw;
	position: relative;
	cursor: pointer;
	padding-right: 4vw;
	display: block;
	width: 101%;
	width: -webkit-calc(100% + 2px);
	width: calc(100% + 2px);
}

.checkbox_style span:before {
	content: "";
	display: block;
	border: 1px solid #dedede;
	background: #fff;
	width: 5vw;
	height: 5vw;
	position: absolute;
	top: 50%;
	left: 0%;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
}

.checkbox_style input:checked + .checkbox_txt:after {
	content: "";
	display: block;
	position: absolute;
	top: 1.2vw;
	left: 1.8vw;
	width: 1.7vw;
	height: 2.5vw;
	transform: rotate(40deg);
	border-bottom: 3px solid #221551;
	border-right: 3px solid #221551;
}

.submit_btn {
	background: #221551;
	content: "";
	width: 60vw;
	height: 100%;
	left: 0;
	background-size: 19px auto;
	text-decoration: none;
	color: #fff;
	padding: 4vw 9vw;
	font-weight: 700;
	line-height: 1.6;
	font-size: 1.47rem;
	position: relative;
	margin-left: 20vw;
	text-align: center;
	letter-spacing: 3px;
}

.submit_btn:before {
	position: absolute;
	content: "";
	background: url(../images/link_w.png) left center no-repeat;
	background-size: contain;
	right: 5vw;
	top: 0;
	width: 1.5vw;
	height: 100%;
}

.form_spwide {
	margin-left: -7vw;
	margin-right: -9vw;
}

.form_spwide .form_layout {
	padding: 4vw 7vw 5vw;
}

.form_spwide .form_layout:not(:nth-of-type(2n)) {
	background: #f7f4ff;
}

.form_layout .required {
	background: #221551;
	color: #fff;
	font-size: 1.06rem;
	letter-spacing: 2px;
	height: 5vw;
	width: 8vw;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin-left: 2vw;
	padding-left: 1px;
}

.form_layout > dt {
	margin-bottom: 2vw;
}

.form_layout > dt p {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
}

.form_layout > dt .tl {
	font-size: 1.47rem;
}

.form_layout .txt_tuika {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
}

.form_layout .txt_tuika p {
	font-size: 1.47rem;
}

.form_layout .txt_tuika input + p,
.form_layout .txt_tuika p + input {
	margin-left: 1em;
}

.form_layout .three_size input {
	width: 9em;
}

.form_layout .three_size li + li {
	margin-top: 1.6rem;
}

.form_layout .three_size li p:first-child {
	width: 6em;
}

.form_layout .photo p {
	width: 8em;
}

.form_layout .photo p + input {
	width: 100%;
	margin-left: 0;
	-webkit-flex: 1;
	flex: 1;
}

.form_layout .photo li + li {
	margin-top: 2rem;
}

.form_sample {
	margin-top: 0.5em;
	color: #999;
	font-size: 0.98rem;
}

.form_layout .photo2 li {
	padding: 0.5em 0;
}

.form_layout .photo2 p {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	width: 25em;
}

div.btn_file {
	text-align: center;
	border: 1px solid #aeaeae !important;
	border-radius: 5px;
	background: #e1e1e1;
	padding: 0;
	width: 4em;
}

.photo2 li div.preview {
	width: 4em;
	height: 4em;
	margin-left: auto;
	border: 1px solid #e1e1e1;
	overflow: hidden;
}

.photo2 li div img {
	width: 100%;
}


/*______________________________________________________________________________

form_confirm */

.submit_btn_reverse {
	background: #c3c3c3;
	padding: 3.5vw 9vw;
	font-size: 1.47rem;
}

.submit_btn_reverse:before {
	transform: rotate(-180deg);
	-webkit-transform: rotate(-180deg);
	right: inherit;
	left: 5vw;
}

.form_submit_btn_block li + li {
	margin-top: 10vw;
}

.formTable th,
.formTable td {
	background: #f3f0fc;
	padding: 4vw;
	font-size: 1.55rem;
	vertical-align: top;
}

.formTable tbody tr:nth-child(2n) th,
.formTable tbody tr:nth-child(2n) td {
	background: #fff;
}

.formTable th {
	font-weight: 700;
	width: 47%;
	padding-right: 0;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
line_photo_block */

.line_photo_block figure {
	margin: 0 auto 5vw;
	width: 45vw;
	border-radius: 50%;
	overflow: hidden;
}

.line_photo_block .txt_block p {
	font-weight: bold;
	font-size: 1.47rem;
	background: linear-gradient(to bottom, transparent 70%, #ffe3e9 70%);
	display: inline;
	line-height: 2.2;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
囲み */

.kakomi {
	border: 1px solid #221551;
	padding: 4vw;
}



.kakomi_tl {
	font-weight: 700;
	text-align: center;
	color: #221551;
	font-size: 2.2rem;
	line-height: 1.5;
	margin-bottom: 5vw;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
width */

.w100p {
	width: 100%;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
marunum_narabi */

.marunum_narabi dt {
	font-weight: 700;
	color: #221551;
	line-height: 1.5;
	margin-bottom: 1vw;
	font-size: 115%;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
FAQ */

.faq_q {
	font-size: 2.12rem;
	font-weight: 700;
	line-height: 1.5;
	position: relative;
	padding-left: 12.6vw;
	padding-top: 1.2vw;
}

.faq_q:before {
	background: #221551;
	width: 10vw;
	height: 10vw;
	position: absolute;
	content: "Q";
	text-align: center;
	line-height: 1.7;
	color: #fff;
	border-radius: 50%;
	left: 0;
	top: 0;
}

.faq_a_none {
	margin-top: 4vw;
}

.faq_a {
	position: relative;
	padding-left: 12.6vw;
	padding-top: 2.3vw;
	margin-top: 3vw;
	padding-bottom: 3vw;
}

.faq_a:before {
	background: #d5eff6;
	width: 10vw;
	height: 10vw;
	position: absolute;
	content: "A";
	text-align: center;
	line-height: 1.9;
	color: #221551;
	border-radius: 50%;
	left: 0;
	top: 0;
	font-size: 2.12rem;
	font-weight: 700;
}

.faq_block + .faq_block {
	margin-top: 4vw;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
ap_block */

.ap_block .box a {
	background: #f3f0fc;
	text-decoration: none;
	display: block;
	padding: 5vw 4vw;
	position: relative;
	border: 1px solid #221551;
}

.ap_block .box a:after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 4vw 4vw;
	border-color: transparent transparent #221551 transparent;
	right: 4px;
	bottom: 4px;
}

.ap_block .icon {
	width: 12.5vw;
	margin: 0 auto 2vw;
}

.ap_block .stl span {
	font-size: 60%;
	padding-right: 2vw;
	vertical-align: middle;
	padding-top: 1vw;
}

.ap_block .stl {
	font-size: 5.1vw;
	text-align: center;
	line-height: 1.5;
	margin-bottom: 2vw;
	letter-spacing: 0.075em;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	color: #221551;
	font-family: 'Noto Serif JP', serif;
}

.ap_block .box + .box {
	margin-top: 3vw;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
flow */

.flow > li {
	background: #ded8f2;
	text-align: center;
	color: #000;
	font-size: 2.12rem;
	letter-spacing: 0.075em;
	border-bottom: none;
	border-radius: 4vw;
	padding: 4vw 4vw 4.5vw;
	position: relative;
	font-family: 'Noto Serif JP', serif;
}

.flow > li + li {
	margin-top: 10vw;
}

.flow > li + li:before {
	position: absolute;
	content: "";
	background: url(../images/flow.png) no-repeat center center / contain;
	width: 7.25vw;
	height: 5vw;
	top: -7.3vw;
	left: 50%;
	-webkit-transform: translate(-50%, 0%);
	transform: translate(-50%, 0%);
	;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
step */

.step > li > dl {
	background: #f7f4ff;
	border-radius: 4vw;
	position: relative;
	overflow: hidden;
}

.step > li > dl > dt {
	color: #fff;
	font-size: 2.12rem;
	letter-spacing: 0.075em;
	background: #221551;
	position: relative;
	padding: 4vw 4vw 4.2vw 17vw;
	font-family: 'Noto Serif JP', serif;
}

.step > li > dl > dt .num {
	font-size: 9vw;
	position: absolute;
	top: 50%;
	left: 4vw;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
}

.step > li > dl > dd {
	padding: 4.5vw 4vw 5vw 4vw;
}

.step > li + li {
	margin-top: 3vw;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
dl_type */

.dl_type {
	background: #ded8f2;
	border-radius: 4vw;
	overflow: hidden;
	padding: 4vw;
}

.dl_type > dt {
	color: #221551;
	font-size: 1.73rem;
	letter-spacing: 0.075em;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
}

.dl_type > dd {
	background: #fff;
	border-radius: 4vw;
	text-align: center;
	padding: 4vw;
	margin-top: 3vw;
}

.dl_type + .dl_type {
	margin-top: 3vw;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
dl_glossary */

.dl_glossary > dt {
	margin-bottom: 2vw;
	font-size: 2.12rem;
	line-height: 1.5;
	color: #221551;
	padding-left: 8vw;
	font-family: 'Noto Serif JP', serif;
	position: relative;
}

.dl_glossary > dt:before {
	position: absolute;
	content: "";
	background: url(../images/glossary.png) no-repeat center center / contain;
	width: 5.5vw;
	height: 4.5vw;
	left: 0;
	;
	top: 1.6vw;
}

.dl_glossary + .dl_glossary {
	margin-top: 6vw;
}


/*
*********************************************************************************
/*
/* ページ固有
/*
/*******************************************************************************/


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
application */

.kibouday dl {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
}

.kibouday dt {
	font-weight: 700;
	-webkit-flex: 1;
	flex: 1;
}

.kibouday dd {
	width: 25%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.kibouday dd.date {
	width: 46%;
	margin-right: 10px;
}

.kibouday dd p {
	width: 2em;
	text-align: center;
}

.kibouday .div_select {
	-webkit-flex: 1;
	flex: 1;
}

.kibouday .selectblock:before {
	width: 14px;
}

.kibouday .selectblock:after {
	width: 6px;
	right: 4px;
	height: 6px;
}

.kibouday li + li {
	margin-top: 5vw;
}