@charset "utf-8";
/* CSS Document */
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
/* ------------------------------------------
  reset
--------------------------------------------- */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, hr, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, main, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after {
	content: "";
	content: none;
}
q:before, q:after {
	content: "";
	content: none;
}
abbr {
	text-decoration: none;
}
mark {
	background: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption, th {
	text-align: left;
}
img {
	vertical-align: top;
}
hr {
	height: 0;
}
html {
	font-size: 62.5%;
	box-sizing: border-box;
}
*, *:before, *:after {
	box-sizing: inherit;
}
body {
	font-size: 14px;
	line-height: 1.8;
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Verdana, sans-serif;
	color: #555;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	word-break: break-all;
	letter-spacing: 0.5px;
	-webkit-font-feature-settings: "palt";
	-moz-font-feature-settings: "palt";
	font-feature-settings: "palt";
}

a{
	color:#555;
	text-decoration:none;
	transition: all 0.3s 0s ease;
	}


a:hover{
	opacity:0.75;
	}

a[href^="tel"]{
	/*color:#fff;
	pointer-events: none;*/
	}

.pc-hide{
	display:none !important;
	}

.text-link{
	color:#000;
	}

/*--------------------------------------------------
common
--------------------------------------------------*/
.section{
	padding:40px 0;
	}

.section_inner{
	width:1000px;
	margin:0 auto;
	}

.lead{
	padding-bottom:30px;
	text-align:center;
	}

.inner{
	padding-bottom:40px;
	}

.section_inner .inner:last-child{
	padding-bottom:0;
	}

.inner_box{
	padding:20px;
	}

.text-box{
	padding-bottom:20px;
	}

.bg-gray{
	background:#f3f3f3;
	}

.bg-white{
	background:#fff;
	}

.bg-orange{
	background:#fcb905;
	}

.bg-beige{
	background:#f9f8f2;
	}

.font-orange{
	color:#fcb905;
	}

.font-black{
	color:#555;
	}

.w-full{
	width:100%;
	}

img.w-full{
	height:auto;
	}

.link_arrow{
	position:relative;
	}

.link_arrow:before{
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    border-top: 1px solid #555;
    border-right: 1px solid #555;
    transform: rotate(45deg);
    margin-left: 0;
    margin-right: 10px;
}

.link_border{
	text-decoration:underline;
	}

.link_border:hover{
	text-decoration:none;
	cursor:pointer;
	}

.font-small{
	font-size:12px;
	line-height:18px;
	}

.align-center{
	text-align:center;
	}

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

.align-right{
	text-align:right;
	}

.matchHeight_center{
	display:flex;
	align-items:center;
	justify-content:center;
	}

/*--------------------------------------------------
list
--------------------------------------------------*/
.circle_list li{
    text-indent: -10px;
    padding-left: 30px !important;
	}

.circle_list li:before{
    content: "";
    width: 6px;
    height: 6px;
    background: #fcd147;
    border-radius: 3px;
    display: inline-block;
    position: relative;
    top: -2px;
    left: -10px;
	}

/*--------------------------------------------------
btn
--------------------------------------------------*/
.btn{
	text-align:center;
	border-radius:6px;
	display:inline-block;
	color:#fff;
	padding:14px;
	min-width:240px;
	box-shadow: 0px 4px rgba(0, 0, 0, 0.1);
	}

.btn[class*=application_] {
	background:#55acf0;
	font-size:22px;
	padding:30px 30px 30px 60px;
	position:relative;
	min-width:445px;
	height:116px;
}

.btn[class*=application_] span {
	position:relative;
	display: inline-block;
}

.btn[class*=application_] span:before,.credit_btn > span:before {
	content:"";
	display:block;
	position:absolute;

}

.btn[class*=application_] .price,.credit_btn .price{
	font-size:16px;
}


.btn.application_pc{
	padding:30px 30px 30px 60px;
	height:auto;
}

.btn.application_paper{
	padding:30px 30px 30px 68px;
	height:auto;
}

.btn.application_pc span:before {
	background:url(../img/icon_application_pc.svg) no-repeat;
	background-size:43px;
	width:43px;
	height:39px;
	left: -60px;
}

.btn.application_paper span:before {
	background:url(../img/icon_application_paper.svg) no-repeat;
	background-size:49px;
	width:49px;
	height:39px;
	left: -68px;
}

.btn.application_credit,.btn.application_bank{
	padding:30px 30px 30px 100px;
    	border: none;
}

.btn.application_credit > span,.btn.application_bank > span{
	font-size:20px;
	line-height:26px;
	text-align:left;
}

.credit_btn{
	position:relative;
	color:#fff;
	font-size:20px;
	line-height: 26px;
}

.credit_btn:hover{
	cursor: pointer;
}

.credit_btn > form{
	width: 100%;
    	position: absolute;
    	left: 0;
    	top: 0;
    	height: 100%;
}

.credit_btn input[type="submit"]{
	width: 100%;
    	height: 100%;
    	background: transparent;
    	border: none;
}

.credit_btn > span{
	position: absolute;
    	top: 0;
    	left: 0;
    	padding-left: 50px;
    	width: 100%;
    	height: 100%;
}

.btn.application_credit > span:before,.credit_btn > span:before{
	background:url(../img/subscribe/application_credit.svg) no-repeat;
	background-size:67px;
	width:67px;
	height:53px;
	left: -40px;
}

.btn.application_bank > span:before {
	background:url(../img/subscribe/icon_application_bank.svg) no-repeat;
	background-size:54px;
	width:54px;
	height:59px;
	left: -80px;
}


/*--------------------------------------------------
headLine
--------------------------------------------------*/
.headLine_lv1{
	font-size:24px;
	text-align:center;
	position:relative;
	padding-bottom:15px;
	margin-bottom:30px;
	}

.headLine_lv1:after{
	content:"";
	text-align:center;
	width:70px;
	height:5px;
	background:#fcd147;
	position:absolute;
	bottom:0;
	left:50%;
	margin-left:-35px;
	}

.headLine_lv2{
	font-size:22px;
	text-align:center;
	color:#f7c31b;
	font-weight:500;
    margin-bottom: 20px;
	}

.headLine_lv3{
	font-size:18px;
	line-height:28px;
	text-align:center;
	color:#f7c31b;
	font-weight:500;
	padding-bottom:10px;
	}

.headLine_lv4{
	font-size:16px;
	font-weight:500;
	padding-left:12px;
	margin-bottom:10px;
	position:relative;
	}

.headLine_lv4:after{
	content:"";
	text-align:center;
	width:4px;
	height:16px;
	background:#fcd147;
	position:absolute;
	top:50%;
	margin-top:-8px;
	left:0;
	}

.headLine_lv5{
	font-size:14px;
	font-weight:500;
	margin-bottom:10px;
	}

/*--------------------------------------------------
component-column
--------------------------------------------------*/

.component-column {
	margin:0 -10px -10px;
}
.component-column:after {
  content: "";
  clear: both;
  display: block;
}
.component-column [class*=col-] {
  float: left;
  padding: 0 10px 10px;
}
.component-column .single-column {
	float: none;
	margin: 0 auto;
	width: 33.33333%;
}
.component-column .col-1-1 {
  width: 100%;
}
.component-column .col-1-2 {
  width: 50%;
}
.component-column .col-2-2 {
  width: 100%;
}
.component-column .col-1-3 {
  width: 33.33333%;
}
.component-column .col-1-3-2 {
  width: 16.66666%;
}
.component-column .col-2-3 {
  width: 66.66667%;
}
.component-column .col-3-3 {
  width: 100%;
}
.component-column .col-1-4 {
  width: 25%;
}
.component-column .col-1-4-2 {
  width: 12.5%;
}
.component-column .col-2-4 {
  width: 50%;
}
.component-column .col-3-4 {
  width: 75%;
}
.component-column .col-4-4 {
  width: 100%;
}

/*--------------------------------------------------
header
--------------------------------------------------*/
.header{
	width:100%;
	border-top: 5px solid #fcd147;
	}

.header_inner{
	width:1000px;
	margin:0 auto;
	padding: 25px 0;
	display:flex;
	justify-content:space-between;
	}

.header .g-navi{
    display: flex;
    align-items: center;
	}

.header .g-navi > ul{
	display:flex;
	}

.header .g-navi > ul > li{
	padding-left:30px;
	}

.header .g-navi > ul > li > a{
	color:#555;
	font-weight:500;
    height: 47px;
    display: flex;
    align-items: center;
	}

.header .g-navi > ul > li > a:hover{

	}

/* single menu */
.header .g-navi .menu__single {
  position: relative;
}

.menu__single .menu__second-level {
  position: absolute;
  top: 47px;
  width: calc(100% - 30px);
  background:#fff9e7;
  visibility: hidden;
  opacity: 0;
  font-size:12px;
  font-weight:500;
  z-index: 100;
}

.menu__single:hover > .menu__second-level {
  visibility: visible;
  opacity: 1;
  border-top:4px solid #fcd147;
}

.menu__single:hover > .menu__second-level li a{
	padding:10px;
	width:100%;
	display:inline-block;
	transition: none;
}

.menu__single:hover > .menu__second-level li a:hover{
	background: #ddd;
}

.menu__single:hover > .menu__second-level li .header_credit{
	position:relative;
	padding: 10px;
	}

.menu__single:hover > .menu__second-level li .header_credit:hover{
	background: #ddd;
	cursor: pointer;
}

.menu__single:hover > .menu__second-level li .header_credit form{
	position: absolute;
    	top: 0;
    	left: 0;
    	display: block;
    	width: 100%;
    	height: 100%;
	}

.menu__single:hover > .menu__second-level li .header_credit form input[type="submit"]{
	width: 100%;
    	height: 100%;
    	background: transparent;
    	border: 0;
	}


/*--------------------------------------------------
footer
--------------------------------------------------*/
.footer{
	background:#f3f3f3;
	font-size:11px;
	}

.footer a{
	color:#555;
	text-decoration:underline;
	}

.footer a:hover{
	text-decoration:none;
	}

.footer_inner{
	width:1000px;
	margin:0 auto;
	padding:30px 0;
	}

.footer_bottom{
	display:flex;
	padding-top:34px;
	}

.footer_bottom .address_wrap{
	padding-right:20px;
	}

.footer_bottom .address_wrap .address{
	padding-bottom:20px;
	}

.footer_bottom	.sitemap{
	display:flex;
	justify-content:space-around;
	border-left:1px solid #fff;
	position: relative;
	}

.footer_bottom	.sitemap:before{
	content:"";
	display:block;
	width:1px ;
	height:100%;
	background:#000;
	opacity:0.1;
	position: absolute;
    left: 0;
	}

.footer_bottom	.sitemap .sitemap_box dl{
	padding-left:18px;
	padding-bottom: 20px;
    line-height: 2.4;
	}

.footer_bottom	.sitemap .sitemap_box .footer_subscribe{
	padding-bottom: 0px;
	}

.footer_bottom	.sitemap .sitemap_box dl dd{
	padding-left:13px;
	}

.footer	.copyright{
	background:#fcb905;
	color:#fff;
	text-align:center;
	padding:5px;
	}

/*--------------------------------------------------
breadcrumb
--------------------------------------------------*/
.breadcrumb {
	background:#f3f3f3;
}

.breadcrumb ul,.breadcrumb_inner{
  padding: 10px 0;
  width: 1000px;
  margin: 0 auto;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.breadcrumb:after {
  content: "";
  clear: both;
  display: block;
}
.breadcrumb span {
  display: inline;
  font-size: 12px;
  line-height: 21px;
  padding: 0 5px;
}
.breadcrumb li span[itemprop="name"] {
  padding: 0;
}
.breadcrumb li span[itemprop="name"] {
  padding: 0;
}


/*--------------------------------------------------
mainvisual
--------------------------------------------------*/
.mv{
	width:100%;
	display:flex;
	align-items:center;
	justify-content: center;
	position: relative;
	}

.mv h1{
	position: absolute;
	}

.mv > img{
	width:100%;
	height:auto;
	}


/*--------------------------------------------------
bnrArea
--------------------------------------------------*/
.bnrArea{
	width:1000px;
	margin:0 auto;
	padding:35px 0;
	display:flex;
	justify-content: space-between;
	}


/*--------------------------------------------------
subscription
--------------------------------------------------*/
.subscription_box_top {
    display: flex;
	padding-bottom:20px;
	}

.subscription_box_top .text{
	padding-left:20px;
	}

.subscription_image img{
	border:1px solid #ddd;
	}

/*--------------------------------------------------
topicsArea
--------------------------------------------------*/

.topicsArea{
	padding:10px 0;
	}

.topicsArea dl{
	width:1000px;
	margin:0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	}

.topicsArea dl dt{
	padding: 2px 10px 6px 10px;
	background: #fcd147;
	font-weight: 500;
	color: #fff;
	line-height: 12px;
	margin-right: 15px;
	}

.topicsArea dl dd{
	}

.topicsArea dl dd a{
	text-decoration:underline;
	}

.topicsArea dl dd a:hover{
	text-decoration:none;
	}

/*--------------------------------------------------
bnrArea02
--------------------------------------------------*/
.bnrArea02{
	background:url(../img/bnrArea02_bg.png) no-repeat center;
	background-size:cover;
	}

/*--------------------------------------------------
latest_issue
--------------------------------------------------*/
.latest_issue{
	display:flex;
	padding:30px 20px 20px;
	position:relative;
	background:#fff;
	}

.latest_issue_date{
	position:absolute;
	top:0;
	right:0;
	background:#fcd147;
	color:#fff;
	padding:2px 16px;
	}

.latest_issue_image{
	width: 280px;
    height: 200px;
	}

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


.latest_issue_text{
	padding-left:20px;
	position:relative;
	width: calc(100% - 280px);
	}

.latest_issue_text .more{
	position:absolute;
	right:0;
	bottom:0;
	}

/*--------------------------------------------------
aboutBtn
--------------------------------------------------*/
.aboutBtn {
	border:3px solid #fcb905;
	width:100%;
	height:217px;
	border-radius:4px;
	display:flex;
	justify-content:center;
	align-items: center;
	position:relative;
	}

.aboutBtn div{
	padding-bottom: 45px;
	}

.aboutBtn span{
	color:#fcb905;
	font-size:22px;
	font-weight:500;
	position:absolute;
	bottom:30px;
	}

/*--------------------------------------------------
magazineBox
--------------------------------------------------*/
.magazineBox{
	text-align:center;
	}

.magazineBox .image{
	padding-bottom:15px;
	}

/*--------------------------------------------------
subscribe_merit
--------------------------------------------------*/
.subscribe_merit{
	padding-top:15px;
    display: flex;
    justify-content: space-between;
	}

.subscribe_merit span{
	background:#f7c31b;
	width:50px;
	height:50px;
	border-radius:25px;
	display:flex;
	justify-content:center;
	align-items:center;
	color:#fff;
	font-size:14px;
	}

.subscribe_merit p{
	width: calc(100% - 65px);
	font-size:16px;
	line-height:26px;
	font-weight:500;
	}

/*--------------------------------------------------
form_table
--------------------------------------------------*/
.form_table{
	width:100%;

	}

.form_table th,.form_table td{
    border: 1px solid #ddd;
    padding: 20px;
    vertical-align: top;
	}

.form_table th{
	width: 260px;
    background: #fff9e7;
	}

.form_table .caption{
	padding-top:5px;
	}

.form_table .mast{
	color:#F13030;
	}


/*--------------------------------------------------
input
--------------------------------------------------*/
.mod-inputLabel {
    padding-right: 10px;
}
.wpcf7-list-item{
	position: relative;
	}
.wpcf7-list-item input[type="radio"]:hover,.wpcf7-list-item input[type="checkbox"]:hover{
	cursor:pointer;
	}
.css-form,.wpcf7-list-item input[type="radio"],.wpcf7-list-item input[type="checkbox"]{
    position: absolute;
    width: 100%;
    height: 18px;
    top: 50%;
    margin-top: -7px;
    z-index: 3;
    left: -5px;
    opacity: 0;
}
.mod-radio,.wpcf7-list-item-label{
    padding-left: 28px;
    cursor: pointer;
    transition: all 0.5s 0s ease;
    position: relative;
    display: inline-block;
    margin: 8px 30px 5px 0;
    vertical-align: middle;
}
.mod-radio::before,.wpcf7-radio .wpcf7-list-item-label:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  border: 1px solid #ddd;
  background: #fff;
  border-radius: 100%;
  left: 0;
  margin-top: -9px;
  width: 18px;
  height: 18px;
}
.mod-radio::after,.wpcf7-radio .wpcf7-list-item-label:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  border-radius: 100%;
  background: #fcd147;
  opacity: 0;
  transform: scale(0);
  transition: all 0.3s 0s ease;
  left: 4px;
  margin-top: -5px;
  width: 10px;
  height: 10px;
}

