@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@500&display=swap');

/* ------------------------------------------------------------

   sub

------------------------------------------------------------ */
.sub #contents {
	border-top:1px solid #e0e0e0;
}


/* ------------------------------------------------------------

   company_ttl

------------------------------------------------------------ */
.company_ttl h2 {
	background-color:#333;
	color:#fff;
	line-height:1;
	text-align:center;
	display:inline-block;
	padding:7px 15px;
}
.company_ttl .type {
	line-height:1;
	text-align:center;
	display:inline-block;
	padding:7px 15px;
	font-weight:bold;
	margin-right:10px;
}
.company_ttl .lead {
	font-weight:bold;
	padding-top:15px;
}
/*タグ*/
.company_ttl .tag-area {
	margin-top: 5px;
}
.company_ttl .tag-area ul li {
	display: inline-block;
	margin-right: 8px;
	margin-top: 8px;
}
.company_ttl .tag-area ul li a {
	background: #eee;
	font-size: 12px;
	border-radius: 3px;
	padding: 5px 5px;
}

@media screen and (max-width:40em) { /* スマホ */
	.company_ttl {
	padding:10px 0 20px;
}
	.company_ttl h2,
	.company_ttl .type {
	font-size:0.9em;
}
	.company_ttl .lead {
	font-size:1.2em;
}
	/*.company_ttl .lead .line {
	display: inline-block;
}	*/
	.company_ttl .lead .line:last-of-type {
	padding-left: 1em;
}	
}


@media screen and (min-width:40em) { /* タブレット・PC */
	.company_ttl {
	padding:50px 10px;
}
	.company_ttl .lead {
	font-size:1.75em;
}
	/*.company_ttl .lead .line:first-child {
	padding-right:0.5em;
}	*/
	.company_ttl .lead .line {
	display: block;
}
}



/* ------------------------------------------------------------

   slide 2023年で修正

------------------------------------------------------------ */
.slider-wrap {
	position: relative;
}
/*ロード中は非表示*/
.slider {
	display: none;
	width: 100%;
}
.slider.slick-initialized {
	display: block;
}
.slick-slide {
	position: relative;
	transition: .3s ease;
	text-align: center;	
}
.slick-slide .slide-cont {
	position: relative;
	background-color: #f5f5f5;
}

/*キャプション*/
.slick-slide .caption {
    text-align: left;
    position: absolute;
    left: 0px;
    bottom: 0;
    z-index: 2;
    width: 100%;
    padding: 5px 10px;
    background: rgba(0,0,0,.6);
    color: #fff;
    font-size: 10px;
	line-height: 1.3;
	opacity: 0;
	transition: .3s ease;
}
.slick-current .caption {
	opacity: 1;
	transition-delay: .3s;
}
/* current以外薄く　*/
	.slick-slide:not(.slick-current) {
    opacity: .1;
}
	.slick-current {
	opacity: 1;
}

/*矢印*/
.slick-prev,
.slick-next {
	width: 40px;
	height: 40px;
	top: 40%;
}
.slick-prev {
    left: 0;
	z-index: 1!important;
}
.slick-next {
	right: 0;
}
.slick-prev:before,
.slick-next:before {
	width: 40px;
	height: 40px;
	background-size: 100%;
    color: var(--c-brown);
	/*top: 30%;*/
	display: block;
	content: "";
}
.slick-next::before {
    background-image: url(../img/arrow_r.gif);
}
.slick-prev::before {
    background-image: url(../img/arrow_l.gif);
}

/*過去分*/
.slide_old {
	border-bottom:1px solid #dddddd;
}
.slide_old_ttl {
	border-top:1px solid #dddddd;
	background-color:#f5f5f5;
	color:#333;
	text-align:center;
	font-weight:bold;
}
.slide_old ul {
	text-align:center;
	margin:30px auto;
	font-size:0;/*横並びの隙間をなくす*/
	/*width:500px;*/
	display: flex;
	flex-wrap: wrap;
}
.slide_old ul li {
	display:inline-block;
	padding:0;
	cursor:pointer;
	text-align:center;
}

@media screen and (max-width:40em) { /* スマホ */
	.slick-slide {
    height: 300px;
}
	/*縦長の写真は縦サイズで調整*/
	.slick-slide img {
    max-height: 300px;
    width: auto !important;
    margin: 0 auto;
}
/*キャプション*/
	.slick-slide .caption {
    font-size: 8px;
}
	/*もっとみたい*/
	.more {
	width: 75%;
	margin: 20px auto;
}
	
	/*過去分*/
	.slide_old {
	margin-bottom:30px;
}
	.slide_old_ttl {
	padding:10px 0;
}
	.slide_old ul {
	width: 98%;
	margin:15px auto 10px;
	justify-content: flex-start;
}
	.slide_old ul li {
	width:18% !important;
	margin:0 1% 10px;
}
}


@media screen and (min-width:40em) { /* タブレット・PC */
	.slick-list {
	margin-bottom: 30px;
	padding: 0!important;
	height: 587px;
}

	.slick-slide {
	width: 880px!important;
}
	/*縦長の写真は縦サイズで調整*/
	.slick-slide img {
	max-height:587px;
	width:auto !important;
	margin:0 auto;
	display:inline-block;
}

	/*もっとみたい*/
	.more {
	position:absolute;
	width:125px;
	left: calc(50% + 195px);
	/*top:-18px;*/
	top:625px;
}
	.more.more_5 {
	left: calc(50% + 315px);
}
	/*過去分*/
	.slide_old {
	margin-bottom:50px;
}
	.slide_old_ttl {
	padding:10px 0;
}
	.slide_old ul {
	justify-content: center;
}
	.slide_old ul li {
	width:94px !important;
	margin-left:13px;
	margin-right:13px;
	/*width:100px !important;
	margin-left:15px;
	margin-right:15px;*/
}
	.slide_old ul li:first-of-type {
	margin-left:0px;
}
	.slide_old ul li:last-of-type {
	margin-right:0px;
}

/*矢印*/
	.slick-prev,
	.slick-next {
	width: 60px;
	height: 60px;
	top: 264px;
}
	.slick-prev {
    left: 5%;
}
	.slick-next {
	right: 5%;
}
	.slick-prev:before,
	.slick-next:before {
	width: 60px;
	height: 60px;
}

}


/*=====================================================*/
/*　スライダーサムネイル　*/
/*=====================================================*/
.thumb-wrap {
	background-color: #fff;
	padding-top: var(--sec-space-half);
}
.thumb-wrap:last-of-type {
	padding-bottom: var(--sec-space);
}
.thumb-wrap .thumb-list {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	width: 94%;
	max-width: 500px;
	margin: auto;
}
.thumb-wrap .thumb-list li {
	width: 20%;
	max-width: 100px;
	padding-right: 1px;
	padding-left: 1px;
}
.bk-wrap .thumb-wrap .thumb-list li:nth-of-type(-n+5) {
	padding-bottom: 2px;
}

@media screen and (min-width:40em) { /* タブレット・PC */
	.thumb-wrap {
	padding-top: var(--sec-space-half);
}
	.thumb-wrap:last-of-type {
	padding-bottom: var(--sec-space-half);
}
	.thumb-wrap .thumb-list {
	width: 100%;
	max-width: 570px;
}
	.thumb-wrap .thumb-list li {
	margin-left: 7px;
	margin-right: 7px;
}

	.bk-wrap .thumb-wrap .thumb-list li:nth-of-type(-n+5) {
	padding-bottom: 14px;
}
}

/*@media (min-width:1180px) {
	.thumb-wrap .thumb-list {
	max-width: 1140px;
}

	.bk-wrap .thumb-wrap .thumb-list li:nth-of-type(-n+5) {
	padding-bottom: 0;
}
}*/


