@charset "utf-8";

/*
/*    CSS(pctb) MENU
/*

/*
*********************************************************************************
/*
/* header
/*
/*******************************************************************************/

header {
	height: 112px;
	position: relative;
}

#upage header:before {
	background-image: url(/assets/images/umv01_pc.jpg);
	top: 262px;
	height: 300px;
	bottom: inherit;
}

header .h_txt {
	color: #959595;
	background: no-repeat;
	padding: 10px 10px 5px;
	height: auto;
	text-align: center;
	display: block;
	flex-wrap: inherit;
	align-items: inherit;
	justify-content: inherit;
	position: absolute;
	width: 100%;
}

header .h_con {
	height: 112px !important;
	padding: 0;
	position: initial;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

header .h_con .logo {
	width: 156px;
	margin-left: 20px;
}

header .nav_menu_wrap {
	width: 54px;
	top: 29px;
}

header .nav_menu {
	width: 54px;
}

header .h_con nav {
	display: block;
	position: absolute;
	bottom: 20px;
	font-size: 1.4rem;
	left: 50%;
	-webkit-transform: translate(-50%, 0%);
	transform: translate(-50%, 0%);
	width: 958px;
}

header .h_con nav a {
	color: #000;
	text-decoration: none;
	letter-spacing: 0.1em;
	font-weight: 500;
}

header .h_con nav > ul {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

header .h_con nav ul ul {
	display: none;
	position: absolute;
	top: 75%;
	width: 100%;
	text-align: left;
}

header .h_con nav ul ul a {
	display: block;
	padding: 9px 20px;
	background: rgb(99 105 119 / 94%);
	color: #fff;
}

header .h_con nav ul ul a:hover {
	opacity: 1;
	background: rgb(76 83 97 / 94%);
}

header .h_con nav ul ul li + li {
	margin-top: 1px;
}

header .h_con nav > ul > li > a {
	padding: 20px;
}

header .h_con li.has_child:before {
	position: absolute;
	content: "";
	width: 5px;
	height: 5px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	transform: rotate(135deg);
	-webkit-transform: rotate(135deg);
	right: 9px;
	top: 29px;
}

header .h_con nav > ul > li {
	position: relative;
}

header .nav_toggle {
	width: 440px;
}

#frontpage main {
	margin-top: 0;
}

header .nav_toggle_inner {
	padding: 70px 60px;
}

header .nav_toggle_inner .navin_btn {
	width: 240px;
}

header .nav_toggle_inner .navin_btn li + li {
	margin-top: 15px;
}

header .nav_toggle_inner .nav_toggle_menu {
	margin-top: 45px;
	padding-top: 40px;
}

header .nav_toggle_inner .nav_toggle_menu:before {
	width: 60px;
}

header .nav_toggle_inner .nav_toggle_menu > li > a:before {
	border-width: 5px 0 5px 7px;
	top: 16px;
}

header .nav_toggle_inner .nav_toggle_menu a {
	font-size: 1.6rem;
	padding: 7px 0 7px 25px;
}

header .nav_toggle_inner .nav_toggle_menu > li li a {
	padding-left: 50px;
}

header .nav_toggle_inner .nav_toggle_menu > li li a:before {
	width: 6px;
	height: 6px;
	top: 17px;
	left: 25px;
}

header .nav_toggle_inner .nav_toggle_menu02 a {
	font-size: 1.5rem;
}

header .nav_toggle_inner .nav_logo {
	width: 156px;
	margin: 40px 0 0 20px;
}


/*
*********************************************************************************
/*
/* footer + pagetop
/*
/*******************************************************************************/

#pagetop {
	display: block;
	position: fixed;
	bottom: 20px;
	right: 20px;
}

.f_spfix {
	display: none;
}

footer {
	margin-top: 0;
}