input[type="radio"]:checked + .mod-radio,.wpcf7-list-item input[type="radio"]:checked + .wpcf7-list-item-label,.wpcf7-list-item input[type="checkbox"]:checked + .wpcf7-list-item-label {
  color: #fcd147;
}

input[type="radio"]:checked + .mod-radio::after,.wpcf7-list-item input[type="radio"]:checked + .wpcf7-list-item-label:after {
  opacity: 1;
  transform: scale(1);
}

.mod-check:last-child {
  margin-right: 0;
}
.mod-check::before,.wpcf7-checkbox .wpcf7-list-item-label:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  border: 1px solid #ddd;
  border-radius: 2px;
  left: 0;
  margin-top: -9px;
  width: 18px;
  height: 18px;
  background: #fff;
}
.mod-check::after,.wpcf7-checkbox .wpcf7-list-item-label:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  opacity: 0;
  transform: scale(0);
  transition: all 0.2s 0s ease;
  left: 6px;
  margin-top: -9px;
  width: 6px;
  height: 14px;
  border-right: 2px solid #fcd147;
  border-bottom: 2px solid #fcd147;
  transform: translateY(4px) scale(0) rotate(45deg);
}

input[type="checkbox"]:checked + .mod-check::after,.wpcf7-list-item input[type="checkbox"]:checked + .wpcf7-list-item-label:after {
  opacity: 1;
  transform: translateY(0) scale(1) rotate(45deg);
}

