@charset "UTF-8";

html {-webkit-text-size-adjust:100%;}

*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
body {
	margin:0;
	padding:0;
	background:#f4f4f4;
}
#page {
	margin:0;
	padding:0;
	width:100%;
	min-width:970px;
	position:relative;
}
.basic-page a:hover {
	opacity:0.8;
}
.basic-page strong {
	font-weight: bold;
}

.mt0 { margin-top   :  0px; }
.mt3 { margin-top   :  3px; }
.mt5 { margin-top   :  5px; }
.mt10{ margin-top   : 10px; }
.mt15{ margin-top   : 15px; }
.mt20{ margin-top   : 20px; }
.mt30{ margin-top   : 30px; }

.mr0 { margin-right :  0px; }
.mr5 { margin-right :  5px; }
.mr10{ margin-right : 10px; }
.mr15{ margin-right : 15px; }
.mr20{ margin-right : 20px; }
.mr30{ margin-right : 30px; }
.mr40{ margin-right : 40px; }

.mb0 { margin-bottom:  0px; }
.mb4 { margin-bottom:  4px; }
.mb5 { margin-bottom:  5px; }
.mb10{ margin-bottom: 10px; }
.mb15{ margin-bottom: 15px; }
.mb20{ margin-bottom: 20px; }
.mb25{ margin-bottom: 25px; }
.mb30{ margin-bottom: 30px; }
.mb35{ margin-bottom: 35px; }

.ml0 { margin-left  :  0px; }
.ml5 { margin-left  :  5px; }
.ml10{ margin-left  : 10px; }
.ml15{ margin-left  : 15px; }
.ml20{ margin-left  : 20px; }

.basic-page .AreaR { float: right; }
.basic-page .AreaL { float: left; }

.basic-page img {
	max-width:none;
}
 .for_pc {
	display: block !important;
}
 .for_spn {
	display: none !important;
}
.for_spn_360,
.for_spn_380 {
	display:none;
}
sup,
sub {
	font-size:60%;
}
.note {
	font-size:12px !important;
}
.basic-page h1,
.basic-page h2,
.basic-page h3,
.basic-page ul,
.basic-page li {
	margin:0;
	padding:0;
}
.basic-page p{
	margin:0;
	padding:0;
	line-height:150%;
	font-size:15px;
}
.basic-page ul li{
	list-style-type:none;
}

/* clear */
.clear{
	clear:both;
}
.clearfix:after {
    content: "";
    clear: both;
    display: block;
}


/* header */
#page #globalheader {
  background: rgba(255, 255, 255, 0.85) none repeat scroll 0 0;
  text-align: center;
  width:100%;
  padding: 0;
  height:92px;
  border-bottom: 3px solid #002e68;
  margin-bottom:1px;
  position: fixed;
  top: 0;
  z-index:150;
}
#page #globalheader_in {
  width:960px;
  height:92px;
  margin:0 auto;
  position:relative;
}
/*.global_fixed {
    position: fixed;
    top: 0;
    width:100%;
}*/
#globalheader h1 {
	padding:0;
	margin:16px 0 0 0;
	float:left;
	height:59px;
}
#globalheader h1 img {
	padding:0;
	margin:0;
}
#globalheader h1 a {
	height:59px;
	padding:0;
	margin:0;
	display:block;
}
#globalheader h1 a:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
	/*background-color:#fff;*/
}
#globalheader .info_area {
  padding:0;
  margin:0;
  position: absolute;
  top: 0;
  right:0;
}


