@charset "UTF-8";
/*
Theme Name:BUSTER theme
Author: BUSTER
Description: BUSTER theme.
Version: 1.0
*/

*{
 margin: 0;
 padding: 0;
}

body{
word-wrap: break-word;
}


html {
font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-size : 100%;
  line-height : 1.5;
  color: #000;
}

h1,h2,h3,h4,h5,h6 {
 margin-bottom : 1em;
}

h1 {
font-size : 36px; 
line-height : 1.2;
} /* 48px */

h2 {
font-size : 24px;
line-height : 1.2;
font-weight: normal;
} /* 48px */

h3 {
font-size : 24px;
line-height : 1.2;
} /* 24px */



ul, ol {
	  list-style : none;
	  }
img { 
         vertical-align : middle;
         max-width: 100%;
         height: auto;
         }

p{
    line-height: 2em;
}


body{
text-align: center;
font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "ＭＳ ゴシック", sans-serif;
font-family: 'Montserrat', sans-serif;
background:#F2F2F2;
}


a{
 text-decoration: none;
 color:#424242;
 transition: 0.4s ease-in-out;  
}

a:hover {  
    opacity: 0.5;  
    filter: alpha(opacity=60);  
} 


/* text */

.left{
 text-align: left;
}

.right{
 text-align: right;
}

.center{
 text-align: center;
}

.bold{
 font-weight: bold;
}


.small{
 font-weight: normal;
 font-size: 0.8em;
}


.big{
 font-weight: bold;
 font-size: 1.3em;
}


.container{
max-width: 1000px;
margin: 0 auto;
padding-left: 3em;
padding-right: 2em;
box-sizing: border-box;
}





/*ナビゲーション*/

		nav{
		display: none;
		position: fixed;
		top:0px;
		width: 100%;
		height: 100%;
		background: #2b2b2b;
		left: 0;
				z-index: 99;
		}
		

	
	#nav_toggle{
		display: block;
		width: 25px;
		height: 25px;
	position: fixed;
		top: 5px;
				left: 10px;
		z-index: 100;
	}
	#nav_toggle div {
		position: relative;
	}
	#nav_toggle span{
		display: block;
		height: 2px;
		background: #000;
		position:absolute;
		width: 100%;
		left: 0;
		-webkit-transition: 0.3s ease-in-out;
		-moz-transition: 0.3s ease-in-out;
		transition: 0.3s ease-in-out;	
	}
	#nav_toggle span:nth-child(1){
		top:0px;
	}
	#nav_toggle span:nth-child(2){
		top:8px;
	}
	#nav_toggle span:nth-child(3){
		top:16px;
	}
	
	/*開閉ボタンopen時*/
	.open #nav_toggle span:nth-child(1) {
			top: 12px;
		   -webkit-transform: rotate(135deg);
			-moz-transform: rotate(135deg);
			transform: rotate(135deg);

		}
		.open #nav_toggle span:nth-child(2) {
			width: 0;
			left: 50%;

		}
		.open #nav_toggle span:nth-child(3) {
			top: 12px;
			-webkit-transform: rotate(-135deg);
			-moz-transform: rotate(-135deg);
			transform: rotate(-135deg);
}


/*開閉部分*/
nav{
    color: #fff;
    padding-top: 3em;
}

nav a{
    color: #fff;
}

nav li{
    border-bottom: 1px solid #696969;
    letter-spacing: 0.3m;
}

nav li a{
        padding: 1.5em 1em;
    display: block;
}


/*header*/
.header_top h1{
    width: 230px;
    padding-left: 1.5em;
    padding-top: 1em;
    margin-bottom: 1em;
}    


.header_main{
   background-image: url(./images/bg_header_sp.jpg);
   background-repeat: no-repeat;
   background-size:cover;
   background-position: center center;
    height: 700px;
}


.header_main2{
   background-image: url(./images/bg_top2.jpg);
   background-repeat: no-repeat;
   background-size:cover;
   background-position: top center;
    height: 500px;
}


header p{
    text-align: left;

    font-weight: bold;
        margin-bottom: 1em;
}

.header_catch{
    font-size: 1em;
    text-align: left;
}