input[type="checkbox"]:checked + .mod-check::before,.wpcf7-list-item input[type="checkbox"]:checked + .wpcf7-list-item-label:before {
  content: "" !important;
}

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="password"],
input[type="url"] {
  border: 1px solid #d2d2d2;
  padding: 6px 10px;
  margin-right: 10px;
  width: 100%;
  height: 35px;
  vertical-align: middle;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
input[type="text"].size-l,
input[type="tel"].size-l,
input[type="email"].size-l,
input[type="password"].size-l,
input[type="url"].size-l {
  width: 70%;
}
input[type="text"].size-m,
input[type="tel"].size-m,
input[type="email"].size-m,
input[type="password"].size-m,
input[type="url"].size-m {
  width: 40%;
}
input[type="text"].size-s,
input[type="tel"].size-s,
input[type="email"].size-s,
input[type="password"].size-s,
input[type="url"].size-s {
  width: 20%;
}
input[type="text"].hasDatepicker:disabled + img,
input[type="tel"].hasDatepicker:disabled + img,
input[type="email"].hasDatepicker:disabled + img,
input[type="password"].hasDatepicker:disabled + img,
input[type="url"].hasDatepicker:disabled + img {
  opacity: 0.5;
  pointer-events: none;
}

textarea {
  border: 1px solid #d2dce7;
  padding: 8px 10px;
  width: 100%;
  height: 160px;
}

.other{
	padding-top:10px;
	}

.submitBtn .wpcf7-submit{
    text-align: center;
    border-radius: 6px;
    display: inline-block;
    color: #fff;
    padding: 14px;
	font-weight:500;
    min-width: 260px;
	background: #fcb905;
    box-shadow: 0px 4px rgba(0, 0, 0, 0.1);
	border: none;
	cursor: pointer;
	outline: none;
	appearance: none;
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Verdana, sans-serif;
	}

.submitBtn .wpcf7-submit:hover{
	opacity:0.75;
	}

/* ------------------------------------------
  topics
--------------------------------------------- */
#topics{
	}