/* nav */
#toggle {
	display: none;
}
#page nav#g_menu {
  text-align: left;
  padding:0 0 0;
  position: absolute;
  bottom: 3px;
  right:1px;
}
#page #global_menu {
  display: table;
  text-align: center;
  margin:0 auto;
  padding:0;
}
#page #global_menu li {
  display: table-cell;
  vertical-align: middle;
  width:140px;
  border-left: 1px solid #000;
}
#page #global_menu li:last-child {
  border-right: 1px solid #000;
}
#page #global_menu li a {
  color: #000;
  display: block;
  font-size: 13px;
  line-height:120%;
  font-weight:bold;
  text-decoration: none;
  padding: 10px 0 6px;
  height:35px;
  margin: 1px;
}
#page #global_menu li a:visited,
#page #global_menu li a:link {
	text-decoration: none;
	color:#000;
}
#page #global_menu li a:hover {
	text-decoration: none;
	color:#fff;
	background-color:#002e68;
	/*opacity: 0.8;
	filter: alpha(opacity=80);
	background-color:#fff;*/
}


/*  cont_area  */
.basic-page {
	width:100%;
	margin:0 auto;
}
main #cont_area {
	min-height:850px;
}

main {
	display:block;
}

/*  h2  */
main .basic-page section h2.h2_style {
	color:#000;
	border:#000 solid;
	border-width:1px 1px 1px 7px;
	padding:5px 7px 3px;
	font-size:15px;
	line-height:120%;
	letter-spacing:2px;
	font-weight:normal;
	margin-bottom:10px;
}
main .basic-page section h2 .h2_c {
	color:#7bb049;
	padding-right:4px;
}


/*  main_area  */
main #main_area {
    width:100%;
	height:571px;
	margin:0 auto 15px;
	position:relative;
	z-index:2;
	overflow:hidden;
	display:block;
	text-align:center;
}
main #main_area img {
    width:100%;
	height:auto;
}
main #main_area #main1 {
	background: url("../img/top/pct_main01.png") no-repeat scroll;
	height:571px;
	width:100%;
	background-position:50% 0% ;
	background-size:cover;
	/*-moz-background-size:100% 100%;
	background-size:100% 100%;*/
}
main #main_area #main2 {
	background: url("../img/top/pct_main02.png") no-repeat scroll;
	height:571px;
	width:100%;
	background-position:50% 0% ;
	background-size:cover;
	display:none;
}
main #main_area #main3 {
	background: url("../img/top/pct_main03.png") no-repeat scroll;
	height:571px;
	width:100%;
	background-size:cover;
	background-position:50% 0% ;
	display:none;
}
main #main_area #main1 h2,
main #main_area #main2 h2,
main #main_area #main3 h2 {
	position:absolute;
	top:55%;
	left:37%;
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	z-index:2;
}




/* sections 共通 */
main .basic-page section {
	padding-bottom:0;
	padding-top:0;
}
main .basic-page section h2 {
	text-align:left;
	margin:0;
	padding:0;
	font-family:"メイリオ", Meiryo, Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}


/*  TOP メッセージ */
main .basic-page #philosophy {
	width:960px;
	margin:0 auto;
	padding-top:50px;
	padding-bottom:50px;
}
main .basic-page #philosophy h2 {
	text-align:center;
	margin-bottom:10px;
	font-family: "Yu Mincho", "YuMincho", serif;
}
main .basic-page #philosophy p {
	font-size: 18px;
	line-height:180%;
	font-family: "Yu Mincho", "YuMincho", serif;
	text-align:center;
}
main .basic-page #philosophy .name_area {
	padding-top:1em;
}
main .basic-page #philosophy .name_area p {
	font-size: 15px;
	line-height:130%;
	font-family: "Yu Mincho", "YuMincho", serif;
	text-align:center;
}

/* 詳細ボタン */
/*main .basic-page .btn_area {
	width:150px;
	margin:50px auto 0;
}
main .basic-page .btn_area a {
	display: inline-block;
	background: url(../img/btn_arrow.png) no-repeat right center ;
	text-align:center;
	border:1px solid #c0c0c0;
	width:150px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}
main .basic-page .btn_area .btn_in {
	padding: 10px 20px 6px 20px;
	font-size: 100%;
	line-height: 140%;
	margin:0;
	font-family:"メイリオ", Meiryo, Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
main .basic-page .btn_area a:link,
main .basic-page .btn_area a:visited {
	color:#000;
	text-decoration:none;
	background-color:#fff;
}
main .basic-page .btn_area a:hover {
	background:url(../img/btn_arrow_on.png) no-repeat right center ;
	text-decoration:none;
	color:#F19119;
	border:1px solid #F19119;
}*/