.header_catch figure{
    max-width: 220px;
    margin-bottom: 1.5em;
}

.header_catch ul{
    font-size: 0.7em;
        letter-spacing: 0.2em;
        display: inline-block;
}

.header_catch li{
            background: red;
            margin-bottom: 1em;
    color: #fff;
    padding: 0.5em;
}

.pc{
    display:none;
}

header p.sdgs_cmt{
font-size: 1.1em;

}

.sdgs{
max-width: 500px;
padding-top: 1em;
padding-bottom: 1em;
}


header p.point{
display: inline-block;
color: #fff;
background: red;
padding: 0.2em 1em;
}

.new_m_box h2{
text-align: center;
}

.new_m_box p{
text-align: center;
}

.new_m_box h2{
margin-bottom:0em;
padding-bottom:0em;
}

.new_m_box h2 span{
font-size: 0.8em;
}

.new_m_box .flex_container_sp{
margin-bottom: 1em;
}

p.btn{
background:red;
text-align: center;
max-width:200px;
margin-left: auto;
margin-right: auto;
border-radius: 200px;
margin-bottom: 5em;
}

p.btn a{
display:block;
padding:0.2em 1em;
color: #fff;
}



/*flex*/
.flex_container_sp{
flex-wrap:wrap;
      display: -webkit-box;
  display: -ms-flexbox;
display: flex;

}

.flex_half_sp{
width:46%;
margin: 2%;
box-sizing:border-box;
}





/*home*/
.box{
    padding: 6em 2em 0em 2em;
    text-align: left;
}


.box h1{
    font-size: 1.8em;
    text-align: center;
        letter-spacing: 0.1em;  
        margin-bottom: 2em;
}


.h_box{
   background-repeat: no-repeat;
   background-size:cover;
   background-position: center center;
       width: 100%;
       padding-top: 100%;
       position: relative;
   margin-bottom: 2em;
}

.h_box1{
       background-image: url(./images/bg_header_sp.jpg);
}

.h_box:hover{
     opacity: 0.55;
 transition: 0.3s ease-in-out;
}

.h_box h2{
    line-height: 1.4em;
}

.h_box h2  span.small{
   font-size: 0.7em;
   color: #696969;
}

.h_box1{
       background-image: url(./images/h_pic1.jpg);
}



.h_box2{
       background-image: url(./images/h_pic2.jpg);
}


.h_box3{
       background-image: url(./images/h_pic3.jpg);
}



.h_box h2{
    background: #fff;
    font-size: 1.4em;
    letter-spacing: 0.2em;
    padding: 0.5em;
    margin: 0;
position: absolute;
	bottom: 0;
}

.h_box h2 img{
width: 100px;
}

/*main*/

   .top{
    background-image: url(./images/bg_main.jpg);
   background-repeat: no-repeat;
   background-size:cover;
   background-position: center center;
   padding-top: 8em;
   padding-bottom: 13em;
}

.top_catch{
    max-width: 800px;
    margin: 0 auto;
    padding-left: 2em;
    padding-right: 2em;

}

.top_catch p{
    font-size: 1.1em;
    line-height: 2.3em;
        letter-spacing: 0.1em;
        margin-bottom: 2em;
}


.top_catch br{
    display: none;
}

.top_catch h2{
    font-size: 2em;
    letter-spacing: 0.2em;
    margin-bottom: 1.5em;
    font-weight: bold;
}
.top_catch p.point{
    margin-bottom: 3em;
    font-size: 1.3em;
}

.top_catch p.pointmg{
    margin-bottom: 1em;
}

.pj_catch{
    font-weight: bold;
    background: #fff;
    padding-bottom: 6em;
     letter-spacing: 0.2em;
}

.h2_catch{
    background: none;
}

.pj_catch p{
font-size: 1.1em;
}

.pj_catch p.pj_point{
font-size: 1.2em;
color: red;
margin-bottom: 1em;
}

.pj_catch p.pj_point2{
font-size: 1.2em;
color: red;
}


.pj_catch p span.check{
background: #0033B3;
padding: 0.2em;
color: #fff;
}