#topics .topics-article{
	padding-bottom:30px;
	}

#topics h3 a{
    color: #f7c31b;
	}

.topics-article .topics-date{
    color: #f7c31b;
	}

.topics-article .topics-content p{
	padding-bottom:15px;
	}

.topics-article .topics-content img{
	width:100%;
	height:auto;
	}

/* ------------------------------------------
  sample
--------------------------------------------- */
.sample_ul{
	text-align: left;
	display: inline-block;
}

.sample_ul li{
	padding-bottom: 10px;
}

.sample_ul li:last-child{
	padding-bottom: 0;
}

/* ------------------------------------------
  accordion
--------------------------------------------- */
.acMenu{
	pointer-events: none;
	}

.acContent[style="display: none;"]{
	display:block !important;
	}


/* ------------------------------------------
  sub-page
--------------------------------------------- */
.sub-page .contents{
	max-width: 1000px;
	margin: 0 auto;
	padding: 40px 0 60px;
	}

.sub-page .contents:after{
	content:"";
	display:block;
	clear:both;
	}

.sub-page .contents .title-lv2{
    margin-bottom: 40px;
	}



/*sub-page 2col*/
.sub-page .main{
	float:left;
	width: calc(100% - 360px);
	}

.sub-page .sidebar{
	float:right;
	width:300px;
	}

