@charset "utf-8";
.mtll {
	margin-top: 120px !important;
}

.mbll {
	margin-bottom: 120px !important;
}

.ptll {
	padding-top: 120px !important;
}

.pbll {
	padding-bottom: 120px !important;
}

.mtl {
	margin-top: 80px !important;
}

.mbl {
	margin-bottom: 80px !important;
}

.ptl {
	padding-top: 80px !important;
}

.pbl {
	padding-bottom: 80px !important;
}

.mtml {
	margin-top: 60px !important;
}

.mbml {
	margin-bottom: 60px !important;
}

.ptml {
	padding-top: 60px !important;
}

.pbml {
	padding-bottom: 60px !important;
}

.mtm {
	margin-top: 30px !important;
}

.mbm {
	margin-bottom: 30px !important;
}

.ptm {
	padding-top: 30px !important;
}

.pbm {
	padding-bottom: 30px !important;
}

.mtms {
	margin-top: 20px !important;
}

.mbms {
	margin-bottom: 20px !important;
}

.ptms {
	padding-top: 20px !important;
}

.pbms {
	padding-bottom: 20px !important;
}

.mts {
	margin-top: 20px !important;
}

.mbs {
	margin-bottom: 20px !important;
}

.pts {
	padding-top: 20px !important;
}

.pbs {
	padding-bottom: 20px !important;
}

.mtss {
	margin-top: 10px !important;
}

.mbss {
	margin-bottom: 10px !important;
}

.ptss {
	padding-top: 10px !important;
}

.pbss {
	padding-bottom: 10px !important;
}

body {
	line-height: 2.1;
}


/*******************************************************************************
/*******************************************************************************
header */


/*******************************************************************************
/*******************************************************************************
bread_wrap*/

.bread_wrap {
	display: block;
	padding-top: 20px;
	margin-bottom: 35px;
}

.bread_wrap ul {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
	font-size: 1.2rem;
}

.bread_wrap ul li:not(:last-child) {
	margin-right: 23px;
	position: relative;
}

.bread_wrap ul li:not(:last-child):after {
	position: absolute;
	content: "";
	width: 4px;
	height: 4px;
	border-top: 1px solid #959595;
	border-right: 1px solid #959595;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	top: 11px;
	right: -14px;
}


/*******************************************************************************
/*******************************************************************************
footer */

footer {
	border-top: 1px solid #E5E5E5;
	padding: 60px 0 66px;
}

footer .f_logo {
	width: 16.9%;
	margin-left: 0;
	margin-right: auto;
	margin-bottom: 0;
}

footer .f_nav_wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-end;
}

footer .f_nav_wrap nav {
	margin: 6px 0 0 0;
	width: 98%;
	width: -webkit-calc(100% - 150px);
	width: calc(82% - 150px);
	background: no-repeat;
}

footer .f_nav_wrap nav ul {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-end;
}

footer .f_nav_wrap li {
	position: relative;
	padding-left: 20px;
	margin-right: 20px;
	border: none !important;
}

footer .f_nav_wrap li + li:before {
	background: #CECECE;
	content: "";
	left: 0;
	top: 4px;
	width: 1px;
	height: 20px;
	position: absolute;
}

footer .f_nav_wrap li a {
	padding: 0;
}

footer .f_nav_wrap li a:after {
	display: none;
}

footer .f_btn a {
	padding: 4px 26px 6px 30px;
	font-size: 1.4rem;
}

footer .f_jcr_wrap {
	margin-top: 40px;
	flex-direction: row;
	padding-bottom: 0;
}

footer .f_jcr_nav li {
	margin-top: 0;
	font-size: 1.4rem;
}

footer .bnr {
	margin: 0;
	width: 27.4%;
	max-width: 335px;
}

.f_jcr_block {
	text-align: right;
}

footer small {
	position: inherit;
	bottom: inherit;
	left: inherit;
	font-size: 1.3rem;
}


/*******************************************************************************
/*******************************************************************************
モジュール */


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
テキスト */

.txt_hudou {
	margin-top: 20px;
}