/*  TOP お知らせ  */
/*main .basic-page #news {
	width:100%;
	margin:0;
	padding:50px 0 80px;
	background-color:#f4f4f4;
}
main .basic-page #news_in {
	width:960px;
	margin:0 auto;
	padding-top:50px;
}
main .basic-page #news h2 {
	text-align:center;
	margin-bottom:20px;
}*/
/*main .basic-page #news h2 {
	font-size: 16px;
	line-height:130%;
	font-weight:bold;
	padding-bottom:5px;
	width:700px;
	margin:0 auto;
}*/
/*main .basic-page #news #news_area {
	padding:5px 0;
	margin:0 auto;
	border: 1px solid #c0c0c0;
	width:700px;
	height:130px;
	overflow: auto;
	background-color:#fff;
}
main .basic-page #news #news_area li {
	align-items: top;
    border-bottom: 1px solid #cccccc;
    display: flex;
    font-size: 16px;
    margin: 0;
    padding: 5px 10px;
}
main .basic-page #news #news_area li .day_t {
	padding-right:1em;
}
main .basic-page #news #news_area li:last-child {
    border-bottom: none;
}
main .basic-page #news #news_area li a:link,
main .basic-page #news #news_area li a:visited {
	text-decoration: underline;
	color:#000;
}
main .basic-page #news #news_area li a:hover {
	text-decoration: none;
	color:#000;
}*/


/*  TOP 製品案内 */
main .basic-page #products {
	width:890px;
	margin:0 auto;
	padding-top:50px;
	padding-bottom:50px;
}
main .basic-page #products ul {
	width:100%;
	margin:0;
	padding:0;
}
main .basic-page #products ul li {
	position:relative;
	margin-bottom:30px;
}
main .basic-page #products ul li .txt_box {
	width:490px;
	height:170px;
	background: rgba(255, 255, 255, 0.85) none repeat scroll 0 0;
	box-shadow: 2px 2px 4px -2px #b1b1b1;
	display: table;
	position:absolute;
	top:50px;
	left:400px;
}
main .basic-page #products ul li .txt_box_in {
	padding:15px 30px;
	display:table-cell;
	vertical-align: bottom;
	text-align:left;
}
main .basic-page #products ul li .txt_box_in h3 {
	font-size: 23px;
	line-height:130%;
	letter-spacing:2px;
	color:#494949;
	font-family: "Yu Mincho", "YuMincho", serif;
}
main .basic-page #products ul li .txt_box_in h3.title_line {
	position: relative;
	padding: 0;
	margin-bottom:25px;
}
main .basic-page #products ul li .txt_box_in h3.title_line:after{
	content: '';
	position: absolute;
	top: 48%;
	display: inline-block;
	width: 220px;
	height: 1px;
	background-color: #494949;
}
main .basic-page #products ul li .txt_box_in h3.title_line:after {
	right: 0;
}
main .basic-page #products ul li a {
	text-align:center;
	display:table-cell;
	vertical-align:middle;
	border: 1px solid #494949;
	float:right;
}
main .basic-page #products ul li a span {
	background: url("../img/btn_arrow.png") no-repeat right -10px center;
	padding:5px 20px 5px 10px;
	display: block;
	font-size: 14px;
	line-height:130%;
}
main .basic-page #products ul li a:visited,
main .basic-page #products ul li a:link {
	text-decoration: none;
	color:#494949;
}
main .basic-page #products ul li a:hover {
	text-decoration: none;
	background-color: rgba(73,73,73,0.1);
}

main .basic-page #products ul li .txt_box_l {
	left:0;
}
main .basic-page #products ul li.pto_r {
	text-align:right;
}
main .basic-page #products ul li .txt_box_l .txt_box_in h3.title_line:after{
	width: 260px;
}