.pj_catch p.pj_point3{
font-size: 1.3em;
color: #0033B3;
margin-bottom: 1em;
}

.pj_catch p.pj_point4{
font-size: 1.3em;
color: #0033B3;
margin-bottom: 1em;
}


.pjr_logo{
margin-bottom: 1em;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}

.pjr_b img{
 pointer-events: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}

.copy-guard{
 pointer-events: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}

.m_catch{
    font-weight: bold;
    background: #fff;
    padding-bottom: 6em;
     letter-spacing: 0.2em;
}

.p_catch{
    font-size: 2.5em;
 font-weight: bold;
}


.pj_catch p.pj_point{
font-size: 1.4em;
}
.pj_catch p.pj_point3{
font-size: 1.6em;
}

.pj_catch p.pj_point4{
font-size: 1.4em;
}


.text_21 p{
font-size:  1.4em;
text-align: center;
line-height: 1.5em;
margin-bottom: 0.5em;
}

.text_21 p.pj_point2{
font-size:  1.4em;
}

.m_catch ul{
    font-size: 1.5em;
    color: #FF0045;
 padding-top: 1em;
 padding-bottom: 1em;
}

.m_catch li{
list-style-type: cercle;
}

p.m_button{
    background: #00447C; 
    text-align: center;
    font-weight: normal;
    font-size: 0.9em;
    margin-bottom: 2em;
}

p.m_button a{
    display: block;
  color: #fff;
  padding: 0.2em;
}

p.m_button:hover{
     opacity: 0.70;
 transition: 0.3s ease-in-out;
}

.m_box {
margin-bottom: 2em;
}

.m_box h2{
    letter-spacing: 0.1em;  
    font-size: 2.6em;
    font-weight: bold;
    line-height: 1.4em;
    margin-bottom: 0.3em;
}

.m_box p{
    margin-bottom: 1em;
}

.m_box figure{
    margin-bottom: 2em;
}

.m_box p.small{
    font-size: 0.7em;
}

p.m_button2 {

    text-align: center;
    font-size: 1.2em;
    font-weight: bold;
    border: 3px solid #000;
    letter-spacing: 0.2em;
  color: #9ec34b;
  text-decoration: none;
  font-weight: bold;
  padding: 3px 16px;
  border-radius: 4px;
  transition: .4s;
}

p.m_button2:hover {
  background-color: #00447C;
  border-color: #00447C;
  color: #FFF;
}

p.m_button2 a:hover{
    color: #fff;
}




.m_box2 .flex_box{
    margin-bottom: 4em;
}

.m_box2 h2{
    font-size: 1.1em;
    line-height: 1.8em;
}

.m_box2 figure{
margin-bottom: 1em;
}

.shop{
    margin-left: 2em;
    margin-right: 2em;
}

.shop_in_box{
padding-top: 3em;
padding-bottom: 3em;
}




.box2 h3{
letter-spacing: 0.1em;
font-size: 1.8em;
padding-bottom: 0.3em;
margin-bottom: 1em;
color: #1a2951;
border-bottom: 1px dotted #000;
}

.box2 h4{
color: #1a2951;
border: 2px solid #1a2951;
letter-spacing: 0.1em;
font-size: 1.3em;
padding: 0.5em 1em;
text-align: center;
}

.box2 p{
font-weight: bold;
letter-spacing: 0.1em;
}


.box2 p span.point{
background: red;
color: #fff;
padding: 0.5em 1em;
font-size: 1.2em;
}

.box2{
margin-bottom: 2em;
}


/*news*/
.news{
    background: #fff;
    padding-bottom: 8em;
}

.news_box {
    margin-bottom: 4em;
}

.news_box .thumbnail{
    margin-bottom: 2em;
}
.news_box h2{
    font-size: 1.4em;
    letter-spacing: 0.2em;
}

.news_box p{
    margin-bottom: 2em;
    font-size: 0.9em;
}

/*Q & A*/
.qa{
    padding-bottom: 6em;
}

