/*ロゴ*/
.logo-area img{
	width:240px;
}
.logo-area h1{
	font-size: 11px;
	padding-right:.2rem;
}

/*Social */
.social-icons {
	display: flex;
	justify-content: right;
	margin-bottom: 20px;
}
.social-icons a {
	color: #333;
	font-size: 18px;
	margin: 0 10px;
	text-decoration: none;
}
.social-icons a:hover {
	color: #511136;
}


@media screen and (min-width: 481px) {
	.logo-area img{
		width:260px;
	}
	.logo-area h1{
		font-size:16px;
		padding:.4rem 0 0 2.2rem;
	}
}
@media screen and (min-width: 960px) {
	.logo-area img{
		width:280px;
	}
}

/*ぱんくずリスト*/
.breadcrumb-item a{
	color: #A40B5D;
	text-decoration: none;
}
.breadcrumb-item a:hover{
	color: #511136;
}

/*メニュー*/
.navbar li a{
	font-size: 1.6rem;
}
.navbar-light .navbar-nav .nav-link{
	color: #000;
}
.navbar-light .navbar-nav .nav-link:hover{
	color: #A40B5D;
}
.navbar-toggler{
	font-size: 1.5rem;
}
.navbar-light .navbar-toggler{
	border-color: #333;
}
/*ヘッダー*/
#top-header{
	background:#EAE5E4;
}
#top-header .container{
	background-size: 140px;
}
#top-header h2{
	font-size: 14px;
	line-height: 1.6;
}
#top-header .d-flex{
	min-height:140px !important;
}
@media screen and (min-width: 481px) {
	#top-header .container{
		background:url(/asset/img/top-bnr-s.png)no-repeat right center !important;
	}
	#top-header .d-flex{
		min-height:180px !important;
	}
	#top-header h2{
		font-size: 18px;
		line-height: 1.8;
	}
}
@media screen and (min-width: 960px) {
	#top-header .container{
		background-size: 340px;
		background:url(/asset/img/top-bnr3.png)no-repeat right center !important;
	}
	#top-header .d-flex{
		min-height:380px !important;
	}
	#top-header h2{
		font-size: 24px;
		line-height: 1.8;
	}
}

/*カレントとは*/
#top-current-msg{
	margin:2.8rem 0;
}
#top-current-msg h2{
	font-size:14px;
	line-height: 1.8;
}
@media screen and (min-width: 481px) {
	#top-current-msg h2{
		font-size:18px;
	}
}
@media screen and (min-width: 781px) {
	#top-current-msg h2{
		font-size:20px;
	}
}
@media screen and (min-width: 960px) {
	#top-current-msg h2{
		font-size:24px;
		line-height: 2.2;
	}
}

/*最新号の案内*/
#top-recentry .border-sm-box{
	border: 1px solid #999;
}
#top-recentry img{
	width:62%;
	text-align: center;
	margin: 0 auto;
}
@media screen and (min-width: 481px) {
	#top-recentry{
		background:url(/asset/img/recentry-back.png)no-repeat left bottom 30%;
	}
	#top-recentry .border-sm-box{
		border: none;
	}
	#top-recentry h2{
		color: #fff;
		text-shadow: 1px 1px 1px rgba(0,0,0,0.56);
	}
	#top-recentry h2 .small{
		font-size: 18px;
	}
	#top-recentry h3{
		font-size: 16px;
	}
	#top-recentry img{
		width:88%;
	}
}
@media screen and (min-width: 761px) {
	#top-recentry h3{
		font-size: 16px;
	}
}
@media screen and (min-width: 960px) {
	#top-recentry h3{
		font-size: 20px;
		line-height: 1.6
	}
}
/*お申し込み案内*/
#top-apply h2{
	color: #A40B5D;
	font-size: 42px;
	vertical-align: middle;
}
#top-apply h2 .small{
	font-size: 16px;
	vertical-align: -9px;
}
#top-apply h2 .black{
	color: #000;
	font-size: 16px;
	padding:0 .68rem .88rem;
	vertical-align: 16px;
}
#top-apply h2 .price{
	font-family: YakuHanMPs,"ヒラギノ明朝 ProN","Hiragino Mincho ProN",YuMincho,"Yu Mincho","游明朝体","Sawarabi Mincho",sans-serif;
	vertical-align: middle;
}
#top-apply .btn{
	padding: 1.6rem 3.6rem;
	background: #A40B5D;
	font-size: 18px;
	border-radius: 4px;
	border: none;
}
#top-apply .btn:hover{
	background: #511136;
}

#result .btn,.nomalbtn .btn{
	padding: 1.2rem 2.6rem;
	background: #A40B5D;
	font-size: 14px;
	border-radius: 4px;
	border: none;
}
#result .btn:hover,.nomalbtn .btn:hover{
	background: #511136;
}

@media screen and (min-width: 481px) {
	#top-apply h2{
		font-size: 60px;
	}
	#top-apply h2 .small{
		font-size: 24px;
	}
	#top-apply h2 .black{
		font-size: 24px;
	}
	#top-apply .btn{
		padding: 2.4rem 6.2rem;
		font-size: 28px;
		border-radius: 10px;
		border: none;
	}
}
@media screen and (min-width: 960px) {
	#top-apply h2{
		font-size: 72px;
	}
	#top-apply h2 .small{
		font-size: 28px;
	}
	#top-apply h2 .black{
		font-size: 28px;
	}
	#top-apply .btn{
		padding: 2.4rem 6.2rem;
		font-size: 28px;
		border-radius: 10px;
		border: none;
	}
}