/* footer */
#page #globalfooter {
	text-align: left;
	width:100%;
	padding: 0;
	background-color:#002e68;
}
#page #globalfooter_in {
	width:950px;
	margin:0 auto;
	padding:15px 0 10px;
}
#page #globalfooter_in #ft_mark {
	margin-top:3px;
	float:left;
	padding-right:15px;
}
#page #globalfooter_in #ft_txt {
	float:left;
	/*width:750px;*/
}
#page #globalfooter p {
	line-height:160%;
	font-size: 12px;
	margin:0;
	padding:0;
	color:#fff;
}
#page #globalfooter_in #f_menu {
	float:right;
	padding:0;
	margin:0;
}
#page #globalfooter_in #f_menu li {
	font-size: 12px;
	line-height:130%;
	display: table-cell;
	vertical-align: middle;
	border-left: 1px solid #fff;
}
#page #globalfooter_in #f_menu li a {
	padding:5px 15px;
}
#page #globalfooter_in #f_menu li:last-child {
	border-right: 1px solid #fff;
}

#page #globalfooter #ft_cr {
	float:right;
	padding:0;
	margin:7px 0 0;
	text-align:right;
}
#page #globalfooter #ft_cr p {
	line-height:130%;
	font-size: 11px;
	letter-spacing:1.5px;
	color:#FFF;
}
#page #globalfooter a:visited,
#page #globalfooter a:link {
	text-decoration: none;
	color:#fff;
}
#page #globalfooter a:hover {
	text-decoration: underline;
	color:#fff;
}


/* ページTOP */
#fixedTop {
    right: 30px;
    bottom: 50px;
    width: 40px;
    height: 40px;
    line-height: 40px;
    color: #fff;
    font-size: 15px;
    text-align: center;
    display: none;
    background: #234c80;
    position: fixed;
    z-index: 9999;
    border-radius: 5px;
    -webkit-transform: translateZ(0);
}
#fixedTop:hover {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 0.7;
}
#fixedTop:visited,
#fixedTop:link {
	text-decoration: none;
}
#fixedTop:hover {
	text-decoration: none;
}


/* サブページ */
main .basic-page #main_block {
	background: url("../img/pct_title_bg.png") no-repeat scroll;
	background-position:50% 0% ;
	background-size:cover;
	height:249px;
	width:100%;
	margin:0 auto 40px;
}
main .basic-page #main_block #main_title {
	height:249px;
	width:960px;
	margin:0 auto 20px;
	display:table;
	position:relative;
}
main .basic-page #main_block #main_title div {
	display:table-cell;
	vertical-align:bottom;
	padding:15px 20px;
}
main .basic-page #main_block h2 {
	line-height:110%;
	font-size: 28px;
	letter-spacing:1px;
	color:#002e68;
	font-family: "Yu Mincho", "YuMincho", serif;
}
main .basic-page #main_block #sub_t_eng {
	text-align:right;
}
main .basic-page #main_block #sub_t_eng p {
	line-height:130%;
	font-size: 14px;
	letter-spacing:2px;
	color:#002e68;
	font-family: "Yu Mincho", "YuMincho", serif;
}
main .basic-page .section_in {
	padding:30px 40px;
	background-color:#fff;
}


@media only screen and (max-width: 641px) {
.basic-page img { max-width: 100%; }
#page {
	min-width:100%;
}
.for_pc {
	display: none !important;
}
.for_spn {
	display: block !important;
}
#page .basic-page .AreaR { float: none !important; }
#page .basic-page .AreaL { float: none !important; }

/* header 641 */
#page #globalheader {
  height: auto;
  /*padding-bottom:2px;*/
  border-bottom: none;
}
#page #globalheader_in {
  width:100%;
  height: auto;
  margin:0;
  padding:0 1px 0;
}
#globalheader h1 {
	padding:0;
	margin:5px auto 0;
	float:none;
	height:45px;
	width:180px;
	text-align:center;
	overflow:hidden;
}
#globalheader h1 a {
	height:50px;
}
#globalheader h1 img {
	width:100%;
	height:auto;
}
#globalheader .info_area {
  display:none;
}