.sub-page .sidebar .side-block-title{
    padding: 10px;
    margin-bottom: 10px;
    background: #f7c31b;
    color: #fff;
	}

.sub-page .sidebar .side-topics-list li{
    border-bottom: 1px solid #ddd;
    padding-bottom: 10px;
    margin-bottom: 10px;
	}

.sub-page .image-box img{
	width:100%;
	height:auto;
}


.sub-page .image-box{
	margin-bottom:15px;
}

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

for SP

===========================================================*/
@media screen and (max-width: 640px){
body {
	min-width: 0;
	font-size: 12px;
	line-height: 20px;
	overflow-x:hidden;
}

/*--------------------------------------------------
common
--------------------------------------------------*/
.section{
	padding:25px 15px;
	}

.section_inner{
	width:100%;
	margin:0 auto;
	}

.lead{
	padding-bottom:15px;
	text-align:center;
	}

.inner{
	padding-bottom:20px;
	}

.inner_box{
	padding:15px;
	}

.link_arrow{
	position:relative;
	}

.link_arrow:before{
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    border-top: 1px solid #555;
    border-right: 1px solid #555;
    transform: rotate(45deg);
    margin-left: 0;
    margin-right: 10px;
}

.link_border{
	text-decoration:underline;
	}

.link_border:hover{
	text-decoration:none;
	cursor:pointer;
	}

.font-small{
	font-size:12px;
	line-height:18px;
	}

.sp-w-full{
	width:100%;
	}

img.sp-w-full{
    height: auto;
	}

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

.sp-hide{
	display:none !important;
}

.pc-hide{
	display:inline-block !important;
}

/*--------------------------------------------------
btn
--------------------------------------------------*/
.btn{
	text-align:center;
	border-radius:6px;
	display:inline-block;
	color:#fff;
	padding:14px;
	box-shadow: 0px 4px rgba(0, 0, 0, 0.1);

	}

.btn[class*=application_] {
	background:#55acf0;
	font-size:16px;
	padding:30px 30px 30px 60px;
	position:relative;
	min-width:0;
	height: auto;
}

.btn[class*=application_] span {
	position:relative;
	display: inline-block;
}

.btn[class*=application_] span:before {
	content:"";
	display:block;
	position:absolute;

}

.btn[class*=application_] .price{
	font-size:12px;
}

.btn.application_pc{
	padding:20px 20px 20px 50px;
}

.btn.application_paper{
	padding:20px 20px 20px 50px;
}

.btn.application_pc span:before {
	background:url(../img/icon_application_pc.svg) no-repeat;
	background-size:28px;
	width:28px;
	height:39px;
	left: -40px;
}

.btn.application_paper span:before {
	background:url(../img/icon_application_paper.svg) no-repeat;
	background-size:28px;
	width:28px;
	height:39px;
	left: -48px;
}


.application_single span:before{
	left: -38px;
}


.btn.application_credit,.btn.application_bank{
	padding:20px 20px 20px 65px;
}

.btn.application_credit > span,.btn.application_bank > span{
	font-size:14px;
	line-height:22px;
	text-align:left;
}

.btn.application_credit > span:before {
	background:url(../img/subscribe/application_credit.svg) no-repeat;
    	background-size: 45px;
    	width: 45px;
    	height: 35px;
	left: -30px;
}

.btn.application_bank > span:before {
	background:url(../img/subscribe/icon_application_bank.svg) no-repeat;
    background-size: 35px;
    width: 35px;
    height: 38px;
	left: -55px;
}

.credit_btn > span {
	padding-left: 0;
	width: auto;
}

.credit_btn > span:before {
	background-size: 40px !important;
    	width: 40px !important;
    	height: 53px;
    	left: -54px !important;
    	top: 5px;
}



/*--------------------------------------------------
headLine
--------------------------------------------------*/
.headLine_lv1{
	font-size:18px;
	text-align:center;
	position:relative;
	padding-bottom:15px;
	margin-bottom:15px;
	}

.headLine_lv1:after{
	content:"";
	text-align:center;
	width:50px;
	height:3px;
	background:#fcd147;
	position:absolute;
	bottom:0;
	left:50%;
	margin-left:-25px;
	}

.headLine_lv2{
    font-size: 16px;
    margin-bottom: 10px;
	}

.headLine_lv3{
    	font-size: 16px;
    	line-height: 24px;
	text-align:center;
	color:#f7c31b;
	font-weight:500;
	padding-bottom:10px;
	}

.headLine_lv4{
	font-size:16px;
	font-weight:500;
	padding-left:12px;
	margin-bottom:10px;
	position:relative;
	}

.headLine_lv4:after{
	content:"";
	text-align:center;
	width:4px;
	height:16px;
	background:#fcd147;
	position:absolute;
	top:50%;
	margin-top:-8px;
	left:0;
	}

.headLine_lv5{
	font-size:14px;
	font-weight:500;
	margin-bottom:10px;
	}

/*--------------------------------------------------
component-column
--------------------------------------------------*/
.component-column {
}
.component-column:after {
  content: "";
  clear: both;
  display: block;
}
.component-column [class*=col-] {
  float: left;
  padding: 0 10px 10px;
}

.component-column .sp-col-1-2 {
  width: 50% !important;
}

.component-column .sp-col-1{
  width: 100% !important;
}

/*--------------------------------------------------
header
--------------------------------------------------*/
.header{
	width:100%;
	padding: 20px;
	display:flex;
	justify-content:space-between;
	border:none;
	}

.header .logo a img{
	width:98px;
	height:auto;
	}

.header .g-navi{
    display: flex;
    align-items: center;
	}

.header .g-navi > ul{
	display:block;
	}

.header .g-navi > ul > li{
	padding: 15px 10px;
	border-bottom: 1px dotted #69490e;
	}

.header .g-navi > ul > li:last-child{
	border-bottom: none;
	}

.header .g-navi > ul > li > a{
	color:#555;
	font-weight:500;
    height: auto;
    display: flex;

    align-items: center;
	}

.header .g-navi > ul > li > a:hover{

	}

/* single menu */
.header .g-navi .menu__single .menu__second-level{
	display:none;
}

/*--------------------------------------------------
Hamburger_menu
--------------------------------------------------*/
#top-head,.header_inner {
	width: 100%;
	padding: 0;
}
#top-head {
    top: 0;
    position: fixed;
    margin-top: 0;
    background: #fff;
    height: 60px;
	z-index: 999;
}
/* Toggle Button */
#nav-toggle {
    display: none;
    position: absolute;
    right: 12px;
    top: 18px;
    width: 30px;
    height: 30px;
    cursor: pointer;
    z-index: 101;
}
#nav-toggle div {
    position: relative;
}
#nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #fcd147;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
    top: 0;
}
#nav-toggle span:nth-child(2) {
    top: 10px;
}
#nav-toggle span:nth-child(3) {
    top: 20px;
}
/* Fixed reset */
#top-head.fixed {
	padding-top: 0;
	background: transparent;
    z-index: 1000;
}
#mobile-head {
	background: #fff;
	width: 100%;
	height: 56px;
	z-index: 999;
	position: relative;
	border-top: 3px solid #fcd147;
}
#top-head.fixed .logo,
#top-head .logo {
	position: absolute;
	left: 13px;
	top: 13px;
	color: #333;
	font-size: 26px;
}
#global-nav {
	position: absolute;
	/* 開いてないときは画面外に配置 */
	top: -500px;
	background: #f9f4e5;
	width: 100%;
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
}
#global-nav ul {
	list-style: none;
	position: static;
	right: 0;
	bottom: 0;
	width: 100%;
}
#top-head #global-nav ul li a,
#top-head.fixed #global-nav ul li a {
	width: 100%;
	display: block;
}
#nav-toggle {
	display: block;
}
/* #nav-toggle 切り替えアニメーション */
.open #nav-toggle span:nth-child(1) {
	top: 11px;
	-webkit-transform: rotate(315deg);
	-moz-transform: rotate(315deg);
	transform: rotate(315deg);
}
.open #nav-toggle span:nth-child(2) {
	width: 0;
	left: 50%;
}
.open #nav-toggle span:nth-child(3) {
	top: 11px;
	-webkit-transform: rotate(-315deg);
	-moz-transform: rotate(-315deg);
	transform: rotate(-315deg);
}
/* #global-nav スライドアニメーション */
.open #global-nav {
	/* #global-nav top + #mobile-head height */
	-moz-transform: translateY(556px);
	-webkit-transform: translateY(556px);
	transform: translateY(556px);
}