/*page*/
.page_in{
    padding-top: 6em;
    padding-bottom: 8em;
    text-align: left;
    line-height: 2em;
    }
    
    .page_in2{
    padding-top: 0em;
    padding-bottom: 8em;
    text-align: left;
    line-height: 2em;
    }
    
    .page_inner{
    max-width: 800px;
    margin: 0 auto;    
    }
    
 .page_in .titleimg{
    max-width: 250px;
    margin-bottom: 1em;
 }   
 
  .page_in .titleimg2{
    max-width: 400px;
    margin-bottom: 1em;
 }   
    
.page_in h1{
    color: #1C2A53;
    font-size: 1.3em;
    letter-spacing: 0.1em;

    margin-bottom: 1em;
    line-height: 1.6em;
}

.border{
    margin-bottom: 1em;
}

.page_in table{
    border-collapse: collapse;
font-size: 0.8em;
width: 100%;
}

.page_in th{
    border: 1px solid #ccc;
    padding: 0.5em 1em;
    background: #2b2b2b;
    color: #fff;
    width: 100px;
    text-align: center;
}

.page_in td{
    border: 1px solid #ccc;
    padding: 0.5em 1em;
}

.page_in p{
    margin-bottom: 1em;
}

/*about*/
.about figure{
    margin-bottom: 1em;
}


.about .flex_box_half1 h2{
margin-bottom: 1em;
font-weight: bold;
letter-spacing: 0.1em;
}


p.point{
color: #FF0045;
font-weight: bold;
letter-spacing: 0.1em;    
font-size: 1.2em;
}

.about_box1{
    margin-top: 4em;
    padding-top: 10em;
               background-image: url(./images/bg_about.jpg);
   background-repeat: no-repeat;
   background-size:cover;
   background-position: bottom center;
}


.bg_w{
background:#F2F2F2;
       max-width: 250px;
    margin-right: 0;
    margin-left: auto;
    padding: 2em 2em 0em 2em;
}

.date_box{
    padding-top: 5em;
    padding-bottom: 5em;
}

.date_box h2{
    font-weight: bold;
    font-size: 1.3em;
    background: #1C2A53;
    padding: 0.3em 1em; 
    color: #fff;
    letter-spacing: 0.2em;
}

.date_box p, .date_box ul{
margin-left: 2em;
margin-bottom: 2em;
}

.date_box figure{
margin-left: 1em;
margin-bottom: 2em;  
}
p.bd_box{
border: 2px solid #000;
padding: 1em;
max-width: 350px;
}

/*contact*/
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="url"],
.wpcf7 textarea {
	background-color: #fff;
	color: #333;
	width: 95%;
	border: 1px solid #ccc;
font-size: 0.9em;
	padding: 0.8em;
}

.wpcf7 input[type="submit"] {
	font-size: 1em;
	letter-spacing: 2em;
	padding: 0.3em 1em;
	text-align: center;
	background: #000;

	color: #fff;
	cursor: pointer;
	border: none;
text-align: center;
width: 6em;
}

p span.text-danger{
    font-size: 0.8em;
}

p.c_tit{
    margin-bottom: 0.8em;
}

.contact_page{
    padding-top: 3em;
    max-width: 700px;
    margin: 0 auto;
}


/*machine*/
.machine h1{
margin-bottom: 0em;
color: red;
font-size:1.5em;
}



.machine h2.machine_point{
  background: #1C2A53;
color: #fff;
font-size:1.2em;
text-align: center;
padding: 0.3em 1em;
}

h2.machine_h2_2{
margin-top: 4em;
font-size:1.3em;
border-bottom:1px dotted #000;
padding-bottom: 0.3em;
}

.machine ul{
list-style:disc;
margin-left: 1em;
}

p.attention{
font-size: 0.9em;
margin-bottom: 4em;
}


/*usage*/
.usage_box .flex_box{
    background: #fff;
    padding: 2em;
    margin-bottom: 2em;
    box-sizing: border-box;
}
.usage_box .flex_box h2{
    font-size: 1.1em;
}

.usage_box .flex_box p{
    font-size: 0.9em;
}


/*QA*/

.cp_qa {
    max-width: 1000px;
    margin: 0 auto;
}