/* nav 641 */
#page nav#g_menu {
  text-align: left;
  padding:0 0 0;
  position:inherit;
  bottom:inherit;
  left:inherit;
  width:100.5%;
}
#page #global_menu {
	display: none;
}
#page #global_menu li {
	width: 100%;
	display:inherit;
}
#toggle {
	display: block;
	position: relative;
	width: 100%;
	background: #002e68;
}
#toggle a{
	display: block;
	position: relative;
	padding: 10px 0;
	color:#FFF;
	text-align: center;
	text-decoration: none;
}
#toggle:before {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 30px;
	height: 30px;
	margin-top: -15px;
	background: #fff;
}
#toggle a:before, #toggle a:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 30px;
	height: 6px;
	background: #002e68;
}
#toggle a:before {
	margin-top:-9px;
}
#toggle a:after {
	margin-top: 3px;
}
#page #global_menu li {
	border-bottom: 1px solid #002e68;
	border-left: none;
}
#page #global_menu li:last-child {
  border-right: none;
}
/*#page #global_menu {
  display: table;
  text-align: center;
  margin:0;
  padding:0;
  width:100%;
}
#page #global_menu li {
  display: table-cell;
  vertical-align: middle;
  width:33.3%;
  float:left;
  border-bottom: 1px solid #D1D1D1;
}
#page #global_menu li:nth-child(3) {
  border-right: 1px solid #000;
}
#page #global_menu li:nth-child(1),
#page #global_menu li:nth-child(2),
#page #global_menu li:nth-child(3) {
  margin-bottom:5px;
  border-bottom: 1px solid #D1D1D1;
}
#page #global_menu li a {
  color: #000;
  display: block;
  font-size: 13px;
  font-weight:bold;
  text-decoration: none;
  padding: 10px 0;
  height:auto;
}*/

main #cont_area {
    width:100%;
    float: none;
}


/*  main 641  */
#main_top .basic-page {
	width: auto;
	margin:0;
	padding-bottom:0;
}
.basic-page {
	width: auto;
	margin:0;
}
main {
	margin-top:0;
}
main #main_area {
	height:auto;
}

/*  TOP main_area 641  */
main #main_area {
    width:100%;
	height:350px;
	position:relative;
	z-index:2;
	overflow:hidden;
	display:block;
}
main #main_area #main1 {
	background: url("../img/top/pct_main01.png") no-repeat scroll;
	height:350px;
	width:100%;
	background-position:50% 0% ;
	background-size:cover;
}
main #main_area #main2 {
	background: url("../img/top/pct_main02.png") no-repeat scroll;
	height:350px;
	width:100%;
	background-position:50% 0% ;
	background-size:cover;
	display:none;
}
main #main_area #main3 {
	background: url("../img/top/pct_main03.png") no-repeat scroll;
	height:350px;
	width:100%;
	background-size:cover;
	background-position:50% 0% ;
	display:none;
}
main #main_area h2 {
	position:absolute;
	top:70%;
	left:50%;
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	z-index:2;
	width:90%;
}
main #main_area h2 img {
	width:100%;
}
main #main_area #main1 h2,
main #main_area #main2 h2,
main #main_area #main3 h2 {
	top:63%;
	left:50%;
}

/* sections 共通 641 */
main .basic-page section {
	min-width:100%;
	padding-bottom:60px;
	padding-top:60px;
}
/*main .basic-page section#products {
	padding-bottom:0;
}*/

/*  TOP メッセージ 641 */
main .basic-page #philosophy {
	width:100%;
	margin:0;
	padding-top:30px;
	padding-bottom:30px;
	background-image:none;
}
main .basic-page #philosophy h2 {
	margin-bottom:20px;
}
main .basic-page #philosophy p {
	font-size: 16px;
	line-height:180%;
}
main .basic-page #philosophy .name_area p {
	font-size: 13px;
}


