    /*
    Theme Name: New Web Sangyo
    Description:日刊産業新聞の新テーマです
    Theme URI: https://www.japanmetal.com/wordpress/wp-content/themes/new_websangyo
    Author: Eiji Nakajima
    Author URI: https://www.japanmetal.com
    Version: 1.0
    License: ライセンス
    License URI: ライセンスの URL
    */




/*全体*/

html{
font-size:14pt;
}

body {font-family: "メイリオ" , Meiryo ,"Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" ,  "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
color:#403f3f;
font-size:14pt;
margin:0;
}

span.gd-secondary, span.gv-secondary, span.bsui, span.gd-badge-meta,span.gd-rating-foreground,span.gd-list-favorite,span.gd-list-rating-text,span.d-inline-bloc, span.gv-secondary,span.gd-rating-background,li a.fa-comments{
display:none;
}

h3.geodir-entry-title a{
font-size:1rem;
line-height:1rem;
color:#000066;
}
div.geodir-post-content-container{
font-size:0.7rem;
}

h1{
font-size:1.4rem;
font-weight:bold;
}

.cp_navi {
	background-color: #e63100;
	border-radius: 4px;
	box-shadow: 0 2px 2px -1px rgba(0, 0, 0, 0.055);
	color: #888888;
	display: block;
	margin: 0 auto;
	overflow: hidden;
	max-width: 1200px;
        padding:0;
        height:52px;


}

.wp-caption-text{
font-size:0.6rem;
color:#666;
}
.cp_navi ul {
	margin: 0;
	padding: 0;
}
.cp_navi ul li {
	display: inline-block;
	list-style-type: none;
	-webkit-transition: all 0.2s;
	        transition: all 0.2s;


}
.cp_navi > ul > li > a > .caret {
	border-top: 4px solid #ffffff;
	border-right: 4px solid transparent;
	border-left: 4px solid transparent;
	content: '';
	display: inline-block;
	height: 10px;
	width: 0;
margin-left:5px;

line-
	-webkit-transition: color 0.1s linear;
	        transition: color 0.1s linear;
}
.cp_navi > ul > li > a {
	
	display: block;
        margin-top:10px;
	padding: 0 10px;
	text-decoration: none;
overflow:hidden;
box-sizing:border-box;
height:42px;
}
.cp_navi > ul > li:hover {
	background-color: rgb(246, 175, 21);
}
.cp_navi > ul > li:hover > a {
	color: rgb( 255, 255, 255 );
}
.cp_navi > ul > li:hover > a > .caret {
	border-top-color: rgb( 255, 255, 255 );
}
.cp_navi > ul > li > div {
	background-color: rgb(245, 245, 245);
	border-top: 0;

	box-shadow: 0 2px 2px -1px rgba(0, 0, 0, 0.055);
	display: none;
	margin-top: 0;
	opacity: 0;
	position: absolute;
z-index: 30;
	max-width: 97.5%;
	visibility: hidden;
	-webkit-transiton: opacity 0.2s;
	       transition: opacity 0.2s;
}





.cp_navi > ul > li:hover > div {
	display: block;
	opacity: 0.98;
	visibility: visible;
}
.cp_navi > ul > li > div ul > li {
	display: inline-block;
	list-style-type: none;
list-style-image: url(data:0);
margin:0;
width:100%;
        font-size:0.65rem;
border-bottom:1px solid #ddd;

}

.cp_navi > ul > li > div ul > li.li_ti {
	display: block;

font-weight:bold;
	border-bottom:1px solid #ddd;
border-left:0;
border-right:0;
background-color: rgb(246, 175, 21);
font-size:0.8rem;

}

.cp_navi > ul > li > div ul > li+li {
	border-right:1px solid #ddd;
margin:0;
}

.cp_navi > ul > li > div ul > li+li.li_ti {
	border:0;
margin:0;
}

.cp_navi > ul > li > div ul > li.li_ti+li.li_ti {
	border-top:1px solid #f5f5f5;
margin:0;
}

.cp_navi > ul > li > div ul.menu_wrap {
font-size:0;
}

.cp_navi > ul > li > div ul > li.li_ti > a {
	color: #fff;
	display: block;
	padding:2px 0 2px 2%;

	text-decoration: none;
}

.cp_navi > ul > li > div ul > li > a {
	color: #666;
	display: block;
	padding:2px 0 2px 2%;

	text-decoration: none;
}

.cp_navi > ul > li > div ul > li:hover > a {
	background-color: rgba( 253, 238, 153, 1);

}

.cp_navi > ul > li > div ul > li.kaigyo {
	color: #fff;
	display: block;
border:none;


}

.kaigyo {
	color: #fff;
	display: block;
border:none;


}

.cp_navi > ul > li > div ul > li.pdin {
	color: #fff;
	display: block;
	padding:2px 0 2px 2%;
font-weight:bold;
	border-bottom:1px solid #ddd;
border-left:0;
border-right:0;
background-color: rgb(246, 175, 21);
font-size:0.8rem;
width:98%;


}

.alignleft{
float:left;
max-width:45%;
margin:10px;
}

.alignright{
float:right;
max-width:45%;
margin:10px;
}

div.thum{
text-align:center;
margin: 0 auto;
background-color:#efefef;
overflow:hidden;
height:120px;
layout-grid-line:120px;
margin-bottom:10px;
}

div.thum img{
vertical-align:bottom;
text-align:center;
}

div.woodmac_img1 img{
vertical-align:bottom;  
}

.h249{
min-height:249px;
}

.w295{
width:295px;
height:auto;
}
.w160{
width:160px;
}
.h100{
height:100%;
}
.h150{
height:150px;
}
.marg_l10per{
margin-left:3%;
}

.marg_r1per{
margin-right:1%;
}

.read-button {
  display: inline-block;
  background-color:#eb6c39;
  color:#fff;
  padding: 10px 20px;
  border-radius: 30px;
  text-decoration: none;
  font-weight: bold;
  transition: background-color 0.3s;
  font-family: 'Zen Kaku Gothic New', sans-serif;
  text-align: center;
}

.read-button:hover {
  background-color: #d65c2e; /* ホバー時に少し濃く */
}
.marg_b20{
margin-bottom:20px;
}

.border1px{
border:1px solid #333;
}
.border1pxcd{
border:1px solid #cdcdcd;
}

.font06{
font-size:0.6rem;
}

.font07{
font-size:0.7rem;
}
.font08{
font-size:0.8rem;
}

.font0758{
font-size:0.758rem;
}

.fontbld{
font-weight:bold;
}


.padding_yoko2px{
padding:0 2px;
}

.padding_4px{
padding:4px;
}

.padding_17_13px{
padding:17px 13px;
}



.padding_yoko13px{
padding:0 13px;
}

.padding23_13{
padding:23px 13px;
}



.lineh_14{
line-height:1.8rem;
}

img {
max-width: 100%;
height: auto;
border-style:none
}
.wrapper {

  width: 100%;
  margin: 0 auto;
  padding:0;
}
header {

  background: #fff;
overflow:hidden;
box-sizing:border-box;
}

.inwrapper {

  max-width: 1200px;
  margin: 0 auto;
padding:0 10px;
overflow:hidden;
box-sizing:border-box;
}


.top_ad {
  background: #e5e5e5;
  text-align:center;
  color:#fff;
  font-size:1.6rem;
  font-weight:bold;
}

.top_ad img{
margin:0;
padding:0;
vertical-align:bottom;
}

.container {
  clear:both;
  max-width: 100%;
  margin: 0 auto;
}
.cont {
  text-align:center;
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -js-display: flex;
  margin: 0 auto;
  max-width: 1200px;

}
.main {

  background: #fff;
  width: 58%;
margin:0 2% 10px 0;
}
.side {

  background: #fff;
  width: 40%;
margin:0;

}

footer {

  clear:both;
width:100%;
  text-align:center;
  box-sizing: border-box;
   display: flex;
-js-display: flex;
    justify-content: center; /*左右中央揃え*/
    align-items: center;     /*上下中央揃え*/
}

footer.first {

  background-color:#e5e5e5;
  height:109px;

}

footer.second {

  background-color:#bfbfbf;
  height:217px;

  color:#ffffff;
}

footer a {
  text-decoration:none;
  color:#666;
}

footer a:hover {
  text-decoration:underline;
  color:#666;
}


table#pricetbl{
border:1px solid #aaa;
width:90%;
border-collapse:collapse;
margin:10px 5%;
}

table#financetbl{
border:1px solid #aaa;
width:100%;
}

table#pricetbl td{
border:1px solid #aaa;
padding:10px;
font-size:0.9rem;
}
#topbg{
background-color:#73B9FF;
}

#topbg2{
background-color:#ECC6D9;
}

table#financetbl td{
border:1px solid #aaa;
padding:5px;
border-collapse:collapse;
font-size:0.8em;
line-height:1em;
}

table#dctbl{
border:1px solid #fff;
width:100%;
}

table#dctbl td{
border:1px solid #fff;
padding:8px 2px 8px 3px;
border-collapse:collapse;
line-height:1em;
}

table#sodctbl{
border:1px solid #fff;
width:50%;
}

table#sodctbl td{
border:1px solid #fff;
padding:10px;
border-collapse:collapse;
line-height:1em;
font-size:0.85em;
}

table#datbl{
border:1px solid #ccc;
border-collapse:collapse;
width:100%;
}

table#datbl td,th{
border:1px solid #ccc;
padding:4px 1px 4px 1px;
border-collapse:collapse;
line-height:1em;
}

table.datbl{
border:1px solid #ccc;
}

table.datbl td,th{
border:1px solid #ccc;
padding:4px 5px 4px 5px;
border-collapse:collapse;
line-height:1em;
}

table.htmd{
border:1px solid #ccc;
font-size:0.8em;
}

table.htmd td,th{
border:1px solid #ccc;
padding:2px 4px;
border-collapse:collapse;
line-height:1em;
}

table.htmdmax{
border:1px solid #ccc;
font-size:0.8em;
}

table.htmdmax td,th{
border:1px solid #ccc;
padding:2px 2px;
border-collapse:collapse;
line-height:1em;
}