.cp_qa *, .cp_qa *:after, .cp_qa *:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cp_qa {
	overflow-x: hidden;
	margin: 0 auto;
	color: #333333;
}
.cp_qa .cp_actab {
	padding: 20px 0;
	border-bottom: 1px dotted #cccccc;
}
.cp_qa label {
	font-size: 1.2em;
	position: relative;
	display: block;
	width: 100%;
	margin: 0;
	padding: 10px 10px 0 48px;
	cursor: pointer;
}
.cp_qa .cp_actab-content {
	font-size: 1em;
	position: relative;
	overflow: hidden;
	height: 0;
	margin: 0 40px;
	padding: 0 14px;
	line-height: 2em;
	-webkit-transition: 0.4s ease;
	        transition: 0.4s ease;
	opacity: 0;
}
.cp_qa .cp_actab input[type=checkbox]:checked ~ .cp_actab-content {
	height: auto;
	padding: 14px;
	opacity: 1;
}
.cp_qa .cp_plus {
	font-size: 2.4em;
	line-height: 100%;
	position: absolute;

	margin: 3px 0 0 10px;
	-webkit-transition: 0.2s ease;
	        transition: 0.2s ease;
}
.cp_qa .cp_actab input[type=checkbox]:checked ~ .cp_plus {
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}
.cp_qa .cp_actab input[type=checkbox] {
  display: none;
}

.cp_actab-content ul{
    padding-top: 1em;
    padding-bottom: 1em;
   list-style-type: decimal;
   margin-left: 1em;
}

/* footer */
footer{
    background: #1C2A53;
    padding: 6em 1em;
    color: #fff;
    font-size: 0.9em;
}

footer a{
    color: #fff;
}

footer h1{
    width: 300px;
    margin: 0 auto;
    margin-bottom: 1.2em;
}

footer p{
    margin-bottom: 0.8em;
}

p.f_contact{
border: 1px solid #fff;
    width: 200px;
    margin: 0 auto;
    border-radius: 20px;
margin-bottom: 4em;
}

p.f_contact a{
display: block;
padding: 0.3em 1em;

}


p.copy{
    margin-top: 8em;
    font-size: 0.8em;
}

p.buy_button{
    background: #FF0017;
    position: fixed;
    bottom: 0;
    width: 100%;
    font-weight: bold;
    padding: 0.8em;
    letter-spacing: 0.1em;
}


p.buy_button a{
    display: block;
    color: #fff;
}

   p.buy_button:hover{
     opacity: 0.70;
 transition: 0.3s ease-in-out;
}
figure.buy_jiamax{
        position: fixed;
    bottom: 0;
 right: 0; 
    width: 90px;
}

/*single*/

/*パンくず*/
.bread{
    font-size: 0.7em;
    text-align: left;
        padding-top: 1em;
}

.bread li{
    display: inline;
    margin-right: 1em;
}


.bread li:after{
content: "　>";
}

.bread li:last-child::after{
content: none;
}

.single_page{
    text-align: left;
}

.single_page h1{

    margin-bottom: 1em;
}

.single_page p{
    font-size: 0.9em;
    line-height: 2.5em;
    margin-bottom: 1.5em;
}

.single_page p.cate{
    font-size: 0.8em;
}

.single_page img{
    margin-bottom:1em;
    width: 100%;
}

.single_page h1{
    font-size: 1.5em;
    text-align: left;
    padding-bottom: 1em;
    margin-bottom: 2em;
    border-bottom: 1px solid #ccc;
}

.single_page h2{
    font-size: 1.1em;
    font-weight: bold;
    text-align: left;
    margin-bottom: 1.5em;

}

.single_page ul{
    font-size: 0.9em;
 list-style: disc;
margin-left: 1em;
margin-bottom: 1em;
line-height: 1.8em;
}

.single_page table{
    width: 100%;
    border-collapse: collapse;
 margin-bottom: 2em;
font-size: 0.9em;
}

.single_page th{
  border: 1px solid #ccc;
  background:#f4f4f4;
  padding: 0.5em 1em;
}

.single_page td{
      border: 1px solid #ccc;
        padding: 0.5em 1em;
}



