@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;
}

.p_block p a:hover {
	text-decoration: underline;
}

body,
select {
	font-size: 1.6rem;
}

.pointer_event_none_pc {
	pointer-events: none;
}

/***************************************************************************************
------------------------------
投稿パーツ
------------------------------
*****************************/
.p_block {
	margin-top: 58px;
}

.p_block h2 {
	margin: 53px 0 27px;
}

.p_block h3 {
	margin: 53px 0 26px;
}

.p_block h4 {
	font-size: 1.8rem;
	margin: 53px 0 25px;
}

.p_block h5 {
	margin: 53px 0 26px;
}

.p_block h6 {
	padding: 0.4em 1.3em 0.28em;
	margin: 53px 0 18px;
}

.p_block h2 + h3,
.p_block h3 + h4,
.p_block h4 + h5 {
	margin-top: -16px;
}

.p_block h5 + h6 {
	margin-top: -12px;
}

.p_block .p_ttl01 {
	padding: 4px 16px 2px;
}

.p_block .p_ttl01 + .p_ttl01 {
	margin-top: 0;
}

.p_block p {
	line-height: 2;
}

.p_block ol li {
	text-indent: -1.4em;
	padding-left: 1.4em;
	margin-bottom: 0.1em;
	line-height: 2;
}

.p_block ol li:before {
	padding-right: 0.6em;
}

.p_block ul li {
	padding-left: 1.4em;
	line-height: 2;
}

.p_block ul li:before {
	top: 11px;
	left: 2px;
	width: 7px;
	height: 7px;
}

.p_small {
	font-size: 1.2rem;
}

.p_block .p_hosoku {
	font-size: 1.1rem;
	text-indent: -1.2em;
	padding-left: 1.2em;
}

.p_block .p_hosoku + .p_hosoku {
	margin-top: 0.1em;
}

.p_block .p_btn_wrap {
	margin-top: 66px;
}

.p_block .p_btn01 {
	font-size: 1.4rem;
	padding: 0.6em 1em;
	min-width: 250px;
}

.p_block figcaption {
	margin-top: 15px;
}

.p_beta {
	padding: 30px 30px 25px;
}

.p_kakomi {
	padding: 35px;
	outline-offset: -5px;
}

.p_nextpage {
	margin-top: 58px;
}

/***************************************************************************************
------------------------------
モジュール
------------------------------
*****************************/
/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_view_all
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.m_view_all_wrap {
	margin-top: 66px;
	display: none !important;
}

.m_view_all {
	font-size: 1.4rem;
	padding: 0.6em 1em;
	min-width: 250px;
}
/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_ttl01
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.m_ttl01 {
	margin-bottom: 40px;
}

.m_ttl01_main {
	padding-bottom: 4px;
	margin-right: 30px;
}

.m_ttl01_main span {
	font-size: 6rem;
	margin-right: 10px;
}

.m_ttl01_main em {
	font-size: 1.3rem;
}

.m_ttl01_main img {
	margin-bottom: 4px;
}

.m_ttl01_link {
	font-size: 1.6rem;
	padding: 6px 16px 3px;
}

.m_ttl01_catch {
	padding: 10px 0 0 0;
	font-size: 1.3rem;
}

/*++++++++++++++++++++++++++++
キャッチ無し
++++++++++++++++++++++++++++*/
.m_ttl01_no_catch {
	border-bottom: 2px solid #e70618;
}

/*++++++++++++++++++++++++++++
個別タイトル
++++++++++++++++++++++++++++*/
.m_ttl01_want img {
	width: 420px;
}
.m_ttl01_fire img {
	width: 331px;
}
.m_ttl01_info img {
	width: 376px;
}
.m_ttl01_registry img {
	width: 260px;
}
.m_ttl01_privacy img {
	width: 468px;
}
.m_ttl01_contact img {
	width:285px;
}
.m_ttl01_issue img {
	width:598px;
}
.m_ttl01_ad img {
	width:380px;
}
.m_ttl01_copyright img {
	width:330px;
}
.m_ttl01_equip .m_ttl01_main {
	padding-bottom: 4px;
}
.m_ttl01_equip .m_ttl01_main span {
	font-size: 6rem;
}

.m_ttl01_equip .m_ttl01_main em {
	display: inline-block;
}