footer .f_con {
	padding: 70px 0 90px;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

footer .f_nav li a {
	padding: 6px 0;
}

footer .f_nav li {
	font-size: 1.4rem;
}

footer .f_logo {
	width: 99px;
	margin: 10px 0 0 0;
}

footer .f_navwrap {
	width: 80%;
	width: -webkit-calc(100% - 150px);
	width: calc(100% - 150px);
}

footer small {
	margin-top: 10px;
	font-size: 1.2rem;
	letter-spacing: 0.05em;
}


/*
*********************************************************************************
/*
/* モジュール
/*
/*******************************************************************************/


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
テキスト */

a[href^="tel:"] {
	color: #000;
	text-decoration: none;
	pointer-events: none;
}

.pc_tac {
	text-align: center;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
breadcrumb */

.breadcrumb {
	position: absolute;
	top: 15px;
	right: 0;
	font-size: 1.1rem;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
タイトル */

.page_tlblock {
	height: 450px;
	padding: 0;
	margin-bottom: 70px;
}

.page_tlblock .inner {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	height: 150px;
}

.page_tl {
	padding-top: 0;
	font-size: 3rem;
}

.lv01 {
	margin-top: 70px;
	margin-bottom: 50px;
	text-align: center;
	font-size: 2.8rem;
	padding: 0 60px;
}

.lv01:before,
.lv01:after {
	width: 60px;
	height: 2px;
	left: 0;
	top: 25px;
}

.lv01:after {
	left: inherit;
	right: 0;
}

.lv01_02 {
	font-size: 2.8rem;
	margin-top: 90px;
}

.lv02 {
	font-size: 2.2rem;
	letter-spacing: 0.025em;
	margin-top: 50px;
	margin-bottom: 30px;
}

.lv01_02 {
	font-size: 2.6rem;
	margin-bottom: 40px;
}

.lv01_02_txts {
	font-size: 2rem;
	vertical-align: baseline;
}

.lv03 {
	font-size: 2rem;
	margin-bottom: 20px;
	margin-top: 30px;
}

.lv03.lvtl_l {
	margin-bottom: 35px;
	margin-top: 40px;
}

.lv03_02 {
	font-size: 2rem;
	margin-bottom: 20px;
	margin-top: 30px;
}

.lv03_icon:before {
	width: 40px;
	height: 40px;
}

.lv03_icon {
	padding-top: 50px;
}

.lv04 {
	margin-bottom: 20px;
	margin-top: 20px;
	font-size: 1.8rem;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
リスト */

.li_dot {
	margin-top: 30px;
}

.li_dot li {
	padding-left: 30px;
}

.li_dot li:before {
	width: 5px;
	height: 5px;
	top: 12px;
	left: 5px;
}

.num_maru > li {
	font-size: 1.8rem;
	padding-left: 40px;
}

.num_maru > li:before {
	width: 19px;
	height: 19px;
	top: 7px;
	line-height: 1.6;
}

.num_maru li + li {
	margin-top: 8px;
}

.check_g {
	margin: 20px 0;
}

.check_g li:before {
	width: 12px;
	height: 8px;
	top: 8px;
	left: 4px;
	border-width: 3px;
}

.check_g li {
	padding-left: 27px;
}

.gray_li {
	margin-top: 30px;
}

.gray_li li + li {
	margin-top: 10px;
}

.gray_li li {
	padding: 20px;
}

.gray_li > li dt:before {
	width: 22px;
	height: 22px;
	top: 5px;
	line-height: 22px;
	font-size: 1.5rem;
}

.gray_li > li dt {
	padding-left: 30px;
	margin-bottom: 5px;
}


/*------------------------------------------------------------------------------
li_並び */

.li_narabi_both li {
	display: inline-block;
	margin-right: 1em;
}

.li_mt00 li + li {
	margin-top: 0;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
ボタン */

.btn {
	margin-top: 50px;
	font-size: 1.5rem;
	padding: 12px 75px;
	width: auto;
}

.btn_more {
	padding: 12px 25px 12px 45px;
}

.btn_more:before {
	border-width: 4px 0 4px 6px;
	left: 25px;
}

.movie_btn_block span {
	font-size: 1.2rem;
}

.movie_btn_block {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin-top: 50px;
	width: 100%;
}

.movie_btn_block li + li {
	margin: 0 0 0 15px;
}

.movie_btn_block a {
	padding: 10px 80px 8px 30px;
}

.movie_btn_block a:before {
	width: 29px;
	height: 22px;
	right: 30px;
}

.kanren_link {
	margin-top: 40px;
}

.kanren_link a:before {
	border-width: 5px 0 5px 7px;
	top: 9px;
}

.kanren_link a {
	padding-left: 15px;
}

.kanren_link li + li {
	margin-top: 10px;
}

.btn.btn_line {
	width: auto;
	margin-top: 30px;
	margin-bottom: 20px;
	padding: 12px 30px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
表 */

.bg_table tr {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	padding: 11px 20px;
}

.bg_table th {
	width: 35%;
}

.bg_table td {
	width: 64%;
	letter-spacing: 0.05em;
}

.bg_table tr + tr {
	margin-top: 3px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
gmap */

.gmap {
	height: 580px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
フォーム */

input[type=text],
input[type=date],
input[type=email],
input[type=tel],
select,
textarea {
	padding: 7px 15px;
}

.form_con {
	padding: 80px;
}

.form_layout {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
}

.form_layout + .form_layout {
	margin-top: 25px;
}

.form_con button {
	margin-top: 65px;
	width: 220px;
	padding: 9px;
}

.form_con + p {
	margin-top: 40px;
}
.form_con p.disp {
	text-align: center;
	margin-top: 65px;
}

.form_con input[type=date] {
	width: 206px;
}

.form_con .narabitxt {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
}

.form_con .narabitxt > * + * {
	margin: 0 0 0 15px;
}

.form_con .narabitxt > * + .selectblock {
	width: 106px;
}


/*------------------------------------------------------------------------------
セレクトボックス */

.selectblock {
	max-width: 205px;
	width: 100%;
}


/*------------------------------------------------------------------------------
テキストエリア */

textarea {
	height: 210px;
	resize: vertical;
}


/*------------------------------------------------------------------------------
ラジオボタン */

.radio_style label {
	margin: 0;
}

.radio_style span {
	padding-left: 40px;
	padding-right: 30px;
}

.radio_style span:before {
	width: 26px;
	height: 26px;
}

.radio_style input:checked + .radio_txt:after {
	height: 16px;
	width: 16px;
	left: 5px;
}

.form_con .radio_style + .radio_style {
	margin-top: 10px;
}


/*------------------------------------------------------------------------------
チェックボックス */

.checkbox_style span:before {
	width: 30px;
	height: 30px;
}

.checkbox_style span {
	padding-left: 40px;
}

.checkbox_style input:checked + .checkbox_txt:after {
	width: 11px;
	height: 18px;
	left: 10px;
	top: 2px;
}

.checkbox_style_narabi li {
	margin-top: 10px;
}

.checkbox_style_narabi {
	margin-top: -10px;
}

.form_con .checkbox_style + .checkbox_style {
	margin-top: 10px;
}


/*------------------------------------------------------------------------------
ラジオボタン+チェックボックスの並び */

.form_narabi {
	padding-top: 4px;
	margin-top: -10px;
}

.form_narabi li {
	margin-top: 10px;
}


/*------------------------------------------------------------------------------
フォームレイアウト */

.form_layout > dt {
	width: 40%;
	padding-top: 9px;
	margin-bottom: 0;
	margin-right: 2%;
}

.form_layout > dt .tl {
	font-size: 1.6rem;
}

.form_layout > dd {
	width: 58%;
}


/*------------------------------------------------------------------------------
必須 */

.form_layout .required {
	width: 38px;
	height: 38px;
	font-size: 1.2rem;
	margin-left: 15px;
}


/*------------------------------------------------------------------------------
追加テキスト */

.form_layout .txt_tuika p {
	font-size: 1.6rem;
}


/*------------------------------------------------------------------------------
form_confirm */

.form_confirm input:disabled {
	font-size: 1.6rem;
	padding: 0;
}

.form_submit_btn_block li + li {
	margin-top: 60px;
}

.form_confirm .form_layout > dt {
	padding-top: 0;
}

.submit_btn_reverse {
	padding: 15px 30px 16px 50px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
ブロック */

.kakomi {
	margin-top: 70px;
	border-radius: 10px;
	padding: 53px;
}

.kakomi + .kakomi {
	margin-top: 15px;
}

.kakomi_col02 {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
}

.kakomi_col02 > div {
	width: 49.2%;
	margin: 0 !important;
	padding: 40px 60px 50px;
}

.kakomi_col05 > div {
	width: 19%;
	margin-top: 1.25% !important;
	padding: 30px 20px;
	border-radius: 10px;
}

.kakomi_col05 {
	margin-top: 40px;
}

aside {
	margin-top: 80px;
}

.graybg {
	padding: 50px 0;
}

.inbeta {
	margin-top: 30px;
	padding: 20px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
pick_menu */

.pick_menu {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
	width: 100%;
}

.pick_menu li {
	width: 32.2%;
	margin-top: 0 !important;
	border-radius: 10px;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
	padding: 25px 20px 20px;
}

.pick_menu li a {
	padding: 25px 20px 90px;
}

.pick_menu dt {
	font-size: 2.2rem;
	padding-left: 36px;
	padding-right: 0;
	letter-spacing: 0.025em;
	margin-bottom: 16px;
}

.pick_menu dt:before {
	width: 38px;
	height: 38px;
	top: -4px;
	left: -8px;
}

.pick_menu .txt {
	font-size: 1.4rem;
}

.pick_menu .btn_style {
	width: 190px;
	padding: 6px;
	margin: 20px auto 0;
	position: absolute;
	bottom: 30px;
	left: 50%;
	-webkit-transform: translate(-50%, 0%);
	transform: translate(-50%, 0%);
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
link_li */

.link_li {
	margin: 80px 0 60px;
	background: none;
}

.link_li li {
	width: 24.3%;
	max-width: 286px;
}

.link_li .tl {
	font-size: 2.2rem;
	width: 100%;
	bottom: 80px;
}

.link_li .btn_style {
	width: 100%;
	max-width: 230px;
	font-size: 1.6rem;
	padding: 5px;
	bottom: 30px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
wanted_area */

.wanted_area {
	background-image: url(/assets/images/wanted_bg_pc.jpg);
	margin: 0;
	padding: 50px 85px;
}

.wanted_area .tl_block .tl {
	font-size: 7.343rem;
	letter-spacing: 0;
	border-bottom-width: 6px;
	padding-left: 0.2em;
	padding-top: 5px;
	line-height: 1.6;
}

.wanted_area .tl_block .tl:before {
	height: 6px;
	width: 90%;
	width: -webkit-calc(100% - 70px);
	width: calc(100% - 70px);
}

.wanted_area .tl_block .en {
	width: 54px;
	height: 54px;
	font-size: 1.6rem;
	padding-top: 12px;
	top: -10px;
	left: 3px;
}

.wanted_area .tl_block .en span {
	font-size: 1.2rem;
}

.wanted_area .txt {
	font-size: 1.8rem;
	letter-spacing: 0;
	margin-top: 57px;
}

.wanted_area .btn_block {
	margin: 10px 0 0 0;
	width: 52.4%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.wanted_area .btn_block li {
	margin-top: 20px !important;
	width: 48.8%;
	max-width: 258px;
}

.wanted_area .tl_block {
	width: 61%;
	margin-left: -20px;
}
.model_prof .lv01:before,
.model_prof .lv01:after {
	top: 2.4vw;
}
.model_prof h1.lv01 {
	font-size: 4.4rem;
}

/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
img_layout */

.img_layout {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.img_layout figure {
	max-width: 300px;
	width: 28%;
	margin: 0;
}

.img_layout .txt_block {
	width: 65%;
}

.img_layout.img_layout_r {
	flex-direction: row-reverse;
}

.img_layout_c {
	align-items: center;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
img_layout_step */

.img_layout_step .stelnum {
	width: 100px;
	height: 90px;
	padding: 16px;
	font-size: 4.8rem;
	left: 0;
	top: -53px;
}

.img_layout_step .stelnum span {
	font-size: 1.4rem;
}

.img_layout_step .stelnum:after {
	border-width: 20px 50px 0 50px;
	bottom: -20px;
}

.img_layout .txt_block {
	position: relative;
}

.img_layout_step .step_tl {
	font-size: 2.6rem;
	margin-left: 120px;
	margin-bottom: 50px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
model_list */

.model_list {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
}

.model_list > li {
	width: 44.8%;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	margin-top: 0 !important;
	position: relative;
}

.model_list_grace > li {
	padding-bottom: 50px;
}

.model_prof figure {
	width: 39.3%;
	max-width: 189px;
	margin: 0;
}

.model_prof .txt_block {
	width: 55%;
}

.model_list_grace > li:not(:nth-child(1)):not(:nth-child(2)) {
	margin-top: 55px !important;
}

.model_list_grace .name {
	margin-bottom: 20px;
	text-align: left;
}

.model_prof .txt_box {
	width: 100%;
}

.model_prof .prof_table {
	width: 100%;
}

.model_list_grace .prof_sns {
	position: absolute;
	bottom: 0;
	margin: 0;
	width: 55%;
	right: 0;
	justify-content: flex-start;
}

.model_prof .prof_sns li {
	width: 15.2%;
	max-width: 40px;
}

.model_prof .prof_table th {
	width: 5em;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
moreview */

.moreview {
	margin-top: 80px;
}

.moreview .btn_style {
	max-width: 580px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.moreview .btn_style li:not(:last-child) {
	width: 48%;
}

.moreview .btn {
	padding: 12px;
	width: 100%;
	margin-top: 40px;
}

.moreview .btn_style li:last-child {
	width: auto;
	margin: 0 auto;
}

.moreview .btn_style li:last-child .btn {
	font-size: 1.5rem !important;
	padding: 12px 35px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
anchor_li */

.anchor_li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin-top: 40px;
}

.anchor_li li:not(:last-child) {
	margin-right: 15px;
}

.anchor_li li {
	margin-top: 15px !important;
}

.anchor_li a:before {
	border-width: 6px 4px 0 4px;
	left: 14px;
}

.anchor_li a {
	padding: 10px 13px 10px 30px;
	letter-spacing: 0;
	border-radius: 26px;
}

.anchor_li03 {
	width: 100%;
	max-width: 900px;
}

.anchor_li03 li {
	width: 32.2%;
	margin: 0 0 1.7% 0 !important;
}

.anchor_li03 li:not(:nth-child(3n+1)) {
	margin-left: 1.7% !important;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
anchor_li_col02 */

.anchor_li_col02 {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	margin-top: 50px;
}

.anchor_li_g {
	width: 48%;
	margin: 0 !important;
}

.anchor_li_g li + li {
	margin-top: 10px;
}

.anchor_li_g a:before {
	width: 6px;
	height: 6px;
	top: 10px;
}

.anchor_li_g a {
	padding-left: 15px;
	letter-spacing: 0;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
kugiri_box */

.kugiri_box {
	margin-top: 25px;
}

.kugiri_block {
	margin-top: 50px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
kugiri_box */

.income_time {
	margin-bottom: 30px;
}

.income_time01 dt,
.income_time01 dd,
.income_time02 dt,
.income_time02 dd {
	padding: 2px 10px;
}

.income_time02 {
	margin-top: 0;
	margin-left: 10px;
}

.income_time01 dd,
.income_time02 dd {
	padding: 2px 15px 2px 10px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
namelabel */

.namelabel {
	margin-bottom: 30px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
point_block */

.point_block dt {
	padding-left: 27px;
}

.point_block dt:before {
	width: 22px;
	height: 22px;
	top: 5px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
attend_block */

.attend_block {
	margin-top: 80px;
	padding-top: 45px;
}

.attend_block:before {
	width: 30px;
	height: 30px;
}


/*
*********************************************************************************
/*
/* ページ固有
/*
/*******************************************************************************/


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
TOP */

.mv_area {

}
.mv_item {
	width: 100%;
	margin: 0 auto;
	position: relative;
}
.mv_item .img {
	width: 100%;
}
.mv_item .img img {
	width: 100%;
	margin-top: 0;
}

.mv_item .txt {
	font-size: 2.2rem;
	line-height: 1.8;
	top: 450px;
	right: inherit;
	left: 20px;
	font-weight: 500;
}

.mv_item .maru {
	font-weight: 900;
	width: 54px;
	height: 56px;
	top: -15px;
	left: -10px;
	padding-top: 14px;
}

.mv_item .tl {
	font-size: 5.2rem;
	line-height: 1.4;
	border-bottom-width: 6px;
	padding-top: 5px;
	padding-left: 10px;
	letter-spacing: 0;
	padding-bottom: 8px;
}

.mv_item .tl:before {
	height: 6px;
	width: 100%;
	margin-top: -8px;
}

.mv_item .name {
	font-size: 1.4rem;
	right: 20px;
	bottom: 8px;
}

.mv_item .tl_box {
	left: 0;
	top: 200px;
}

.mv_item:not(.mv01) .maru {
	width: 44px;
	height: 44px;
	font-size: 2.4rem;
	line-height: 1.6rem;
	color: #daceb6;
	top: -13px;
	left: -10px;
}

.mv_item.mv02 .txt,
.mv_item.mv05 .txt {
	color: #fff;
	top: 220px;
	left: inherit;
	right: 110px;
}

.mv_item.mv02 .name {
	color: #717171;
	right: inherit;
	left: 20px;
}

.mv_item:not(.mv01) .tl {
	padding-top: 15px;
	line-height: 1.3;
	font-size: 3.6rem;
	width: 520px;
	padding-bottom: 11px;
}

.mv_item:not(.mv01) .tl_txt {
	font-size: 1.8rem;
	padding-left: 40px;
	top: -20px;
}

.mv_item:not(.mv01) .tl_box {
	bottom: 200px;
	left: inherit;
	right: 30px;
}

.mv_item:not(.mv01) .tl:before {
	width: 475px;
}

.mv_item.mv03 .tl_box {
	left: 70px;
	right: inherit;
}

.mv_item.mv03 .tl {
	width: 480px;
}

.mv_item.mv03 .tl:before {
	width: 435px;
}

.mv_item.mv03 .txt {
	top: 230px;
	left: 110px;
}

.mv_item.mv03 .name {
	color: #000000;
}

.mv_item.mv03 .maru {
	color: #d6d6d8;
}

.mv_item.mv04 .txt {
	color: #818590;
	top: 220px;
	left: inherit;
	right: 160px;
}

.mv_item.mv04 .maru {
	color: #818590;
}

.mv_item.mv04 .name,
.mv_item.mv05 .name {
	color: #000000;
	right: inherit;
	left: 20px;
}

.mv_item.mv05 .maru {
	background-size: 44px;
}

.mv_item.mv04 .tl {
	font-size: 3.2rem;
}

.mv_item.mv05 .tl {
	font-size: 3rem;
}

.mv_item.mv05 .tl span {
	font-size: 3.4rem;
}



.top_about_wrap {
	margin-top: 90px;
	padding-bottom: 90px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.top_about_wrap .tl_block {
	width: 40.3%;
	max-width: 475px;
}

.top_about_wrap .txt_block {
	-webkit-flex: 1;
	flex: 1;
	padding-left: 80px;
}

.top_about_wrap .txt_block .lead {
	margin-top: 0;
	margin-bottom: 35px;
	font-size: 2rem;
	letter-spacing: 0;
}

.top_about_wrap .tl_box .tl {
	font-size: 4.19rem;
	border-bottom-width: 4px;
	border-top-width: 4px;
	padding-left: 5px;
	display: block;
	font-weight: 700;
	width: 260px;
	margin-bottom: 30px;
	letter-spacing: 0;
	margin-left: 10px;
}

.top_about_wrap .tl_box .txt {
	font-size: 2rem;
}

.top_about_wrap .tl_box .txt:before {
	height: 40px;
	left: 15px;
}

.top_about_wrap .tl_box .txt:after {
	height: 40px;
	right: 15px;
}

.top_about_wrap .tl_box {
	bottom: 20px;
}

.grace_bnr_wrap {
	margin: 50px auto 90px;
	max-width: 700px;
}

.grace_bnr_wrap .txt02 {
	font-size: 1.8rem;
}

.grace_bnr_wrap .btn_style {
	position: absolute;
	margin: 0;
	width: 150px;
	padding: 5px;
	top: 50%;
	right: 50px;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
}

.grace_bnr_wrap a {
	padding: 35px 0 35px 35px;
	background-image: url(/assets/images/top_age20_30_img_pc.jpg);
	position: relative;
}
.top_major {
	margin: 80px 0;
}
.top_major .tl_block .tl_box {
	font-size: 3rem;
	border-top-width: 4px;
	border-bottom-width: 4px;
	width: 440px;
	padding-top: 5px;
	padding-bottom: 5px;
	top: 74%;
	left: 54%;
	-webkit-transform: translate(0%, -50%) rotate(-5deg);
	transform: translate(0%, -50%) rotate(-5deg);
}

.top_major .lead {
	font-size: 2rem;
	margin-top: 35px;
	margin-bottom: 30px;
}

.top_anshin .tl_block .tl_box {
	font-size: 3rem;
	border-top-width: 4px;
	border-bottom-width: 4px;
	width: 580px;
	padding-top: 5px;
	padding-bottom: 5px;
	top: 50%;
	left: 20px;
	-webkit-transform: translate(0%, -50%) rotate(-5deg);
	transform: translate(0%, -50%) rotate(-5deg);
}

.top_anshin .lead {
	font-size: 2rem;
	margin-top: 35px;
	margin-bottom: 30px;
}

.top_merit_li {
	margin-top: 40px;
	padding: 0 20px;
}

.top_income {
	margin-top: 90px;
	padding-bottom: 90px;
}

.top_income .tl_block .tl_box {
	border-top-width: 4px;
	border-bottom-width: 4px;
	font-size: 3.5rem;
	padding-top: 5px;
	padding-bottom: 5px;
	top: 130px;
	bottom: inherit;
	right: 50px;
	width: 550px;
}

.top_income .tl_block .txt {
	font-size: 2rem;
	bottom: inherit;
	top: 250px;
	right: 50px;
	left: inherit;
}

.top_income > .inner > .tl_block {
	margin-bottom: 40px;
}

.top_income .kakomi_col02 > div {
	padding: 30px;
	margin-top: 1.6% !important;
}

.top_income_con .tl_block {
	justify-content: flex-start;
	margin-bottom: 30px;
}

.top_income_con .tl_block .stl + p {
	margin-left: 15px;
	font-size: 1.4rem;
	padding: 2px 10px;
}

.top_income_con .income_d {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.top_income_con .income_d dl {
	width: 115px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 0;
}

.top_income_con .income_d dd {
	width: 76px;
	height: 76px;
	margin: 0;
}

.top_income_con .income_d table {
	-webkit-flex: 1;
	flex: 1;
	margin-left: 20px;
}

.top_income_con .income_d table th {
	width: 11em;
}

.top_income_con .income_d table th,
.top_income_con .income_d table td {
	font-size: 1.5rem;
}

.top_income_con .income_d + .txt {
	margin-top: 30px;
}

.kakomi.top_interview_wrap {
	margin-top: 0;
	padding: 40px 30px;
}

.top_interview_con {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.top_interview_con figure {
	width: 38.4%;
	max-width: 284px;
	margin: 0;
}

.top_interview_con .txt_block {
	padding-left: 35px;
	-webkit-flex: 1;
	flex: 1;
}

.top_interview_con .stl {
	margin-bottom: 20px;
	text-align: left;
}

.top_interview_con .stl .stl_txts {
	font-size: 1.6rem;
}

.top_interview_con .stl + p {
	font-size: 1.5rem;
	letter-spacing: 0.5px;
}

.top_interview_wrap .btn_block a {
	margin: 35px auto 0;
	width: 354px;
	font-size: 1.5rem;
	padding: 5px;
}

.kakomi.top_interview_wrap + .top_interview_wrap {
	margin-top: 15px;
}

.kakomi.top_interview_wrap + .kakomi_col02 {
	margin-top: 15px;
}

.kakomi_col02 .top_interview_wrap02 {
	width: 49%;
	padding: 40px 90px;
}

.top_interview_wrap02 figure {
	width: 75.5%;
	max-width: 160px;
	margin: 0 auto 30px;
}

.top_interview_wrap02 .stl {
	font-size: 1.4rem;
}

.top_interview_wrap02 a {
	margin-top: 15px;
	font-size: 1.5rem;
	padding: 5px;
	width: 100%;
}
.top_model .lv01_02 {
	text-align: left;
	margin-top: 0;
	padding-top: 0;
}

.top_model .model_list li {
	width: 11.6%;
	max-width: 136px;
	margin-bottom: 0;
}

.top_model .model_list {
	width: 100%;
}

.top_model .model_list + .btn_block {
	width: 100%;
}

.top_model {
	padding-bottom: 80px;
}

.top_linx_bnr {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	width: 100%;
}

.top_linx_bnr li {
	width: 49%;
	margin: 0 !important;
}

.top_linx_bnr p {
	font-size: 1.4rem;
	margin-top: 15px;
}

.top_merit {
	margin-top: 95px;
}

.top_merit .tl_box {
	font-size: 3.5rem;
	border-top-width: 4px;
	border-bottom-width: 4px;
	width: 330px;
	padding: 5px 0;
	top: 50%;
	right: 40px;
	-webkit-transform: translate(0%, -50%) rotate(-5deg);
	transform: translate(0%, -50%) rotate(-5deg);
}

.top_merit .tl_box + .txt {
	font-size: 2rem;
	top: 290px;
	font-weight: 700;
	right: 40px;
	letter-spacing: 0;
}

.top_merit_con .icon {
	width: 44px;
	margin-bottom: 20px;
}

.top_merit_con .txt {
	font-size: 1.5rem;
	letter-spacing: 0;
}

.top_message_area {
	margin-top: 90px;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.top_message_area .tl_block {
	width: 40.3%;
	max-width: 475px;
	margin-bottom: 0;
}

.top_message_area .txt_block {
	-webkit-flex: 1;
	flex: 1;
	padding-left: 50px;
}

.top_message_area .txt_block li {
	margin: 0;
	border-radius: 10px;
	padding: 23px 40px;
}

.top_message_area .txt_block li + li {
	margin-top: 12px;
}

.top_message_area .txt_block li dt {
	font-size: 2rem;
	padding-left: 30px;
	margin-bottom: 10px;
}

.top_message_area .txt_block li:before {
	top: 32px;
	left: 40px;
}

.top_message_area .txt_block li dd {
	font-size: 1.6rem;
	font-weight: 400;
}

.top_link_li_area .link_li {
	width: 100%;
	margin: 90px 0;
}

.top_link_li_area .link_li li {
	width: 24.3%;
	margin: 0 !important;
}

.top_message_area .tl_block .tl {
	font-size: 3.5rem;
	border-top-width: 4px;
	border-bottom-width: 4px;
	width: 336px;
	padding: 3px 0;
	bottom: 30px;
	right: 20px;
}

.top_message_area .tl_block .txt {
	font-size: 2rem;
	width: 100%;
	left: 0;
	bottom: 110px;
	text-align: center;
}

.top_link_li_area .link_li .tl {
	font-size: 2.2rem;
	bottom: 80px;
}

.top_link_li_area .link_li .btn_style {
	font-size: 1.6rem;
	width: 90%;
	bottom: 30px;
}

.pick_bnr {
	margin: 20px auto 0 auto;
	max-width: 706px;
}

.pick_bnr li {
	width: 32%;
	margin: 0;
	max-width: 224px;
}

.pick_bnr p {
	font-size: 1.4rem;
	padding-top: 7px;
}

.pick_sns {
	margin: 0 auto;
	max-width: 480px;
}

.pick_sns li {
	font-size: 1.4rem;
}

.pick_sns img {
	margin-bottom: 5px;
	width: 38px;
}

.top_foot {
	margin-top: 80px;
}

.top_foot_bnr {
	margin: 50px auto 90px;
	width: 490px;
}

.top_foot_bnr li:not(:last-child) {
	max-width: 238px;
}

.top_foot_bnr li:last-child {
	width: 349px;
	margin: 30px auto 0;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
sitemap */

.sitemap_li {
	width: 48%;
}

.sitemap_li a {
	padding: 7px 0 7px 25px;
}

.sitemap_li > li > a:before {
	border-width: 5px 0 5px 7px;
	top: 16px;
}

.sitemap_li > li li a {
	padding-left: 50px;
}

.sitemap_li > li li a:before {
	width: 6px;
	height: 6px;
	top: 18px;
	left: 25px;
}

.sitemap_con {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.sitemap_li > li > a.blank_link:before {
	width: 12px;
	height: 12px;
	top: 16px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
enquete */

.enquete_block {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.enquete_table {
	width: 57.4%;
}

.enquete_table th,
.enquete_table td {
	font-size: 1.8rem;
}

.enquete_other {
	margin-top: 0;
	width: 37%;
}

.enquete_other dd {
	font-size: 1.6rem;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
FAQ */

.qa_cat_block .tl {
	color: #ff759c;
	font-weight: 700;
	font-size: 2.4rem;
	padding: 0 0 0 40px;
}

.qa_cat_block .tl:before {
	width: 26px;
	height: 26px;
	top: 8px;
	left: 0;
}

.qa_cat_block .tl:after {
	width: 7px;
	height: 7px;
	top: 17px;
	left: 8px;
}

.qa_li {
	margin-top: 40px;
}

.qa_li li + li {
	margin-top: 20px;
}

.qa_li a {
	background: #f4f7fb;
	border: none;
	padding: 16px 30px 16px 65px;
	border-radius: 8px;
}

.qa_li a:after {
	width: 7px;
	height: 7px;
	right: 20px;
}

.qa_li a:before {
	width: 32px;
	height: 32px;
	top: 14px;
	left: 20px;
	font-size: 1.6rem;
	line-height: 32px;
}

.qa_block + .qa_block {
	margin-top: 40px;
}

.qa_block dt:before,
.qa_block dd:before {
	width: 48px;
	height: 48px;
	top: 0;
	left: 20px;
	font-size: 2.4rem;
	line-height: 48px;
}

.qa_block dt {
	padding: 9px 0px 12px 85px;
	margin-bottom: 45px;
}

.qa_block dd {
	padding: 40px 40px 40px 90px;
}

.qa_block dd:before {
	top: 30px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
model */

.model_page .model_li li {
	width: 18.4%;
	max-width: 216px;
	margin-top: 55px;
}

.model_page .model_li .name {
	padding-top: 1em;
}

.model_page .model_li {
	margin-top: 20px;
	justify-content: flex-start;
}

.model_page .model_li li:not(:nth-child(5n+1)) {
	margin-left: 2%;
}

.model_d .page_tlblock {
	height: 150px;
}

.model_d main .inner02 {
	width: 100%;
}

.model_d .model_prof figure {
	width: 49.5%;
	max-width: 583px;
}

.model_d .model_prof {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.model_d .model_prof .txt_block {
	width: 44%;
}

.model_d .model_prof .txt_box {
	width: 100%;
	max-width: 400px;
}

.model_d .model_prof .prof_sns {
	position: relative;
	bottom: inherit;
	right: inherit;
	justify-content: center;
	margin: 50px auto 0;
}

.model_d .model_prof .prof_sns li + li {
	margin-left: 6%;
}

.model_d .model_prof .prof_sns li {
	width: 15.2%;
	max-width: 50px;
}

.model_d .btn {
	padding: 6px 20px;
}

.model_d .btn_style {
	margin-top: 30px;
}

/*============================================================================================================================================================*/
.pick_menu .btn_style.txt_pc {
	width: 230px;
	font-size: 90%;
	line-height: 2;
}

.model_bnr {
	margin-top: 30px;
	font-size: 100%;
}
.model_bnr img {
	width: 240px;
	margin-bottom: 1vw;
}
.mts_p {margin-top: 20px !important;}
.bnr_vanilla {
display:flex !important;justify-content: center !important;margin: 3rem auto 0 auto !important;
}
.lppb01 .leadpc {
	text-align: center !important;
}