.page_hosoku {
	font-size: 1.3rem;
	margin-top: 60px;
	line-height: 1.9;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
タイトル */

.level_01 {
	margin-bottom: 80px;
	padding-top: 0;
}

.level_01 + .hosoku {
	margin-top: -3em;
	margin-bottom: 15px;
}

.level_02 {
	font-size: 1.8rem;
	padding-top: 50px;
	padding-bottom: 20px;
}

.level_03 {
	margin-top: 75px;
	margin-bottom: 60px;
	font-size: 2rem;
	padding: 12px 13px 14px;
}

.level_03_u {
	margin-top: -50px;
	margin-bottom: 35px;
}	

.level_04 {
	padding-top: 75px;
	margin-bottom: 30px;
	font-size: 2rem;
}

.level_04 + .sent,
.level_04 + .beta {
	margin-top: 0;
}

.level_05 {
	font-size: 1.6rem;
	margin-bottom: 10px;
}

.level_06 {
	margin-top: 35px;
	margin-bottom: 10px;
	font-size: 1.4rem;
}

.level_simple_l {
	font-size: 2.8rem;
	margin-bottom: 35px;
	padding-top: 0;
}

.level_simple {
	font-size: 2.6rem;
	line-height: 1.6;
	padding-top: 55px;
	margin-bottom: 60px;
}

.level_simple .cat {
	width: 120px;
	line-height: 1.4;
	padding-top: 1px;
	margin-top: 1px;
	margin-bottom: 15px;
}

.level_simple + .name {
	margin-top: -58px;
	font-size: 1.8rem;
}

.level_simple + .name + .time_block {
	margin-top: 10px;
}

h1.level_simple {
	padding-top: 20px;
}

.level_side {
	width: 220px;
	padding: 0;
	height: 120px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	line-height: 1.5;
	margin: 0;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
リスト */

.li_sp_tate li {
	display: inline-block;
	position: relative;
}

.li_sp_tate li:not(:last-child):after {
	content: " ／ ";
}

.li_border li + li {
	padding-top: 12px;
	margin-top: 12px;
}

.li_num > li {
	line-height: 1.9;
}

.li_numkakko > li {
	line-height: 1.9;
}

.li_nummaru > li:before {
	top: 2px;
}


/*______________________________________________________________________________
li_並び */

.li_narabi_both li {
	display: inline-block;
	margin-right: 1em;
}

.li_mt00 li + li {
	margin-top: 0;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
table */

.table_style_col02 {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.table_style_col02>dl {
	width: 50%;
}

.table_style dl + dl {
	margin-top: 0;
}

.table_style_col02>dl+dl>* {
	border-left: none;
}

.table_style dl>* {
	font-size: 1.4rem;
	padding: 10px 25px;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ボタン */

.btn a {
	width: 262px;
	padding: 16px;
	font-size: 1.6rem;
	border-radius: 30px;
}

.btn03 a {
	padding: 11px 35px;
}

.btn03 a:before {
	width: 12px;
	height: 10px;
	right: 20px;
}

.btn_style {
	margin-top: 25px;
	font-size: 1.4rem;
	padding: 7px 21px 5px 21px;
	width: 142px;
	line-height: 1.5;
}

.btn_style:before {
	width: 10px;
	right: 10px;
	height: 10px;
}

.btn04 a {
	border-radius: 35px;
	height: 70px;
	padding: 0px 35px;
}

.btn04 a:before {
	width: 12px;
	height: 10px;
	right: 20px;
}

.btn_mini a {
	border-radius: 35px;
	padding: 5px 35px;
	font-size: 1.4rem;
}

.btn_mini a:before {
	width: 12px;
	height: 10px;
	right: 20px;
}

.detail_linku {
	margin-top: 60px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.detail_linku li,
.detail_linku li + li {
	width: 48.4%;
	margin: 0;
}

.detail_linku.btn a {
	width: 100%;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
フォーム */

input[type=text],
input[type=password],
input[type=email],
select,
textarea {
	padding: 7px 15px;
}

.form_hosoku {
	font-size: 1.2rem;
	margin-bottom: 15px;
}

.form_pp {
	margin-top: 50px;
	text-align: center;
}


/*______________________________________________________________________________
テキストエリア */

textarea {
	height: 180px;
	resize: vertical;
}


/*______________________________________________________________________________
チェックボックス */

.checkbox_style span:before {
	width: 14px;
	height: 14px;
	top: 8px;
}

.checkbox_style span {
	padding-left: 25px;
	padding-right: 0;
}

.checkbox_style input:checked + .checkbox_txt:after {
	width: 5px;
	height: 10px;
	left: 5px;
	top: 7px;
}

.checkbox_style_narabi li {
	margin-top: 10px;
}

.checkbox_style_narabi {
	margin-top: -10px;
}


/*______________________________________________________________________________
ボタン
 */

.form_submit_btn_block {
	margin-top: 40px;
}

.form_submit_btn_block ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}

.form_submit_btn_block .form_submit_hosoku + ul {
	margin-top: 15px;
}

input[type="submit"],
input[type="button"] {
	width: 262px;
	padding: 18px;
	font-size: 1.6rem;
	border-radius: 30px;
}


/*______________________________________________________________________________
フォームレイアウト */

.form_wrap {
	margin-top: 40px;
}

.form_layout {
	padding: 20px 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
}

.form_layout > dt {
	width: 32.7%;
	margin-bottom: 0;
	margin-right: 2%;
}

.form_layout > dd {
	width: 65.3%;
}

.form_layout_dtw dt {
	width: 80%;
	width: -webkit-calc(100% - 200px);
	width: calc(100% - 200px);
	margin-right: 10px;
}

.form_layout_dtw dd {
	width: 190px;
	margin-right: 0;
}

.form_layout_dtw2 dt {
	width: 60%;
	width: -webkit-calc(100% - 340px);
	width: calc(100% - 340px);
}

.form_layout_dtw2 dd {
	width: 330px;
}

.form_layout_dtw2 dd .selectblock:first-child {
	width: 130px;
}

.form_layout_dtw2 dd .selectblock:last-child {
	width: 190px;
	margin: 0;
}

.form_layout_dtw2 dd .form_layout_ddin {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.form_confirm .form_layout_dtw dd p {
	text-align: right;
}

.form_confirm .form_layout_dtw2 dt {
	width: inherit;
}

.form_confirm .form_layout_dtw2 dd {
	width: inherit;
	-webkit-flex: 1;
	flex: 1;
}


/*:: 必須 ::::::::::::::::*/

.form_layout .required {
	font-size: 60%;
}


/*:: 追加テキスト :::::::::::::::: */

.form_layout .txt_tuika p {
	font-size: 1.6rem;
}


/*______________________________________________________________________________
form_confirm */

.form_confirm .form_layout_ddin p {
	font-size: 1.6rem;
	padding: 0;
}

.form_submit_btn_block li + li {
	margin-top: 0;
	margin-left: 15px;
}

.form_confirm .form_layout {
	padding: 20px 0;
}

.form_confirm .form_layout > dt {
	padding-top: 0;
	margin-bottom: 0;
}

.form_confirm .form_layout_dtw2 {
	padding-right: 50px;
}

.form_confirm .form_layout_dtw2 dd p:last-child {
	left: inherit;
	right: 0;
	bottom: 20px;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
contact_area */

.contact_area {
	margin-top: 106px;
	padding: 25px;
}

.contact_area .lead {
	font-size: 1.8rem;
}

.contact_area .contact_name {
	margin-top: 20px;
}

.contact_area .contact_name dt {
	font-size: 1.8rem;
}

.contact_area .contact_name .tel_box {
	margin-top: 10px;
	font-size: 4rem;
	padding-left: 43px;
}

.contact_area .contact_name .tel_box:before {
	width: 30px;
	height: 30px;
	top: 4px;
}

.contact_area .contact_name .time {
	font-size: 1.1rem;
	margin-top: 10px;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ブロック */

.main_wrap {
	padding-bottom: 150px !important;
}

.green_bg {
	margin-top: 100px;
	padding-top: 60px;
	padding-bottom: 50px;
}

.beta {
	padding: 30px;
	font-size: 1.4rem;
}

/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
description_area */

.description_area {
	padding: 15px 0 25px;
	margin-top: -15px;
}

.description_area + .article_page {
	margin-top: 40px;
}

.description_block figure {
	width: 128px;
}

.description_block dl {
	width: 98%;
	width: -webkit-calc(100% - 153px);
	width: calc(100% - 153px);
}

.description_block dt {
	font-size: 1.6rem;
}

.description_block dd {
	font-size: 1.4rem;
}

.description_block dt + dd {
	margin-top: 6px;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
list_layout */

.list_layout dt {
	font-size: 1.6rem;
	margin-bottom: 20px;
}

.list_layout li + li {
	margin-top: 20px;
}

.list_layout a {
	padding: 30px 210px 30px 0;
	position: relative;
	padding-left: 30%;
	padding-left: -webkit-calc(24.6% + 50px);
	padding-left: calc(24.6% + 50px);
	min-height: 210px;
}

.list_layout figure {
	position: absolute;
	top: 30px;
	left: 30px;
	width: 24.6%;
	max-width: 295px;
	margin-bottom: 0;
}

.list_layout figure:before {
	padding-top: 150px;
}

.list_layout time {
	margin-right: 0;
	font-size: 1.4rem;
	width: 95px;
}

.list_layout .cat {
	width: 120px;
	line-height: 1.4;
	padding-top: 1px;
	margin-top: 1px;
}

.list_layout .time_block {
	margin-bottom: 10px;
}

.list_layout a .btn_style {
	top: 50%;
	right: 30px;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
	position: absolute;
	margin: 0;
}

.list_layout dt {
	margin-bottom: 5px;
}

.list_layout dd.name {
	font-size: 1.4rem;
}

.list_layout dd:last-child {
	font-size: 1.4rem;
	margin-top: 15px;
	-webkit-line-clamp: 2;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
article_page */

.article_page .level_simple + .time_block {
	margin-bottom: 60px;
	margin-top: -55px;
}

.article_page .time_block time {
	font-size: 1.4rem;
}

.article_page .time_block .daytxt {
	font-size: 1.4rem;
}

.article_page .beta,
.article_page .sent,
.article_page figure,
.article_page .table_style {
	margin-top: 45px;
}

.article_page figure {
	width: 400px;
}

.article_page figure.ori.report02_img03 {
	max-width: 659px;
}

.article_page figure.ori.report07_img01 {
	max-width: 580px;
}
.article_page figure.ori.wide_450 {
	max-width: 450px;
}

.article_page figcaption {
	font-size: 1.4rem;
	margin-top: 9px;
}

.article_page .page_mv {
	margin-top: -15px;
	margin-bottom: 40px;
}

.article_page .page_mv:before {
	padding-top: 250px;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
face_list */

.face_list {
	margin-top: 55px;
    justify-content: left;
}

.face_list li {
	margin-top: 20px;
	width: 15.7%;
	max-width: 125px;
}

.face_list li:not(:nth-child(6n+1)) {
	margin-left: 1.16%;
}

.face_list .name {
	margin-top: 6px;
	font-size: 1.5rem;
	line-height: 1.8;
}

.face_list .position {
	font-size: 1.2rem;
	line-height: 1.7;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
profile_block */

.profile_block {
	margin-top: 50px;
	padding: 20px 20px 20px 208px;
	position: relative;
	min-height: 206px;
}

.profile_block .img_block {
	margin-bottom: 5px;
}

.profile_block .img_block .img {
	width: 166px;
	position: absolute;
	top: 20px;
	left: 20px;
}

.profile_block .img_block .name {
	font-size: 1.8rem;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: flex-start;
}

.profile_block .img_block .kana {
	font-size: 1.3rem;
	padding-bottom: 4px;
}

.profile_block .img_block .name p:first-child {
	padding-right: 10px;
}

.profile_block .txt {
	line-height: 1.9;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tab_link_tl */

.tab_link_tl {
	justify-content: flex-start;
	border-width: 4px;
}

.tab_link_tl li {
	max-width: 290px;
	width: 49%;
	width: -webkit-calc(50% - 7px);
	width: calc(50% - 7px);
	border-radius: 10px 10px 0 0;
}

.tab_link_tl li.current,
.tab_link_tl li.no_c a {
	font-size: 1.6rem;
	padding: 15px 15px;
}

.tab_link_tl li + li {
	margin-left: 14px;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
p_con */

.p_con {
	margin-top: 40px;
}

.p_con .con_head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	margin-bottom: 60px;
}

.p_con .products_slider {
	width: 59.2%;
	max-width: 710px;
}

.p_con .con_head .txt_block {
	width: 37.5%;
	font-size: 1.4rem;
}

.p_con .con_head .con_tl {
	width: 100%;
	max-width: 248px;
	margin-bottom: -15px;
}

.p_con .con_head .con_tl.logo_grow_sc6mg {
	max-width: 261px;
	width: 100%;
}

.p_con .con_head .con_tl.logo_growjectorl {
	max-width: 238px;
	width: 100%;
}

.p_con .con_head .con_tl.logo_growjectorduo {
	max-width: 306px;
	width: 100%;
}

.p_con .con_head .con_tl.logo_melonnikki {
	max-width: 209px;
	width: 100%;
}

.p_con .con_head .good_design {
	width: 100%;
	max-width: 149px;
	margin-top: 15px;
}

.p_con .con_head .btn a {
	width: 100%;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
products_links */

.products_links li {
	width: 100%;
}

.products_links a {
	font-size: 1.3rem;
	padding: 7px 10px;
}

.products_links a[href$=".pdf"],
.products_links a[href$=".rtf"] {
	padding-left: 50px;
}

.products_links a[href$=".pdf"]:before,
.products_links a[href$=".rtf"]:before {
	width: 26px;
	height: 26px;
	left: 10px;
}

.products_links li.products_links_col02 {
	width: 50%;
}

.products_links .products_links_col02 + .products_links_col02 {
	position: relative;
}

.products_links .products_links_col02 + .products_links_col02:before {
	position: absolute;
	content: "";
	width: 1px;
	height: 100%;
	top: 0;
	left: 0;
	background: #DEDEDE;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
side_conblock */

.side_conblock {
	margin-top: 40px;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.side_con {
	width: 70%;
	width: -webkit-calc(100% - 250px);
	width: calc(100% - 250px);
}

.side_conblock .li_border {
	border-top: 1px solid #E5E5E5;
	border-bottom: 1px solid #E5E5E5;
	padding-top: 12px;
	padding-bottom: 12px;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
p_other */

.p_other {
	margin-top: 60px;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
並び */

.col_02 {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	margin-top: -4%;
}

.col_02 .col_in {
	width: 48%;
	margin-top: 4%;
}

.col_03 {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	margin-top: -4.1%
}

.col_03 .col_in {
	width: 30%;
	margin-top: 5%;
}

.col_03 .col_in:not(:nth-child(3n+1)) {
	margin-left: 5%;
}


/*******************************************************************************
/*******************************************************************************
ページ固有 */


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TOP */

.mv {
	margin-top: 20px;
	position: relative;
}

.mv_slider_wrap .slick-arrow {
	position: absolute;
	top: 50%;
	display: block !important;
	width: 60px;
	height: 60px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	background: url(../images/top/slide_cprev.svg) center center no-repeat;
	background-size: 100% auto;
	z-index: 100;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	cursor: pointer;
}

.mv_slider_wrap .slick-prev {
	left: calc(8.3% + 25px);
}

.mv_slider_wrap .slick-next {
	background-image: url(../images/top/slide_cnext.svg);
	right: calc(8.3% + 25px);
	-webkit-transform: translate(50%, -50%);
	transform: translate(50%, -50%);
}

.mv_slider_wrap .mv_slider_item {
	margin: 0 20px 0 0;
}

.mv_slider_wrap .slick-dots li {
	width: 10px;
	height: 10px;
}

.mv_slider_wrap .slick-dots li + li {
	margin-left: 10px;
}

.mv_slider_wrap .slick-dots {
	margin-top: -10px;
}

.front_page .level_01 {
	margin-bottom: 55px;
}

.front_new {
	margin-top: 100px;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.front_new .level_01 {
	background: #F3F9F9;
	border-radius: 10px;
	height: 180px;
	padding: 0;
	margin: 0 !important;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	width: 220px;
}

.front_new .con {
	width: 70%;
	width: -webkit-calc(100% - 270px);
	width: calc(100% - 270px);
}

.front_new .con li + li {
	padding-top: 20px;
	margin-top: 20px;
}

.front_new .con a {
	justify-content: space-between;
}

.front_new .con .cat {
	width: 120px;
	line-height: 1.4;
	padding-top: 1px;
	margin-top: 2px;
}

.front_new .con time {
	margin-right: 0;
	font-size: 1.4rem;
	width: 95px;
}

.front_new .con .txt {
	padding-top: 0;
	width: 60%;
	width: -webkit-calc(100% - 215px);
	width: calc(100% - 215px);
	padding-left: 30px;
	font-size: 1.6rem;
}

.front_product {
	margin-top: 115px;
}

.front_product .con a {
	width: 100%;
	padding: 30px 210px 30px 0;
	position: relative;
	padding-left: 30%;
	padding-left: -webkit-calc(25.1% + 50px);
	padding-left: calc(25.1% + 50px);
	min-height: 200px;
	align-items: center;
}

.front_product .con .img {
	margin-bottom: 0;
	overflow: hidden;
	position: absolute;
	top: 20px;
	left: 20px;
	width: 25.1%;
	max-width: 300px;
}

.front_product .con .img:before {
	content: '';
	display: block;
	padding-top: 160px;
	width: 100%;
	position: relative;
}

.front_product .con .img img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
	font-family: 'object-fit: cover;';
	-webkit-backface-visibility: visible;
	backface-visibility: visible;
}

.front_product .con dl {
	width: 100%;
}

.front_product .con dt {
	font-size: 2rem;
	margin-bottom: 10px;
}

.front_product .con dd {
	font-size: 1.4rem;
	margin-bottom: 10px;
}

.front_product .con li + li {
	margin-top: 20px;
}

.front_product .con .btn_style {
	top: 50%;
	right: 30px;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
	position: absolute;
	margin: 0;
}


.front_support ul{display: flex;}

.front_support .con li + li {
	margin-top: 20px;
}

.front_support .con a {
	padding: 20px 30px 30px 30px;
	position: relative;
}

.front_support .con figure {
	position: absolute;
	top: 30px;
	left: 30px;
	width: 150px;
}

.front_support .con time {
	margin-right: 0;
	font-size: 1.4rem;
	width: 95px;
}

.front_support .con .cat {
	width: 120px;
	line-height: 1.4;
	padding-top: 1px;
	margin-top: 1px;
}

.front_support .con .time_block {
	margin-bottom: 10px;
}

.front_support a .btn_style {
	top: 50%;
	right: 30px;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
	position: absolute;
	margin: 0;
}

.front_support .con dt {
	margin-bottom: 15px;
	line-height: 1.7;
}

.front_support .con dd.sub {
	margin-top: -10px;
	margin-bottom: 15px;
	font-size: 1.4rem;
}

.front_support .mtml {
	margin-top: 50px !important;
}

.front_report {
	margin-top: 115px;
}

.front_report .report_item a {
	padding: 20px 20px 90px;
}

.front_report .report_item a .btn_style {
	bottom: 30px;
}

.front_report .img {
	margin-bottom: 20px;
	aspect-ratio: 4/2;
}

.front_report time {
	margin-right: 0;
	font-size: 1.4rem;
	width: 95px;
}

.front_report .cat {
	width: 120px;
	line-height: 1.4;
	padding-top: 1px;
	margin-top: 1px;
}

.front_report .time_block {
	margin-bottom: 15px;
}

.front_report dt {
	font-size: 1.8rem;
}

.front_report dd.name {
	font-size: 1.6rem;
}

.front_report dd:last-child {
	margin-top: 15px;
	-webkit-line-clamp: 3;
}

.front_report dd {
	font-size: 1.4rem;
}

.front_report .mtm {
	margin-top: 50px !important;
}

.front_report .slick-arrow {
	position: absolute;
	top: 50%;
	display: block !important;
	width: 60px;
	height: 60px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	background: url(../images/top/slide_cprev.svg) center center no-repeat;
	background-size: 100% auto;
	z-index: 100;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	cursor: pointer;
}

.front_report .slick-prev {
	left: 30px;
}

.front_report .slick-next {
	background-image: url(../images/top/slide_cnext.svg);
	right: 30px;
}

.front_report .report_item {
	margin: 0 20px;
	width: 580px;
}

.front_report .slick-dots li {
	width: 10px;
	height: 10px;
}

.front_report .slick-dots li + li {
	margin-left: 10px;
}

.front_report .slick-dots {
	margin-top: 20px;
}

.front_support .con .txt {
	-webkit-line-clamp: 2;
	width: 100%;
}

.front_textinfo .con .txt_block br {
	display: inline;
}

.front_textinfo {
	margin-top: 120px;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.front_textinfo .tl_block {
	padding: 0;
	margin: 0 !important;
	text-align: center;
	width: 18.3%;
}

.front_textinfo .tl_block a {
	background: #F3F9F9;
	border-radius: 10px;
	padding: 0;
	margin: 0 !important;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	width: 100%;
	height: 256px;
	text-decoration: none;
}

.front_textinfo .tl_block a .level_01 {
	padding: 0;
	margin-bottom: 0;
}

.front_textinfo .tl_block a .btn_style {
	margin-top: 30px;
}

.front_textinfo .con {
	width: 70%;
	width: -webkit-calc(100% - 270px);
	width: calc(100% - 270px);
}

.front_textinfo .con a {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.front_textinfo .con figure {
	width: 70px;
}

.front_textinfo .con figure:before {
	padding-top: 50px;
}

.front_textinfo .con .txt_block {
	width: 90%;
	width: -webkit-calc(100% - 90px);
	width: calc(100% - 90px);
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
}

.front_textinfo .con time {
	font-size: 1.4rem;
	width: 100px;
	margin-bottom: 0;
	margin-right: 0;
	padding-top: 6px;
}

.front_textinfo .con .txt_block p {
	-webkit-flex: 1;
	flex: 1;
}

.front_textinfo .con .txt_block br {
	display: inline;
}

.front_textinfo .con li + li {
	padding-top: 20px;
	margin-top: 20px;
}

.front_materials {
	margin: 100px auto 0 !important;
	max-width: 970px;
}

.front_materials a {
	padding: 20px 20px 0 50px;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.front_materials .tl_block {
	width: 220px;
	margin-bottom: 20px;
}

.front_materials .level_01 {
	margin-bottom: 0;
	font-size: 3rem;
}

.front_materials .btn_style {
	margin-top: 20px;
}

.front_materials figure {
	width: 36.3%;
	max-width: 326px;
	margin: 0;
}

.front_materials .txt {
	width: 40%;
	width: -webkit-calc(100% - 590px);
	width: calc(100% - 590px);
	margin-bottom: 20px;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
dir_login */

.login_new_txt {
	font-size: 1.6rem;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
products */

.products_slider .slick-arrow {
	width: 14px;
	height: 24px;
}

.products_slider .slick-prev {
	left: 20px;
}

.products_slider .slick-next {
	right: 20px;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
dir_login */

.login_new_txt {
	font-size: 1.6rem;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
materials */

.materials_li {
	justify-content: flex-start;
	margin-left: -3.1%;
	margin-right: -3.1%;
}

.materials_li li {
	width: 18.8%;
	max-width: 240px;
	margin-left: 3.1%;
	margin-right: 3.1%;
}

.materials_li li.li_w {
	max-width: 486px;
	width: 41%;
}

.materials_li a {
	font-size: 1.4rem;
}

.materials_li img {
	margin-bottom: 10px;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
products */

.products_slider .slick-arrow {
	width: 14px;
	height: 24px;
}

.products_slider .slick-prev {
	left: 20px;
}

.products_slider .slick-next {
	right: 20px;
}


/*______________________________________________________________________________
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2022/05/18　メロン日記改修 */
.front_product .con li.melon a{min-height: 150px; padding: 20px 210px 20px 0; padding-left: calc(25.1% + -60px); overflow: hidden;}
.front_product .con li.melon .img{max-width: 200px;}
.front_product .con li.melon .img img{height: auto;}
@media screen and (max-width:1240px) {
	.front_product .con li.melon a{padding: 25px 15px 25px 29%; padding-left: calc(18% + 30px); min-height: 160px;}
	.front_product .con li.melon .img{width: 18%;max-width: 300px;}
	.front_product .con li.melon .img img{height: 80%;}
}
@media screen and (max-width:599px) {
	.front_product .con li.melon a{padding: 4vw ; min-height: auto;}
	.front_product .con li.melon .img{width: 29vw;max-width: auto;}
	.front_product .con li.melon .img img{height: 100%;}
}
/*2022/07/11　top　新着情報　文章内リンク*/
.front_new .con .txt_link{justify-content: space-between; display: flex; flex-wrap: wrap; align-items: flex-start;}
.front_new .con .txt_link a{display: inline;color: #22AEAA;text-decoration: underline;}
/*2022-07-22　materials*/
.materials_li.movie_content{border-top: 1px solid #E1E1E1; margin-top: 5%;}
.materials_li.movie_content li{max-width: 346px; width: 29.8%; margin-top: 5%;}
/*2022-08-12　melonnikki.php banner追加*/
.banner_area {max-width: 830px; display: block; margin: 0 auto 60px;}
.banner_area small{font-size: 10px; line-height: 1.8; display: block; margin-top: 15px; text-align: left;}
/*2022-09-07　セミナーページ追加*/
.seminar small{font-size:13px;text-align:right;margin-bottom:10px;display: block;}
.seminar .parent{display:grid;grid-template-columns:repeat(4,1fr) 2;grid-template-columns: 2fr 1fr 1fr 1fr 150px;grid-column-gap:0px;grid-row-gap:0px;}
.seminar .parent:nth-child(1){grid-template-rows:40px 1fr;}
.seminar_title{display: flex;justify-content: center;flex-wrap: nowrap; background-color:#1EA3A0;color:#FFF;font-size:1.6rem;text-align:center;line-height: 1; padding: 12px 0;}
.seminar_title.subject { grid-area: 1 / 1 / 2 / 3; border-right: 1px #DDD solid;}
.seminar_title.date { grid-area: 1 / 3 / 2 / 4; border-right: 1px #DDD solid;}
.seminar_title.place { grid-area: 1 / 4 / 2 / 5; border-right: 1px #DDD solid;}
.seminar_title.pdf { grid-area: 1 / 5 / 2 / 6; border-right: 1px #DDD solid;}
.seminar_item{display: flex;flex-wrap: nowrap; align-items: center;border-bottom: 1px #DDD solid;}
.seminar_item .txt{font-size:1.4rem;line-height: 1.5;}
.seminar_item.subject { grid-area: 2 / 1 / 3 / 3; background-color:#F3F9F9;color:#1EA3A0;padding:2% 3%; border-right: 1px #DDD solid; border-left: 1px #DDD solid;}
.seminar_item.subject .txt h2{font-size:1.8rem;font-weight:bold;}
.seminar_item.subject .txt ul{padding-left: 1em;}
.seminar_item.subject .txt li{list-style: disc;}
.seminar_item.date { grid-area: 2 / 3 / 3 / 4;font-size:1.4rem;border-right: 1px #DDD solid; padding: 0 20px;}
.seminar_item.date span{font-size:1.8rem;vertical-align:baseline;}
.seminar_item.place { grid-area: 2 / 4 / 3 / 5; font-size:1.4rem;border-right: 1px #DDD solid;justify-content: center;padding: 10px;}
.seminar_item.pdf { grid-area: 2 / 5 / 3 / 6; border-right: 1px #DDD solid; justify-content: center;}
.seminar_item.pdf a{border:1px solid #1EA3A0;width:130px;text-decoration:none;text-align:center;border-radius:50px;font-size:1.4rem;line-height:1;padding:10px 0;padding-left:20px;position:relative;overflow:hidden;}
.seminar_item.pdf a:before{position:absolute;content:"";background:url(/assets/images/common/icon_pdf.svg) no-repeat center center / contain;width:26px;height:26px;left:9%;top:50%;-webkit-transform:translate(0%,-50%);transform:translate(0%,-50%);}

@media screen and (max-width:1240px) {
	.seminar .tablet{display: block !important;}
	.seminar .parent{display:grid;grid-template-rows:max-content max-content 1fr auto;grid-template-columns:repeat(1,120px 1fr);grid-auto-flow:column; margin-bottom:20px;}
	.seminar .parent:nth-child(1){grid-template-rows:max-content max-content 1fr auto;}
	.seminar_title.subject { grid-area: auto; border-right: none; border-bottom: 1px #DDD solid; align-items: center;display: flex !important;}
	.seminar_title.date { grid-area: auto; border-right: none; border-bottom: 1px #DDD solid; align-items: center;display: flex !important;}
	.seminar_title.place { grid-area: auto; border-right: none; border-bottom: 1px #DDD solid; align-items: center;display: flex !important;}
	.seminar_title.pdf { grid-area: auto; border-right: none; border-bottom: 1px #DDD solid; align-items: center;display: flex !important;}
	.seminar_item.subject { grid-area: auto;border-left: none; border-top: 1px #DDD solid;  }
	.seminar_item.date { grid-area: auto;border-left: none; padding:20px;}
	.seminar_item.place { grid-area: auto;border-left: none; padding:20px; justify-content: left;}
	.seminar_item.pdf { grid-area: auto;border-left: none; padding:20px; justify-content: left;}
}
/*2023-10-27　引用文献のスペース追加*/
.beta .level_05:nth-child(n+2){ margin-top: 10px;}
/*2024-05-24　取材レポート10*/
.report_column_box{margin:45px auto 0; border:1px solid #CDCDCD; border-radius:10px; padding: 40px;}
.report_column_box .level_04{color: #000000;padding-top: 0; margin-bottom: 30px;}
.report_column_box .sent{margin-top: 0;}
.report_column_box_small{background: #F7F7F7; margin: 40px auto 0; border-radius:10px; padding: 40px;}
.report_column_box .report_column_box_small .level_04{font-size: 1.8rem; margin-top:40px;margin-bottom:20px;}
.report_column_box .report_column_box_small small{font-size: 1.4rem;margin-top:10px;}
/*2024-09-01 診療サポート　学会・ガイドライン情報追加*/
.btn_guideline{display:block;max-width:270px;background:#22AEAA;color:#fff;font-size:1.4rem;padding:4px 20px;border-radius:20px;text-decoration:none;margin-bottom:20px;position: relative;margin-right: 0;}
.btn_guideline:before{width: 11.5px; right: 20px; height: 10.37px;position: absolute; content: "";background: url(/assets/images/common/arrow_w.svg) no-repeat center center / contain;top: 50%; -webkit-transform: translate(0%, -50%); transform: translate(0%, -50%);}
#guideline {margin:0 auto 20px;}
#guideline a{text-decoration:none;color: #000000;position: relative;width: 100%;display: block;}
#guideline .sub_title{font-size: 2rem; text-align:center;background:#22AEAA;color:#fff;border-radius:10px 10px 0 0; padding: 10px 0;}
#guideline dl{display: flex;justify-content: left;lex-wrap:wrap; width:calc( 100% - 142px);}
#guideline dt{font-weight:bold;width: 180px;line-height: 1.5;}
#guideline dd{width: calc(98% - 180px);font-size: 1.4rem;margin-top: 0;}
#guideline ul{background: #FFF;border-radius: 0 0 10px 10px; padding:0 30px;}
#guideline ul li{border-top:1px solid #E5E5E5;padding: 30px 0;}
#guideline ul li:first-child{border-top:none;}
#guideline ol li{padding: 0;border-top:none;}
#guideline .li_dot > li { position: relative; padding-left: 1.5em; line-height: 1.7;}
#guideline .li_dot > li + li{ margin:10px 0 0 0;}
#guideline .li_dot > li:before { content: "・"; position: absolute; left: 0; top: 0; text-align: center;}
#guideline .li_dot > li.li_dot_none:before { content: ""; }
.btn_style.blank{margin: 0; position: absolute;top: 50%; right: 0; -webkit-transform: translate(0%, -50%); transform: translate(0%, -50%);width: 142px;}
.btn_style.blank:before{width:12px;right:10px;height:12px;}
/*2024-12-03　取材レポート11*/
.report_column_box.report11{background: #F7F7F7; border: none;}
.report_column_box.report11 .li_dot > li { padding-left: 1.5em;}
.report_column_box.report11 .li_dot > li{margin: 0 auto 20px;}
.report_column_box.report11 .li_dot li:last-child{margin: 0;}