/*--------------------------------------------------
footer
--------------------------------------------------*/
.footer{
	background:#f3f3f3;
	font-size:12px;
	}

.footer_inner{
	width:100%;
	margin:0 auto;
	padding: 0;
	}

.footer .logo {
	padding: 15px;
}


.footer .logo a img {
    width: 98px;
    height: auto;
}

.footer_bottom{
	display:flex;
	padding: 0;
    flex-flow: column-reverse nowrap;
	}

.footer_bottom .address_wrap{
	padding:15px;
	}

.footer_bottom .address_wrap .address{
	padding-bottom:10px;
	}

.footer_bottom	.sitemap{
	display:block;
	border-left:none;
	}

.footer_bottom	.sitemap:before{
	content:none;
	}

.footer_bottom	.sitemap .sitemap_box dl{
	padding-left:0;
	padding-bottom: 0;
    line-height: 2.4;
	}

.footer_bottom	.sitemap .sitemap_box dl dt{
	padding:10px;
	border-top:1px solid #ddd;
	}

.footer_bottom	.sitemap .sitemap_box dl dt:last-child{
	border-bottom:1px solid #ddd;
	}

.footer_bottom	.sitemap .sitemap_box dl dt a{
	text-decoration:none;
	}

.footer_bottom	.sitemap .sitemap_box dl dd{
	display:none;
	}