div.gcse-search { padding: 0;margin:0;border:1px solid #000; }




/*全体終わり*/




/*頻繁に使う日付カテゴリタグ*/
ul.cat {
     padding-left: 0px;
margin:0 0 7px 0;
}

ul.cat li{
display:inline-block;
padding:2px;
font-size:0.7rem;
}

ul.cat li.cat1{
background-color:#a0a0a0;
color:#fff;
margin-right:5px;
padding:5px;
}

ul.cat li.cat1 a{
color:#fff;
text-decoration:none;
}

.cat1 a:hover{
text-decoration:underline;
}
p.news_date{
margin:0 0 30px 0;
padding:5px;
font-size:0.6rem;
color:#3d5f79;
font-weight:bold;
background-color:#efefef;
border:1px solid #efefef;
   border-radius: 3px;        /* CSS3草案 */  
    -webkit-border-radius: 3px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 3px;   /* Firefox用 */  
}

/*頻繁に使う日付カテゴリタグ終わり*/

/*snsボタンはじめ*/
.snsdf{
    display:flex;
    justify-content: space-around;
    width:100%;
    }
.snsdf2{
    display:flex;
    justify-content:center;
}

.snsdf3{margin:0 auto;
    border: 4px solid #28c2e5;
    border-image: linear-gradient(to right, #28c2e5 0%, #e3ebc6 100%);
    border-image-slice: 1;
    border-radius: 50px;
    width:20%;
    margin-top:3%;
    margin-bottom:3%;
    text-align:center;
}
.snsdf4{
    font-weight:bold;
    font-size:140%;
    color:#28c2e5;
    margin-top:5%;
    margin-bottom:5%;
}

.snsdf5{
    font-size:100%;
    color:#f37e1e;
    font-weight:bold;
}
.snsdf6{
    text-align:center;
    font-size:75%;
    font-weight:bold;
}

.snsdf7{
    width:20%;
}

.snsdf7 div+div{
   
}

a.sns_btn_1{
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 35%;
	margin: auto;
    margin-right:3%;
	padding: 1rem 3.5rem;
	font-weight: bold;
	background-image: linear-gradient(to right, #28c2e5 0%, #e3ebc6 100%);
	border-radius: 100vh;
	color: #fff;
	border: 2px solid #fff;
	box-shadow: 0 2px 5px rgba(0, 0, 0, .2);
	-webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, .2);
	transition: 0.5s;
}
a.sns_btn_1:hover {
	color: #fff;
	background-image: linear-gradient(to right, #e3ebc6 0%, #28c2e5 100%);

}


/*SNSボタン終わり*/

/*サイド中身*/
.side_member{
  width:100%;
  background-color: #fff;
  margin-top:37px;
  height:84px;
display: block;


}

.side_member img:hover{
opacity: 0.8 ;


}

.side_member div.side_member_l{
  float:left;

}

.side_member div.side_member_r{
  float:right;

}
.side_member div{
  width:49%;
  background-color: #ddd;
}
.side_member div img{
display: block;
}

.twocol div:hover{
opacity: 0.8 ;

}

.side_box{
  clear:both;
  width:100%;
text-align:left;
font-size:0.86rem;
  background-color: #fff;
  margin-top:27px;


overflow:hidden;
box-sizing:border-box;
}

.side_box_c{
  clear:both;
  width:100%;
text-align:center;
font-size:0.86rem;
  background-color: #F2F2F2;
  margin-top:27px;
padding:10px 13px 5px 13px;

overflow:hidden;
box-sizing:border-box;
}

.side_box img{
	margin: 0;
	padding: 0;
vertical-align:bottom;
}


.side_box_bi{
  clear:both;
  width:100%;

text-align:left;
font-size:0.86rem;
  background-color: #959595;
  margin-top:32px;

overflow:hidden;
box-sizing:border-box;
}



.side_box p.service{
  background-color: #a0a0a0;
padding:10px;
color:#fff;
text-align:center;

}

img.rightfloat{
float:right;

}

.side_sample_l{
float:left;
width:24%;
margin-right:2%;
padding:0;
}

.side_sample_l img{
width:100%;
max-width: 100%;
height: auto;
padding:0;
vertical-align:bottom;
}

div.side_sample_l p{
margin:8px 0;
padding:0;
vertical-align:bottom;
}

.side_sample_r{
float:right;
width:68%;
margin:0;
padding:0;

}

div.side_sample_r p{
margin:15px 0;
padding:0;
vertical-align:bottom;
}



.side_box ul {
     padding-left: 0px;
margin:0 0 7px 0;
list-style-type: none
}

.side_box ul li{
padding:2px;
font-size:0.7rem;
}

ul.book {
     padding-left: 0px;
margin:0 0 7px 0;
}

ul.book li{
display:inline-block;
padding:2px;

}

ul.book li+li{
margin-left:2%;
}

ul.article-list{
margin-top:25px;
}

ul.article-list li{
margin-bottom:5px;
}

ul.article-list li a{
text-decoration:none;
color:#333;
}

ul.article-list li a:hover{
text-decoration:underline;
}


ul.cat li.cat1{
background-color:#a0a0a0;
color:#fff;
margin-right:5px;
padding:5px;
}



.side_title{
padding:0;
margin:0 0 10px 0;
}


.side_box2{
  clear:both;
  width:100%;
text-align:left;
font-size:0.86rem;
  background-color: #fff;
  margin-top:32px;

display:flex;

overflow:hidden;
box-sizing:border-box;
}

.side_box_m{

  width:100%;
text-align:left;
font-size:0.86rem;
  background-color: #fff;
  margin-top:32px;
padding:0;
overflow:hidden;
box-sizing:border-box;
}

div.twocol{
display:flex;
flex-wrap:wrap;
width:100%;
margin-left:- 1em;
}

div.twocol div{
width:50%;
padding:15px;
font-size:0.7rem;
list-style: none;
background: #d25702;
border: 1px solid white;
box-sizing: border-box;
color:#fff;
}

.side_l{

overflow:hidden;
box-sizing:border-box;
width:65%;
}

.side_l img.ban{
width:100%;
max-width: 100%;
height: auto;
margin:0;
padding:0;
vertical-align:bottom;
}

.side_r{

width:34%;
overflow:hidden;
box-sizing:border-box;
}

.side_sample{
width:100%;
padding:0;
margin-bottom:5px;
overflow:hidden;
box-sizing:border-box;
}

.side_sample img{
	margin: 0;
	padding: 0;
vertical-align: bottom;
}


.side_box ol li{
margin-bottom:14px;

}

.side_data{
font-size:0.7rem;
}

.side_data table{
width:100%;
border:1px solid #999;
border-collapse:collapse;
}

.side_data table td{
border:1px solid #999;
padding:5px;

}


.side_data p.wakumaru {
width:65%;
margin:30px auto;
border: solid 1px #cdcdcd;
  border-top-left-radius: 20px 20px;
  border-top-right-radius: 20px 20px;
  border-bottom-right-radius: 20px 20px;
  border-bottom-left-radius: 20px 20px;
 padding:10px;
text-align:center;
}

a.wpp-post-title{
color:#183264;
text-decoration:none;
}

a.wpp-post-title:hover{
text-decoration:underline;
}

a.wpp-post-title:visited{
color:#381436;
}

a.to_web:hover{
text-decoration:underline;

}

a.to_web{
color:#fff;
text-decoration:none;
}

.swiper-custom-parent{
  border: 1px solid #ccc;
  margin: 0;
  width: 100%;
  position: relative;
}
.swiper-container{
  width: 100%;
  height: auto;
  padding: 10px;
  margin: 0;
}
.swiper-slide{
 
margin: 20px 0;
}

.data_btn{
text-align:center;
margin-bottom:10px;
}



.s_line_ti{

}

.s_line_ti a{
color:#fff;
text-align:center;
display:block;
padding:10px;
font-size:0.8rem;
font-weight:bold;
border-radius:2px;
text-decoration:none;
background-color:#666;
margin-bottom:20px;
}

.s_line_ti a:hover{

background-color:#999;
}



.s_line_btn a{
color:#666;
display:block;
padding:10px;
text-align:center;
border:1px solid #ccc;
border-radius:2px;
text-decoration:none;
background-color:#fff;
margin-top:20px;
}

.s_line_btn a:hover{

background-color:#fef4ef;
}


/*サイド中身終わり*/



/*ヘッダー中身*/
#midinheader{
  max-width: 1200px;
height:139px;
  background: #fff;
  text-align:center;
  margin:0 auto;
  
  padding:0;
overflow:hidden;
}




.head_l{
  float:left;
  width: 33.333%;
height:139px;
padding-top:40px;
margin:0;
text-align:left;
  background-color: #fff;

box-sizing:border-box;


}

.head_m{
  float:left;
  width: 33.334%;
height:139px;
  background-color: #fff;

box-sizing: border-box;
padding-top:55px;
margin:0;
text-align:center;
}

.head_r{
  float:right;

  width: 33.333%;
text-align:right;
height:139px;
  background-color: #fff;

box-sizing: border-box;
padding-top:23px;


display:flex;
    align-items: center;
justify-content: flex-end;

}

.head_r div+div{
margin-left:20px;
text-align:right;
}

.head_koudoku{

border-radius: 3px;
background-color: #FF88C7;
font-size:0.7rem;
color:#fff;
padding:10px 20px;
}

.head_koudoku a{
color:#fff;
text-decoration:none;
}

.head_koudoku:hover {
  background: #E986B4;
  color: #fff;
}

.head_login{

border-radius: 3px;
background-color: #00496D;
font-size:0.7rem;
color:#fff;
padding:10px 20px;
}

.head_login a{
color:#fff;
text-decoration:none;
}

.head_login:hover {
  background: #006A8E;
  color: #fff;
}



/*ヘッダー中身終わり*/

/*メニューバー*/
#menu_bar{
  clear:both;
  max-width: 1200px;
height:54px;
  background: #d25702;
  text-align:center;
  margin:0 auto;

  padding:0;
overflow:hidden;
}

.menu_l{
  float:left;
  width: 33.333%;

text-align:left;
box-sizing:border-box;
}

.menu_m{
display:inline-block;
text-align:right;


box-sizing: border-box;
}

#menu_bar ul{
height:54px;
margin:10px;
padding:0;
}

#menu_bar ul li{
display:inline-block;
padding:0;
}

#menu_bar ul li+li{
margin-left:10px;
padding:0;
}



.menu_r{


display:inline-block;
box-sizing: border-box;
  display: flex;
-js-display: flex;
justify-content: flex-end;
    align-items: center;     /*上下中央揃え*/
}
/*メニューバー終わり*/


/*バナー*/
.banner{
  width:100%;
  background-color: #dadada;
  margin-top:37px;
  height:77px;
  padding:0;
  overflow:hidden;
  box-sizing:border-box;


}

.banner div{
  display: flex;
-js-display: flex;
  justify-content: center;
  justify-content: space-around;
  align-items: center;
}


.banner div div{
width:152px;
height:64px;
border:0;
margin-right:5px;
padding: 0px;
}
/*バナー終わり*/


/*バナー終わり*/


/*きょうのトップ*/
.todaytop{
  width:100%;
  text-align:left;
  background-color: #f5f3f3;
  margin-top:32px;
  padding:18px;
display:block;
overflow:hidden;
box-sizing:border-box;
  
}

.todaytop2{
  width:100%;
  text-align:left;
  background-color: #f2f9fe;
  margin-top:0px;
  padding:18px;
display:block;
overflow:hidden;
box-sizing:border-box;
  
}

.todaytop p.toptit{
font-weight:bold;
  
}

.todaytop2 p.toptit{
font-weight:bold;
  
}

.todaytop_l{
float:left;
width:49%;
margin-right:12px;
margin-bottom:5px;
}

.todaytop_r{


}







.todaytop p.tit{
font-weight:bold;
font-size:1.0rem;
line-height:1.5rem;
  
}

.todaytop2 p.tit{
font-weight:bold;
font-size:1.0rem;
line-height:1.5rem;
  
}

.icatchTop{
background-color:#eee;
text-align:center;
margin-bottom:3px;
}

.icatchTop img{
    display: block;
    margin: 0 auto;
}

.icatchTop-adt{
background-color:#fff;
text-align:center;
margin-bottom:3px;
}

.icatchTop-adt img{
    display: block;
    margin: 0 auto;
}

/*きょうのトップ終わり*/


/*ニュース一覧*/
.news{
  width:100%;

  margin-top:2px;
box-sizing:border-box;
overflow:hidden;
padding:0;
}

.news a, .spe a,  .tit a{
display:block;
text-decoration:none;
color:#403f3f;
}

.news a:hover, .spe a:hover, .tit a:hover{
text-decoration:underline;
}

.news a:visited, .spe a:visited{
color:#666;
}

/*ニュース一覧―Headline*/
.news_l{
  float:left;
  width: 48.9239%;
  
  margin-right:3.2951%;
margin-top:10px;
text-align: left;
box-sizing:border-box;

}

p.headlinetop {
height:20px;
border-bottom:1px solid #cdcdcd;
margin:0;
padding:18px 0;

}


.news p.headlinetop a {
  position: relative;
  display: inline-block;
  text-decoration: none;
  color:#112342;
  font-weight:bold;
  font-size:0.8rem;
}

.news_l p.headlinetop a {

  color:#112342;

}

.news_r p.headlinetop a {

  color:#112342;

}

p.headlinetop a:hover{
  text-decoration: none;
}

p.headlinetop a::after {
  position: absolute;
  bottom: -4px;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #112342;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .3s;
}
p.headlinetop a:hover::after {
  transform: scale(1, 1);
}

p.headlinetop span {
  font-size:0.7rem;
  font-weight:bold;
  color:#575858;
}

.headline {
border-bottom:1px solid #cdcdcd;
width:100%;
margin:0;
padding:30px 0;

display:block;
box-sizing:border-box;
overflow:hidden;


}


.spe_title a {
  position: relative;
  display: inline-block;
  text-decoration: none;
  color:#575858;
  font-weight:bold;
  font-size:1rem;
}

.spe_title a:hover{
  text-decoration: none;
}

.spe_title a::after {
  position: absolute;
  bottom: -4px;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #112342;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .3s;
}
.spe_title a:hover::after {
  transform: scale(1, 1);
}




/*ニュース一覧―Headline終わり*/

/*ニュース一覧―Pickup*/
.news_r{
  float:left;
  width: 47.7809%;
  margin-top:10px;
text-align: left;
box-sizing:border-box;

}

.news_r div+div{
padding:30px 0 30px 0;
}
p.pickuptop {
height:20px;
border-bottom:1px solid #cdcdcd;
margin:0;
padding:18px 0;
}

.pickup{
width:100%;
margin:0;
padding:30px 0;

display:block;
box-sizing:border-box;
overflow:hidden;


}

.pickup img{
margin:15px 0;
padding:0
border:1px solid #000;
display:block;

}

.pickup_ti{
font-size:1.28rem;
line-height:1.71rem;
}

/*ニュース一覧―Pickup終わり*/

/*トップ-特集他一覧*/
.spe{
  clear:both;
  width:100%;
  
  margin-top:28px;
  
overflow:hidden;
text-align:left;
box-sizing:border-box;
}