.entry_box{
    padding-top: 3em;
    max-width: 800px;
    margin: 0 auto;
    padding-bottom: 6em;
}

.entry h2{
    font-size: 1.5em;
    border-bottom: 1px dotted #ccc;
    padding-bottom: 1em;
        margin-bottom: 1.5em;
}

.entry h3{
        font-size: 1.4em;
    line-height: 1.8em;
    letter-spacing: 0.1em;
        margin-bottom: 1.5em;
}

.entry p{
    margin-bottom: 2em;
}


/*ページナビゲーション*/
.pagenav{
    margin-top: 3em;
    font-size: 0.9em;
    max-width: 400px;
    margin: 0 auto;
}

.pn_old{
border: 1px solid #000;
border-radius: 10px;
float: left;
text-align: center;
width: 100px;
margin-left: 0;
margin-right: auto;
}

.pn_new{
border: 1px solid #000;
border-radius: 10px;
float: right;
text-align: center;
width: 100px;
margin-left: auto;
margin-right: 0;
}


.pagination ul{
      display: -webkit-box;
  display: -ms-flexbox;
display: flex;
max-width: 350px;
margin: 0 auto;
}
.pagination li{

    font-size: 0.7em;
      flex: 1; 
      margin: 0.5em;
      margin-top: 5em;
      margin-bottom: 8em;
      background: #fff;
border-radius: 3px;
   padding: 0.8em;
}

.pagination li a{
    color: #fff;
}



/*外部コンテンツ*/
iframe	{max-width: 100%}


/* YouTubeのビデオ */
.ytvideo	{position: relative;
	width: 100%;
	height: 0;
	padding-top: 56.25%;
	overflow: hidden;
	margin-top: 30px;
	margin-bottom: 30px}

.ytvideo iframe	{position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%}




/*archive*/

/*single*/



@media screen and (min-width: 768px){
    /*header*/


.container{
max-width: 1400px;
margin: 0 auto;
padding-left: 2em;
padding-right: 2em;
box-sizing: border-box;
}

    
    .header_main{
           background-image: url(./images/bg_header.jpg);
   background-repeat: no-repeat;
   background-size:cover;
   background-position: bottom center;
    height: 850px;
}

.header_top{

max-width: 1400px;
margin: 0 auto;
padding-left: 2em;
padding-right: 2em;
box-sizing: border-box;

}

    .header_top h1{
margin: 0;
padding: 0;
padding-top:1.5em;
margin-bottom: 1.5em;
    width: 440px;
    z-index: 9999;
}    


.header_catch p{
    font-size: 1.7em;
    letter-spacing: 0.2em;
    color: #fff;
    text-shadow: 2px 2px 2px rgba(0,0,0,0.8) ;
}

header p.point{
    font-size: 1.2em;
    text-shadow: none ;
}

.header_catch figure{
    max-width: 380px;
}

.sp{
    display:none;
}

.pc{
    display:block;
}


.header_catch ul{
    margin-top: 2em;
                background: red;
                    padding: 0.5em;
}

.header_catch li{
    display: inline; 
    font-size: 1.4em;
}
    

/*開閉部分*/
nav{
    display: inline; 
    background: #fff;
    margin:0;
    padding: 0;
    height: auto;
    font-size: 1.2em;
    padding-top: 0.2em;
        padding-bottom: 0.2em;
}

nav li a{
        padding: 0;
    display: inline;
    color: #1C2A53;
}

	#nav_toggle span{
	    display:none;
	}
	
	nav ul{

max-width: 800px;
margin-left: auto;
margin-right: 0;
font-size: 0.7em;

	}

nav li{
    display: inline;
        border: none;
        text-align: right;
        letter-spacing: 0.2em;
        margin-left: 2em;
}




/*home*/


.flex_container_pc{
flex-wrap:wrap;
      display: -webkit-box;
  display: -ms-flexbox;
display: flex;

}

    

.flex_container{
      display: -webkit-box;
  display: -ms-flexbox;
display: flex;
flex-wrap: wrap;
align-items: center; 
}


.flex_re{
 flex-direction: row-reverse ;
}