.footer	.copyright{
	background:#fcb905;
	color:#fff;
	text-align:center;
	padding:5px;
	font-size: 11px;
	}

/*--------------------------------------------------
breadcrumb
--------------------------------------------------*/
.breadcrumb {
	background:#f3f3f3;
	margin-top: 60px;
}

.breadcrumb_inner{
  height: auto;
  line-height: 21px;

  width: 100%;
  padding: 10px 15px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.breadcrumb:after {
  content: "";
  clear: both;
  display: block;
}

.breadcrumb span {
  display: inline;
  font-size: 11px;
  line-height: 18px;
  padding: 0 5px;
}
.breadcrumb li span[itemprop="name"] {
  padding: 0;
}


/*--------------------------------------------------
mainvisual
--------------------------------------------------*/

.mv{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
	margin-top: 60px;
	}

.mv h1{
	width:100%;
	text-align:center;
	padding: 15px;
	}

.mv h1 img{
	width:190px;
	height:auto;
	}

/*--------------------------------------------------
bnrArea
--------------------------------------------------*/
.bnrArea{
	width:100%;
	margin:0 auto;
	padding:10px;
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	}

.bnrArea a{
	width:50%;
    padding: 5px;
	}

.bnrArea a img{
	width:100%;
	height:auto;
	}

/*--------------------------------------------------
subscription
--------------------------------------------------*/
.subscription_box_top {
    display: flex;
	padding-bottom:20px;
	}

.subscription_box_top .text{
	padding-left:20px;
	}

.subscription_image img{
	border:1px solid #ddd;
	}

/*--------------------------------------------------
bnrArea02
--------------------------------------------------*/
.bnrArea02{
	background:url(../img/bnrArea02_bg.png) no-repeat center;
	background-size:cover;
	}

/*--------------------------------------------------
latest_issue
--------------------------------------------------*/
.latest_issue{
	display:flex;
	padding:20px;
	position:relative;
	background:#fff;
	flex-flow: column nowrap;
	}

.latest_issue_date{
	position:absolute;
    top: 20px;
    right: 20px;
	background:#fcd147;
	color:#fff;
	padding:2px 16px;
	}

.latest_issue_image{
    width: 100%;
    height: auto;
    padding-bottom: 15px;
	}

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

.latest_issue_text{
	padding-left:0;
	position:relative;
	width:100%;
	}

.latest_issue_text .more{
    position: static;
    right: 0;
    bottom: 0;
    text-align: right;
    width: 100%;
    display: block;
    padding-top: 10px;
	}

/*--------------------------------------------------
aboutBtn
--------------------------------------------------*/
.aboutBtn {
    border: 3px solid #fcb905;
    width: 100%;
    height: 90px;
    border-radius: 4px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    padding-right: 20px;
	}

.aboutBtn div{
    padding-bottom: 0;
    width: 60px;
    height: auto;
    margin-bottom: 0;
    margin-right: 20px;
	}

.aboutBtn div img{
	width: 100%;
	height: auto;
	}

.aboutBtn span{
	position: static;
	font-size: 16px;
	}

.aboutBtn.introduction div{
	width: 50px;
	left: 30px;
	}

/*--------------------------------------------------
magazineBox
--------------------------------------------------*/
.magazineBox{
	text-align:center;
	padding-bottom: 20px;
	}

.magazineBox .image{
    padding-bottom: 15px;
    width: 150px;
    margin: 0 auto;
	}

.magazineBox .image img{
    width: 100%;
    height: auto;
	}

/*--------------------------------------------------
subscribe_merit
--------------------------------------------------*/
.subscribe_merit{
	padding-top:15px;
	padding-bottom: 15px;
    display: flex;
    justify-content: space-between;
	}

.subscribe_merit span{
	width: 40px;
    height: 40px;
    border-radius: 20px;
    font-size: 12px;
	}

.subscribe_merit p{
	width: calc(100% - 50px);
    font-size: 14px;
    line-height: 22px;
	}

/*--------------------------------------------------
topicsArea
--------------------------------------------------*/

.topicsArea{
	padding:10px 0;
	}

.topicsArea dl{
	width:100%;
	margin:0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	}

.topicsArea dl dt{
	padding: 2px 10px 6px 10px;
	background: #fcd147;
	font-weight: 500;
	color: #fff;
	line-height: 12px;
	margin-right: 15px;
	}

.topicsArea dl dd{
	}

.topicsArea dl dd a{
	text-decoration:underline;
	}

.topicsArea dl dd a:hover{
	text-decoration:none;
	}

/*--------------------------------------------------
form_table
--------------------------------------------------*/
.form_table{
	width:100%;
	}

.form_table th,.form_table td{
	display: block;
	width:100%;
    border-bottom: none;
    padding: 10px;
	}

.form_table th{
	width:100%;
	}

.form_table .caption{
	padding-top:5px;
	}

/*--------------------------------------------------
form
--------------------------------------------------*/
input[type="text"].size-m, input[type="tel"].size-m, input[type="email"].size-m, input[type="password"].size-m, input[type="url"].size-m {
    width: 100%;
}

/* ------------------------------------------
  sub-page
--------------------------------------------- */
.sub-page .contents{
	max-width: 100%;
	margin: 0 auto;
	padding: 25px 15px;
	}

.sub-page .contents:after{
	content:"";
	display:block;
	clear:both;
	}

.sub-page .contents .title-lv2{
    margin-bottom: 40px;
	}



/*sub-page 2col*/
.sub-page .main{
	float: none;
	width: 100%;
    padding-bottom: 30px;
	}

.sub-page .sidebar{
	float:none;
	width:100%;
	}


}