.spe_title{
text-align:left;
margin:15px 0;
}

.spedate{
display:block;
font-size:0.7rem;
padding:3px 0;
}
.spe_ti{
display:block;
font-size:0.7rem;
line-height:1.1635rem;
}

.spe_l{
display:flex;
flex-wrap: wrap;
justify-content: space-between;
}



.spe_l div{

  width: 31.114%;
  margin:0 0 30px 0;

box-sizing: border-box;
}

.spe_anniversary{
display:flex;
flex-wrap: wrap;
justify-content: space-between;
}



.spe_anniversary div{

  width: 45%;
  margin:0 0 30px 0;

box-sizing: border-box;
}


/*トップ-特集他一覧終わり*/



/*トップ-特集他一覧*/
.spesc{
  width:100%;
  padding:10px 0;
  margin:0px;
  background-color:#fcfcf0;
text-align:left;
border-radius:10px;
}

.spesc_title{
text-align:left;
margin:0;
padding:0;
}

.spescdate{
display:block;
font-size:0.7rem;
padding:3px 0;
}
.spesc_ti{
display:block;
font-size:0.7rem;
line-height:1.1635rem;
}

.spesc_l {
  display: flex;
  flex-wrap: wrap;
  gap: 10px; /* アイテム間の余白 */
  justify-content: flex-start; /* 左詰めにする */
  padding: 0;
  margin: 0;
}

.spesc_l div {
  width: calc((100% - 20px) / 3); /* gap考慮して3つ並べる */
  box-sizing: border-box;
  padding: 10px;
  border: 1px solid #eee;
  border-radius: 10px;
  background-color: #fff;
}

.spesc_anniversary{
display:flex;
flex-wrap: wrap;
justify-content: space-between;
}



.spesc_anniversary div{

  width: 45%;
  margin:0 0 30px 0;

box-sizing: border-box;
}

.spesc a{
display:block;
text-decoration:none;
color:#403f3f;
}

.spesc a:hover{
text-decoration:underline;
}

.spesc a:visited{
color:#666;
}

/*トップ-特集他一覧終わり*/




/*トップ-動脈静脈一覧*/
.aspesc{
  width:49%;
  padding:10px 0;
  margin:0px;
  background-color:#fff;
text-align:left;
border-radius:10px;
float:left;
}
#aspesc_hidari{margin-right:15px;}

.spesc_title{
text-align:left;
margin:0;
padding:0;
}

.spescdate{
display:block;
font-size:0.7rem;
padding:3px 0;
}
.spesc_ti{
display:block;
font-size:0.7rem;
line-height:1.1635rem;
}

.aspesc_l {
  display: flex;
  flex-wrap: wrap;
  gap: 10px; /* アイテム間の余白 */
  justify-content: flex-start; /* 左詰めにする */
  padding: 0;
  margin: 0;
}

.aspesc_l div {
  width: calc((100% - 20px) / 2); /* gap考慮して3つ並べる */
  box-sizing: border-box;
  padding: 10px;
  border: 1px solid #eee;
  border-radius: 10px;
  background-color: #fff;
}

.aspesc_anniversary{
display:flex;
flex-wrap: wrap;
justify-content: space-between;
}



.aspesc_anniversary div{

  width: 45%;
  margin:0 0 30px 0;

box-sizing: border-box;
}

.aspesc a{
display:block;
text-decoration:none;
color:#403f3f;
}

.aspesc a:hover{
text-decoration:underline;
}

.aspesc a:visited{
color:#666;
}

/*トップ-動脈静脈一覧終わり*/





/*シングルページ*/
.single{
  width:100%;
  text-align:left;
  background-color: #fff;
  margin-top:32px;
  padding:0;
display:block;
overflow:hidden;
box-sizing:border-box;
  
}


.single p.tit{
font-weight:bold;
font-size:1.0rem;
line-height:1.5rem;
margin-top:0;
  
}

ul.sincat {
     padding-left: 0px;
margin:0 0 7px 0;
}

ul.sincat li{
display:inline-block;
padding:2px;
font-size:0.7rem;
vertical-align:middle;
}

ul.sincat li.cat_ti{
color:#4a4949;
margin-right:10px;
font-size:1.4rem;
font-weight:bold;
}

.cat_ti a{
color:#4a4949;
text-decoration:none;
}

.cat_ti a:hover{
text-decoration:underline;
}

ul.sincat li.cat1{
border:1px solid #a0a0a0;
color:#4a4949;
margin-right:5px;
padding:2px 5px;
}

ul.sincat li.cat1 a{
color:#4a4949;
text-decoration:none;
}

.sinimg{
width:100%;
}


.single_reco{
  width:100%;
  text-align:left;
  background-color: #fff;
  margin-top:32px;
  padding:0;
display:block;
overflow:hidden;
box-sizing:border-box;
  
}




.sinrecoti{
padding:10px 0 10px 30px;
background-color:#a0a0a0;
color:#fff;
}


.sinrecomi{
margin:15px 0 20px 0;
padding:0;
}


.sinrecomi a{
display:block;
text-decoration:none;
color:#403f3f;
margin:0;
padding:0;
}

.sinrecomi a:hover{
text-decoration:underline;
}

.sinrecomi a:visited{
color:#a0a0a0;
}

.continue{
margin:40px 0;
font-size:0.8rem;
font-weight:bold;
}

.rpbt_shortcode ul{
margin:0;
padding:0;
list-style:  none;
}

.rpbt_shortcode ul li {
padding:15px 0;
border-bottom:1px dotted #666;
}

.rpbt_shortcode ul li a{
font-size:0.8rem;
text-decoration:none;
color:#403f3f;
}

.rpbt_shortcode ul li a:hover{
text-decoration:underline;
}

time.rpbt-post-date{
font-size:0.7rem;
color:#666;
}

.rpbt_shortcode h3{
padding:10px 0 10px 30px;
background-color:#a0a0a0;
color:#fff;
}

.single div.bookout{
margin-top:20px;
border-bottom:none;
}

.single_reco ul.book{
margin-top:20px;
}

p.bookorder{
margin-bottom:40px;
}


.etoki{
padding:5px 0;
font-size:0.7rem;
color:#999;
text-align:center;
}

.sns{margin-bottom:15px;display:flex;justify-content: flex-end;}

.sns div{
margin-right:5px;
}

.pprint{
padding-top:2px;
padding-right:30px;
}
/*シングルページ終わり*/


/*固定ページ*/
.kotei{
  width:100%;
  text-align:left;
  background-color: #fff;
  margin-top:32px;
  padding:0;
display:block;
overflow:hidden;
box-sizing:border-box;
  
}


.kotei_ti{
padding:10px 0;
color:#000;
margin:0 10px 20px 0;
font-size:1.4rem;
font-weight:bold;
color:#4a4949;
border-bottom:1px solid #4a4949;
}

.kotei_subti{
padding:0;
color:#000;
margin:40px 10px 10px 0;
font-size:1.2rem;
font-weight:bold;
color:#666;

}

.kotei_rinen ul li{
padding:20px;

}