/*slickのリストに画像を適応*/
.slick-dots {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	max-width: 500px;
	margin: 0 auto 45px;
	position: relative;
}
.slick-dots li {
	position: relative;
	width: 16% !important;
    margin: 0 1% 5px;
	height: 0;
	/*padding-right: 1px;
	padding-left: 1px;*/
	padding-bottom: 16%;
	overflow: hidden;
	transition: .5s;
}
.slick-dots li img {
	object-fit: cover;
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.slick-dots li:hover {
	opacity: .8;
}

@media screen and (min-width:40em) { /* タブレット・PC */
	.slick-dots {
	width: 100%;
	max-width: 600px;
	margin: 0 auto 80px;
}
	.slick-dots li {
	/*width: calc(20% - 7px);
	margin: 0 7px;
	padding-bottom: 17.55%;*/
	width: 94px !important;
	padding-bottom: 94px;
    margin-left: 13px;
    margin-right: 13px;
}

}



/* ------------------------------------------------------------

   京の匠

------------------------------------------------------------ */
.takumi-link {
	margin: 0 auto 20px;
	width: 90%;
	max-width: 480px;
}

@media screen and (min-width:40em) {
	.takumi-link {
	margin: -20px auto 30px;
}
}

/* ------------------------------------------------------------

   company_data

------------------------------------------------------------ */
.company_data h2 {
	font-weight:bold;
	padding-bottom:20px;
}

.company_data dl {
	border-bottom: 1px solid #e0e0e0;
}
.company_data dt,
.company_data dd {
	padding: 15px 20px 0 20px;
	border-top: 1px solid #e0e0e0;
}
.company_data dt {
	width:30%;
	float: left;
}
.company_data dd {
	background: #fff;
	margin-left:30%;
	padding-bottom: 15px;
	border-left: 1px solid #e0e0e0;
}
.company_data dd:after {
	content: '';
	display: block;
	clear: both;
}
.company_data dd i {
	font-size: 114%;
    vertical-align: middle;
}
.company_data dd a {
	text-decoration:underline;
}
.company_data dd a:hover {
	opacity:1;
	filter:alpha(opacity=100);
}
.company_data dd img {
	display: block;
	padding-top: 5px;
}



@media screen and (max-width:40em) { /* スマホ */
	.company_data h2 {
	font-size:1.2em;
}
	.company_data dl {
	font-size:0.875em;
}
	.company_data dt,
	.company_data dd {
	padding: 10px 15px 0 15px;
	border-top: 1px solid #e0e0e0;
}
	.company_data dt {
	padding-left:0;
}
	.company_data dd {
	padding-bottom:10px;
	overflow-wrap: break-word;
}
	.company_data dd p.data2 {
	padding-top: 5px;
}
}


@media screen and (min-width:40em) { /* タブレット・PC */
	.company_data {
	width:740px;
	float:left;
}
	.company_data h2 {
	font-size:1.5em;
	padding-left:20px;
}
	.company_data dd img {
	width:300px;
	padding-top: 10px;
}
	.company_data dd p.data2 {
	padding-top: 10px;
}
}


/* ------------------------------------------------------------

   voice

------------------------------------------------------------ */
.ttl_voice {
	font-weight:bold;
	color:#fff;
}
.voice dt {
	font-weight:bold;
	padding-bottom:1em;
}
.voice dt {
	font-size:0.93em;
}
.voice dd {
	font-size:0.87em;
	line-height:1.6;
}




@media screen and (max-width:40em) { /* スマホ */
	.voice {
	margin-top:30px;
}
	.ttl_voice {
	padding:10px 15px;
}
	.voice_cont {
	padding:15px;
}
	.voice .comment {
	width:62%;
	float:left;
}
	.pht_voice {
	width:35%;
	float:right;
}
}


@media screen and (min-width:40em) { /* タブレット・PC */
	.voice {
	width:400px;
	float:right;
}
	.ttl_voice {
	padding:15px 25px;
}
	.voice_cont {
	padding:25px;
}
	.pht_voice {
	width:140px;
	margin:25px auto 0;
}
}



/* ------------------------------------------------------------

   map

------------------------------------------------------------ */
.map {
	margin-top: 30px;
}
.map-inner {
    position: relative;
    width: 100%;
    height: 0;
	padding-bottom: 75%;
    overflow: hidden;
}
.map-inner iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media screen and (min-width:40em) { /* タブレット・PC */
	.map {
	margin-top: 50px;
	padding: 0 180px;
}
	.map-inner {
	padding-bottom: 56.25%;
	margin-top: 50px;
}
}


/* ------------------------------------------------------------

   btn_contact

------------------------------------------------------------ */

.btn_contact {
	padding:30px 0 0;
	clear: both;
}

@media screen and (min-width:40em) { /* タブレット・PC */
	.btn_contact {
	width:520px;
	margin:0 auto;
	padding:50px 0 0;
}
}


/* ------------------------------------------------------------

   recommend

------------------------------------------------------------ */
.recommend {
	padding:30px 0 0px;
}

.ttl_recommend {
	font-weight:bold;
	display: flex;
    align-items: center;
    text-align: center; /* for no-flexbox browsers */
	margin-bottom:20px;
}
.ttl_recommend:before,
.ttl_recommend:after {
    border-top: 1px solid #222;
    content: "";
    display: inline; /* for IE */
    flex-grow: 1;
}
.ttl_recommend:before {
    margin-right:1em;
}
.ttl_recommend:after {
    margin-left:1em;
}



.recommend li {
	float:left;
	margin-bottom:20px;
	width:50%;
	padding:0 2%;
}
.recommend li .eye-comp {
	position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 66.666%;
    overflow: hidden;
}
.recommend li .eye-comp img {
	object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.recommend li .name {
	font-weight: bold;
	/*padding:5px 0 8px;*/
	font-size: 88%;
	padding-top: 5px;
}

@media screen and (max-width:40em) { /* スマホ */
	
}


@media screen and (min-width:40em) { /* タブレット・PC */
	.recommend {
	padding:80px 0 0px;
}
	.ttl_recommend {
	font-size:115%;
}
	.recommend li {
	width:300px;
	padding:0 10px;
}
	.recommend li .name {
	padding-top: 10px;
}
}





/* ------------------------------------------------------------

  ディスプレイ

------------------------------------------------------------ */
.cid14 .btn_contact {
    padding:30px 0;
}
.cid14 .dis_image img:nth-child(n+2) { /*最初以外の画像*/
    padding-top: 30px;
}
/* KTVハウジングお問い合わせボタン非表示　*/
.cid14.postid-8936 .btn_contact {
	display: none;
}
.cid14.postid-8936 .dis_image {
	padding-bottom: 30px;
}

@media screen and (min-width:40em) { /* タブレット・PC */
	.cid14 .dis_image {
	width:750px;
	margin:60px auto 0;	
}
/*横長画像の時
	.cid14.postid-6090 .dis_image {
	width:1000px;
}*/
	.cid14 .btn_contact {
    padding: 70px 0 0;
}
	.cid14 .dis_image img:nth-child(n+2) { /*最初以外の画像*/
    padding-top: 70px;
}
}


/* ------------------------------------------------------------

   掲載会社一覧

------------------------------------------------------------ */
.company_list_wrap {

}
.ttl_company_list {
	text-align:center;
	padding:30px 0;
	font-weight:bold;
}
.company_list_wrap .ttl_type {
	font-weight:bold;
	padding:10px 0;
	text-align:center;

}
.company_list_wrap .ttl_type dt {
	font-size:113%;
	display:inline-block;
}
.company_list_wrap .ttl_type dd {
	font-size:94%;
	display:inline-block;
}
.company_list {
	width:100%;
}
.company_list {
	margin-bottom:30px;
}
.company_list li {
	border-bottom:1px solid #ddd;
	position:relative;
	font-size:94%;
}
.company_list li:before {
	content:"";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 5px;
    border-color: transparent transparent transparent #3c459a;
    position: absolute;
    top: 50%;
    left: 10px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}
.company_list li a {
	display:table;
	width:100%;
	padding:15px 0 15px 25px;
}
.company_list li a:hover {
	background-color:#F6F7FF;
	opacity:1;
}

@media screen and (min-width:40em) { /* タブレット・PC */
	.ttl_company_list {
	font-size:180%;
	margin-bottom:50px;
	padding:0;
	font-weight:normal;
}
	.company_list_wrap {
	padding:80px 0 0;
}
	.company_list_wrap .ttl_type {
	margin-bottom:30px;
}
	.company_list_wrap .ttl_type dt {
	font-size:140%;
}
	.company_list_wrap .ttl_type dd {
	font-size:110%;
}
	.company_list.list_new {
	margin-bottom:80px;
}
	
	.company_list li {
	width:360px;
	float:left;
	margin-right:60px;
}
	.company_list li:nth-of-type(3n) {
	margin-right:0px;
}
	.company_list li:nth-of-type(1),
	.company_list li:nth-of-type(2),
	.company_list li:nth-of-type(3) {
	border-top:1px solid #ddd;
}
}


/* ------------------------------------------------------------

   新築・リフォーム

------------------------------------------------------------ */
.category_type {
	padding:10px 0 50px
}
.category_type .ttl dt {
	text-align:center;
	padding:10px 0;
	margin:0 0 20px;
}
.category_type .ttl dt img {
	width:90%;
}
.category_type .ttl dd {
	padding:0 10px 20px;
	font-size:88%;
}
.category_list {
	margin-bottom: 40px;
}
/*.category_list > li {
	display:table;
}*/
.category_list > li a {
	display:block;
	padding: 20px 15px;
	border-bottom:1px solid #ddd;
}
.category_list > li:nth-of-type(1) a {
	border-top:1px solid #ddd;
}
.category_list li a:hover {
	background-color:#F6F7FF;
	opacity: 1;
}
.category_list li a .tag-img {
	position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 66.666%;
    overflow: hidden;
	margin-top: 15px;
}
.category_list li a .tag-img img {
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.category_list li a:hover img {
	opacity: 1;
}
.category_list li .name {
	font-weight:bold;
	font-size:110%;
	padding-bottom: 3px;
}
.category_list li .lead {
	color: #3c459a;
	/*font-size:94%;*/
}
.category_list .pht {
	text-align:center;
	margin-top:15px;
	display: flex;
	justify-content: space-between;
}
.category_list .pht .caption {
	display:none;
}
.category_list .pht .thumbnail-item {
	margin-left:0;
	margin-right:0;
	width: 30%;
	/*display:inline;
	padding-left:2%;
	padding-right:2%;*/
}

.category_list .pht .thumbnail-item:nth-of-type(4),
.category_list .pht .thumbnail-item:nth-of-type(5) {
	display:none;
}
/*.category_list .pht li img {
	width:25% !important;
	height:auto;
}*/
.category_list li dl {
	/*padding-left:10px;*/
}

@media screen and (min-width:40em) { /* タブレット・PC */
	.category_type {
	padding:80px 0 0;
}
	.category_type .ttl dt {
	padding:20px 0;
	margin:0 0 40px;
}
	.category_type .ttl dt img {
	width:600px;
}
	.category_type .ttl dd {
	text-align:center;
	line-height:2;
	padding:0 0 50px;
	font-size:100%;
}
	.category_list {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #ddd;
	border-left: 1px solid #ddd;
}
	.category_list li {
	width: 50%;
}
	.category_list li a {
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	padding: 50px 70px;
}
	.category_list > li:nth-of-type(1) a {
    border-top: none;
}
	.category_list li .name {
	padding-bottom:10px;
	font-size: 138%;
}
	.category_list li .lead {
	font-size:100%;
	line-height: 1.8;
}
	.category_list li a .tag-img {
	margin-top: 20px;
	/*padding: 0 70px;
	max-width: 460px;*/
}
	.category_list .pht {
	padding-top:20px;
	font-size:0; /*横並びのスペース削除*/
	margin-top:0;
}
	.category_list .pht .thumbnail-item {
	/*width:200px !important;
	margin-left:0;
	margin-right:0;
	display:inline;
	padding-left:10px;
	padding-right:0px;*/
}
	.category_list li dl {
	vertical-align:middle;
	/*padding-left:68px;*/
}
}






/* ------------------------------------------------------------

   特集ページ　2018から

------------------------------------------------------------ */
.tokushu {
	padding-top:10px;
}
.tokushu .ttl_tokushu {
	padding-bottom:30px;
}
.tokushu .tokushu_img {
	padding:10px 10px 5px;
}
.tag_playful .category_list > li:last-of-type a {
	border-right:1px solid #ddd;
}
@media screen and (min-width:40em) { /* タブレット・PC */
	.tokushu {
	padding-top:80px;
}
	.tokushu .category_list li .lead {
    font-size: 120%;
}
	.tokushu .ttl_tokushu {
	padding-bottom:50px;
}
	.tokushu .tokushu_img {
	padding-top:30px;
	margin:0 auto;
	width:62%;
}
}



/* ------------------------------------------------------------

   本の紹介

------------------------------------------------------------ */

@media screen and (max-width:40em) { /* スマホ */
.book_wrap .sec {
	padding-top: 40px;
	padding-bottom: 40px;
	font-size: 15px;
}
/*ボタン*/
.book_wrap .btn {
	text-align: center;
	margin-top: 30px;
}
.book_wrap .btn a {
	color: #fff;
	font-weight: bold;
	font-size: 15px !important;
	line-height: 1.5;
	text-align: center;
	text-decoration: none;
	display: inline-block;
	border-radius: 100px;
	padding: 20px 80px;
	position: relative;
	transition: .2s;
	-webkit-backface-visibility: hidden;
    backface-visibility: hidden;
	background-color: #ff6600;
	box-shadow: 0 3px 0px #cf5300;
}
.book_wrap .btn a::before {
	position: absolute;
	content: "";
	display: block;
	right: 20px;
	top: 50%;
	margin-top: -6px;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 6px solid #fff;
}
.book_wrap .btn a:hover {
	/*transform: translateY(3px);*/
	opacity: .9;
}


/*00 メイン*/
.book_wrap .sec00 {
	padding-top: 30px;
	padding-bottom: 10px;
	position: relative;
	overflow: hidden;
}
.book_wrap .sec00::before {
    content: '';
    position: absolute;
    top: -35%;
    left: -50%;
    width: 200%;
    height: 50%;
    /*background-color: #e0efdb; */
    background-color: #dff1fd;
    -webkit-transform-origin: left center;
    -ms-transform-origin: left center;
    transform-origin: left center;
    -webkit-transform: rotate(24deg);
    -ms-transform: rotate(24deg);
    transform: rotate(24deg);
    z-index: -1;
}
.book_wrap .sec00::after {
	content: '';
    position: absolute;
    top: -5%;
    left: -50%;
    width: 200%;
    height: 60%;
    /*margin: 0% -25% 0;
    background-color: #c5e0bc;*/
    background-color: #a0d1f0;
    -webkit-transform-origin: right center;
    -ms-transform-origin: right center;
    transform-origin: right center;
    -webkit-transform: rotate(-24deg);
    -ms-transform: rotate(-24deg);
    transform: rotate(-24deg);
    z-index: -2;
}
.book_wrap .sec00 h2 {
	font-size: 30px;
	margin-bottom: 30px;
	text-align: center;
	line-height: 1.6;
	letter-spacing: .025em;
}
.book_wrap .sec00 h2 strong {
	background-color: #fff;
	color: #00468d;
	padding: 2px 5px;
}
.book_wrap .sec00 h2 strong .txts {
	font-size: 24px;
}
.book_wrap .sec00 .book-img {
	width: 65%;
	margin: 0 auto 20px;
	/*box-shadow: 0 0 5px rgba(0,0,0,.2);*/
}
.book_wrap .sec00 .book-img .add {
	text-align: right;
	font-size: .84em;
	padding-top: .5em;
}
.book_wrap .sec00 .free-icon {
	width: 50%;
	margin: 0 auto;
}

/*01 どんな本*/
.book_wrap .sec01 h2 {
	font-size: 21px;
	text-align: center;
	margin: 0 auto 15px;
	position: relative;
	background-image: url("../img/intro/line01.png");
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size:100%;
	padding-bottom: 50px;
}
.book_wrap .sec01 .lead01 {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.7;
	padding: 0 1em 2em;
}
.book_wrap .sec01 .lead01 strong {
	color: #3c459a;
}
/* .book_wrap .sec01 .flex {
	margin-bottom: 50px;
} */
.book_wrap .sec01 ul li {
	background-color: #dff1fd;
	font-weight: bold;
	font-size: 17px;
	padding: 1em 10px 1em 60px;
	margin-bottom: 25px;
	position: relative;
}
.book_wrap .sec01 ul li::before {
	position: absolute;
	color: #3c459a;
	font-size: 28px;
	font-family: 'Oswald', sans-serif;
	left: 15px;
	top: -.6em;
	border-bottom: 1px solid #3c459a;
}
.book_wrap .sec01 ul li:nth-of-type(1)::before { content: "01"; }
.book_wrap .sec01 ul li:nth-of-type(2)::before { content: "02"; }
.book_wrap .sec01 ul li:nth-of-type(3)::before { content: "03"; }
.book_wrap .sec01 .image {
	width: 75%;
	margin: 30px auto 0;
	position: relative;
}
.book_wrap .sec01 .present {
	padding: 10px;
	background-size: auto auto;
	background-color: rgba(255, 241, 0, 1);
	background-image: repeating-linear-gradient(135deg, transparent, transparent 12px, rgba(255, 255, 255, .7) 12px, rgba(255, 255, 255, .7) 15px );
}
.book_wrap .sec01 .present .pre-inner {
	background-color: #fff;
	padding: 20px;
}
.book_wrap .sec01 .present .pre-ttl {
	font-family: 'Oswald', sans-serif;
	font-size: 28px;
	letter-spacing: .1em;
	text-align: center;
	margin: -48px auto 20px;
	display: table;
	background-color: #fff;
	padding: 0 1em;
}
.book_wrap .sec01 .present .pre-lead {
	font-weight: bold;
	font-size: 18px;
	line-height: 1.7;
	text-align: center;
	color: #ee86a1;
}
.book_wrap .sec01 .present .txt {
	line-height: 1.7;
	padding-bottom: 10px;
}
.book_wrap .sec01 .present dl {
	margin: 15px 0 20px;
}
.book_wrap .sec01 .present dt {
	font-weight: bold;
	font-size: 24px;
	text-align: center;
	padding-bottom: 6px;
}
.book_wrap .sec01 .present dt span {
	font-size: 18px;
}
.book_wrap .sec01 .present dd {
	background-color: #000;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	display: table;
	border-radius: 100px;
	padding: 4px 15px 4px 20px;
	margin: 0 auto;
}
.book_wrap .sec01 .present table th {
	display: block;
	margin-top: 10px;
}
.book_wrap .sec01 .present table th span {
	background-color: #eee;
	display: block;
	text-align: left;
	padding: 5px 10px;
}
.book_wrap .sec01 .present table td {
	display: block;
	padding: 5px 10px;
}


/*02 誌面説明*/
.book_wrap .sec02 {
	background-color: #f5f5f5;
}
.book_wrap .sec02 h2 {
	font-size: 21px;
	text-align: center;
	background-color: #fff;
	border-radius: 100px;
	padding: 15px 30px;
	display: table;
	margin: 0 auto 25px;
	position: relative;
}
.book_wrap .sec02 h2::before {
	content: "";
	position: absolute;
	top: -10px;
	left: 0;
	width: 20px;
	height: 20px;
	background-image: url("../img/intro/ttl02.png");
	background-repeat: no-repeat;
	background-size: 100%;
}
.book_wrap .sec02 h2::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -9px;
  border: 9px solid transparent;
  border-top: 9px solid #fff;
}
.book_wrap .sec02 .point-color {
	font-weight: bold;
	font-size: 15px;
	text-align: center;
	display: table;
	margin: 0 auto 20px;
	border-bottom: 4px double #000;
	padding: 0 .5em 5px;	
}
.book_wrap .sec02 .shimen {
	margin-bottom: 25px;
}
.book_wrap .sec02 ul {
	width: 96%;
	margin: 0 auto;
}
.book_wrap .sec02 li:not(:last-of-type) {
	margin-bottom: 20px;
}
.book_wrap .sec02 li dl {
	box-shadow: 0 0 5px rgba(0,0,0,.2);
}
.book_wrap .sec02 li dt {
	background-color: #6fba2c;
	color: #fff;
	border-radius: 3px 3px 0 0;
	padding: 10px 15px;
	font-weight: bold;
	font-size: 16px;
}
.book_wrap .sec02 li dt .num {
	font-size: 13px;
	margin-right: 1em;
	border-right: 1px solid rgba(255,255,255,.5);
	padding-right: 1em;
	font-family: 'Oswald', sans-serif;
	letter-spacing: .05em;
}
.book_wrap .sec02 li dt .num strong {
	font-size: 18px;
}
.book_wrap .sec02 li dd {
	background-color: #fff;
	border-radius: 0 0 3px 3px;
	padding: 15px 15px;
	font-size: 15px;
	line-height: 1.7;
}
.book_wrap .sec02 .hensyu {
	margin-top: 30px;
	text-align: center;
}
.book_wrap .sec02 .hensyu span {
	color: #3c459a;
	font-weight: bold;
	font-size: 18px;
	background-color: #fff;
	padding: 2px 5px;
	display: inline-block;
	margin-bottom: 8px;
}
.book_wrap .sec02 .hensyu span:last-of-type {
	margin-bottom: 0px;
}


/*03 読者の声*/
.book_wrap .sec03 {
	background-color: #faf5ec;
	margin-bottom: 40px;
}
.book_wrap .sec03 h2 {
	text-align: center;
	font-size: 21px;
	margin: 0 auto 20px;
	background-image: url("../img/intro/ttl03-l.png"),url("../img/intro/ttl03-r.png");
	background-repeat: no-repeat,no-repeat;
	background-position: left center,right center;
	background-size: auto 80%,auto 80%;
	padding: 0 2em;
	display: table;
}
.book_wrap .sec03 ul {
	width: 70%;
	margin: 0 auto;
}
.book_wrap .sec03 ul li:not(:last-of-type) {
	margin-bottom: 20px;
}
}


@media screen and (min-width:40em) { /* タブレット・PC */
	html {
	overflow: auto;
	}
	body {
	overflow: hidden;
	}
	.book_wrap .sec {
	padding-top: 70px;
	padding-bottom: 70px;
	font-size: 16px;
}
/*ボタン*/
	.book_wrap .btn {
	text-align: center;
	margin-top: 60px;
}
	.book_wrap .btn a {
	color: #fff;
	font-weight: bold;
	font-size: 26px !important;
	line-height: 1.5;
	text-align: center;
	text-decoration: none;
	display: inline-block;
	border-radius: 100px;
	padding: 20px 120px;
	position: relative;
	transition: .2s;
	-webkit-backface-visibility: hidden;
    backface-visibility: hidden;
	background-color: #ff6600;
	box-shadow: 0 4px 0px #cf5300;
}
	.book_wrap .btn a::before {
	position: absolute;
	content: "";
	display: block;
	right: 30px;
	top: 50%;
	margin-top: -8px;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 8px solid #fff;
}
	.book_wrap .btn a:hover {
	transform: translateY(3px);
	opacity: .9;
}


/*00 メイン*/
	.book_wrap .sec00 {
	padding-top: 70px;
	position: relative;
	/*overflow: hidden;*/
}
	.book_wrap .sec00::before {
    content: '';
    position: absolute;
    top: -22%;
    left: -50%;
    width: 200%;
    height: 100%;
    /*background-color: #e0efdb; */
    background-color: #dff1fd;
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(-5deg);
    -ms-transform: rotate(-5deg);
    transform: rotate(-5deg);
    z-index: -1;
}
	.book_wrap .sec00::after {
	content: '';
    position: absolute;
    top: -22%;
    left: -50%;
    width: 200%;
    height: 100%;
    /*background-color: #c5e0bc; */
    background-color: #a0d1f0;
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(5deg);
    -ms-transform: rotate(5deg);
    transform: rotate(5deg);
    z-index: -2;
}
	.book_wrap .sec00 h2 {
	font-size: 60px;
	margin-bottom: 30px;
	margin-left: 50px;
	line-height: 1.5;
	letter-spacing: .025em;
	width: 650px;
	float: left;
}
	.book_wrap .sec00 h2 strong {
	background-color: #fff;
	/*color: #61ac22; */
    color: #00468d;
	padding: 5px 15px;
	margin-left: -15px;
}
	.book_wrap .sec00 h2 strong .txts {
	font-size: 48px;
}
	.book_wrap .sec00 .book-img {
	width: 370px;
	/*box-shadow: 0 0 10px rgba(142,152,139,.6);*/
	float: right;
	margin-right: 70px;
}
	.book_wrap .sec00 .book-img .add {
	text-align: right;
	font-size: .84em;
	padding-top: .5em;
}
	.book_wrap .sec00 .free-icon {
	width: 245px;
	float: left;
	margin-left: 20px;
}
	.book_wrap .sec00 .btn {
	float: left;
	margin-top: 35px;
	margin-left: 35px;
}
	.book_wrap .sec00 .btn a {
	padding: 20px 80px;
}

/*01 どんな本*/
	.book_wrap .sec01 {
	padding-top: 0;
}
	.book_wrap .sec01 h2 {
	font-size: 40px;
	text-align: center;
	padding-bottom: 80px;
	margin: 0 auto 40px;
	position: relative;
	background-image: url("../img/intro/line01.png");
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 760px;
}
	.book_wrap .sec01 .lead01 {
	font-size: 25px;
	font-weight: bold;
	line-height: 1.8;
	text-align: center;
	padding: 0 1em 2em;
}
	.book_wrap .sec01 .lead01 strong {
	color: #3c459a;
}
	.book_wrap .sec01 .flex {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	margin-bottom: 80px;
}
	.book_wrap .sec01 ul {
	width: 560px;
	padding-top: 40px;
}
	.book_wrap .sec01 ul li {
	background-color: #dff1fd;
	font-weight: bold;
	font-size: 22px;
	padding: 25px 25px 25px 110px;
	position: relative;
}
	.book_wrap .sec01 ul li:not(:last-of-type) {
	margin-bottom: 40px;
}
	.book_wrap .sec01 ul li::before {
	position: absolute;
	color: #3c459a;
	font-size: 50px;
	letter-spacing: .1em;
	font-family: 'Oswald', sans-serif;
	left: 25px;
	top: -.6em;
	border-bottom: 1px solid #3c459a;
}
	.book_wrap .sec01 ul li:nth-of-type(1)::before { content: "01"; }
	.book_wrap .sec01 ul li:nth-of-type(2)::before { content: "02"; }
	.book_wrap .sec01 ul li:nth-of-type(3)::before { content: "03"; }
	.book_wrap .sec01 .image {
	width: 540px;
	position: relative;
}
	.book_wrap .sec01 .image::after {
	position: absolute;
	content: "";
	top: -100px;
	left: -100px;
	background-color: #dff1fd;
	width: 200px;
	height: 200px;
	z-index: -1;
}
	.book_wrap .sec01 .present {
	padding: 15px;
	background-size: auto auto;
	background-color: rgba(255, 241, 0, 1);
	background-image: repeating-linear-gradient(135deg, transparent, transparent 12px, rgba(255, 255, 255, .7) 12px, rgba(255, 255, 255, .7) 15px );
	width: 1000px;
	margin: 0 auto;
}
	.book_wrap .sec01 .present .pre-inner {
	background-color: #fff;
	padding: 50px 60px;
}
	.book_wrap .sec01 .present .pre-ttl {
	font-family: 'Oswald', sans-serif;
	font-size: 40px;
	letter-spacing: .1em;
	text-align: center;
	margin: -87px auto 0px;
	display: table;
	background-color: #fff;
	padding: 0 1em;
}
	.book_wrap .sec01 .present .pre-lead {
	font-weight: bold;
	font-size: 24px;
	line-height: 1.7;
	text-align: center;
	color: #ee86a1;
	margin-top: 30px;
}
	.book_wrap .sec01 .present dl {
	margin: 15px 0 30px;
}
	.book_wrap .sec01 .present dt {
	font-weight: bold;
	font-size: 30px;
	text-align: center;
	padding-bottom: 5px;
}
	.book_wrap .sec01 .present dt span {
	font-size: 24px;
}
	.book_wrap .sec01 .present dd {
	background-color: #000;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	display: table;
	border-radius: 100px;
	padding: 4px 15px 4px 20px;
	margin: 0 auto;
}
	.book_wrap .sec01 .present .txt {
	text-align: center;
	line-height: 1.8;
	padding-bottom: 30px;
}
	.book_wrap .sec01 .present table {
	margin: 0 auto;
	border-top: 1px solid #eee;
}
	.book_wrap .sec01 .present table th {
	margin-top: 10px;
}
	.book_wrap .sec01 .present table th span {
	background-color: #eee;
	display: block;
	text-align: center;
	padding: .5em 2em;
}
	.book_wrap .sec01 .present table tr:first-of-type th span {
	margin-top: 30px;
	margin-bottom: 15px;
}
	.book_wrap .sec01 .present table td {
	padding: .5em 1em .5em 2em;
	line-height: 1.8;
	/*border-top: 1px solid #eee;*/
}


/*02 誌面説明*/
	.book_wrap .sec02 {
	background-color: #f5f5f5;
	padding-top: 90px;
}
	.book_wrap .sec02 h2 {
	font-size: 38px;
	text-align: center;
	background-color: #fff;
	border-radius: 100px;
	padding: 20px 50px;
	display: table;
	margin: 0 auto 55px;
	position: relative;
}
	.book_wrap .sec02 h2::before {
	content: "";
	position: absolute;
	top: -40px;
	left: -20px;
	width: 41px;
	height: 41px;
	background-image: url("../img/intro/ttl02.png");
	background-repeat: no-repeat;
	background-size: 100%;
}
	.book_wrap .sec02 h2::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #fff;
}
	.book_wrap .sec02 .point-color {
	font-weight: bold;
	font-size: 24px;
	margin: 0 auto 40px;
	text-align: center;
	width: 600px;
	background-image: url("../img/intro/border02.png");
	background-repeat: repeat-x;
	background-position: center;
}
	.book_wrap .sec02 .point-color span {
	padding: 0 1em;
	background-color: #f5f5f5;
}
	.book_wrap .sec02 .shimen-wrap {
	position: relative;
}
	.book_wrap .sec02 .shimen {
	width: 675px;
	margin: 0 auto 50px;
}
	.book_wrap .sec02 li {
	position: absolute;
	width: 260px;
}
	.book_wrap .sec02 li:nth-of-type(1) {
	top: 0px;
	left: 940px;
}
	.book_wrap .sec02 li:nth-of-type(2) {
	top: 160px;
	left: 940px;
}
	.book_wrap .sec02 li:nth-of-type(3) {
	top: 0px;
	left: 0px;
}
	.book_wrap .sec02 li:nth-of-type(4) {
	top: 185px;
	left: 0px;
}
	.book_wrap .sec02 li:nth-of-type(5) {
	top: 320px;
	left: 940px;
}
	.book_wrap .sec02 li:nth-of-type(6) {
	top: 340px;
	left: 0px;
}

	.book_wrap .sec02 li dl {
	box-shadow: 0 0 5px rgba(0,0,0,.2);
}
	.book_wrap .sec02 li dt {
	background-color: #6fba2c;
	color: #fff;
	border-radius: 3px 3px 0 0;
	padding: 10px 15px;
	font-weight: bold;
	font-size: 19px;
}
	.book_wrap .sec02 li dt .num {
	display: none;
}
	.book_wrap .sec02 li dd {
	background-color: #fff;
	border-radius: 0 0 3px 3px;
	padding: 10px 15px;
	font-size: 17px;
	line-height: 1.5;
}
	.book_wrap .sec02 .hensyu {
	margin-top: 30px;
	text-align: center;
}
	.book_wrap .sec02 .hensyu span {
	color: #3c459a;
	font-weight: bold;
	font-size: 30px;
	background-color: #fff;
	padding: 2px 5px;
	display: table;
	margin: 0 auto 15px;
}
	.book_wrap .sec02 .hensyu span:last-of-type {
	margin-bottom: 0px;
}


/*03 読者の声*/
	.book_wrap .sec03 {
	position: relative;
	background-color: #faf5ec;
	padding-top: 90px;
}
	.book_wrap .sec03 h2 {
	text-align: center;
	font-size: 36px;
	margin: 0 auto 60px;
	background-image: url("../img/intro/ttl03-l.png"),url("../img/intro/ttl03-r.png");
	background-repeat: no-repeat,no-repeat;
	background-position: left center,right center;
	background-size: auto 80%,auto 80%;
	padding: 0 2em;
	display: table;
}
	.book_wrap .sec03 ul {
	width: 100%;
	margin: 0 auto;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
	.book_wrap .sec03 ul li {
	width: 346px;
}
	.book_wrap .sec03 ul li:nth-of-type(n+4) {
	margin-top: 50px;
}
	.book_wrap .sec03 ul li:nth-of-type(1) {
	margin-right: 50px;
}
	.book_wrap .sec03 ul li:nth-of-type(3) {
	margin-left: 50px;
}
	.book_wrap .sec03 ul li:nth-of-type(4) {
	margin-right: 25px;
}
	.book_wrap .sec03 ul li:nth-of-type(5) {
	margin-left: 25px;
}
	.book_wrap .p03 {
	position: absolute;
}
	.book_wrap .p031 {
	background: url("../img/intro/031.jpg") no-repeat;
	width: 430px;
	height: 287px;
	top: 0%;
	left: 50%;
	transform: translateX(-900px) translateY(-150px);
}
	.book_wrap .p032 {
	background: url("../img/intro/032.jpg") no-repeat;
	width: 280px;
	height: 373px;
	bottom: 0%;
	left: 50%;
	transform: translateX(470px) translateY(30px);
}
}




/* ------------------------------------------------------------

   個別記載

------------------------------------------------------------ */
/*　i-planningの担当者の声削除　*/
.postid-828 .voice {
	display:none;
}







/* ------------------------------------------------------------

   検索結果・タグの会社一覧

------------------------------------------------------------ */
.ttl-serchresult {
	font-weight: bold;
	font-size: 16px;
	margin-bottom: 15px;
	padding-left: 10px;
	border-left: 5px solid #3c459a;
}
/*.ttl-serchresult strong {
	background: linear-gradient(transparent 60%,#dbdef9 60%);
	padding-bottom: 5px;
}*/
.search-results .result-list li {

}
.search-results .result-list li a {
	display: block;
}

@media screen and (max-width:40em) { /*スマホ*/
	.search-results .check-please {
	text-align: center;
	font-weight: bold;
	font-size: 16px;
	display: inline-block;
	background-color: #ffd4d1;
	padding: 10px 15px;
}
	.search-results .search-wrap {
	margin-top: 20px;
}
	.ttl-serchresult {
	margin: 10px 0 25px;
}
	.search-results .result-list li a {

}
}

@media screen and (min-width:40em) { /*PC*/
	.ttl-serchresult {
	margin: 50px 0 50px;
	font-size: 20px;
	padding: 0 0 0 20px;
	border-left: 5px solid #3c459a;
}
	.search-results .check-please {
	text-align: center;
	font-weight: bold;
	font-size: 16px;
	display: table;
	background-color: #ffd4d1;
	padding: 10px 15px;
	margin: 60px auto 0;
}
	.search-results .search-wrap {
	margin: 60px auto 40px;
	float: none;
}
}



/* 本の紹介ページ　プレゼント修正　2021.11
----------------------------------------------------*/
.book_wrap .sec01 .present + .btn {
	padding-bottom: 30px;
}
.book_wrap .sec01 {
	padding-bottom: 0;
}
.book_wrap .pre-fix {
	background-image: url("../img/pre-bg.gif");
	background-repeat: repeat;
	padding-top: 50px;
	padding-bottom: 30px;
	margin-top: 60px;
}
.book_wrap .pre-fix h2 {
	background-image: none;
	margin-bottom: 0;
	padding-bottom: 30px;
	max-width: 970px;
}

/*応募方法*/
.book_wrap .pre-fix .flex {
	margin-bottom: 20px;
}
.book_wrap .pre-fix .method {
	border: 3px solid #3c459a;
	background-color: #fff;
}
.book_wrap .pre-fix .ttl-method {
	background-color: #3c459a;
	text-align: center;
	padding: 10px 0;
	font-size:0;
	line-height: 1;
}
.book_wrap .method1 .ttl-method img {
	width: 280px;
}
.book_wrap .method2 .ttl-method img {
	width: 280px;
}
.book_wrap .pre-fix .method ol {
	padding: 15px;
}
.book_wrap .pre-fix .method ol li h3 {
	color: #3c459a;
	font-weight: bold;
	font-size: 18px;
	padding-left: 40px;
	position: relative;
}
.book_wrap .pre-fix .method ol li h3 img {
	width: 30px;
	position: absolute;
	left: 0;
}
.book_wrap .pre-fix .method ol li p {
	padding-left: 40px;
	padding-top: 10px;
}
.book_wrap .pre-fix .method ol li:first-of-type {
	position: relative;
	margin-bottom: 30px;
}
.book_wrap .pre-fix .method ol li:first-of-type::after {
	position: absolute;
	content: "";
	display: block;
	border-top: 10px solid #d8daeb;
	border-right: 10px solid transparent;
	border-left: 10px solid transparent;
	left: calc(50% - 5px);
	top: calc(100% + 15px);
}
.book_wrap .pre-fix .method2 ol li:first-of-type::after {
	top: calc(100% + 10px);
}
.book_wrap .pre-fix .method ol li .btn {
	margin-top: 10px;
}
.book_wrap .pre-fix .method ol li .btn a {
    padding: 10px 60px;
}
.book_wrap .pre-fix .method1 {
	margin-bottom: 20px;
}

/*プレゼント内容*/
.book_wrap .pre-fix .naiyo {
	border: 3px solid #3c459a;
	background-color: #fff;
	padding: 5px;
	position: relative;
}
.book_wrap .pre-fix .naiyo-inner {
	border: 1px solid #3c459a;
	position: relative;
	padding: 15px;
}
.book_wrap .pre-fix .naiyo::before,
.book_wrap .pre-fix .naiyo::after,
.book_wrap .pre-fix .naiyo-inner::before,
.book_wrap .pre-fix .naiyo-inner::after {
	position: absolute;
	display: inline-block;
	content: "";
	background-color: #3c459a;
	width: 2px;
	height: 40px;
}
.book_wrap .pre-fix .naiyo::before {
	transform: rotate(45deg);
	left: 12px;
	top: -8px;
}
.book_wrap .pre-fix .naiyo::after {
	transform: rotate(-45deg);
	right: 12px;
	top: -8px;
}
.book_wrap .pre-fix .naiyo-inner::before {
	transform: rotate(135deg);
	left: 7px;
	bottom: -14px;
}
.book_wrap .pre-fix .naiyo-inner::after {
	transform: rotate(-135deg);
	right: 7px;
	bottom: -14px;
}
/*.book_wrap .pre-fix .takarakuji {
	padding-top: 20px;
	position: relative;
}
.book_wrap .pre-fix .takarakuji .takarakuji-img {
	position: absolute;
	width: 25%;
	right: -30px;
	bottom: 15%;
}*/



@media screen and (min-width:40em) { /* タブレット・PC */
.book_wrap .sec01 .present + .btn {
	padding-bottom: 60px;
}
	.book_wrap .pre-fix {
	padding-top: 50px;
	padding-bottom: 80px;
}
	.book_wrap .pre-fix h2 {
	padding-bottom: 40px;
}

/*応募方法*/
	.book_wrap .pre-fix .flex {
	flex-direction:row;
	justify-content: space-between;
	width: 950px;
	margin-bottom: 60px;
	margin-left: auto;
	margin-right: auto;
}
	.book_wrap .pre-fix .method {
	width: 450px;
}
	.book_wrap .pre-fix .ttl-method {
	padding: 15px 0;
}
	.book_wrap .method1 .ttl-method img {
	width: 335px;
}
	.book_wrap .method2 .ttl-method img {
	width: 374px;
}
	.book_wrap .pre-fix .method ol {
	padding: 30px;
}
	.book_wrap .pre-fix .method ol li h3 {
	font-size: 22px;
	padding-left: 45px;
	position: relative;
}
	.book_wrap .pre-fix .method ol li h3 img {
	width: 35px;
}
	.book_wrap .pre-fix .method ol li p {
	padding-left: 50px;
}
	.book_wrap .pre-fix .method ol li:first-of-type {
	position: relative;
	margin-bottom: 30px;
}
	.book_wrap .pre-fix .method ol li .btn {
	margin-top: 15px;
}
	.book_wrap .pre-fix .method ol li .btn a {
    padding: 10px 60px;
	font-size: 17px!important;
}
	.book_wrap .pre-fix .method1 {
	margin-bottom: 0;
}
/* 資料請求が表示されない間　*/
	.book_wrap .pre-fix .method1.only {
	width: 100%;
}

/*プレゼント内容*/
	.book_wrap .pre-fix .naiyo {
	padding: 9px;
	width: 950px;
	margin: 0 auto;
}
	.book_wrap .pre-fix .naiyo-inner {
	border: 2px solid #3c459a;
	padding: 50px;
}
	.book_wrap .pre-fix .naiyo::before,
	.book_wrap .pre-fix .naiyo::after,
	.book_wrap .pre-fix .naiyo-inner::before,
	.book_wrap .pre-fix .naiyo-inner::after {
	height: 80px;
}
	.book_wrap .pre-fix .naiyo::before {
	left: 25px;
	top: -13px;
}
	.book_wrap .pre-fix .naiyo::after {
	right: 25px;
	top: -13px;
}
	.book_wrap .pre-fix .naiyo-inner::before {
	left: 15px;
	bottom: -24px;
}
	.book_wrap .pre-fix .naiyo-inner::after {
	right: 15px;
	bottom: -24px;
}
	.book_wrap .pre-fix .shohinken {
	width: 688px;
	margin: 0 auto;
}
/*	.book_wrap .pre-fix .takarakuji {
	width: 674px;
	margin-left: 180px;
	padding-top: 30px;
}*/
}



/* 本の紹介ページ　キャンペーン修正　2023.07
----------------------------------------------------*/
.book_wrap .sarani {
	font-weight: bold;
	display: table;
	margin: .5em auto;
	font-size: 20px;
	background-image: radial-gradient(circle at center, #de6353 20%, transparent 20%); /* 点の色とサイズ調整 */
	background-position: top right; /* 点の位置 */
	background-repeat: repeat-x; /* 横方向に繰り返し */
	background-size: 1em 0.3em; /* 点の間隔とサイズ調整 */
	padding-top: .4em; /* 縦方向の位置調整 */
}
.book_wrap .camp-2023 {
	background-color: #fff;
	position: relative;
	max-width: 1080px;
	margin: auto;
}
.book_wrap .camp-2023::after {
	position: absolute;
	content: "";
	display: block;
	pointer-events: none;
	width: 100%;
	height: 100%;
	border: 2px solid #de6353;
	top: 3px;
	left: 3px;
}
.book_wrap .camp-2023-inner {
	position: relative;
	padding: 30px 15px;
}
.book_wrap .camp-2023-inner::before,
.book_wrap .camp-2023-inner::after {
	position: absolute;
	content: "";
	display: block;
	z-index: 1;
}
.book_wrap .camp-2023-inner::before {
	border-bottom: 30px solid transparent;
	border-left: 30px solid #de6353;
	left: 0;
	top: 0;
}
.book_wrap .camp-2023-inner::after {
	border-top: 30px solid transparent;
	border-right: 30px solid #de6353;
	right: -5px;
	bottom: -5px;
}
.book_wrap .lead-camp {
	font-weight: bold;
	font-size: 18px;
	line-height: 1.4;
	text-align: center;
}
.book_wrap .lead-camp strong {
	font-weight: bold;
	font-size: 24px;
	color: #de6353;
}
.book_wrap .camp-pht {
	margin: 20px auto;
}
.book_wrap .camp-pht .cap {
	text-align: right;
	font-size: 12px;
	padding-top: 6px;
}
.book_wrap .ttl-oubo {
	text-align: center;
	font-weight: bold;
	font-size: 18px;
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	column-gap: 1em;
	align-items: center;
	margin-bottom: 1em;
}
.book_wrap .ttl-oubo::before,
.book_wrap .ttl-oubo::after {
	min-width: 1em;
	height: 4px;
	content: "";
	border-top: 2px solid #333;
	border-bottom: 2px solid #333;
}
.book_wrap .oubo-shosai {
	display: grid;
	grid-template-columns: 5em 1fr;
	align-items: start;
	gap: 1em;
}
.book_wrap .oubo-shosai dt {
	background-color: #de6353;
	color: #fff;
	font-weight: bold;
	border-radius: 3px;
	text-align: center;
	padding: 2px;
}
.book_wrap .oubo-shosai dd {
	font-weight: bold;
}
.book_wrap .oubo-shosai dd ol {
	margin-top: .5em;
	font-weight: normal;
}
.book_wrap .oubo-shosai dd li {
	padding-left: 1em;
	text-indent: -1em;
	font-size: 12px;
}

@media screen and (min-width:40em) {
	.book_wrap .sarani {
	font-size: 28px;
	margin: 1em auto .75em;
}
	.book_wrap .camp-2023::after {
	border: 3px solid #de6353;
	top: 15px;
	left: 15px;
}
	.book_wrap .camp-2023-inner {
	position: relative;
	width: 888px;
	margin: auto;
	padding: 80px 0 70px;
}
	.book_wrap .camp-2023-inner::before {
	border-bottom: 70px solid transparent;
	border-left: 70px solid #de6353;
	left: -96px;
}
	.book_wrap .camp-2023-inner::after {
	border-top: 70px solid transparent;
	border-right: 70px solid #de6353;
	right: -116px;
	bottom: -20px;
}
	.book_wrap .lead-camp {
	font-size: 25px;
	line-height: 1.5;
}
	.book_wrap .lead-camp strong {
	font-size: 30px;
}
	.book_wrap .camp-pht {
	margin: 30px auto;
	width: 700px;
}
	.book_wrap .camp-pht .cap {
	padding-top: 8px;
}
	.book_wrap .ttl-oubo {
	font-size: 20px;
	display: grid;
}
.book_wrap .oubo-shosai {
	display: grid;
	grid-template-columns: 6em 1fr;
	align-items: start;
	gap: 1.5em;
	width: fit-content;
	margin: auto;
}
	.book_wrap .oubo-shosai dt {
	font-size: 18px;
	padding: 5px;
}
	.book_wrap .oubo-shosai dd {
	font-size: 18px;
	padding-top: 6px;
}
	.book_wrap .oubo-shosai dd li {
	font-size: 14px;
	padding-top: 2px;
}
}



/* 本の紹介ページ　ホテルランチチケット　2025.05
----------------------------------------------------*/
.book_wrap .hotelpre {
	margin-bottom: 20px;
}
.book_wrap .hotelpre h2 {
	margin: auto;
}
/*囲み*/
.book_wrap .hotelpre .naiyo {
	border: 3px solid #00a6cb;
	background-color: #fff;
	padding: 5px;
	position: relative;
}
.book_wrap .hotelpre .naiyo-inner {
	border: 1px solid #00a6cb;
	position: relative;
	padding: 20px 15px;
}
.book_wrap .hotelpre .naiyo::before,
.book_wrap .hotelpre .naiyo::after,
.book_wrap .hotelpre .naiyo-inner::before,
.book_wrap .hotelpre .naiyo-inner::after {
	position: absolute;
	display: inline-block;
	content: "";
	background-color: #00a6cb;
	width: 2px;
	height: 40px;
}
.book_wrap .hotelpre .naiyo::before {
	transform: rotate(45deg);
	left: 12px;
	top: -8px;
}
.book_wrap .hotelpre .naiyo::after {
	transform: rotate(-45deg);
	right: 12px;
	top: -8px;
}
.book_wrap .hotelpre .naiyo-inner::before {
	transform: rotate(135deg);
	left: 7px;
	bottom: -14px;
}
.book_wrap .hotelpre .naiyo-inner::after {
	transform: rotate(-135deg);
	right: 7px;
	bottom: -14px;
}
/* 見出し */
.book_wrap .hotelpre h2 {
	text-align: center;
	background-color: #00a6cb;
	color: #fff;
	font-weight: bold;
	font-size: 18px;
	position: relative;
	padding: .5em;
	margin-bottom: 1em;
	height: 56px;
	line-height: 20px;
}
.book_wrap .hotelpre h2::before,
.book_wrap .hotelpre h2::after {
	position: absolute;
	content: "";
	display: block;
	width:0;
	height:0;
	top: 0;
	border-style:solid;
}
.book_wrap .hotelpre h2::before {
	left: 0;
	border-width: 28px 0 28px 12px;
	border-color: transparent transparent transparent #FFFFFF;
}
.book_wrap .hotelpre h2::after {
	right: 0;
	border-width: 28px 12px 28px 0;
	border-color: transparent #FFFFFF transparent transparent;
}

.book_wrap .hotelpre .pre-ttl {
	margin: 1em auto;
}
.book_wrap .hotelpre .pre-ttl p {
	font-weight: bold;
	font-size: 15px;
	padding-bottom: .2em;
	text-align: center;
}
.book_wrap .hotelpre .pre-ttl h3 {
	font-size: 20px;
	text-align: center;
}
.book_wrap .hotelpre .pre-ttl h3 strong {
	color: #00a6cb;
}

/* 写真 */
.book_wrap .hotelpre .pre-pht {
	margin-bottom: 20px;
}
.book_wrap .hotelpre .pre-pht .cap {
	text-align:right;
	font-size:.8em;
	padding-top:.5em;
}
.book_wrap .hotelpre .pre-pht + .txtwrap p {
	line-height: 1.7;
}
.book_wrap .hotelpre .close {
	border-top: 1px solid #333;
	border-bottom: 1px solid #333;
	text-align: center;
	font-weight: bold;
	padding: .4em 0;
	margin: 1.25em 0;
}
/* ランチ詳細 */
.book_wrap .hotelpre .lunch-title {
    font-weight: bold;
    font-size: 1.1em;
	color: #00a6cb;
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	column-gap: 1em;
	align-items: center;
}
.book_wrap .hotelpre .lunch-title::before,
.book_wrap .hotelpre .lunch-title::after {
	min-width: 1em;
	height: 4px;
	content: "";
	border-top: 2px solid #00a6cb;
}
.book_wrap .hotelpre .lunch-price {
	text-align: center;
	font-size: 0.9em;
	font-weight: bold;
	margin-bottom: 1em;
}
.book_wrap .hotelpre .lunch-menu {
	margin: 1em 0;
	line-height: 1.7;
}
.book_wrap .hotelpre .lunch-menu-title {
	background-color: #00a6cb;
	color: #fff;
	font-size: .8em;
	font-weight: bold;
	border-radius: 5px;
	padding: .3em 1em;
	margin-bottom: 0.5em;
	width: fit-content;
}
.book_wrap .hotelpre .lunch-menu span {
	color: #00a6cb;
}
.book_wrap .hotelpre .lunch-list {
	font-size: 0.9em;
}
.book_wrap .hotelpre .lunch-list li {
    padding-left: 1em;
    text-indent: -1em;
}
.book_wrap .hotelpre .lunch-table {
	border-top: 1px solid #ddd;
	/*margin-bottom: 1.5em;*/
	width: 100%;
	margin: 1.5em auto!important;
}
.book_wrap .hotelpre .lunch-table tr {
	border-bottom: 1px solid #ddd;
}
.book_wrap .hotelpre .lunch-table th,
.book_wrap .hotelpre .lunch-table td {
	padding: 0.75em;
	font-size: 0.9em;
	border-right: 1px solid #ddd;
	border-left: 1px solid #ddd;
}
.book_wrap .hotelpre .lunch-table th {
	background-color: #f3f8fb;
	width: 25%;
	vertical-align: middle;
	font-weight: normal;
}

.book_wrap .hotelpre dl {
	margin-bottom: 1em;
	text-align: center;
}
.book_wrap .hotelpre dt {
	font-weight: bold;
	font-size: 1.1em;
	padding-bottom: .25em;
}
.book_wrap .hotelpre dd a {
	color: #00a6cb;
	text-decoration: underline;
	word-break: break-all;
}

/* 表 */
.book_wrap .hotelpre .chusen-data {
	width: 100%;
}
.book_wrap .hotelpre .chusen-data th,
.book_wrap .hotelpre .chusen-data td {
	display: block;
	text-align: left;
	margin-top: 1em;
}
.book_wrap .hotelpre .chusen-data th {
	margin-bottom: .5em;
}
.book_wrap .hotelpre .chusen-data th span {
	background-color: #00a6cb;
	color: #fff;
	font-size: .9em;
	font-weight: bold;
	border-radius: 5px;
	display: inline-block;
	padding: .5em 1em;
}
.book_wrap .hotelpre .chusen-data td ol li {
	padding-left: 1em;
	text-indent: -1em;
}

/* ボタン */
.book_wrap .hotelpre .btn {
	margin-top: 20px;
	margin-bottom: 10px;
}
.book_wrap .hotelpre .btn a {
	padding: 20px 50px;
}
/* ハロウィンジャンボ宝くじ */
.book_wrap .hotelpre .takarakuji {
	margin-bottom: 35px;
	padding-bottom: 35px;
	border-bottom: 2px dotted #ccc;
}
.book_wrap .hotelpre .takarakuji-only {
	margin-top: 0;
	padding-top: 0;
	border-top: none;
}
.book_wrap .hotelpre .takarakuji h2 {
	background-color: #ff6e00;
}
.book_wrap .hotelpre .takarakuji h3 {
	font-size: 16px;
	margin-bottom: 1em;
	text-align: center;
}
.book_wrap .hotelpre .takarakuji h3 strong {
	font-size: 22px;
	color: #ff6e00;
	display: inline-block;
}
.book_wrap .hotelpre .takarakuji .date {
	background-color: #f3e9f8;
	padding: 1em;
}
.book_wrap .hotelpre .takarakuji .date dt {
	background-color: #724e85;
	color: #fff;
	font-size: .9em;
	width: fit-content;
	border-radius: 5px;
    padding: .5em 1em;
	margin: 0 auto .75em;
}
.book_wrap .hotelpre .takarakuji .date dd {
	color: #724e85;
	font-weight: bold;
	font-size: 16px;
}
.book_wrap .hotelpre .takarakuji .kuji-img {
	width: 50%;
	margin: auto;
}
.book_wrap .hotelpre .takarakuji th span {
	background-color: #724e85;
}

@media screen and (min-width:40em) {
	.book_wrap .hotelpre {
	margin-bottom: 60px;
}
/*囲み*/
	.book_wrap .hotelpre .naiyo-inner {
	padding: 50px;
}
/* 見出し */
	.book_wrap .hotelpre h2 {
	font-size: 28px;
	margin-bottom: 30px;
	height: 60px;
	line-height: 30px;
}
.book_wrap .hotelpre h2::before {
	border-width: 30px 0 30px 20px;
}
.book_wrap .hotelpre h2::after {
	border-width: 30px 20px 30px 0;
}
	.book_wrap .hotelpre .pre-ttl {
	margin-bottom: 1.5em;
	display: table;
	margin: 0 auto 30px;
}
	.book_wrap .hotelpre .pre-ttl p {
	font-size: 20px;
	padding-bottom: .3em;
}
	.book_wrap .hotelpre .pre-ttl h3 {
	font-size: 30px;
}

/* 写真 */
	.book_wrap .hotelpre .pre-pht {
	width: 700px;
	margin: 0 auto 20px;
}
	.book_wrap .hotelpre .pre-pht + .txtwrap {
	max-width: 700px;
	margin: auto;
}
	.book_wrap .hotelpre .close {
	padding: .75em 0;
	margin: 1.5em 0;
}
	.book_wrap .hotelpre dl {
	margin: 25px 0 20px;
}
	.book_wrap .hotelpre dd br {
	display: none;
}

	.book_wrap .hotelpre .lunch-title {
    font-size: 1.3em;
}
	.book_wrap .hotelpre .lunch-price {
    font-size: 1em;
}
	.book_wrap .hotelpre .lunch-price + .txt {
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
	line-height: 2!important;
}
	.book_wrap .hotelpre .lunch-menu {
    max-width: 600px;
	margin-left: auto;
	margin-right: auto;
}
	.book_wrap .hotelpre .lunch-menu-title {
    margin-bottom: 0.75em;
}
	.book_wrap .hotelpre .lunch-table th,
	.book_wrap .hotelpre .lunch-table td {
    padding: 1em;
}

/* 表 */
	.book_wrap .hotelpre .chusen-data th,
	.book_wrap .hotelpre .chusen-data td {
	display: table-cell;
	margin: 0;
	padding-top: 1em;
}
	.book_wrap .hotelpre .chusen-data th span {
	display: block;
	text-align: center;
}
	.book_wrap .hotelpre .chusen-data td {
	padding-left: 1.5em;
}
/* ボタン */
	.book_wrap .hotelpre .btn {
	margin-top: 40px;
	margin-bottom: 10px;
}
	.book_wrap .hotelpre .btn a {
	padding: 20px 80px;
}
/* ハロウィンジャンボ宝くじ */
	.book_wrap .hotelpre .takarakuji {
	margin-bottom: 50px;
	padding-bottom: 45px;
}
	.book_wrap .hotelpre .takarakuji-only {
	margin-top: 0;
	padding-top: 0;
}
	.book_wrap .hotelpre .takarakuji .grid-box {
	display: grid;
	grid-template-columns: 6.5fr 3.5fr;
	grid-template-rows: auto auto;
	column-gap: 30px;
	margin-bottom: 20px;
}
	.book_wrap .hotelpre .takarakuji h3 {
	font-size: 20px;
	padding: 0 1em;
	grid-column: 1 / 2;
	grid-row: 1 / 2;
}
	.book_wrap .hotelpre .takarakuji h3 strong {
	font-size: 33px;
	display: block;
}
	.book_wrap .hotelpre .takarakuji .date {
	grid-column: 1 / 2;
	grid-row: 2 / 3;
	margin: 0;
}
	.book_wrap .hotelpre .takarakuji .date dt {
	font-size: .9em;
	margin: 0 auto .75em;
	border-radius: 5px;
    padding: .5em 1em;
}
	.book_wrap .hotelpre .takarakuji .date dd {
	font-size: 18px;
}
	.book_wrap .hotelpre .takarakuji .kuji-img {
	width: 100%;
	margin: 0;
	grid-column: 2 / 3;
	grid-row: 1 / 3;
	align-self: center;
}
}


/* 本の紹介ページ　ハロウィンジャンボ　2025.09
----------------------------------------------------*/
.pre-halloween + .pre-fix {
	margin-top: 0px;
}
.pre-halloween {
	background-color: #ec5506;
	background-image: repeating-radial-gradient(
    circle,
    rgba(255, 255, 255, 0.15) 0,
    rgba(255, 255, 255, 0.15) 2px,
    transparent 2px,
    transparent 20px
	);
	background-size: 20px 20px;
	margin-top: 40px;
}
.pre-halloween h2 {
	margin-bottom: 20px!important;
}
.pre-halloween .ttl-main,
.pre-halloween .ttl-sub {
	color: #fff;
	font-weight: bold;
	font-family: "メイリオ","Meiryo","Hiragino Sans", "Hiragino Kaku Gothic ProN","sans-serif";
}
.pre-halloween .ttl-main {
	font-size: 1.6rem;
	line-height: 1;
	text-align: center;
	background-color: #7301a1;
	color: #fff;
	margin: 0 auto .75em;
	border-radius: 999px;
	padding: .5em 1em;
	width: fit-content;
	position: relative;
}
.pre-halloween .ttl-main::before {
	content: "";
    position: absolute;
	display: block;
    top: -13px;
    right: -10px;
    width: 20px;
    height: 20px;
    background-image: url("../img/pre-asirai.png");
    background-repeat: no-repeat;
    background-size: 100%;
}
.pre-halloween .ttl-sub {
	font-size: 1.4rem;
	line-height: 1.6;
	flex: 1;
}
.pre-halloween .ttl-sub strong {
	color: #ffef03;
}
.pre-halloween .flex-box {
	display: flex;
	align-items: center;
	column-gap: .5em;
	width: 94%;
	margin: 15px auto;
}
.pre-halloween .image {
	width: 38%;
}
.pre-halloween .pre-cont {
	background-color: #fff;
	border-radius: 20px;
	padding: 8% 5%;
	width: 96%;
	margin: auto;
}
.pre-halloween .kikan dt {
	background-color: #7301a1;
	color: #fff;
	font-weight: bold;
	line-height: 1;
	border-radius: 4px;
	padding: .5em .75em;
	margin-bottom: .5em;
	width: fit-content;
}
.pre-halloween .kikan dd {
	font-size: 1.1em;
	font-weight: bold;
}
.pre-halloween table {
	margin: 1em auto;
}
.pre-halloween th,
.pre-halloween td {
	display: block;
	text-align: left;
}
.pre-halloween .pre-att {
	font-size: .8em;
}
.pre-halloween .pre-att li {
	padding-left: 1em;
	text-indent: -1em;
}
.pre-halloween .btn {
	margin-top: 20px;
}

@media screen and (min-width:40em) {
	.pre-halloween {
	margin-top: 60px;
}
	.pre-halloween .inner {
	max-width: 960px;
}
	.pre-halloween h2 {
	margin-bottom: 60px!important;
}
	.pre-halloween .ttl-main {
	font-size: 2.2rem;
	margin: 0 auto .5em;
	padding: .75em 1.25em;
}
	.pre-halloween .ttl-main::before {
    top: -23px;
    right: -20px;
    width: 41px;
    height: 41px;
}
	.pre-halloween .ttl-sub {
	line-height: 1.7;
	font-size: 1.8rem;
}
	.pre-halloween .flex-box {
	column-gap: .5em;
	width: fit-content;
	margin: 15px auto;
}
	.pre-halloween .image {
	width: 250px;
}
	.pre-halloween .pre-cont {
	border-radius: 30px;
	padding: 50px;
	font-size: 1.05em;
}
	.pre-halloween .kikan {
	display: flex;
	align-items: center;
	column-gap: 1em;
}
	.pre-halloween .kikan dd {
	padding-bottom: .25em;
}
	.pre-halloween th,
	.pre-halloween td {
	display: table-cell;
	padding: .25em;
}
	.pre-halloween .btn {
	margin-top: 30px;
}
}


/* 本の紹介ページ　年末ジャンボ　2025.11
----------------------------------------------------*/
.pre-yearend + .pre-fix {
	margin-top: 0px;
}
.pre-yearend {
	background-color: #e8343d;
	background-image: repeating-radial-gradient(
    circle,
    rgba(255, 255, 255, 0.15) 0,
    rgba(255, 255, 255, 0.15) 2px,
    transparent 2px,
    transparent 20px
	);
	background-size: 20px 20px;
	margin-top: 40px;
}
.pre-yearend h2 {
	margin-bottom: 20px!important;
}
.pre-yearend .ttl-main,
.pre-yearend .ttl-sub {
	color: #fff;
	font-weight: bold;
	font-family: "メイリオ","Meiryo","Hiragino Sans", "Hiragino Kaku Gothic ProN","sans-serif";
}
.pre-yearend .ttl-main {
	font-size: 1.6rem;
	line-height: 1;
	text-align: center;
	background-color: #ffef03;
	color: #e8343d;
	margin: 0 auto .75em;
	border-radius: 999px;
	padding: .5em 1em;
	width: fit-content;
	position: relative;
}
.pre-yearend .ttl-main::before {
	content: "";
    position: absolute;
	display: block;
    top: -13px;
    right: -10px;
    width: 20px;
    height: 20px;
    background-image: url("../img/pre-asirai.png");
    background-repeat: no-repeat;
    background-size: 100%;
}
.pre-yearend .ttl-sub {
	font-size: 1.4rem;
	line-height: 1.6;
	flex: 1;
}
.pre-yearend .ttl-sub strong {
	color: #ffef03;
}
.pre-yearend .flex-box {
	display: flex;
	align-items: center;
	column-gap: .5em;
	width: 94%;
	margin: 15px auto;
}
.pre-yearend .image {
	width: 38%;
}
.pre-yearend .pre-cont {
	background-color: #fff;
	border-radius: 20px;
	padding: 8% 5%;
	width: 96%;
	margin: auto;
}
.pre-yearend .kikan dt {
	background-color: #ff6600;
	color: #fff;
	font-weight: bold;
	line-height: 1;
	border-radius: 4px;
	padding: .5em .75em;
	margin-bottom: .5em;
	width: fit-content;
}
.pre-yearend .kikan dd {
	font-size: 1.1em;
	font-weight: bold;
}
.pre-yearend table {
	margin: 1em auto;
}
.pre-yearend th,
.pre-yearend td {
	display: block;
	text-align: left;
}
.pre-yearend .pre-att {
	font-size: .8em;
}
.pre-yearend .pre-att li {
	padding-left: 1em;
	text-indent: -1em;
}
.pre-yearend .btn {
	margin-top: 20px;
}

@media screen and (min-width:40em) {
	.pre-yearend {
	margin-top: 60px;
}
	.pre-yearend .inner {
	max-width: 960px;
}
	.pre-yearend h2 {
	margin-bottom: 60px!important;
}
	.pre-yearend .ttl-main {
	font-size: 2.2rem;
	margin: 0 auto .5em;
	padding: .75em 1.25em;
}
	.pre-yearend .ttl-main::before {
    top: -23px;
    right: -20px;
    width: 41px;
    height: 41px;
}
	.pre-yearend .ttl-sub {
	line-height: 1.7;
	font-size: 1.8rem;
}
	.pre-yearend .flex-box {
	column-gap: .5em;
	width: fit-content;
	margin: 15px auto;
}
	.pre-yearend .image {
	width: 250px;
}
	.pre-yearend .pre-cont {
	border-radius: 30px;
	padding: 50px;
	font-size: 1.05em;
}
	.pre-yearend .kikan {
	display: flex;
	align-items: center;
	column-gap: 1em;
}
	.pre-yearend .kikan dd {
	padding-bottom: .25em;
}
	.pre-yearend th,
	.pre-yearend td {
	display: table-cell;
	padding: .25em;
}
	.pre-yearend .btn {
	margin-top: 30px;
}
}