/*これまで登場された人物*/
#top-personal{
	background:#EAE5E4;
}

#top-personal p{
	margin-bottom: .3rem;
}
#top-personal h3 span{
	font-size: 13px;
}

/*お知らせ*/
@media screen and (min-width: 481px) {
	#top-news p{
			font-size: 16px;
	}
}
@media screen and (min-width: 960px) {
	#top-news p{
			font-size: 18px;
	}
}

/*下部お申し込み案内*/
#bottom-apply{
	background:#EAE5E4;
}
#bottom-apply a.tel{
	font-family: YakuHanMPs,"ヒラギノ明朝 ProN","Hiragino Mincho ProN",YuMincho,"Yu Mincho","游明朝体","Sawarabi Mincho",sans-serif;
	color: #000;
	text-decoration: none;
	font-size: 48px;
}
#bottom-apply .btn{
	padding: 1.6rem 3.6rem;
	background: #A40B5D;
	font-size: 18px;
	border-radius: 4px;
	border: none;
}
#bottom-apply .btn:hover{
	background: #511136;
}
@media screen and (min-width: 960px) {
	#bottom-apply .btn{
		font-size: 28px;
		border-radius: 10px;
	}
}
/* ページTOPに戻る */
.pagetop{
    display: none;
    position: fixed;
    right: 10px;
    bottom: 10px;
}
.pagetop a{
    display: block;
    font-size: 0;
    width: 50px;
    height: 50px;
    text-align: center;
    background: #A40B5D;
    border-radius: 50%;
    line-height: 50px;
}
.pagetop a i{
    font-size: 20px;
    color:#fff;
    line-height: 50px;
}
@media screen and (min-width: 481px) {
	.pagetop{
	    right: 30px;
	    bottom: 30px;
	}
}

/*サブページ*/
#sub-header{
	background:#EAE5E4;
}
#sub-header .container{
	background-size: 140px;
}
#sub-header h2{
	font-size: 14px;
	line-height: 1.6;
}
#sub-header .d-flex{
	min-height:140px !important;
}
@media screen and (min-width: 481px) {
	#sub-header .d-flex{
		min-height:180px !important;
	}
	#sub-header h2{
		font-size: 18px;
		line-height: 1.8;
	}
}
@media screen and (min-width: 960px) {
	#sub-header h2{
		font-size: 24px;
		line-height: 1.8;
	}
}
#company-info th{
	background:#eee;
	width:10rem;
	padding: .6rem .8rem
}
#company-info td{
	padding: .6rem .8rem
}
#company-map iframe {
  width: 100%;
  aspect-ratio: 16/9; //アスペクト比（縦横比）を指定
}
@media screen and (min-width: 481px) {
	#company-info th,#company-info td{
		font-size: 16px;
		padding: 1.2rem 1.8rem
	}
	#company-info th{
		width:14rem;
	}
}

/*購読申し込み*/
#apply-form label{
	font-size:16px;
}
#apply-form span.text-light{
	font-size: 10px;
	padding: .3rem .6rem;
	vertical-align: middle;
}
#apply-form input[type=text],#apply-form input[type=tel],#apply-form input[type=email]{
	font-size: 16px;
	padding: .8rem 1.2rem;
}
::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color:#eee;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
   color:#eee;
}
::placeholder{ /* Others */
 color:#eee;
}
#apply-form textarea{
	font-size: 16px;
	padding: .8rem 1.2rem;
}
#apply-form select{
	font-size: 16px;
	padding: .8rem 1.2rem;
}
#apply-form .ttl{
	font-size: 16px;
}
#apply-form .btn{
	padding: 1.6rem 3.6rem;
	background: #A40B5D;
	font-size: 18px;
	border-radius: 4px;
	border: none;
}
#apply-form .btn:hover{
	background: #511136;
}
.table-wrapper h2{
	border-bottom: .88rem;
}
.responsive-table {
	 width: 100%;
	 border-collapse: collapse;
	 margin-bottom: 2em;
 }
.responsive-table th{
	background: #eee;
}
 .responsive-table th,
 .responsive-table td {
	 border: 1px solid #ccc;
	 padding: 8px;
	 text-align: left;
 }
 .responsive-table th.num{
	 width: 20% !important;
 }
 .responsive-table th.name{
	 width: 24% !important;
 }
 .responsive-table th.title{
	 width: 56% !important;
 }


 @media screen and (max-width: 768px) {
	 .responsive-table thead {
		 display: none;
	 }

	 .responsive-table tr {
		 display: block;
		 margin-bottom: 1em;
		 border: 1px solid #ddd;
		 padding: 10px;
	 }

	 .responsive-table td {
		 display: block;
		 border: none;
		 border-bottom: 1px solid #eee;
		 padding: 6px 10px;
	 }

	 .responsive-table td::before {
		 content: attr(data-label);
		 font-weight: bold;
		 display: block;
		 margin-bottom: 4px;
		 color: #555;
	 }
 }
 /* PCでは横並び */
    .table-container {
      display: flex;
      gap: 20px;
    }
    .table-wrapper {
      flex: 1;
    }

    /* スマホ時は縦積み */
    @media screen and (max-width: 768px) {
      .table-container {
        display: block;
      }
      .table-wrapper {
        margin-bottom: 2em;
      }
    }