.kotei div.kotei_rinen{
padding:10px 20px 10px 10px;
background: linear-gradient(#f1f6fd, #ffffff);
  border-radius:10px 10px 10px 10px;
color:#515e71;

}

.kotei table{
width: 100%;
border-spacing: 0;
font-size:0.75rem;
border-collapse:collapse;
}

.kotei table td,.kotei table th{
padding:20px;
border: solid 1px #cdcdcd;
box-shadow: 0px 1px 1px rgba(255,255,255,0.3) inset;
}

.kotei table th{
color:#666;
}
.kotei table tr:first-child th{

border-radius: 5px 0 0 0;
	}

.kotei table tr:first-child td:last-child{
border-radius: 0 5px 0 0;
	}



.kotei table tr:last-child th:first-child {
border-radius: 0 0 0 5px;
}
.kotei table tr:last-child td:last-child {
border-radius: 0 0 5px 0;
}

.kotei table colgroup.tbl_ti{

background-color: #fcfbf5;
width:20%;

}

.kotei table colgroup.tbl_cont{
background-color: #ffffff;
width:80%;
}

.kotei table colgroup.tbl_enkakudate1{

background-color: #fcfbf5;
width:15%;

}

.kotei table colgroup.tbl_enkakudate2{
background-color: #ffffff;
width:15%;

}

.kotei table colgroup.tbl_enkakudate3{
background-color: #ffffff;

width:15%;
}

.kotei table colgroup.tbl_enkakucont{
background-color: #ffffff;
width:55%;
}


div.subsc{
display:flex;
justify-content: space-between;
}

div.subsc_ti{
display:block;
font-size:2rem;
font-weight:bold;
}

table.sutbl{
border:1px solid #aaa;
border-collapse:collapse;
width:100%;
}

table.sutbl td,th{
border:1px solid #aaa;
padding:10px;
border-collapse:collapse;
line-height:1em;
}

table.suprice td,th{
font-size:0.7rem;
}

.subsc_gaiyou{
height:250px;
border:1px solid #eee;
padding:10px;
margin-bottom:20px;
}

.btn_subsc{
text-align:center;
margin-bottom:20px;
}

table.data-keisiki{
border:1px solid #aaa;
border-collapse:collapse;
width:100%;
margin:20px 0;
}

table.data-price{
border:1px solid #aaa;
width:100%;
border-collapse:collapse;
margin:5px 0 20px 0;
}

table.data-price td{
border:1px solid #aaa;
padding:3px;
font-size:0.7rem;

}

table.data-price2{
border:1px solid #aaa;
width:100%;
border-collapse:collapse;
margin:5px 0 60px 0;
}

table.data-price2 td{
border:1px solid #aaa;
padding:3px;
font-size:0.7rem;

}

table.data-keisiki td{
border:1px solid #aaa;
padding:10px;

}

table.datalist-t{
border:1px solid #aaa;
width:100%;
border-collapse:collapse;
margin:20px 0;
}

table.datalist-t td{
border:1px solid #aaa;
padding:5px;

font-size:75%;
}

table.datalist-h{
border:1px solid #aaa;
width:100%;
border-collapse:collapse;
margin:20px 0;
}

table.datalist-h td{
border:1px solid #aaa;
padding:5px;

font-size:75%;
}

.table-data2{
border:1px solid #999;
width:100%;
border-collapse:collapse;
border-spacing:0px;

}

.table-data2 th{
border:1px solid #999;

padding:3px;
text-align:center;
}

.table-data2 td{
border:1px solid #999;
font-size:0.7rem;
padding:10px;
}
.data_items{
display:flex;
margin:10px 0 40px 0;
}

.data_items div{
width:49%;
padding:10px;
border:1px solid #aaa;
font-size:1.2rem;
text-align:center;
}

.data_items div a{
text-decoration:none;
}

.data_items div a:hover{
text-decoration:underline;
}

.data_items div+div{
margin-left:2%;
}

.items_list_ti{
font-weight:bold;
font-size:1.2rem;
margin-top:1200px;
}


.cp_qa *, .cp_qa *:after, .cp_qa *:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cp_qa {
	
}
.cp_qa .cp_actab {
	position: relative;
	overflow: hidden;
	width: 100%;
	margin-bottom: 1px;
	color: #1b2538;
}
.cp_qa .cp_actab input {
	position: absolute;
	opacity: 0;
}
/* 質問 */
.cp_qa .cp_actab label {
	font-weight: bold;
	line-height: 1.6;
	position: relative;
	display: block;
	margin: 0 0 0 0;
	padding: 1em 2em 1em 1em;
	cursor: pointer;
	
background-color:#ccc;
}
.cp_qa .cp_actab label:hover {
	color: #00838F;
}
/* 答え */
.cp_qa .cp_actab .cp_actab-content {
	overflow: hidden;
	max-height: 0;
	-webkit-transition: max-height 0.5s ease;
	        transition: max-height 0.5s ease;
	color: #333;
	background: rgba(0, 131, 143, 0.5);
}
.cp_qa .cp_actab .cp_actab-content p {
	margin: 1em;
}
/* 質問を開いた時の仕様 */
/* --アイコン */
.cp_qa .cp_actab input:checked ~ label {
	color: #00838F;
}
/* --答えの高さ */
.cp_qa .cp_actab input:checked ~ .cp_actab-content {
	max-height: 6000px;
}
/* 質問をクリックした時のアイコンの動き */
.cp_qa .cp_actab label::after {
	line-height: 1.6;
	position: absolute;
	top: 50%;
	right: 0;
	display: block;
	width: 3em;
	margin-top: -12.5px;
	-webkit-transition: all 0.5s ease;
	        transition: all 0.5s ease;
	text-align: center;
}
.cp_qa .cp_actab input[type=checkbox] + label::after {
	content: '▼';
}
.cp_qa .cp_actab input[type=checkbox]:checked + label::after {
	-webkit-transform: rotateX(180deg);
	transform: rotateX(180deg);
}

ul.sitemap li{
display:block;
}

ul.sitemap li.tetsutop{
 list-style: none;
background-color:#ccc;
padding:5px;
}

ul.sitemap li.hitetsutop{
 list-style: none;
background-color:#ccc;
padding:5px;
}

ul.cate{
padding:0;
margin:0;
}

ul.cate li.share {

margin:25px 1px;
padding:0;
}

/*固定ページ終わり*/


/*リンク*/
.link-wrap{
  display: flex;
  flex-wrap:wrap;
  /*widthは数値で設定しないでね！カラム落ちしなくなるよ*/
}

.link-wrap div{
white-space: nowrap;
font-size:0.8rem;
background: #efefef;
  padding: 1em;
  flex: 1 0 40px;
  margin: 0.4em;
}

.link-wrap div a{
text-decoration:none;
color:#333;
}

.link-wrap div a:hover{
text-decoration:underline;
}

/*リンク終わり*/

/*フル画面メイン*/
.main_full{
  width:100%;
  text-align:left;
  background-color: #fff;
  margin-top:32px;
  padding:0;
display:block;
overflow:hidden;
box-sizing:border-box;
  
}


.full_ti{
padding:10px 0;
color:#000;
margin:0 10px 20px 0;
font-size:1.4rem;
font-weight:bold;
color:#4a4949;
border-bottom:1px solid #4a4949;
width:100%;
text-align:center;
}

.full_ti p{
margin:0;
}

.index_wrap{
display:flex;
  -webkit-flex-wrap: wrap;          /* Safari etc. */
  -ms-flex-wrap    : wrap;          /* IE10        */
  flex-wrap        : wrap;
}

.index_wrap div{

padding:20px;
margin-bottom:20px;
border-top:1px solid #ccc;
border-bottom:1px solid #ccc;
border-right:1px solid #ccc;
overflow:hidden;
box-sizing:border-box;
}

.index_t{
font-weight:bold;
}

.index_l{
width:49%;
border-left:15px solid #304f78;
margin-right:2%;
background-color:#eeeeee;
}

.index_l p{
font-weight:bold;
color:#304f78;
margin:0;
}

.index_r{
width:49%;
border-left:15px solid #a40035;
background-color:#eeeeee;
}

.index_r p{
font-weight:bold;
color:#a40035;
margin:0;
}

.index_b{
width:100%;
border-left:15px solid #333;
background-color:#eeeeee;
}

.dlist{
width:100%;

}

.dlist p.subti{
display: inline-block;
padding:5px 10px;
color:#fff;
font-weight:bold;
float:left;
}

.dlist p.sbt_p{
background-color:#d25702;
}

.dlist p.sbt_t{
background-color:#304f78;

}

.dlist p.s_top{
display:block;
float:left;
vertical-align:bottom;
margin-left:10px;
height:32px;
}

.dlist p.s_top img{
	margin: 0;
	padding: 0;
	vertical-align: bottom;
}

.dlist p.sbt_h{
background-color:#a40035;
}

.sbt_o{
background-color:#424242;
}

ul.dlistmark {
  font-size: 0;
margin:40px 0 0 0;
padding:0;
}

ul.dlistmark li {
  display: inline-block;
vertical-align: middle;
  font-size: 1rem;

  padding: 0 10px 0 0;
}

li.dlist_t{
color:#304f78;
font-weight:bold;
}


li.dlist_h{
color:#a40035;
font-weight:bold;
}

li.dlist_o{
color:#424242;
font-weight:bold;
}


.dlist_wrap{
display:flex;
  -webkit-flex-wrap: wrap;          /* Safari etc. */
  -ms-flex-wrap    : wrap;          /* IE10        */
  flex-wrap        : wrap;
width:100%;
}

.dlist_2c{
display:flex;
  -webkit-flex-wrap: wrap;          /* Safari etc. */
  -ms-flex-wrap    : wrap;          /* IE10        */
  flex-wrap        : wrap;
width:100%;
}

.dlist_wrapout_2c{
display:inline-block;
width:49.5%;

}

.dlist_wrap_2c{
display:flex;
  -webkit-flex-wrap: wrap;          /* Safari etc. */
  -ms-flex-wrap    : wrap;          /* IE10        */
  flex-wrap        : wrap;
width:100%;
}

.dlist_wrap_2c div.d2c{
width:49.98%;
padding:5px 10px;
margin-bottom:20px;
border:1px solid #ccc;
overflow:hidden;
box-sizing:border-box;
vertical-align:bottom;
}

.dlist_wrap_2c div.d2c p{
padding:0 10px;
margin-bottom:5px;

}

.dlist_wrap_2c div.d2c p a{
text-decoration:none;
color:#31364a;

}

.dlist_wrap_2c div.d2c p a:hover{
text-decoration:underline;

}




.dlist_wrap_2c div.d2c+div.d2c{

border-left:0;

}

.dlist_wrap div{
width:24.98%;
padding:0px 10px 5px 10px;
margin-bottom:20px;
border:1px solid #ccc;
overflow:hidden;
box-sizing:border-box;
}

.dlist_wrap div+div{

border-left:0;

}

.dlist_wrap div p{

padding:0 10px;
margin-bottom:5px;

}

.dlist_wrap div p a{
text-decoration:none;
color:#31364a;
}

.dlist_wrap div p a:hover{
text-decoration:underline;

}

.dlist_wrap table{
width:100%;
margin-top:5px;
}

.dlist_wrap table td{
padding:5px;
}

.dlist_wrap table tr:nth-child(1){
background-color:#999;
color:#fff;
text-align:center;
}

.dlist_wrap div span{
display:block;
width:100%;
font-size:0.6rem;
color:#d25702;
}

.dlist_wrap_2c div span{
display:block;
width:100%;
font-size:0.6rem;
color:#d25702;
}


#breadcrumb ul{
font-size:0.8rem;;
text-decoration: none;
border:1px solid #ccc;
overflow:hidden;
list-style: none;
margin-bottom:30px;
background-color:#999;
padding:10px;
}

#breadcrumb ul li{
float:left;
margin-right:10px;
text-decoration: none;
border:none;
color:#efefef;
}

#breadcrumb ul li a{
text-decoration: none;
color:#fff;
}

#breadcrumb ul li a:hover{
text-decoration: underline;
}

.headline5{
margin:30px 0;
}

.logincheck{
background-color:#666;
color:#fff;
font-size:0.8rem;
padding:5px 20px;
}

.logincheck2{
background-color:#cc0000;
color:#fff;
font-size:0.8rem;
padding:5px 20px;
}

article section ul.cate {
width:100%;
word-break: keep-all;
height:auto;
    background-color:#fff;  
	font-size: 90%;
	line-height: 140%;
	color: #333;
padding:10px 0;
overflow:auto;
border-bottom:1px dotted #666;
margin-bottom:7px;
}



ul.cate li {
	float: left;
list-style-type: none;
border:none;

}

ul.cate li a{
display:block;
}

article section ul.cate li.share {

margin:0 2em 25px 0;
padding:2px 0 2px 10px;
}

table.htmd{
border:1px solid #ccc;
font-size:0.8em;
border-collapse:collapse;
}

table.htmd td,th{
border:1px solid #ccc;
padding:2px 4px;
line-height:1em;
}
table.htmdmax{
border:1px solid #ccc;
font-size:0.8em;
border-collapse:collapse;
}

table.htmdmax td,th{
border:1px solid #ccc;
padding:2px 2px;
line-height:1em;
}

#left-columnnp1{
background-image:url(images/chara_back.png);
padding:100px 0;
text-align:center;
}

#left-columnnp2{
background-color:#f8cee0;
padding:50px 0;
text-align:center;
}

ch_main {
  display: flex;
flex-wrap: wrap;
justify-content: space-around;
}

ch_main div.animal {
border:3px solid #fff;
white-space: nowrap;
background-color:#fff799;
  border-radius: 30px;
padding:10px;
width:27%;
  margin: 5% 0;
}

.animal img{
width:70%;
}

div.animal table{
width:30%;
text-align:left;

margin-top:20px;
border:none;
}

div.animal table td{
border:none;
font-size:0.8rem;
}

div.animal table td.bb{
font-weight:bold;

}






.modal{
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
    font-size:0.9rem;
}
.modal__bg{
    background: rgba(0,0,0,0.8);
    height: 100vh;
    position: absolute;
    width: 100%;
}
.modal__content{
    background: #fff;
    left: 40%;
    padding: 40px;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 60%;
}

.modal__content p{
font-size:0.8rem;
}

.modal__content img.sis { width: 20%;height: 20%; }

/*フル画面メイン終わり*/


/*記事一覧*/

.ichiran{
  width:100%;
  text-align:left;
  background-color: #fff;
  margin-top:32px;
  padding:0;
display:block;
overflow:hidden;
box-sizing:border-box;
font-size:0.8rem;
  
}

.ichiran_ti{
display:block;
padding:10px 0;
margin:0 10px 20px 0;
font-size:1.4rem;
font-weight:bold;
color:#4a4949;
border-bottom:1px solid #4a4949;
text-decoration:none;
}

.ichiran_ti a{
color:#4a4949;
text-decoration:none;
}


.ichiran_nolink_ti{
padding:10px 0;
color:#000;
margin:0 10px 20px 0;
font-size:1.4rem;
font-weight:bold;
color:#4a4949;
border-bottom:1px solid #4a4949;
text-decoration:none;
}

.ichiran_subti{
padding:0;
color:#000;
margin:40px 10px 10px 0;
font-size:1.2rem;
font-weight:bold;
color:#666;

}

.ichiran_wrap{
clear:both;
  width: 100%;
  margin: 0 auto;
padding:30px 0;
overflow:hidden;
border-bottom:1px solid #cdcdcd;
box-sizing:border-box;
display:flex;
}

.ichiran_wrap div a{
font-size:0.8rem;
font-weight:bold;
display:block;
text-decoration:none;
color:#403f3f;
}

.ichiran_wrap div a:hover{
text-decoration:underline;
}

.ichiran_wrap div a:visited{
color:#666;
}

.ichiran_wrap div.ic_l{

margin-right:20px;
}

div.ic_l img{

min-width:101px;
}

.ic_l span.ic_date{
display:block;
color:#0060BF;
font-size:0.6rem;
margin:0 0 4px 0;
}

.new{font-size:0.7rem;color:#fff;background-color:#f5a343;padding:0 2px;border-radius:2px;}

.pagination {
clear:both;
padding:20px 0;
position:relative;
font-size:11px;
line-height:13px;
}
 
.pagination span, .pagination a {
display:block;
float:left;
margin: 2px 2px 2px 0;
padding:6px 9px 5px 9px;
text-decoration:none;
width:auto;
color:#fff;
background: #555;
}
 
.pagination a:hover{
color:#fff;
background: #3279BB;
}
 
.pagination .current{
padding:6px 9px 5px 9px;
background: #3279BB;
color:#fff;
}


div.bookout{
display:flex;
padding:20px 0;
margin-bottom:20px;
border-bottom:1px dotted #666;

}

.jmbook{
margin-right:20px;
}

.bookout div{
font-size:0.8rem;

}

.bookout div a{
font-weight:bold;
text-decoration:none;
color:#403f3f;

}

.bookout div a:hover{
text-decoration:underline;

}


/*記事一覧終わり*/



/*フォーム*/

 .ichiran table.cform {
  
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 3px;
  overflow: hidden;


}

.cform th {
	font-size: 14px;
	width: 30%; /*変なところで改行される場合はここの数字を変更します。*/
	background-color:#ddd;
color:#666;
	font-weight: normal;
border-bottom:1px solid #f1f0f0;
padding:5px 5px 5px 15px;

        
}

.cform tr{
border-bottom:1px solid #fff;
}

.cform tr:last-child{
border:0;
background-color:#fff;
}

.cform td {
border-bottom:1px solid #fff;
	line-height: 150%;
	background-color:#efefef;
	padding: 10px 15px;
font-size:0.7rem;
}

.cform td span.attention{
display:block;
margin:5px;
font-size:0.6rem;

}

.cform label {
margin-right:10px;
}
.cform {
	width: 100%;
	margin: auto;
}

.cform [type=submit] {
	display: inline-block;
	font-size: 20px;
	padding: 10px 30px;
	text-decoration: none;
	background: #ff8f00;
	color: #FFF;
	border-bottom: solid 4px #B17C00;
	border-radius: 10px;
}

.cform option,
.cform textarea,
.cform input[type=text],
.cform input[type=email],
.cform input[type=search],
.cform input[type=url],
.cform select {	
font-size: 0.9rem;
padding:1%;
border:1px solid #fff;
color:#666;
}



.cform textarea {
	
width:98%;
}



.required-srt {
display:block;
width:22px;
	font-size: 8pt;
	padding: 0 5px;
	background: #d25702;
	color: #fff;
	border-radius: 3px;
	margin: 0 0 5px 0;
	vertical-align: middle;
}



.submit-btn input {
	background: #00142c;
	width: 60%;
	max-width: 550px;
	min-width: 220px;
	margin: 30px auto;
	display: block;
	border: 1px #00142c solid;
	text-align: center;
	padding: 15px;
	color: #fff;
	transition: all 0.4s ease;
　　　　
}

.submit-btn input:hover {
	background: #fff;
	color: #00142c;
}





/*フォーム終わり*/







#nav{

  background-color: #444;	
  padding: 3px;	
} 