/*  TOP 製品案内 641 */
/*main .basic-page #products ul li {
	font-size: 20px;
	line-height:130%;
	width:100%;
	display:block;
}*/
main .basic-page #products {
	width:100%;
	margin:0;
	padding:30px 15px;
}
main .basic-page #products ul {
	width:100%;
}
main .basic-page #products ul li {
	margin-bottom:30px;
}
main .basic-page #products ul li img {
	width:100%;
	height: auto;
}
main .basic-page #products ul li .txt_box {
	width:100%;
	height:auto;
	position:inherit;
	top:-6px;
	left:inherit;
}
main .basic-page #products ul li .txt_box_in {
	padding:10px 20px;
}
main .basic-page #products ul li .txt_box_in h3.title_line:after{
	width: 35%;
}
main .basic-page #products ul li .txt_box_l .txt_box_in h3.title_line:after{
	width: 45%;
}


/* TOP news 641 */
/*main .basic-page #news {
	padding:50px 0;
}
main .basic-page #news_in {
	padding-bottom:0;
	margin-bottom:20px;
	width:100%;
}
main .basic-page #news #news_area {
    width:90%;
    height: 130px;
}*/

/* info_spn 641 */
#page #info_spn {
	text-align:center;
	padding:0 15px 20px;
}
#page #info_spn img {
	width:100%;
	height:auto;
}

/* fotter 641 */
#page #globalfooter {
	text-align:center;
}
#page #globalfooter_in {
	width:100%;
	margin:0;
	padding:0 10px;
}
#page #globalfooter_in #ft_mark {
	display:none;
}
#page #globalfooter_in #ft_txt {
	float:none;
	width:100%;
	padding-top:20px;
}
#page #globalfooter p {
	line-height:130%;
	font-size: 12px;
	margin:0;
	padding:0;
	text-align: left;
}
#page #globalfooter_in #f_menu {
	padding-bottom:10px;
	padding-top:10px;
	float: none;
	margin-left:13%;
}
#page #globalfooter #ft_cr {
	float:none;
	width:100%;
	clear:both;
	margin-top:0;
}
#page #globalfooter p {
	text-align:center !important;
	display:inline-block;
	width:100%;
	height:auto;
	font-size: 10px;
	letter-spacing: inherit;
}


/* ページTOP 641 */
#fixedTop {
    right: 10px;
    bottom: 40px;
}

/* サブページ 641 */
main .basic-page #main_block {
	width:100%;
	margin:0 auto 20px;
}
main .basic-page #main_block #main_title {
	height:180px;
	width:100%;
	display:table;
}
main .basic-page #main_block #main_title div {
    padding: 10px;
}
main .basic-page #main_block {
	height: auto;
}
main .basic-page .section_in {
	padding:10px;
	background-color:#fff;
}

}

@media only screen and (max-width: 571px) {

}

@media only screen and (max-width: 420px) {

/* fotter 420 */
#page #globalfooter_in #ft_txt {
	padding-top:10px;
}
#page #globalfooter_in #f_menu {
	margin-left:16%;
}

}

@media only screen and (max-width: 380px) {
.for_spn_380 {
	display:block;
}
main .basic-page #main_block h2 {
    font-size: 25px;
}
main .basic-page #products ul li .txt_box_in h3 {
	font-size: 21px;
	letter-spacing:1px;
}
}

@media only screen and (max-width: 361px) {

.for_spn_360 {
	display:block;
}
.for_spn_360_no {
	display:none;
}

#page #globalfooter_in #f_menu {
	margin-left:12%;
}

}

@media only screen and (max-width: 320px) {

/* fotter 320 */
#page #globalfooter_in {
    padding: 0 5px;
}

#page #globalfooter_in #f_menu {
	margin-left:10%;
}

main .basic-page #products ul li .txt_box_in h3 {
	font-size: 19px;
	letter-spacing:0;
}
}