.flex_container2{
      display: -webkit-box;
  display: -ms-flexbox;
display: flex;
 flex-direction: row-reverse ;
flex-wrap: wrap;
align-items: center; 
}

.flex_container3{
      display: -webkit-box;
  display: -ms-flexbox;
display: flex;
flex-wrap: wrap;
}


.h_box{
margin: 0em;
    width: 100%;
    box-sizing: border-box;
}


.flex_box{
    width: 31%;
    margin: 1%;
    margin-bottom: 2em;
    
}

.flex_box_half {
        width: 46%;
    margin: 2%;
    margin-bottom: 2em;
}

.flex_box_half1,.flex_box_half2 {
        width: 46%;
    margin: 2%;
    margin-bottom: 2em;
}

.flex_box_half1 p{
    font-size: 1.3em;
}

.h_box h2{
    font-size: 0.8em;
}
.h_box h2 img{
width: 50px;
}

.top_catch{
   text-align: center;

}

.top_catch br{
    display: inline;
}

.m_catch{
    padding-right: 0;
    margin-right: 0;
}


.m_catch p{
    font-size: 1.1em;
}

.m_catch p.p_catch{
        font-size: 2.3em;
}

.m_catch li{
    font-size: 1.2em;
    margin-bottom: 0.4em;
}

p.m_button{
    font-size: 1em;
    letter-spacing: 0.1em;
}

.flex_container_pc_news{
flex-wrap:wrap;
      display: -webkit-box;
  display: -ms-flexbox;
display: flex;
align-items: center;
}



/*news*/
.news_box .thumbnail{
    margin-bottom: 0em;
}
.news_box .title{
        max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}


.news_box{
    background: #f4f4f4;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}

.news_right{
    box-sizing: border-box;
    padding: 2em 3em 2em 0em;
}


.thumbnail{
    width: 25%;
    margin-right: 5%;
}

.news_right{
    width: 70%;
}

.news_box h2{
    font-size: 1.5em;
}

.news_box p.readmore{
    max-width: 180px;
    margin-top: 3em;
font-size: 1em;
    padding: 0.1em 0.6em;
}

p.m_button2{
font-size: 1.3em;
    max-width: 500px;
    margin: 0 auto;
    margin-top: 2em;
    margin-bottom: 5em;
}

p.m_button2 a{
    display: block;
    padding-top: 0.5em;
    padding-bottom: 0.5em;    
}


.box h1{
    font-size: 2.5em;
    text-align: center;
        letter-spacing: 0.1em;  
        margin-bottom: 2em;
}

p.buy_button{
    font-size: 1.4em;
    padding-top: 0.3em;
    padding-bottom: 0.3em;
}

/*about*/


.about .flex_box_half1 p{
    font-size: 1em;
}

p.about_catch{
    font-size: 1.3em;
}

/*usage*/
.usage_box .flex_box{

}


.date_box h2{
    margin-left: 1em;
}


}

@media screen and (min-width: 1024px){
    .h_box h2{
    font-size:1.2em;
}
.h_box h2 img{
width: 80px;
}

.m_catch p{
    font-size: 1.4em;
}

.m_catch p.p_catch{
        font-size: 2.3em;
}

.m_catch li{
    font-size: 1.4em;
    margin-bottom: 0.4em;
}

p.m_button{
    font-size: 1.2em;
    letter-spacing: 0.1em;
}


.new_m_box{
position:absolute;
right:1em;
top: 0em;
max-width:400px;
}

/*about*/

.about_box1{
    padding-top: 20em;

}

.bg_w{
background:#F2F2F2;
       max-width: 500px;
    margin-right: 0;
    margin-left: auto;
    padding: 4em 4em 0em 4em;
}


}


@media screen and (min-width: 1200px){

.m_box h2{
    font-size: 3.6em;
}

.flex_box_half1{
    max-width: 31%;
        margin: 2%;
}

.flex_box_half2 {
 width: 61%;
        margin: 2%;
}



}

.company_table a{
color: #000;
cursor:default;
}
.company_table a:hover{
cursor:default;
}



@media screen and (min-width: 1400px){
.new_m_box{
max-width:500px;
}
}