#nav ul{
  padding: 0px; 	
  margin: 0px;
} 


#nav ul li {
  display: inline;
  padding:0 1%;
  border-left: 1px solid #fff;
  border-right: 1px solid #fff;
} 


#nav ul li+ li {
  border-left: 0;
  border-right: 1px solid #fff;
} 

#nav ul li a { 
  font-family: "Trebuchet MS", sans-serif; 
  text-decoration: none;
  color: #fff; 	 
} 


#nav ul li a:hover{ 
  border-bottom: dotted 1px #fff;	 
}




.kiziriyouPDFbtn{display: inline-block;
  padding: 7px 20px;
  border-radius: 25px;
  text-decoration: none;
  color: #FFF;
  background-image: linear-gradient(45deg, #f76617 0%, #f76617 100%);
  transition: .4s;
  font-weight: normal;}
.kiziriyouPDFbtn:hover{background-image: linear-gradient(45deg, #f8803f 0%, #f8803f 100%);}


.nikkei{display: inline-block;
  padding: 7px 20px;
  border-radius: 10px;
  text-decoration: none;
  color: #FFF;
  background-image: linear-gradient(45deg, #81a0cc 0%, #81a0cc 100%);
  transition: .4s;
  font-weight: normal;
  text-align:center;
  width: 16em;
  margin: 0 auto;}

.nikkei:hover{background-image: linear-gradient(45deg, #acbfdd 0%, #acbfdd 100%);}

.kijiriyou_hov a{color:#fff;}
.kijiriyou_hov a:hover{text-decoration:none;}
.nikkei_hov a{color:#fff;}
.nikkei_hov a:hover{text-decoration:none;}
.nikkei_hov{text-align: center;}


/*お問い合わせフォーム*/
/*Contact Form 7カスタマイズ*/
/*スマホContact Form 7カスタマイズ*/

/*見出し欄*/
.inquiry th{
 text-align:left;
 font-weight: bold;
 font-size:12px;
 color:#fff;
 padding-right:5px;
 width:30%;
 background:#546474;
 border:solid 1px #fff;
}
/*通常欄*/
.inquiry td{
 font-size:13px;
 border:solid 1px #d7d7d7;	
}
/*横の行とテーブル全体*/
.entry-content .inquiry tr,.entry-content table{
 border:solid 1px #d7d7d7;	
}

/*記事利用見出し欄*/
.kiziriyou_inquiry th{
 text-align:left;
 font-weight: bold;
 font-size:12px;
 color:#fff;
 padding-right:5px;
 background:#546474;
 border:solid 1px #fff;
 height: 50px;
}
/*通常欄*/
.kiziriyou_inquiry td{
 font-size:12px;
 border:solid 1px #d7d7d7;
 height: 50px;
}
/*横の行とテーブル全体*/
.entry-content .kiziriyou_inquiry tr,.entry-content table{
 border:solid 1px #d7d7d7;	
}
/*必須の調整*/
.haveto{
 font-size:9px;
 width:9px;
 padding:0 3px;
 background:#c1541c;
 color:#fff;
 border-radius:10px;
 margin-right:5px;
 position:relative;
 bottom:1px;
}
/*任意の調整*/
.any{
 font-size:9px;
 width:9px;
 padding:0 3px;
 background:#018a9a;
 color:#fff;
 border-radius:10px;
 margin-right:5px;
 position:relative;
 bottom:1px;
}
/*ラジオボタンを縦並び指定*/
.verticallist .wpcf7-list-item{
 display:block;
}

.wpcf7 input[name="your-name"],
.wpcf7 input[name="your-namehuri"],
.wpcf7 input[name="zip"],
.wpcf7 input[name="pref"],
.wpcf7 input[name="city"],
.wpcf7 input[name="addr"],
.wpcf7 input[name="your-industry"],
.wpcf7 input[name="your-department"],
.wpcf7 input[name="your-company"],
.wpcf7 input[name="your-faxnumber"],
.wpcf7 input[name="your-number"],
.wpcf7 input[name="your-date"],
.wpcf7 input[name="email-591"],
.wpcf7 input[name="your-subject"],
.wpcf7 input[name="chara-name"],
.wpcf7 input[name="your-url"]
 {
        width: 80%;
        height: 35px;
    background: #fff !important; /* 背景色 */
    border: solid 1px #eee;/* 枠線 */
     color: #666;
    border-radius: 0.1em;   /* 角丸 */
    padding: 0.5em;          /* 内側の余白量 */
    font-size: 1em;          /* 文字サイズ */
    line-height: 1.2;        /* 行の高さ */
}

/* 確認画面*/
input:-webkit-autofill.wpcf7c-conf {
  -webkit-box-shadow: 0 0 0px 1000px #fff inset !important;
  border: none !important;
  background: #fff !important; }
  input:-webkit-autofill.wpcf7c-conf:focus {
    border: none !important; }

.wpcf7c-conf {
  background: #fff !important;
  border-color: #fff !important; }
  .wpcf7c-conf:focus {
    border-color: transparent !important; }

.wpcf7 textarea{
        width: 80%;
    　　font-size: 1em;
    　　background-color: snow;
        height: 50px !important;
}



.wpcf7 textarea{
        width: 80%;
    　　font-size: 1em;
    　　background-color: snow;
        height: 100px !important;
}

details.kiyaku{
    margin: 20px 20px;
    border: 1px solid #aaa;
    border-radius: 4px;
    padding: .5em .5em 0;
    background: #fff;
}
details.summery{
    font-weight: bold;
    margin: -.5em -.5em 0;
    padding: .5em;
    color: #fff;
    font-weight: bold;
}

details.kiyaku[open] {
    padding: .5em;
}

details.kiyaku[open] summary {
    border-bottom: 1px solid #aaa;
    margin-bottom: .5em;
}



div.submit_contactbtn input[type="submit"]{
  display: block;
  font-size: 100%;
  font-weight: bold;
  background:#c3c3c3;
  border: none;
  color: #fff;
  cursor: pointer;
  height: 4em;
  line-height: 4em;
  padding: 0 4em;
  border-radius: 2px; 
}
div.submit_contactbtn input[type="submit"]:hover{
    background:#008000;
    color: #fff;
}


.modorubtn5{
    display: block;
  font-size: 100%;
 font-weight: bold;
  margin:2px 20px;
  background: #c3c3c3;
  border: none;
  color: #fff;
  cursor: pointer;
  height: 4em;
  line-height: 4em;
  padding: 0 4em;
  border-radius: 2px; }

.modorubtn5:hover{
    background:#12397a;
    color:#fff;
}

/* test form */
.soushinbtn55{
  display: block;
  width:250px;
  margin: auto;
  font-size: 100%;
  font-weight: bold;
  background:#e1e1e1;
  border: none;
  color: #fff;
  cursor: pointer;
  height: 4em;
  line-height: 4em;
  padding: 0 4em;
  border-radius: 2px; 
}
.soushinbtn55:hover{
    background:#008000;
    color:#fff;
}
.kakuninnbtn55{
  display: block;
font-size: 100%;
 float: left;
 font-weight: bold;
  background: #666;
  border: none;
  color: #fff;
  cursor: pointer;
  height: 4em;
  line-height: 4em;
  padding: 0 4em;
  border-radius: 2px; 
}

.kakuninnbtn55:hover{
    background: #e1e1e1;
    color: #12397a;
}

.modorubtn55{
    display: block;
  font-size: 100%;
    float: left;
 font-weight: bold;
    float: left;
  background: #c3c3c3;
  border: none;
  color: #fff;
  cursor: pointer;
  height: 4em;
  line-height: 4em;
  padding: 0 4em;
  border-radius: 2px; }

.modorubtn55:hover{
    background: #e1e1e1;
    color: #12397a;
}


/* test form */

.searchbox{
position:relative;
}

.searchfield {
	
  font-size: 14px;
	
  width: 92%;
	
  margin-top: 25px;
	
  padding: 10px;
	
  border: solid 1px #bbb;
	
  border-radius: 4px;
	
  background-color: #fff;
	
}
	
 
	
input.searchsubmit {
	
  font-family: FontAwesome;
	
  font-size: 1.4em;
	
  position: absolute;
	
  top: 20px;
	
  right: 3%;
	
  margin-top: 10px;
	
  padding: 0;
	
  cursor: pointer;
	
  color: #6297f5;
	
  border: none;
	
  background: transparent;
	
}
	
 
	
.searchsubmit:hover {
	
  opacity: .6;
	
}

input.ser_button{
  display: block;
  font-size: 100%;
  font-weight: bold;
  background:#c3c3c3;
  border: none;
  color: #fff;
  cursor: pointer;
  height: 4em;
  line-height: 4em;
  padding: 0 4em;
  border-radius: 2px; 
}

input.sub_button {
  display: inline-block;
  font-size: 0.8rem;;
  font-weight: bold;
  background:#cc0000;
  border: none;
  color: #fff;
  cursor: pointer;
  height: 2em;
  line-height: 2em;
  padding: 0 2em;
  border-radius: 2px; 
}
input.sub_button:hover{
    background:#008000;
    color: #fff;
}

.follow-me {
  list-style: none;
  margin: 0 0 -8px;
  overflow: hidden;
  padding: 0;
}
.follow-me li {
  float: left;
  margin: 0 8px 8px 0;
  padding: 0;
}
.follow-me li a::before {
  border-style: solid;
  border-width: 1px;
  -webkit-border-radius: 2px;
  border-radius: 2px;
  color: #fff;
  display: inline-block;
  font-family: FontAwesome;
  font-size: 16px;
  height: 42px; /* Button height */
  line-height: 42px; /* Button height */
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  text-align: center;
  width: 42px; /* Button width */
}

.follow-me li a[href*="twitter.com"]::before        { border-color: #55acee; background-color: #55acee; content: "\f099"; }
.follow-me li a[href*="twitter.com"]:hover::before        { color: #55acee;background-color:#fff; }



/* お問い合わせ⇒サンクスページ　トップへ戻るのボタン */
div.otoiawaseformbtn{
    width:140px;
    height:50px;
    line-height:50px;
    margin: 5px 225px;
}
div.otoiawaseformbtn a{
    display:block;
    width:100%;
    height:100%;
    text-decoration: none;
    background:#d26900;
    text-align:center;
    color:#FFFFFF;
    font-size:12px;
    font-weight:bold;
    border-radius:10px;
    -webkit-border-radius:10px;
    -moz-border-radius:10px;
    box-shadow:2px 2px 0px 0px #DEDEDE ;
}
div.otoiawaseformbtn a:hover{
    background:#d26900;
    color:#fff;
    margin-left:5px;
    margin-top:5px;
    box-shadow:none;
}

div.kakuninbtn{
  border: 1px solid green;
  border-radius: 5px;
  background-color: green;
  padding: 20px;
  text-align: center;
  color: white;
  width: 150px;
}


/* バックナンバー販売 */
div.baknu table{
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  width: 100%;
}

div.baknu table tr:last-child{
  border-bottom:solid 1px #ddd;
}

div.baknu table th{
  text-align: center;
  background-color:#244765;
  color:#FFF;
  border-right:solid 1px #ddd;
  border-left:solid 1px #ddd;
  
  font-size:1rem;
  font-weight:bold;
}

div.baknu table th,td{
padding:15px 5px;
}

div.baknu table tr td{
padding:15px 5px;
}

div.baknu_2 table{
  width: 100%;
font-size:1rem;
}

div.baknu_2 table th,div.baknu_2 table td,div.baknu_2 table caption{

padding:10px 5px;
}

div.baknu_2 table th{
font-weight:bold;
text-align:center;
}

div.baknu_2 table th:nth-child(1){
  background-color:#244765;
  color:#FFF;
}


div.baknu_2 table th:nth-child(2){
  background-color:#6a6a68;
  color:#FFF;
}

div.baknu_2 table th:nth-child(3){
  background-color:#872226;
  color:#FFF;
}


div.baknu table tr:nth-child(2) td{
  font-size: 30px;
}

div.baknu_2 table td{
  text-align: center;
  padding: 7px 0;
  border-right:solid 1px #ddd;
  border-left:solid 1px #ddd;
  width: 155px;
　font-size: 100%;
}

.btn-border-bottom {
  position: relative;
  display: inline-block;
  font-weight: bold;
  padding: 0.25em 0;
  text-decoration: none;
  color: #1489ff;  
}

.btn-border-bottom:before {
  position: absolute;
  content: '';
  width: 100%;
  height: 4px;
  top:100%;
  left: 0;
  border-radius: 3px;
  background:#1489ff;
  transition: .2s;
}

.syousaibutton{
  width:40%;
  position: relative;
  display: inline-block;
  padding: .9em 4em;
  background-color: #333;
  border: 2px solid #333;
  color: #fff;
  text-align: center;
  text-decoration: none;
  transition: all .3s;
}

a.syousaibutton {
  font-size:0.9rem;
  color: #fff;
}

.syousaibutton:after {
  position: absolute;
  top: 50%;
  right: .2em;
  content: '';
  margin-top: -5px;
  border: 7px solid transparent;
  border-top-width: 5px;
  border-bottom-width: 5px;
  border-left-color: #fff;
  transition: all .3s;
}
.syousaibutton:hover {
  background-color: #fff;
  color: #333;
}
.post-contents ..syousaibutton01:hover::after {
  border-left-color: #333;
}

/* sidbar　お問合せ */
.flex_box_sidbar_contact{
    display:flex;
}

/* サイド　価格　上　はじめ*/
.side_price_top{
width:100%;
margin:0;
padding:0;
border: 1px solid #ccc;

}

div.side_price_top p{
margin:15px 0;
padding:0;
vertical-align:bottom;
}


.side_price_top_box a{
color:#fff;
text-align:center;
display:block;
padding:10px;
font-weight:bold;
border-radius:2px;
text-decoration:none;
background-color:#2091c7;
margin-bottom:20px;
}

.side_price_top_eachbox a{
color:#666;
display:block;
padding:10px;
text-align:center;
border:1px solid #ccc;
border-radius:2px;
text-decoration:none;
background-color:#fff;
margin-top:20px;
margin-left: 20px;
margin-right:20px;
font-size:0.8rem;
}

.side_price_top_eachbox a:hover{

background-color:#fef4ef;
}

.side_price_top_eachbox_bottom{
  margin-bottom:20px;  
}
/* サイド　価格　上 終わり*/

/* スマホ版　キャラファイル */

.sumaho_kyara_waku {
border:3px solid #fff;
white-space: nowrap;
background-color:#fff799;
  border-radius: 30px;
padding:25px;
  margin: 5% 0;
}
div.sumaho_kyara_waku table{
margin-top:20px;
border:none;
}

div.sumaho_kyara_waku table td{
border:none;
}

div.sumaho_kyara_waku table td.bb{
font-weight:bold;
   } 

/* お問い合わせ　日付　幅 */
.date_width_year{
    width: 50px
}
.date_width_month{
    width: 50px
}
.date_width_day{
    width: 50px
}
/* お問い合わせ　日付　幅 終わり*/

/* タイアップ広告*/
.spe_title_taiappu a {
  position: relative;
  display: inline-block;
  text-decoration: none;
  color:#575858;
  font-weight:bold;
  font-size:1rem;
}

.spe_title_taiappu a:hover{
  text-decoration: none;
}

.spe_title_taiappu a::after {
  position: absolute;
  bottom: -4px;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #112342;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .3s;
}
.spe_title_taiappu a:hover::after {
  transform: scale(1, 1);
}
.spe_title_taiappu{
    width:100%;
    margin: 0 0;
}

.spe_2{
  clear:both;
  width:100%;
  
  margin-top:5px;
  
overflow:hidden;
text-align:left;
box-sizing:border-box;
}
/* タイアップ広告　終わり*/

/* バナー広告　始まり*/
.koukoku_top_{
    font-size:30px;
    background-color:#b8d200;
    color:#fff;
    padding:20px 5%;
    line-height:100%;
    margin:10px 5%;
    text-align: center;
}

.koukoku_flix_box{
    display:flex;
}


.koukoku_box{
    background-color:#fbc225;
    list-style:none;
    font-size:15pt;
    padding: 20pt;
}

.zesseki_font{
    color:#b8d200;
    font-size:15pt;
    margin:10px 5%;
    font-weight:bold;
    }
.zesseki_font_2{
    margin:10px 5%;
}
.tuyomi_font{
    color:#2b478b;
    font-size:15pt;
    margin:10px 5%;
    font-weight:bold;
    }

.tuyomi_border{
 border: solid 1px #e0e0e0;
 margin: 5px 5%;
}

.tuyomi_box{
    background-color:#2b478b;
    color:#fff;
    padding: 5pt 5%;
    margin:10px 5%;
    text-align:center;
}
.tuyomi_font2{
    text-align:center;
}
/* バナー広告　終わり*/
/* 学生パック*/
.degital_gakusei_h2 {
  position: relative;
  padding: 1rem .5rem;
}

.degital_gakusei_h2:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  content: '';
  background-image: -webkit-gradient(linear, left top, right top, from(#fa709a), to(#fee140));
  background-image: -webkit-linear-gradient(left, #fa709a 0%, #fee140 100%);
  background-image: linear-gradient(to right, #fa709a 0%, #fee140 100%);
}

.degital_picture_tuyomi_sumaho{
    display: none;
}
/* 学生パック終わり*/
/*脱炭素　始まり*/
.datutannsobtn-sticky {
  display: inline-block;
  padding: 0.5em 1em;
  text-decoration: none;
  background: #f7f7f7;
  border-left: solid 6px #4ebbfe;/*左線*/
  color: #696969;/*文字色*/
  font-weight: bold;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
}
.datutannsobtn-sticky:active {
  box-shadow: inset 0 0 2px rgba(128, 128, 128, 0.1);
  transform: translateY(2px);
}
/*脱炭素　終わり*/

/*紙面ご購読者限定ページ*/

.sospe_l{
display:flex;
justify-content: center;
flex-wrap: wrap;
justify-content: space-between;
}

.sospe_l div{

  width: 18%;
  margin:0 0 20px 0;

box-sizing: border-box;}

.so_btn_efct {
    display: block;
    position: relative;
    width: 100%;/*ボタンの幅*/
    padding: 10px 0;
    margin: 30px auto;
    background-color: #002949;/*ボタンの色*/
    border-radius: 5px;
    font-weight: bold;
    font-size: 18px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    overflow: hidden;
}
.so_btn_efct:hover {
    text-decoration: none;
    color: #fff;
}
.so_btn_efct::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #fff;
    animation: so_btn_efct 3s ease-in-out infinite;
}
@-webkit-keyframes so_btn_efct {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

.so_mozi_koukyu{
background-image: linear-gradient(0deg, #fff 0%, #ffce08 37%, #fefeb2 47%, #fafad6 50%, #fefeb2 53%, #e1ce08 63%, #fff 100%);
  -webkit-background-clip: text;
  color: transparent;
}


/*紙面ご購読者限定ページ　終わり*/
/*グリッド様　スタート*/

.gridpredict_btn-orange {
    display: block;
    position: relative;
    width: 20%;/*ボタンの幅*/
    padding: 10px 0;
    margin: 30px auto;
    background-color: #2c6ebd;/*ボタンの色*/
    border-radius: 5px;
    font-weight: bold;
    font-size: 18px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    overflow: hidden;
}
.gridpredict_btn-orange:hover {
    text-decoration: none;
    color: #fff;
}
.gridpredict_btn-orange::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #fff;
    animation: gridpredict_btn-orange 3s ease-in-out infinite;
}
@-webkit-keyframes gridpredict_btn-orange {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

.gridpredict_btn_official {
    display: block;
    position: relative;
    width: 30%;/*ボタンの幅*/
    padding: 10px 10px;
    margin: 30px auto;
    background-color:#fff;/*ボタンの色*/
    border-radius: 40px;
    border:8px solid #fff;
    font-size: 150%;
    color: #525252;
    text-align: center;
    overflow: hidden;
    text-decoration: none;
    box-shadow: 0 0 8px gray;
    font-weight: bold;
}


.gridpredict_btn_mail {
    display: block;
    position: relative;
    width: 40%;/*ボタンの幅*/
    padding: 15px 15px;
    margin: 30px auto;
    background:linear-gradient(#05FBFF, #1E00FF);/*ボタンの色*/
    border-radius: 40px;
    border:8px solid #fff;
    font-size: 150%;
    color: #fff;
    text-align: center;
    overflow: hidden;
    text-decoration: none;
    box-shadow: 0 0 8px gray;
    font-weight: bold;
}
.gridpredict_btn_mail:hover {
    text-decoration: none;
    color: #fff;
}
.gridpredict_btn_mail::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #fff;
    animation: gridpredict_btn_mail 3s ease-in-out infinite;
}
@-webkit-keyframes gridpredict_btn_mail {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

.gridpredict_btn_siryou {
    display: block;
    position: relative;
    width: 40%;/*ボタンの幅*/
    padding: 15px 15px;
    margin: 30px auto;
     background:linear-gradient(#f37d4f, #ffed39);/*ボタンの色*/
    border-radius: 40px;
    border:8px solid #fff;
    font-size: 150%;
    color: #fff;
    text-align: center;
    overflow: hidden;
    text-decoration: none;
    box-shadow: 0 0 8px gray;
    font-weight: bold;
}
.gridpredict_btn_siryou:hover {
    text-decoration: none;
    color: #fff;
}
.gridpredict_btn_siryou::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #fff;
    animation: gridpredict_btn_siryou 3s ease-in-out infinite;
}
@-webkit-keyframes gridpredict_btn_siryou {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

.gridpredict_stibar {font-size:120%;font-weight:bold;padding:20px 10px;margin:20px 2px;background:linear-gradient(#d5e3f0,#eff4f9);
}

.a_kasennsakuzyo{
 text-decoration: none;   
}

.gridpredict_siryou_hukidashi{
  display: inline-block;
  font-family: 'Anton', sans-serif;
  font-size:120px;
  color:#EE3333;
  letter-spacing:-0.04em;
}

.gridpredict_siryou_hukidashi span{
  font-size:80px;
  font-family: 'M PLUS 1p', sans-serif;
  text-stroke: 0.1px #FFF;
  -webkit-text-stroke: 0.1px #FFF;
  font-weight:900;
}

.renom_subti{
padding:10px 20px;
background-color:#00255a;
color:#fff;
font-size:1.6rem;
font-weight:bold;

}


.grid_h2:first-letter {
  font-size: 150%;
  color: #00255a;
}

.grid_h2box{
    padding: 0.5em 1em;
    margin: 2em 0;
    color: #5d627b;
    background: white;
    border-top: solid 5px #5d627b;
    box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
}
.grid_h2box p {
    margin: 0; 
    padding: 0;
}

.gridrenom_sabu {
  position: relative;
  padding: 1em 2em;
  text-align: center;
}

.gridrenom_sabu:before,
.gridrenom_sabu:after {
  position: absolute;
  content: '';
}

.gridrenom_sabu:after {
  top: 0;
  left: 0;
  width: 10px;
  height: 50px;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
}

.gridrenom_sabu:before {
  right: 0;
  bottom: 0;
  width: 10px;
  height: 50px;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
}
/*グリッド様　終わり*/





/*グリッド様 スクロールCSS　スタート*/

.fade-in {
  opacity: 0;
  transition-duration: 500ms;
  transition-property: opacity, transform;
}

.fade-in-up {
  transform: translate(0, 50px);
}

.fade-in-down {
  transform: translate(0, -50px);
}

.fade-in-left {
  transform: translate(-50px, 0);
}

.fade-in-right {
  transform: translate(50px, 0);
}

.scroll-in {
  opacity: 1;
  transform: translate(0, 0);
}
/*グリッド様 ScrollReveal　終わり*/



.Grid{
  display: grid;
grid-template-columns: repeat(auto-fit,minmax(300px,380px));
  grid-gap: 20px;
}

.Grid div.no1{


}


.Grid div{
padding:0;
margin:30px 0;
}

.Grid div img{
width:100%;

}

.Grid div div{
text-align:left;
paddig:0 10px;
}







.Grid-adt{
  display: grid;
grid-template-columns: repeat(auto-fit,minmax(300px,380px));
  grid-gap: 20px;
margin:20px 0;
}

.Grid-adt div.no1{


}


.Grid-adt div{
padding:5px;
margin:0 0 5px 0;
border:2px solid #999;
border-radius:5px;
}

.Grid-adt div img{
width:100%;

}

.Grid-adt div div{
text-align:left;
padding:0 10px;
}





.Grid-exp{
  display: grid;
grid-template-columns: repeat(auto-fit,minmax(300px,380px));
  grid-gap: 20px;
margin:20px 0;
}

.Grid-exp div.no1{


}


.Grid-exp div{
padding:20px;
margin:0 0 5px 0;
	border-radius: 30px 60px/60px 30px;
	border: solid 8px #ccc7be;
}

.Grid-exp div img{
width:100%;

}

.Grid-exp div div{
text-align:left;
padding:0 10px;
}

.Grid-exp-m{
  display: grid;
grid-template-columns: repeat(auto-fit,minmax(580px,380px));
  grid-gap: 20px;
margin:20px 0;
}

.Grid-exp-m div.no1{


}


.Grid-exp-m div{
font-size:0.85rem;
padding:20px;
margin:0 0 5px 0;
	border: solid 2px #ccc7be;
}

.Grid-exp-m div img{
width:100%;

}

.Grid-exp-m div div{
text-align:left;
padding:0 10px;
}



.Grid-exp-s{
  display: grid;
grid-template-columns: repeat(auto-fit,minmax(100%,380px));
  grid-gap: 20px;
margin:20px 0;
}

.Grid-exp-s div.no1{


}


.Grid-exp-s div{
font-size:0.85rem;
padding:20px;
margin:0 0 5px 0;
background-color:#f0f6fa;
	border: solid 2px #ccc7be;
}

.Grid-exp-s div img{
width:100%;

}

.Grid-exp-s div div{
text-align:left;
padding:0 10px;
}

.Grid-scrapr{
  display: grid;
grid-template-columns: repeat(auto-fit,minmax(300px,380px));
  grid-gap: 20px;
margin:20px 0;
}

.Grid-scrapr div.no1{


}


.Grid-scrapr div{
padding:5px;
margin:0 0 5px 0;
border:1px solid #eee;
line-height:0.7rem;
border-radius:3px;
}

.Grid-scrapr div img{
width:30%;
float:left;
margin-right:10px;
}

.Grid-scrapr div div{
text-align:left;
padding:0 10px;
}


div.flex_scrapr_title {
  display:-webkit-box; // その他色々用のベンダープレフィックス
  display:-ms-flexbox; // IE用のベンダープレフィックス
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
column-gap: 40px;
}

div.flex_scrapr_title div.scrapr_midashi{
width: 600px;
}

div.flex_scrapr_title div.scrapr_ichiran{
width: 70px;
}


.Grid-a_scrappoll{
  display: grid;
grid-template-columns: repeat(auto-fit,minmax(300px,380px));
  grid-gap: 20px;
margin:20px 0;
}




.Grid-a_scrappoll div{
font-size:0.8rem;
margin:0 0 5px 0;
border-radius:5px;
line-height:1rem;

}


.Grid-a_scrapr{
  display: grid;
grid-template-columns: repeat(auto-fit,minmax(300px,380px));
  grid-gap: 20px;
margin:20px 0;
}

.Grid-a_scrapr div.no1{


}


.Grid-a_scrapr div{
font-size:0.8rem;
margin:0 0 5px 0;
border-radius:5px;
line-height:1rem;
background-color:#f3f9de;

}

.Grid-a_scrapr div table{
width:100%;
border:1px solid #ccc;
border-collapse:collapse;
}

.Grid-a_scrapr div table td{
border:1px solid #ccc;
background-color:#fff;
}

.Grid-a_scrapr div img{
display:block;
width:100%;
margin-right:10px;
text-align:center;
margin:15px auto;
}

.Grid-a_scrapr div div{
text-align:left;
}



.Grid-a_scrapr div  p.wakumaru {
width:65%;
margin:15px auto;
border: solid 1px #00A8DD;
  border-top-left-radius: 20px 20px;
  border-top-right-radius: 20px 20px;
  border-bottom-right-radius: 20px 20px;
  border-bottom-left-radius: 20px 20px;
 padding:5px;
text-align:center;
background-color:#00A8DD;
}
.Grid-a_scrapr div  p.wakumaru a{
color:#fff;
text-decoration:none;
}



.Grid-t_scrapr{
  display: grid;
grid-template-columns: repeat(auto-fit,minmax(300px,380px));
  grid-gap: 20px;
margin:20px 0;
}

.Grid-t_scrapr div.no1{


}


.Grid-t_scrapr div{
font-size:0.8rem;
padding:15px 10px 5px 10px;
margin:0 0 5px 0;

line-height:1rem;
background-color:#F2F8F9;
}

.Grid-t_scrapr div table{
width:100%;
border:1px solid #ccc;
border-collapse:collapse;
}

.Grid-t_scrapr div table td{
border:1px solid #ccc;
background-color:#fff;
}

.Grid-t_scrapr div img{
display:block;
width:100%;
margin-right:10px;
text-align:center;
margin:15px auto;
}

.Grid-t_scrapr div div{
text-align:left;
padding:0 10px;
}



.Grid-t_scrapr div  p.wakumaru {
width:65%;
margin:15px auto;
border: solid 1px #00A8DD;
  border-top-left-radius: 20px 20px;
  border-top-right-radius: 20px 20px;
  border-bottom-right-radius: 20px 20px;
  border-bottom-left-radius: 20px 20px;
 padding:5px;
text-align:center;
background-color:#00A8DD;
}
.Grid-t_scrapr div  p.wakumaru a{
color:#fff;
text-decoration:none;
}


.spedate2{
display:block;
font-size:0.6rem;
padding:0;
}

.spedate-scrapr{
display:block;
font-size:0.7rem;
padding-top:5px;
color:#4b86c6;
font-weight:bold;
}


a.spe_ti2{
display:block;
font-size:0.7rem;
text-decoration:none;
color:#666;
}

a.spe_ti2:hover{

text-decoration:underline;
}


a.spe_ti_scrapr{
display:block;
margin-top:10px;
font-size:0.8rem;
line-height:1.2rem;
text-decoration:none;
color:#666;

}

a.spe_ti_scrapr:hover{

text-decoration:underline;
}



.scrapr_ichiran a{
display:block;
background-color:#498ee0;
padding:5px;
border-radius:3px;
font-size:0.8rem;
text-decoration:none;
color:#fff;
}

.scrapr_ichiran a:hover{
background-color:#83aedd;

}

.cont_singlescrapr{
padding:20px 40px;
border:2px solid #eee;
margin:20px 0;
}

.sr {
	font-size: 24px;
color:#777;
}

.sr::before {
	content: attr(data-en);
	display: block;
	color: #498ee0;
	font-size: 16px;
font-weight:narrow;
}

.sr::after {
	content: '';
	display: block;
	width: 40px;
	height: 1px;
	background-color: #498ee0;
}

h3.sr {
padding:0;
margin:0;
}


a.spe_ti3{
display:block;
font-size:0.9rem;
text-decoration:none;
color:#999;
}

a.spe_ti3:hover{

text-decoration:underline;
}

a.eco_ti3{
display:block;
font-size:0.8rem;
text-decoration:none;
color:#253675;
margin-bottom:5px;
padding:5px;
}

a.eco_ti3:hover{

text-decoration:underline;
}

abbr{
display: none
}

.youtube{
position:relative;
width:100%;
padding-top:56.25%;
}
.youtube iframe{
position:absolute;
top:0;
right:0;
width:100%;
height:100%;
}

@media print{
  .cont{
display:block;
}
 .main{display:block;
width:100%;}

.sns{
display:none;
} 
.yarpp{
display:none;
} 
.sincat{
display:none;
} 
.side{display:none;}
  .pri_single{
font-size:8px;
line-height:8px;}
  
}

  /*特定商取引法に基づく表記　はじめ*/
    .tbe_totohyo{
    width:75%;
    border-collapse: collapse;
    margin: auto;
    font-size:90%;
}


.ti_totohyo{
    width:75%;
    padding: 1%;
    font-weight:bold;
    font-size:120%;
    border-bottom: 3px solid #000;
     margin: 0 auto;
    margin-bottom:3%;
}
    .t_totohyo{
        background-color:#eee;        
}



.tbe_totohyo th,
.tbe_totohyo td{
    padding: 1%; 
   border: 1px solid #a4a4a4;
   border-collapse: collapse;
}

/*特定商取引法に基づく表記　おわり*/


/*SDGS*/
.sdgs_marg{
padding:0;
margin-bottom:70px;
margin-top:40px;
}
.sdgs_sengen{
border:1px solid #158fc9;padding:2%;font-size:1rem;color:#158fc9;line-height:1.4rem;font-weight:bold;
}

.sdgs_medicom{
display:flex;
font-size:0.9rem;color:#333;line-height:1.2rem;margin-bottom:50px;margin-top:50px;
gap: 6px 10px;
}

	
.clearfix:after{
	content: "";
	clear: both;
	display: block;
}

.sdgs_image{
text-align:center;
margin:30px;
}
.sdgs_subti{
font-size:1.4rem;color:#666;width:100%;font-weight:bold;border-bottom:1px solid #666;margin-bottom:30px;clear:both;
}

.sdgs_topic{
font-size:0.8rem;background-color:#158fc9;color:#fff;line-height:1.4rem;padding:2%;border-radius:5px;margin-bottom:30px;
}

.sdgs_box{
padding:0;
margin-bottom:60px;
}

.sdgs_box img{
float:left;margin-right:30px;
}
.sdgs_box:after{
display:block;content:"";clear:both;
}
.sdgs_topicsub{
font-size:0.8rem;color:#666;width:100%;line-height:1.4rem;
}

.sdg_media_ti{
font-weight:bold;
font-size:1.4rem;
color:#333;
}

.sdgs_fl1{
margin-right:20px;
}
/*SDGS　おわり*/

div.wp-caption img{
padding:0;
}

p.wp-caption-text{
text-align:center;
font-size:0.7rem;
margin:0 0 5px 0;
padding:0;
background-color:#eee;
}

.kadomaru-image img{
border-radius:20px;
}

/*EXPO　はじめ*/
.expo_top{
background: #efefef;
  border-radius: 240px 15px 100px 15px / 15px 200px 15px 185px;
  padding: 4%;
  width: 90%;
  margin: 10px;
}

.expo_second{
  width: 100%;
  margin: 10px;
}

.expo_second_in{
  width: 98%;
  padding: 50px 0;
}

.expo_top::after {
  content: "";
  display: block;
  clear: both;
}

h2.emphasis_design34 {
font-size:2.8rem;
font-weight:bold;
 color: #fff;
    text-shadow: 2px 2px 2px #666666, -2px 2px 2px #666666, 2px -2px 2px #666666, -2px -2px 2px #666666, 2px 2px 2px #666666, -2px 2px 2px #666666, 2px -2px 2px #666666, -2px -2px 2px #666666;
}

h2.exp-midashi {
  padding: 0.25em 0.5em;/*上下 左右の余白*/
  color: #0068b6;/*文字色*/
  background: transparent;/*背景透明に*/
  border-left: solid 5px #e61721;/*左線*/
}
/*EXPO　おわり*/

/*リサイクルページのページネーション　はじめ*/
a.page-numbers,
span.page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  color: #0f5474;
  background-color: #fff;
  border: 1px solid #0f5474;
  width: 50px;
  height: 50px;
  border-radius: 50%;

  /*追加*/
  margin: 0 8px;
}
.prev.page-numbers,
.next.page-numbers,
.page-numbers.dots {
  border: none;

  /*追加*/
  margin: 0;
}

.pagination {
  display: flex;
  justify-content: center;
  margin-top: 60px;
}

.page-numbers.current {
  color: #fff;
  background-color: #0f5474;
  border: 1px solid #0f5474;
}

/*リサイクルページのページネーション　おわり*/


.srmbox{
  display: flex;
  
background: linear-gradient(#00A8DD, #95E6F9);
width:100%;
padding:1%;
}

.srmbox div.srf{
font-size:1rem;
background-color:#d9f5fc;
width:100%;
padding:1%;
margin:0 5px;
border-radius:5px;
opacity: 0.9;
}

.srmbox div.srl{
font-size:1rem;
background-color:#d9f5fc;
width:50%;
padding:3%;
margin:0 5px;
border-radius:5px;
opacity: 0.9;
}

.srmbox div.srr{
font-size:0.8rem;
background-color:#ffffff;
width:50%;
padding:1%;
margin:0 5px;
border-radius:5px;
opacity: 0.9;
}


.scraprtbl{
border:1px solid #aaa;
width:90%;
border-collapse:collapse;
margin:10px;
}


.scraprtbl td{
border:1px solid #aaa;
padding:;
font-size:0.7rem;
}

.scraprtbl th{
background-color:#dcf3f9;
}

.scraprtbl td.scrapr_to{
background-color:#dcf3f9;
}


.scrapr_container {
  clear:both;
  max-width: 100%;
  margin: 0 auto;
  padding-top:60px;
}

.btn btn-primary {
    display: none !important;
}

.yop-poll-bar {
    background-color: #3498db !important;  /* 任意の色に変更可能 */
}

.notice {
  text-align: center;
  padding: 1.5rem;
  font-weight: bold;
  font-family: 'Zen Kaku Gothic New', sans-serif;
  margin-top: 3%;
}
.red {
  color:#ff0211;
  font-size:150%;
}

.position, .message,{
  padding: 2rem 1rem;
  background: #fff;
  margin: 1rem auto;
  max-width: 800px;
  border-radius: 0.5rem;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}


.case{
  padding: 1rem 1rem;
  font-family: 'Zen Kaku Gothic New', sans-serif;
  padding-bottom: 6%;
}

.about{
  background-color:#fff;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.1);
  margin: 0 auto;
  width:85%;
      padding: 15px;           /* 内側の余白 */
    font-family: 'Zen Kaku Gothic New', sans-serif;
    text-align: center;
    padding-bottom:1.5rem;
    border-radius: 30px;
    margin: 0 auto;
}

.about-top{
    background-color: #fff;
    border-radius: 30px;
    padding: 5%;
}

.about ul {
  list-style: disc;
  padding-left: 1.5rem;
}

.cho-at{
  color:#fff;
  font-size:250%;
    font-weight:bold;
    position: absolute;
top: 100px;
left: 50%;
transform: translateX(-50%);
}


.about h3 {
  color:#ff1b20;
  margin-top:6%;
  font-size:150%;
}

.case h2 {
  text-align: center;
  margin-bottom: 3%;
  font-size:200%;
}

.about ul {
  text-align: center;
  list-style-position: inside;
}

.cases {
  display:flex;
  gap: 1rem;
     justify-content: center;
  align-items: center;
}
.case-box {
  background: #fff;
  padding: 1rem;
  border-radius: 2rem;
  text-align: center;
    flex: 1;
    flex-direction: column;
  justify-content: flex-start; /* 内容を上寄せ */
  align-items: center; /* 中央寄せ */
  border:0.5px solid #eee;
border-radius:30px;
    position: relative;
    height: 210px;
}


.case-box h3 {
  font-size: 1.5rem;
  color: #017cdf;
  margin: 0;
  font-weight: bold;
}

.case h3{
    font-weight: bold;
}
.cp_bl{
    color:#16607e;
    font-size:120%;
    font-weight:bold;
    
}

.cp_hl{
   background: #eef8fb;
  line-height: 1.3;
  width: 45%;
 margin: 0 auto 1em;  /* ←下に1emだけ余白を入れる */
  padding: 0.5% 0.1%;      /* ←上下左右に適度なパディング */
}

.cp_e{
  border-radius: 30px;
     margin: 0 auto 0.5em;  /* ←下に1emだけ余白を入れる */
  padding: 2% 0;      /* ←上下左右に適度なパディング */
    width: 100%;
    color:#fff;
    background-color:#ff0211;
    font-weight:bold;
     position: relative;
}

.cp_stext{
    font-size:80%;
}

.cp_cabox{
    color:#017cdf;
    font-weight:900;
    font-size:110%;
}

.cpbtn,
a.cpbtn,
button.cpbtn{
  width:20%;
  font-size: 90%;
  font-weight:bold;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 0.5rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
  margin: 0 auto;
    display: block;
  font-family: 'Zen Kaku Gothic New', sans-serif;
}

a.cpbtn-c {
  font-size: 100%;
  position: relative;
  padding: 1rem 3rem 1rem 1rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: #fff;
  border-radius: 100vh;
  background-image: -webkit-gradient(
    linear,
    left top,
    right top,
    from(#007adf),
    to(#00ecbc)
  );
  background-image: -webkit-linear-gradient(left, #18b9cd 0%, #00ecbc 100%);
  background-image: linear-gradient(to right, #007adf 0%, #18b9cd 100%);
  -webkit-box-shadow: 0 10px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 10px 10px rgba(0, 0, 0, 0.2);
}

a.cpbtn-c:before {
  font-family: "Font Awesome 5 Free";
  font-size: 1.6rem;
  line-height: 1;
  position: absolute;
  top: calc(50% - 0.8rem);
  right: 1rem;
  margin: 0;
  padding: 0;
  content: "\f30b";
}

a.cpbtn-c:hover {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
  color: #fff;
}


.cpbtn1,
a.cpbtn1,
button.cpbtn1{
  width:30%;
  font-size:0.9rem;
  font-weight:bold;
  line-height: 1;
  position: relative;
  display: inline-block;
  padding: 0.5rem 0.5rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  color: #212529;
  border-radius: 0.5rem;
  margin: 0 auto;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    margin-top: 3%;
}

a.cpbtn-c1{
  font-size: 1rem;
  position:relative;
  padding: 1rem 1rem 1rem 1rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color:#fff;
  border-radius: 100vh;
  background-color:#017cdf;
  text-align: center;
}



a.cpbtn-c1:hover {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
  color: #fff;
}

.about2{
    width:80%;
    margin: 0 auto;
}

.about1{
    width:100%;
    font-weight: bold;
}


.ch_position{
    background-color:#18b9cd;
    text-align: center;
    padding:1% 0;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    padding-bottom: 5%;
}

.ch_footer{
    background-color: #18b9cd;
    color:#fff;
    padding:2.5%;
    display: flex;
    justify-content: center; /* 横方向の中央 */
  align-items: center;     /* 縦方向の中央 */
    padding-top:1%;
}

.cpbtn2,
a.cpbtn2,
button.cpbtn2{
  width:50%;
  font-size: 90%;
  font-weight:bold;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 0.5rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
  margin: 0 auto;
    display: block;
  font-family: 'Zen Kaku Gothic New', sans-serif;
}

a.cpbtn-c2 {
  font-size: 100%;
  position: relative;
  padding: 1rem 3rem 1rem 1rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: #fff;
  border-radius: 100vh;
  background-color:#fff;
  color:#18b9cd;
  box-shadow: 0 10px 10px rgba(0, 0, 0, 0.2);
}

a.cpbtn-c2:before {
  font-family: "Font Awesome 5 Free";
  font-size: 1.6rem;
  line-height: 1;
  position: absolute;
  top: calc(50% - 0.8rem);
  right: 1rem;
  margin: 0;
  padding: 0;
  content: "\f30b";
}

a.cpbtn-c2:hover {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
  color:#18b9cd;
}
.curved-background{
    background-color:#18b9cd; /* 背景色 */
      height: 230px;         /* 高さを調整 */
      border-top-left-radius: 100% 40%;  /* 左上を大きく */
      border-top-right-radius: 100% 40%; /* 右上を大きく */
    margin-top:10%;
    position: relative; /* 親にする */
}

.about2 ul {
  list-style: none; /* ・を消す */
  padding: 0;
}




.number{
    width: 40px;
  height: 40px;
  background: #007bff;
  color: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
}

.cp_cabox2{
    font-size:75%;
    font-weight:900;
}

.ch_position2{
  background-color:#fff;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.1);
  margin: 0 auto;
  width:85%;
      padding: 3% 15px;           /* 内側の余白 */
    font-family: 'Zen Kaku Gothic New', sans-serif;
    text-align: center;
    border-radius: 30px;
    font-weight: bold;
}






.ch_position3{
    background-color:#333;
    color:#fff;
    border-radius:40px;
    width:50%;
    padding:1% 0;
    margin: 0 auto;
    font-size:110%;
    margin-top: 5%;
}
.message2{
    background-color:#017cdf;
    color:#fff;
    border-radius:40px;
    width:50%;
    padding:1% 0;
    margin: 0 auto;
    font-size:110%;
}

.message{
  padding: 2rem 1rem;
  margin: 1rem auto;
  text-align: center;
  font-weight:bold;
}

.footer_a{
  color: white;       /* 文字色を白に */
  text-decoration: none; /* 下線なし */
}
.cases33{
  width:80%;
  margin:0 auto;
}

.scrap-link-area{
margin-top:7px;
text-align:left;
font-size:14px;
}


.scrap-link-area a{
display:inline-block;
margin-top:6px;
padding:6px 8px;
border-radius:6px;
background:transparent;
color:#0e2908;
border:1px solid rgba(14,41,8,0.12);
}

/*リサイクルシンポジウム*/
.sympo_txt{
width:80%;background-color:#faf9f9;padding:40px;border-radius:5px;margin:0 auto;margin-bottom:30px;}

.sympo_gaiyou{
width:80%;background-color:#daf3da;padding:40px;border-radius:20px;margin:0 auto;}

.sympo_orderbtn{
margin:0 auto;width:355px;}

.sympo_program{
width:80%;padding:40px;border-radius:20px;margin:0 auto;}

.promo-area {
  text-align: center;
  padding: 20px 30px;
  margin: 40px auto;
  max-width: 600px;
  background:#50b9e0;
  border-radius: 18px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

@font-face {
  font-family: 'ADSひかり'; /* 必ずこの名前と一致させる */
  src: url('path/to/ads-hikari.woff2') format('woff2');
  font-weight: normal;
  font-style: normal;
}
.promo-title {
  font-size:40px;
  color: #ffffff;
  font-style: normal;
font-weight: 400;
  margin-bottom: 10px;
font-family: 'ads-hikari', sans-serif;
}

.promo-desc {
  color: #ffffff;
  font-size: 15px;
  line-height: 1.5;
  margin-bottom: 25px;
}

/* ボタン全体 */
.promo-buttons {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
}

/* 共通ボタン */
.promo-buttons .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 300px;
  padding: 16px 24px;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  border-radius: 14px;
  text-decoration: none;
  box-shadow: 0 4px 10px rgba(0,0,0,0.15);
  transition: 0.2s ease;
}

/* ホバー */
.promo-buttons .btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 16px rgba(0,0,0,0.25);
}

/* アイコン */
.promo-buttons .icon {
  font-size: 22px;
}

/* 紫（チラシ） */
.promo-buttons .flyer {
  background-color: #2091c7;
}

/* 青（特設サイト） */
.promo-buttons .special {
  background-color: #fcc732;
}

.background-container {
    /* 画面全体をカバーし、コンテンツを中央に配置 */
    min-height: 30vh; 
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
    
    /* ⭐ 画像に完全に合わせた色、太さ、方向のストライプCSS ⭐ */
    background: repeating-linear-gradient(
        -45deg,
      #fce38a 0 80px,   /* 黄色ストライプ: 0～80px */
    #f6a572 80px 160px /* オレンジストライプ: 80～160px */
);

    /* ⭐ 背景全体の角丸も画像に合わせて適用 ⭐ */
    border-radius: 20px; /* 角の丸みを設定 */
    overflow: hidden;    /* 角丸からはみ出す部分を隠す */
    /* ※ 画面全体を丸くするには、bodyまたはhtml要素にoverflow: hidden; を適用し、
          この要素にmax-widthとmax-heightを設定して中央に配置するなどの工夫が必要です。
          ここでは.background-container自体を丸くします。*/
}

.new-book-announcement {
  display: flex;
  align-items: center;
  background-color: #f9f9f9; /* 落ち着いた背景色 */
  padding: 20px;
  border-radius: 8px;
  gap: 20px;
  max-width: 900px;
  margin: 30px auto;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  font-size:12px;
}

.book-image img {
  width: 100%; /* 本の画像は大きすぎない */
  border-radius: 4px;
}

.book-info h3 {
  font-size: 1.3rem;
  margin: 0 0 10px 0;
  color: #333;
}

.book-info p {
  font-size: 0.7rem;
  line-height: 1.4;
  color: #555;
  margin: 5px 0;
}

.book-info a:not(.book-button) {
  color: #007acc;
  text-decoration: none;
}
.book-button {
  display: inline-block;
  margin-top: 10px;
  padding: 8px 15px;
  background-color: #007acc;
  color:#ffffff;
  border-radius: 4px;
  text-decoration: none;
  font-size: 0.95rem;
}

.book-button a{
 color:#ffffff;
}

.book-button:hover {
  background-color: #005fa3;
}