.m_ttl01_ja .m_ttl01_main span {
	font-size: 4.5rem;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_article01
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.m_article01 {
	border-bottom: 0;
	padding: 0;
	display: block;
}

.m_article01_head {
	width: 100%;
	margin-right: 0;
}

.m_article01_rank {
	width: 30px;
	height: 30px;
}

.m_article01_body {
	margin-top: 14px;
}

.m_article01_tag {
	margin-bottom: 12px;
	cursor: pointer;
}

.m_article01_tag_item {
	font-size: 1.2rem;
	margin-right: 15px;
	cursor: pointer;
	transition: 0.3s;
}

.m_article01_ttl {
	font-size: 1.6rem;
}

.m_article01_date {
	font-size: 1.1rem;
	margin-top: 9px;
}

.m_article01_pr {
	font-size: 1.2rem;
	margin-top: 12px;
	width: 28px;
	height: 18px;
	padding-top: 0.1em;
}

.m_article01_name {
	font-size: 1.4rem;
	margin-top: 10px;
}

/*++++++++++++++++++++++++++++
l_articles01_highlight
++++++++++++++++++++++++++++*/
.l_articles01_highlight .m_article01:nth-of-type(-n + 2) {
	display: block;
	border-bottom: 0;
	padding-bottom: 0;
}

.l_articles01_highlight .m_article01:nth-of-type(-n + 2) .m_article01_head {
	width: 100%;
	margin-right: 0%;
}

.l_articles01_highlight .m_article01:nth-of-type(-n + 2) .m_article01_body {
	margin-top: 14px;
}
/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_masonry
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.m_masonry {
}

.m_masonry a {
	text-decoration: none;
}

.m_masonry_img {
	margin-bottom: 14px;
}

.m_masonry_tag {
	margin-bottom: 13px;
	cursor: pointer;
}

.m_masonry_tag_item {
	font-size: 1.1rem;
	margin-right: 15px;
}

.m_masonry_ttl {
	font-size: 1.6rem;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_mv
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.m_mv {
	padding: 0;
	display: flex;
	cursor: pointer;
}

.m_mv a {
	text-decoration: none;
}

.m_mv_img {
	padding-top: 69%;
}

.m_mv_head {
	width: 40%;
	margin-right: 4.4%;
}

.m_mv_body {
	padding: 0;
	flex: 1 1 0%;
}

.m_mv_tag {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 10px;
}

.m_mv_tag_item {
	font-size: 1.2rem;
	margin-right: 10px;
}

.m_mv_ttl {
	font-size: 1.3rem;
}

.m_mv_date {
	margin-top: 5px;
}

.m_mv_pr {
	font-size: 1.2rem;
	margin-top: 12px;
	width: 28px;
	height: 18px;
	padding-top: 0.2em;
}

.m_mv_name {
	font-size: 1.4rem;
	margin-top: 10px;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_head
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.m_head_img {
	padding-top: 41.6%;
}

.m_head_bottom {
	padding: 20px 0 16px;
}

.m_head_name {
	display: flex;
	align-items: center;
}

.m_head_name_main {
	font-size: 5rem;
	font-weight: 700;
}

.m_head_name_sub {
	margin-left: 32px;
	margin-top: 0;
}

.m_head_name_sub span {
	font-size: 1.2rem;
	font-weight: 400;
	display: block;
}

.m_head_name_sub em {
	font-size: 1.6rem;
	display: block;
	margin-top: 7px;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_toc
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.m_toc {
	padding: 28px 30px 30px;
}

.m_toc_ttl {
	margin-bottom: 25px;
}

.m_toc_list > li {
	padding-left: 25px;
}

.m_toc_list > li:before {
	top: 10px;
	width: 15px;
	height: 5px;
}

.m_toc_list > li + li {
	margin-top: 25px;
}

.m_toc_list > li ul {
	margin-top: 10px;
}

.m_toc_list > li ul li + li {
	margin-top: 5px;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_profile
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.p_normal .m_profile {
	padding: 30px 30px 25px;
}

.m_profile_ttl {
	margin: -10px 0 10px;
}

.m_profile_inner {
	display: flex;
}

.m_profile_head {
	display: flex;
	justify-content: center;
}

.m_profile_img {
	width: 140px;
	margin-right: 20px;
}

.m_profile_body {
	flex: 1 1 0%;
}

.m_profile_name {
	margin-top: 0;
}

.m_profile_name span {
	font-size: 2rem;
	margin-right: 15px;
}

.m_profile_name em {
	font-size: 1.2rem;
}

.m_profile_txt {
	margin-top: 16px;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_single
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.m_single_info em {
	margin-right: 20px;
	font-size: 1.5rem;
}
.m_single_info_pr {
    font-size: 1.2rem;
    width: 28px;
    height: 18px;
    padding-top: 0.15em;
	top: 0;
}
.m_single_ttl {
	font-size: 3rem;
	margin-top: 26px;
	line-height: 1.66;
}

.m_single_lead {
	margin-top: 35px;
	line-height: 2;
}

.m_single_hosoku {
	margin-top: 34px;
	font-size: 1.2rem;
}

.m_single_body {
	display: flex;
	margin-top: 57px;
}

.m_single_sns {
	display: block;
	margin: 0 35px 0 0;
	width: 35px;
}

.m_single_sns_item {
	display: block;
	width: 100%;
	margin: 0 0 17px;
}

.m_single_content {
	margin-top: 0;
	max-width: 650px;
	width: 100%;
}

.m_single_content .p_block:first-child {
	margin-top: 0;
}

.m_single_content .m_side_ad_item {
	margin-top: 0;
}

/*++++++++++++++++++++++++++++
広告なし
++++++++++++++++++++++++++++*/
.m_single_no_ad .m_single_body {
	position: relative;
	justify-content: center;
}

.m_single_body_inner {
	display: flex;
	margin-left: auto;
    margin-right: auto;
}

.m_single_no_ad .m_single_sns {
	position: absolute;
	left: 0;
	top: 0;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_side
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.m_side {
	margin: 0 auto 0 auto;
	padding: 0;
	width: 300px;
}

.m_side_ad {
	margin-bottom: -50px;
}

.m_side_ad_item {
	margin-bottom: 50px;
	margin-top: 0;
	display: flex;
	justify-content: center;
}

.m_side_ad_item img {
	max-width: 300px;
}

.m_side_ranking {
	margin-bottom: 50px;
}

.m_side_ranking_ttl {
	font-size: 3rem;
	font-weight: 900;
	font-style: italic;
	border-bottom: 1px solid #e70618;
	line-height: 1.4;
}

.m_side_ranking_articles .m_article01 {
	border-bottom: 1px solid #e5e5e5;
	display: flex;
	padding: 15px 0;
	width: 100%;
}
.m_side_ranking_articles .m_article01_head {
	width: 43.3333%;
	margin-right: 3.3333%;
}

.m_side_ranking_articles .m_article01_rank {
	width: 20px;
	height: 20px;
}

.m_side_ranking_articles .m_article01_body {
	margin-top: 0;
}

.m_side_ranking_articles .m_article01_ttl {
	font-size: 1.3rem !important;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Tags
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.m_tags {
	padding: 23px 0;
	margin-top: 60px;
	display: flex;
}

.m_tags_ttl {
	font-size: 1.8rem;
	margin-bottom: 0;
	margin-right: 40px;
}

.m_tags_list {
	margin: 0 -30px -20px 0;
	flex: 1 1 0%;
}

.m_tags_list li {
	margin: 0 30px 15px 0;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_equip
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.m_equip {
	display: flex;
}

.m_equip_head {
	width: 48.388%;
	max-width: 600px;
}

.m_equip_img {
	padding-top: 350px;
	height: 100%;
}

.m_equip_body {
	flex: 1 1 0%;
	padding: 40px 30px;
}

.m_equip_ttl {
	font-size: 2.5rem;
}

.m_equip_txt {
	margin-top: 23px;
	font-size: 1.4rem;
}

/*++++++++++++++++++++++++++++
equip slider
++++++++++++++++++++++++++++*/
.m_equip_slider .slick-arrow {
	display: block !important;
}

.m_equip_dots ul {
	font-size: 1.6rem;
	margin-top: 20px;
	justify-content: flex-end;
}

.m_equip_dots li {
	margin: 0 0 0 14px;
}

.m_equip_slider .slick-arrow {
	width: 50px;
	height: 50px;
	background: #575757;
	border-radius: 50%;
	position: relative;
	color: #575757;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0;
	position: absolute;
	top: 50%;
	cursor: pointer;
	transition: 0.3s;
}

.m_equip_slider .slick-arrow:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 12px;
	height: 12px;
	z-index: 1;

	border-top: 2px solid #000;
	border-right: 2px solid #000;
}

.m_equip_slider .slick-prev {
	left: -20px;
	-webkit-transform: translate(-100%, -50%);
	transform: translate(-100%, -50%);
}

.m_equip_slider .slick-prev:before {
	-webkit-transform: translate(-25%, -50%) rotate(-135deg);
	transform: translate(-25%, -50%) rotate(-135deg);
}

.m_equip_slider .slick-next {
	right: -20px;
	-webkit-transform: translate(100%, -50%);
	transform: translate(100%, -50%);
}

.m_equip_slider .slick-next:before {
	-webkit-transform: translate(-75%, -50%) rotate(45deg);
	transform: translate(-75%, -50%) rotate(45deg);
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_contact
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.m_contact {
	margin-top: 50px;
}

.m_contact_head_hosoku {
	margin-bottom: 20px;
}

.m_contact_item {
	padding: 20px 0;
	display: flex;
}

.m_contact_item:last-of-type {
}

.m_contact_item dt {
	font-size: 1.6rem;
	margin-bottom: 0;
	width: 270px;
	padding-top: 0.5em;
}

.m_contact_item .require {
}

.m_contact_item dd {
	flex: 1;
}

.mwform-checkbox-field {
	display: block;
}

.l_page_body .m_contact_bottom_check {
	font-size: 1.4rem;
	margin-top: 45px;
}

.l_page_body .m_contact_bottom_check .mwform-checkbox-field-text:before {
	top: 4px;
}

.l_page_body .m_contact_bottom_check .mwform-checkbox-field-text:after {
	top: 4px;
}

.l_page_body .m_contact_bottom_hosoku {
	font-size: 1.2rem;
	margin-top: 45px;
}

.m_contact_bottom {
}

.m_contact .m_contact_bottom .mwform-checkbox-field {
	display: flex;
	justify-content: center;
}

.m_contact_bottom_button {
	margin-top: 18px;
	display: flex;
	justify-content: center;
}

.m_contact_bottom_button .m_contact_button {
	font-size: 1.4rem;
	padding: 0.6em 1em;
	min-width: 250px;
	margin: 0 10px;
}

.m_contact_button + .m_contact_button {
	margin-top: 0;
}

.mw_wp_form_input .m_contact_cancel,
.mw_wp_form_input .m_contact_submit {
	display: none;
}

input[type="email"],
input[type="text"],
select,
textarea {
	padding: 6px 10px;
}
.mwform-checkbox-field .mwform-checkbox-field-text:before {
	top: 5px;
	width: 14px;
	height: 14px;
	border-radius: 3px;
}

.mwform-checkbox-field .mwform-checkbox-field-text:after {
	top: 5px;
	width: 14px;
	height: 14px;
	background-position: left 50% top 36%;
	background-size: 71%;
}

.mwform-checkbox-field .mwform-checkbox-field-text {
	padding-left: 1.7em;
}

.l_page_body .m_contact_bottom_check {
}
.mw_wp_form .m_contact .m_contact_bottom_check .error {
	text-align: center;
}
.mw_wp_form_confirm .m_contact_bottom_button {
	margin-top: 60px;
}
.mw_wp_form_confirm .m_contact_item {
	padding: 30px 0;
}
.mw_wp_form_confirm .m_contact_item dt {
	margin-bottom: 0;
	padding:0;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
m_issue
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.m_issue_content {
	margin-bottom: 70px;
}

.m_issue_content h3 {
	margin: 32px 0 24px;
	font-size: 1.8rem;
}

.m_issue_relation {
	margin-right: -25px;
}
.m_issue_relation:after {
	width: calc(33.333333% - 25px);
}
.m_issue_relation_item {
	width: calc(33.333333% - 25px);
	margin-right: 25px;
}

.m_issue_relation_ttl {
	font-size: 1.6rem;
	margin-top: 20px;
}

.m_issue_backnumber {
	margin-right: -25px;
}

.m_issue_backnumber_item {
	width: calc(33.333333% - 25px);
	margin-right: 25px;
}
.m_issue_backnumber:after {
	width: calc(33.333333% - 25px);
}

.m_issue_backnumber_ttl {
	font-size: 1.6rem;
	margin-top: 20px;
}

.m_issue_links {
	display: flex;
	justify-content: center;
}

.m_issue_links a {
	width: 250px;
	margin: 0 15px;
}

.m_issue_slider_wrap {
	margin: 60px 0 80px;
}

.m_issue_slider {
	width: 600px;
	margin: 0 auto;
}
.m_issue_slider_dots ul {
	font-size: 1.6rem;
	margin-top: 20px;
}

.m_issue_slider_dots li {
	margin: 0 6px;
}

.m_issue_slider .slick-arrow {
	width: 50px;
	height: 50px;
	background: #575757;
	border-radius: 50%;
	position: relative;
	color: #575757;
	display: flex !important;
	align-items: center;
	justify-content: center;
	font-size: 0;
	position: absolute;
	top: 50%;
	cursor: pointer;
	transition: 0.3s;
}

.m_issue_slider .slick-arrow:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 12px;
	height: 12px;
	z-index: 1;

	border-top: 2px solid #000;
	border-right: 2px solid #000;
}

.m_issue_slider .slick-prev {
	left: -50px;
	-webkit-transform: translate(-100%, -50%);
	transform: translate(-100%, -50%);
}

.m_issue_slider .slick-prev:before {
	-webkit-transform: translate(-25%, -50%) rotate(-135deg);
	transform: translate(-25%, -50%) rotate(-135deg);
}

.m_issue_slider .slick-next {
    right: -50px;
	-webkit-transform: translate(100%, -50%);
	transform: translate(100%, -50%);
}

.m_issue_slider .slick-next:before {
	-webkit-transform: translate(-75%, -50%) rotate(45deg);
	transform: translate(-75%, -50%) rotate(45deg);
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
wp-pagenavi
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.wp-pagenavi {
	margin-top: 27px;
	font-size: 1.8rem;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
	width: 40px;
	height: 40px;
}

.wp-pagenavi .previouspostslink:before,
.wp-pagenavi .nextpostslink:before {
	width: 8px;
	height: 8px;
}

.wp-pagenavi .extend,
.wp-pagenavi .last,
.wp-pagenavi .first,
.wp-pagenavi .current,
.wp-pagenavi .page {
	width: 40px;
	height: 40px;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .last,
.wp-pagenavi .first,
.wp-pagenavi .current,
.wp-pagenavi .page {
	margin: 0 5px;
	padding-top: 0.1em;
}

.wp-pagenavi .extend {
	margin: 0 -7px;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
breadcrumbs
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.breadcrumbs {
	display: block;
	margin-top: 78px;
}
.breadcrumbs span,
.breadcrumbs a {
	text-decoration: none;
	font-size: 1.2rem;
}
.breadcrumbs > span {
	position: relative;
	margin: 0 24px 12px 0;
}

.breadcrumbs > span:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: -14px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #959595;
	border-right: 1px solid #959595;
	z-index: 1;
	-webkit-transform: translateY(-50%) rotate(45deg);
	transform: translateY(-50%) rotate(45deg);
}

.breadcrumbs > span:last-of-type:before {
	display: none;
}

/***************************************************************************************
------------------------------
layout
------------------------------
*****************************/
/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
l_header
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.l_header {
	position: fixed;
}

.l_header_inner {
	padding: 0 31px 0 40px;
	height: 60px;
}

.l_header_logo {
	width: 148px;
	margin-right: 40px;
}

.l_header_search_btn {
	margin-bottom: 1px;
	width: 20px;
	transition: 0.5s;
	cursor: pointer;
}

.l_header_search {
	height: auto;
	overflow-y: auto;
	padding: 60px 0;
}

.l_header_search_inner {
	padding: 0 40px;
	margin: 0 auto;
	max-width: 1240px;
}

.l_header_search_form {
	display: flex;
}

.l_header_search_input {
	font-size: 16px;
	padding: 7px 10px;
}

.l_header_search_submit {
	padding: 0 20px;
	margin-left: 10px;
	cursor: pointer;
	transition: 0.5s;
}

.l_header_search_submit img {
	width: 20px;
}

.l_header_search_ttl {
	font-size: 1.4rem;
	margin-top: 35px;
}

.l_header_search_words {
	display: flex;
	flex-wrap: wrap;
	margin: 18px 10px 10px 0;
}

.l_header_search_words_item {
	margin: 0 10px 10px 0;
}

.l_header_search_words_item a {
	font-size: 1.4rem;
	padding: 11px 26px;
	min-width: auto;
}

.js_header_search_bg {
	position: fixed;
	z-index: 100;
	background: #191b1e;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 0.7;
	display: none;
	cursor: pointer;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
l_footer
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.l_footer {
	padding: 60px 0 48px;
}

.l_footer_head {
	display: flex;
	justify-content: space-between;
	padding-bottom: 38px;
	border-bottom: 1px solid #6c6c6c;
}

.l_footer_logo {
	width: 238px;
	margin: 0;
}

.l_footer_head_link {
	display: flex;
	justify-content: flex-end;
}

.l_footer_head_link + .l_footer_head_link {
	margin-top: 20px;
}

.l_footer_head_link li {
	margin-left: 20px;
}

.l_footer_head_link a {
	text-decoration: none;
	color: #fff;
	font-size: 1.4rem;
	font-weight: 700;
}

.l_footer_bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: row-reverse;
	margin-top: 28px;
}

.l_footer_sns {
	margin-top: 0;
	display: flex;
	justify-content: center;
}

.l_footer_sns li {
	width: 40px;
	margin: 0 0 0 15px;
}

.l_footer_bottom_link {
	margin-top: 0;
	display: flex;
	flex-wrap: wrap;
}

.l_footer_bottom_link li {
	position: relative;
	margin: 0 15px 0 0;
	padding-right: 15px;
}

.l_footer_bottom_link li:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	width: 1px;
	height: 12px;
	z-index: 1;
	background: #fff;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.l_footer_bottom_link li:last-of-type {
	padding-right: 0;
	margin-right: 0;
}

.l_footer_bottom_link li:last-of-type:before {
	display: none;
}

small {
	margin-top: 17px;
	text-align: left;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
l_single
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.l_single main {
	padding: 0 0 28px;
}

.l_single_body {
	padding: 62px 0 0;
}
.l_single_body .l_archive_ad_c {
	margin: 50px 0;
}

.l_single_bottom {
	margin-top: 100px;
}

.l_single_bottom_item {
	margin-top: 47px;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
l_articles01
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.l_articles01 {
	display: flex;
	flex-wrap: wrap;
}

.l_articles01_col02 {
	margin: 0 -40px -36px 0;
}

.l_articles01_col03 {
	margin: 0 -30px -36px 0;
}

.l_articles01_col04 {
	margin: 0 -40px -36px 0;
	width: calc(100% + 40px);
}

.l_articles01_col05 {
	margin: 0 -25px -20px 0;
}

.l_articles01_col02 .l_articles01_item {
	width: calc(50% - 40px);
	margin: 0 40px 36px 0;
}

.l_articles01_col03 .l_articles01_item {
	width: calc(33.333333% - 30px);
	margin: 0 30px 36px 0;
}

.l_articles01_col04 .l_articles01_item {
	width: calc(25% - 40px);
	margin: 0 40px 36px 0;
}

.l_articles01_col05 .l_articles01_item {
	width: calc(20% - 25px);
	margin: 0 25px 20px 0;
}

.l_articles01.l_articles01_col03 .l_archive_ad {
	width: 100%;
	margin-top: 0;
	margin-bottom: 36px;
}

/*++++++++++++++++++++++++++++
ranking
++++++++++++++++++++++++++++*/
.l_articles01_ranking .m_article01_ttl {
	font-size: 1.4rem;
}
.l_articles01_ranking > .wpp-shortcode {
	display: flex;
	flex-wrap: wrap;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
l_content
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.l_content {
	display: flex;
	margin-top: 60px;
}

.l_content_main {
	flex: 1 1 0%;
}

.l_content .l_side {
	margin-left: 40px;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
l_top
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.l_top_bnr {
	margin-top: 60px;
}

.l_top_section {
	margin-top: 74px;
}

.l_top_equip {
	padding: 74px 0 50px;
}
.l_top_ad {
	margin-top: 74px;
}

.l_top .m_side_ad_item {
	margin: 50px auto;
}

.l_top .m_side_ad_item_c {
	margin-bottom: 0;
}

.l_top .m_side_ad_item + .l_top_report {
	margin-top: 50px;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
l_masonry
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.l_masonry {
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0 -35px -35px 0;
}

.l_masonry_item {
	width: calc(33.3333% - 35px);
	margin: 0 35px 35px 0;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
l_mv
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.l_mv {
	padding: 30px 0 50px;
}

.l_mv_slider {
	padding: 0 40px;
	max-width: 1320px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}

.l_mv_slider > .l_mv_slider_item {
	width: 65.33%;
	max-width: 810px;
}

.l_mv_slider > .l_mv_slider_item .m_mv {
	display: block;
}

.l_mv_slider > .l_mv_slider_item .m_mv_head {
	width: 100%;
}

.l_mv_slider > .l_mv_slider_item .m_mv_body {
	margin-top: 14px;
}

.l_mv_slider > .l_mv_slider_item .m_mv_ttl {
	font-size: 1.8rem;
}

.l_mv_slider_right {
	width: 32.26%;
	max-width: 400px;
}

.l_mv_slider_right .l_mv_slider_item + .l_mv_slider_item {
	margin-top: 25px;
}

.l_mv_slider_dots {
	display: none;
}

.l_mv_news {
	margin-top: 54px;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
l_archive
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.l_archive_head {
	padding-top: 67px;
}

.l_archive .l_side {
	display: block;
}

.l_archive_body {
	display: flex;
}

.l_archive_body + .l_archive_ad {
	margin-top: 36px;
}

.l_archive_list {
	width: calc(100% - 340px);
}

.l_archive main {
	padding: 0 0 28px;
}

.l_archive .wp-pagenavi {
	margin-top: 60px;
}

.l_archive_pickup {
	margin-bottom: 75px;
}

.l_archive .m_side_ad_item_c {
	display: block !important;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
l_equip_page
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.l_archive_equip {
	display: block;
}
.l_archive_equip_item + .l_archive_equip_item {
	margin-top: 30px;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
l_archive_fire
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.l_archive_fire {
	display: block;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
l_archive_want
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.l_archive_want {
	display: block;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
l_page
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.l_page_body {
	max-width: 800px;
	margin: 0 auto;
	min-height: 300px;
}

.l_page_head {
	padding-top: 67px;
	max-width: 800px;
	margin: 0 auto;
}

.l_page main {
	padding: 0 0 95px;
}

.l_page_ttl {
	margin-bottom: 58px;
}

.l_page_body .l_page_catch {
	font-size: 2rem;
	margin-bottom: 30px;
}

.l_page_ttl_lv02 {
	margin-top: 72px;
	font-size: 2.2rem;
	margin-bottom: 36px;
}

.l_page_ttl_lv02_mini {
	margin-top: 33px;
	font-size: 2rem;
	margin-bottom: 20px;
}

.l_page_ttl_lv02_mini span {
	font-size: 1.4rem;
	vertical-align: baseline;
}

.l_page_ttl_lv03 {
	font-size: 1.6rem;
	text-align: center;
	margin-top: 63px;
	margin-bottom: 27px;
}

.l_page_ttl_lv04 {
	font-size: 1.4rem;
	margin-bottom: 18px;
}

.l_page_btn_wrap {
	margin-top: 50px;
}

.l_page_btn {
	font-size: 1.4rem;
	padding: 0.6em 1em;
	min-width: 250px;
}

.l_page ol li {
	margin-bottom: 0.1em;
	line-height: 2;
}

.l_page ol li:before {
	padding-right: 0.6em;
}
/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
l_page_info
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.l_page_info_how {
	margin: 37px auto 70px;
	max-width: 800px;
	padding: 35px 40px 40px;
}

.l_page_info_how_inner {
	/* max-width: 620px; */
	margin: 0 auto;
	width: 100%;
	padding: 0;
}

.l_page_info_how_inner {
	padding: 0;
}

.l_page_info_how_item {
	padding: 30px 50px 30px;

	margin-top: 35px;
}

.l_page_info_how_item + .l_page_info_how_item {
	margin-top: 20px;
}

.l_page_info_btns {
	display: flex;
	justify-content: space-between;
}

.l_page_info_btns_center {
	justify-content: center;
}

.l_page_info_btn {
	display: block;
	width: calc(50% - 10px);
}

.l_page_info_btn + .l_page_info_btn {
	margin-top: 0;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
l_page_ad
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.l_page_ad_imgs p {
	width: 23.25%;
}

.l_page_ad_download {
	margin-top: 47px;
}

.l_page_ad_download_catch {
	font-size: 1.6rem;
}

.l_page_ad_download_btn {
	width:300px;
	margin: 23px auto 0;
}

.l_page_ad_contact {
	margin-top: 60px;
	padding: 35px 30px 30px;
}

.l_page_ad_contact_catch {
	font-size: 2.2rem;
}

.l_page_ad_contact_department {
	margin-top: 15px;
	font-size: 1.6rem;
}

.l_page_ad_contact_tel {
	width: 302px;
	margin: 0px auto 0;
	pointer-events: none;
}

.l_page_ad_contact_text {
	margin-top: 27px;
	text-align: center;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
l_issue
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.l_issue_head {
	padding-top: 80px;
	max-width: 800px;
	margin: 0 auto;
}
.l_issue_body {
	max-width: 800px;
	margin: 0 auto;
}
.l_issue main {
    padding: 0 0 100px;
}
.l_issue_ttl_lv02 {
	font-size: 2.4rem;
	margin: 70px 0 37px;
}

.l_issue_btn {
	margin-top: 55px;
}

.l_issue_btn a {
	font-size: 1.4rem;
	padding: 0.6em 1em;
	min-width: 250px;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
frontpage
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.frontpage .l_footer {
	margin-top: 95px;
}

/***************************************************************************************
------------------------------
hover
------------------------------
*****************************/
.l_footer_bottom_link a:hover,
.l_footer_head_link a:hover,
.l_header_link li a:hover {
	opacity: 1;
	color: #fdd135;
}

.l_header_search_btn:hover,
.l_header_search_submit:hover {
	opacity: 0.5;
}

.m_contact_button:hover,
.l_page_btn:hover,
.p_block .p_btn01:hover {
	opacity: 1;
	color: #fff;
	background: #e70618;
}
.wp-pagenavi a:hover {
	opacity: 0.5;
}

.m_equip_slider .slick-arrow:hover {
	opacity: 0.7;
}

.l_header_search_words_item a:hover {
	opacity: 0.5;
}

.m_article01:hover {
	opacity: 1;
}

.m_article01 .m_article01_head,
.m_article01 .m_article01_name,
.m_article01 .m_article01_pr,
.m_article01 .m_article01_date,
.m_article01 .m_article01_ttl {
	transition: 0.5s;
}

.m_article01 .m_article01_head a:hover {
	opacity: 1;
}

.m_article01:hover .m_article01_head,
.m_article01:hover .m_article01_name,
.m_article01:hover .m_article01_date,
.m_article01:hover .m_article01_pr,
.m_article01:hover .m_article01_ttl {
	opacity: 0.7;
}
.m_article01.hover .m_article01_head,
.m_article01.hover .m_article01_name,
.m_article01.hover .m_article01_date,
.m_article01.hover .m_article01_ttl {
	opacity: 1 !important;
}

.m_article01_tag_item:hover {
	opacity: 0.7;
}

.m_mv:hover {
	opacity: 1;
}

.m_mv .m_mv_head,
.m_mv .m_mv_name,
.m_mv .m_mv_pr,
.m_mv .m_mv_date,
.m_mv .m_mv_ttl {
	transition: 0.5s;
}

.m_mv .m_mv_head a:hover {
	opacity: 1;
}

.m_mv:hover .m_mv_head,
.m_mv:hover .m_mv_name,
.m_mv:hover .m_mv_date,
.m_mv:hover .m_mv_pr,
.m_mv:hover .m_mv_ttl {
	opacity: 0.7;
}
.m_mv.hover .m_mv_head,
.m_mv.hover .m_mv_name,
.m_mv.hover .m_mv_date,
.m_mv.hover .m_mv_ttl {
	opacity: 1 !important;
}

.m_mv_tag_item:hover {
	opacity: 0.7;
}

.m_masonry:hover {
	opacity: 1;
}

.m_masonry .m_masonry_head,
.m_masonry .m_masonry_name,
.m_masonry .m_masonry_date,
.m_masonry .m_masonry_ttl {
	transition: 0.5s;
}

.m_masonry .m_masonry_img a:hover {
	opacity: 1;
}

.m_masonry:hover .m_masonry_img,
.m_masonry:hover .m_masonry_name,
.m_masonry:hover .m_masonry_pr,
.m_masonry:hover .m_masonry_date,
.m_masonry:hover .m_masonry_ttl {
	opacity: 0.7;
}
.m_masonry.hover .m_masonry_img,
.m_masonry.hover .m_masonry_name,
.m_masonry.hover .m_masonry_pr,
.m_masonry.hover .m_masonry_date,
.m_masonry.hover .m_masonry_ttl {
	opacity: 1 !important;
}

.m_masonry_tag_item:hover {
	opacity: 0.7;
}
