@charset "shift_jis";

/*==================================================
　基本の設定
===================================*/


html {
  font-size: 62.5%;
}

body {
  color: #444444;
  font-size: 1.4rem;
  font-family: メイリオ;
  line-height: 130%;
  background-color: #fff;
  margin: 0px 0px 0px 0px;
}

/*-------- 共通 ---------*/
.clear {
  clear: both;
  height: 1px;
}

.nodisp {
  display: none;
}


font.s {font-size: 70%;}
font.ss {font-size: 60%;}



/*==================================================
スライダーのためのcss
===================================*/
#slider {
    width: 80%;
    height: 70vh;/*スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
  margin: 0px 0px 0px auto;
}


/*========= レイアウトのためのCSS ===============*/

a{
  color: #fff;
}

a:hover,
a:active{
  text-decoration: none;
}

#slider-area {
  position: relative;
  width: 100%;
}

.lead {
  position: absolute;
  height: 60vh;
  top: 25%;
  left: 40px;
  font-family: sans-serif;
  color: #000;
  letter-spacing: 2px;
  background-color: rgba(255, 255, 255, .3);
  padding: 10px 20px 0px 0px;
}
.lead dt {
  font-size: 4.8rem;
  line-height: 180%;
}
.lead dd {
  font-size: 3rem;
  line-height: 150%;
}

#slider h1{
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  font-size:4rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #fff;
}

.wrapper{
  position: relative;
}

.container{
  background:#555;
}


/*==================================================
　ヘッダーの設定
===================================*/

/*-------- wrapper --------*/

.wrapper{
  position: relative;
  margin: 0px 0px 60px 0px;
}

header {
  width: 100%;
  display: flex;
  background-color: #fff;
}

nav {
  width: 65%;
}

h1 {
  width: 35%;
  color: #111111;
  font-family: serif;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 1px;
  line-height: 150%;
  text-align: center;
}
h1 span {
  display: inline-block;
  width: 10%;
  padding: 10px 0px 0px 0px;
}
h1 span img {
  max-width: 100%;
  height: auto;
}

/*-------- gnavi --------*/

.gnavi{
    display: flex;
    flex-wrap: wrap;/*スマホ表示折り返し用なのでPCのみなら不要*/
    list-style: none;
  font-size: 1.6rem;
  margin: 15px 0px 10px 50px;
}

.gnavi li a{
    display: block;
    padding:5px 10px;
    text-decoration: none;
    color: #333;
}

/*========= ヘッダー　トップページのみの設定 ===============*/

/*-------- news --------*/

#news {
  position: relative;
  top: -50px;
  z-index: 11;
  width: 40%;
  font-size: 1.8rem;
  background-color: #fff;
  padding: 20px 20px 20px 40px;
}
#news h2 span {
  display: inline-block;
  color: #000;
  font-size: 2rem;
  border-bottom: solid #192679 1px;
  padding: 0px 5px 0px 5px;
}

#news li {
  list-style-type: none;
  color: #333;
  padding: 10px 0px 0px 0px;
}
#news li span {
  font-size: 1.5rem;
  padding: 0px 15px 0px 0px;
}

#news li a{
    text-decoration: none;
}
#news li a:visited,#news li a:link{
  color: #111;
  }
#news li a:hover,#news li a:active{
  color: #800000;
}

/*-------- service --------*/

section#service {
  position: relative;
  width: 90%;
}

#service h2,
#service p {
  width: 100%;
  color: #fff;
  font-family: serif;
  text-align: center;
  background-color: #192679;
}
#service h2 {
  font-size: 2.2rem;
  letter-spacing: 3px;
  padding: 40px 0px 0px 0px;
}
#service p {
  font-size: 1.8rem;
  letter-spacing: 1px;
  padding: 20px 0px 80px 0px;
}
.service-area {
  position: absolute;
  top: 130px;
  right: 160px;
  z-index: 12;
  width: 70%;
  background-color: #fff;
}
.service-area ul {
  width: 90%;
  height: 60px;
  text-align: center;
  margin: 30px auto 0px auto;
}
.service-area li {
  display: inline-block;
  color: #111;
  font-size: 1.8rem;
  letter-spacing: 1px;
  margin: 10px 10px 10px 10px;
}
.service-area li span {
  line-height: 60px;
  white-space: nowrap;
}

/*========= ヘッダー　トップページ以外の設定 ===============*/

/*-------- page_title --------*/

.page_title {
  width: 100%;
  height: 100px;
  background-repeat: no-repeat;
  background-position: right;
  background-color: #eee;
  background-size: 70%;
}
.sp {background-image: url(../img2/img2.jpg);}
.bd {background-image: url(../img2/img15.jpg);}
.pubb {background-image: url(../img2/img16.jpg);}
.dairiten {background-image: url(../img2/img15.jpg);}
.profile {background-image: url(../img2/img11.jpg);}
.meibo {background-image: url(../img2/img14.jpg);}
.inquiry {background-image: url(../img2/img13.jpg);}


.page_title h2 {
  color: #000;
  font-family: serif;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 5px;
  padding: 40px 0px 0px 100px;
}
.page_title h2 span.sikaku {
  display: inline-block;
  content: "";
  width: 24px;
  height: 24px;
  background-color: #192679;
  margin: 5px 5px 0px 0px;
}
.page_title h2 span {
  background-color: rgba(255, 255, 255, .5);
  padding: 0px 10px 0px 10px;
}




/*==================================================
　フッターの設定
===================================*/

/*--------footer--------*/

#footer,
#footer2 {
  position: relative;
  width: 100%;
  background-color: #192679;
}

/*========= フッター　トップページの設定 ===============*/

.footer_l {
  float: left;
  width: 28%;
  text-align: center;
  background-color: #ccc;
  padding: 60px 0px 0px 0px;
}
.footer_r {
  float: right;
  width: 70%;
}

.footer_l dl {
  color: #000;
  font-family: serif;
  margin: 0px 0px 60px 0px;
}
.footer_l dt {
  font-size: 2rem;
  letter-spacing: 1px;
  padding: 0px 0px 20px 0px;
}
.footer_l dd {
  font-size: 2.2rem;
  padding: 0px 0px 20px 0px;
}
.footer_l dd span {
  font-size: 1.6rem;
}
.footer_l .copyright {
  color: #fff;
  font-size: 1.2rem;
  text-align: center;
  background-color: #333;
  padding: 50px 0px 50px 0px;
}

.footer_r ul {
  width: 95%;
  display: flex;
  overflow: hidden;
  margin: 0px auto 0px auto;
}
.footer_r li {
  display: inline-block;
  list-style-type: none;
}
.footer_r li.li1 {
  writing-mode:vertical-rl;
  color: #fff;
  font-family: serif;
  font-size: 2.2rem;
  letter-spacing: 5px;
  padding: 60px 0px 0px 0px;
}
.footer_r li.li2 {
  color: #fff;
  font-family: serif;
  font-size: 1.6rem;
  line-height: 220%;
  padding: 80px 40px 0px 40px;
}
.footer_r li.li2 div {
  text-align: center;
  margin: 20px 10px 0px 0px;
}

.footer_r li.li3 {
  height: 300px;
  padding: 10px 0px 0px 0px;
  overflow: hidden;
}
.footer_r p {
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
  padding: 30px 0px 20px 0px;
}
.footer_r p a {
  display: inline-block;
  padding: 0px 5px 0px 5px;
}

/*========= フッター　トップページ以外の設定 ===============*/

#footer2 {
  padding: 5px 0px 2px 0px;
}

#footer2 .add1 {
  float: left;
  width: 30%;
  height: 110px;
  text-align: center;
  background-color: #ccc;
  padding: 10px 0px 0px 0px;
}
#footer2 .add1 dt {
  font-size: 1.6rem;
  letter-spacing: 1px;
  padding: 0px 0px 5px 0px;
}
#footer2 .add1 span {
  font-size: 80%;
  padding: 0px 5px 0px 0px;
}


#footer2 .link_b {
  float: right;
  width: 70%;
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
  padding: 7px 0px 10px 0px;
}
#footer2 .link_b a {
  display: inline-block;
  padding: 0px 5px 0px 5px;
}

#footer2 .copyright {
  width: 70%;
  float: right;
  color: #fff;
  font-size: 1.3rem;
  text-align: center;
  background-color: #333;
  padding: 15px 0px 40px 0px;
}



/*==================================================
　コンテンツの設定
===================================*/

/*-------- container --------*/

.container,
.container2 {
  background:#fff;
}

.container h2 {
  width: 95%;
  color: #000000;
  font-size: 4rem;
  line-height: 0.2em;
  background-image: url(../img/sikaku.jpg);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 28px;
  background-origin: padding-box;
  margin: 0px auto 0px auto;
  padding: 100px 0px 0px 0px;
}
.container h2 span {
  display: inline-block;
}

.container h2 span.sp1 {
  width: 50%;
  letter-spacing: 4px;
  padding: 0px 0px 0px 10px;
}
.container h2 span.sp2 {
  width: 48%;
  font-size: 60%;
  font-weight: normal;
  letter-spacing: 1px;
  text-align: right;
  border-style: solid;
  border-color: #f5f5f5;
  border-width: 0px 0px 5px 0px;
  padding: 0px 0px 8px 0px;
}

.container2 h2 {
  width: 85%;
  color: #330000;
  font-size: 3rem;
  line-height: 180%;
  letter-spacing: 5px;
  text-align: center;
  border-style: solid;
  border-color: #666;
  border-width: 1px 0px 1px 0px;
  background-color: #fdf5e6;
  margin: 0px auto 0px auto;
}


/*------- flexbox ---------*/

.flexbox {
  width: 100%;
  display: flex;
  position: relative;
  padding: 60px 0px 60px 40px;
}

.flexbox dl {
  width: 50%;
  margin: 10px 50px 0px 50px;
}

.flexbox dt {
  color: #111111;
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 180%;
  letter-spacing: 2px;
  padding-bottom: 10px;
}
.flexbox dt span {
  color: orange;
  font-size: 5rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  -webkit-text-stroke: 1px #000;
  text-shadow: 2px 2px 0px #333, -2px -2px 0px #333,
               -2px 2px 0px #333, 2px -2px 0px #333,
               2px 0px 0px #333, -2px  0px 0px #333,
               0px 2px 0px #333,  0px -2px 0px #333;
  padding: 0px 10px 0px 10px;
}

.flexbox dd {
  font-size: 2rem;
  letter-spacing: 0.1em;
  line-height: 160%;
}

div.flex_img {
  width: 40%;
  background-color: #00ff00;
}
li.flex_img {
  width: 40%;
}

.flex_img img {
  max-width: 100%;
  height: auto;
}

/*-------- comment　コメント --------*/

.comment {
  width: 90%;
  margin: 0px auto 60px auto;
}

.comment dt {
  font-size: 2.6rem;
  letter-spacing: 2px;
  line-height: 250%;
}

#bd .comment,
#sp .comment,
#pubb .comment {
  padding: 40px 0px 0px 0px;
}

#sp .comment dt span {
  font-size: 3rem;
  letter-spacing: 4px;
  padding: 0px 10px 0px 0px;
}
#pubb .comment dt span.sp1 {
  color: tomato;
  font-size: 3rem;
  letter-spacing: 2px;
  padding: 0px 0px 0px 10px;
}
#pubb .comment dt span.sp2 {
  font-size: 1.8rem;
  font-weight: normal;
  padding: 0px 10px 0px 0px;
}



.comment dd {
  font-size: 2.2rem;
  letter-spacing: 2px;
  line-height: 180%;
  padding: 0px 0px 30px 0px;
}
.comment dd font {
  color: #192679;
  font-weight: bolder;
}
.comment p{
  margin: 25px 0px 0px 0px;
}


/*========= SP免震基礎 ===============*/
/*========= ｂＤパイル ===============*/

/*---------- douga ----------*/

#douga {
  width: 80%;
  text-align: center;
  margin: 60px auto 60px auto;
}

#douga video {
  width: 60%;
  height: auto;
  controls: ;
}
#douga p {
  width: 60%;
  font-size: 1.6rem;
  text-align: left;
  margin: 10px auto 50px auto;
}


/*-------- tokucho --------*/

#tokucho dl{
  width: 75%;
  margin: 50px auto 50px auto;
}
#tokucho dt{
  color: #222222;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 2px;
  line-height: 200%;
}
#tokucho dt span{
  color: #ff3300;
  font-size: 3.8rem;
  font-weight: bold;
  font-style: italic;
  padding-right: 10px;
}
#tokucho dd{
  color: #333333;
  font-size: 2rem;
  line-height: 180%;
  letter-spacing: 1px;
  padding: 0px 0px 40px 40px;
}

#tokucho dd p {
  width: 90%;
  font-size: 90%;
  line-height: 170%;
  border-style: dotted;
  border-color: #666;
  border-width: 2px;
  background: #eee;
  margin: 20px auto;
  padding: 15px 25px;
}



/*----------zu----------*/
#zu{
  clear: both;
  width: 80%;
  margin: 0px auto 50px auto;
}
#zu dl{
  float: left;
  width: 50%;
}
#zu dt img{
  max-height: 320px;
  width: auto;
  text-align: center;
  border-style: solid;
  border-color: #333333;
  border-width: 1px;
}
#zu dd{
  font-size: 1.8rem;
  line-height: 140%;
  padding: 15px 10px 0px 10px;
}

/*----------chigai----------*/
#chigai{
  width: 70%;
  border-style: dotted;
  border-color: #330000;
  border-width: 2px;
  margin: 0px auto 80px auto;
  padding: 15px 15px 0px 15px;
}
#chigai dl{
  margin: 0px 0px 0px 10px;
}
#chigai dt{
  color: #193c02;
  font-size: 2rem;
  font-weight: bold;
  line-height: 200%;
  letter-spacing: 2px;
}
#chigai dd{
  font-size: 1.8rem;
  line-height: 140%;
  margin: 0px 0px 20px 0px;
}
#chigai dd.flex_img {
  text-align: center;
}

/*----------qa----------*/
#qa{
  width: 85%;
  margin: 20px auto 50px auto;
}
#qa dt{
  color: maroon;
  font-size: 2.2rem;
  font-weight: normal;
  line-height: 200%;
  letter-spacing: 1px;
  background-image: url(../img/ico_q.jpg);
  background-repeat: no-repeat;
  background-position: 0px 12px;
  padding: 5px 0px 0px 30px;
}
#qa dd{
  font-size: 1.8rem;
  background-image: url(../img/ico_a.jpg);
  background-repeat: no-repeat;
  background-position: 25px 2px;
  padding: 5px 0px 20px 55px;
}

/*========= ｂＤパイル ===============*/

/*----------siyou----------*/
#siyou {
  width: 85%;
  margin: 40px auto 0px auto;
}
#siyou dt{
  color: #008000;
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: 1px;
  margin: 0px 0px 5px 0px;
}
#siyou dd{
  font-size: 1.8rem;
  line-height: 180%;
  padding: 0px 0px 50px 10px;
}

.youto li{
  display: inline-block;
  width: 240px;
  list-style-type: none;
  background-image: url(../img/ico_maru.gif);
  background-repeat: no-repeat;
  background-position: 0px 8px;
  padding: 0px 0px 0px 15px;
}
#siyou dd img {
  margin: 10px 0px 0px 0px;
}

ul.syurui {
  width: 70%;
  margin: 20px auto 0px auto;
}

.syurui li{
  list-style-type: none;
  border-style: solid;
  border-color: silver;
  border-width: 1px 0px 0px 1px;
}

.syurui span {
  display: inline-block;
  text-align: center;
  border-style: solid;
  border-color: silver;
  border-width: 0px 1px 1px 0px;
  padding: 8px 0px 4px 0px;
}
.syurui span.sp1 {width: 25%;}
.syurui span.sp2 {width: 48%;}
.syurui span.sp3 {width: 25%;}
.syurui li.ttl {
  color: #333;
  background-color: #e0fde0;
}

.hikaku{
  width: 80%;
  margin: 10px auto 0px auto;
}
.hikaku img {
  max-width: 100%;
  height: auto;
}

/*---------- sekou ----------*/
#sekou {
  width: 85%;
  margin: 60px auto 60px auto;
  text-align: center;
}


#sekou ul {
  width: 100%;
}
#sekou li {
  width: 45%;
  display: inline-block;
  font-size: 1.8rem;
  letter-spacing: 1px;
  padding: 0px 10px 40px 10px;
}
#sekou li img {
  border-style: solid;
  border-color: #333333;
  border-width: 1px;
  margin: 0px 0px 10px 0px;
}


/*========= PUBB工法 ===============*/

/*----------flow----------*/
#flow{
  width: 75%;
  margin: 60px auto 60px auto;
}

#flow ul{
  float: left;
  width: 20%;
}

#flow dl{
  float: right;
  width: 70%;
}

#flow dt{
  display: inline-block;
  width: 30%;
  font-size: 1.6rem;
  font-weight: normal;
  letter-spacing: 1px;
  vertical-align: top;
  padding: 0px 0px 25px 0px;
}
#flow dt img{
  border-style: solid;
  border-color: #333333;
  border-width: 1px;
  margin: 0px 0px 5px 0px;
}

#flow dd{
  display: inline-block;
  font-size: 1.6rem;
  width: 65%;
  padding: 0px 0px 25px 0px;
}
#flow dd img{
  border-style: solid;
  border-color: #666666;
  border-width: 1px;
}
#flow dd span{
  display: block;
  text-align: center;
  padding: 5px 0px 0px 0px;
}

#flow li.box{
  list-style-type: none;
  background-color: #e0fde0;
  color: #000000;
  font-size: 1.6rem;
  line-height: 140%;
  border-style: solid;
  border-color: #99cc99;
  border-width: 1px;
  padding: 15px 0px 15px 35px;
}

#flow li span{
  font-weight: bold;
}
.arrow{
  width: 100px;
  margin: 0px 0px 0px 25%;
}
.arrow::before{
  content: "";
  display: block;
  margin: 0 auto;
  width: 60px;
  height: 10px;
  background: #99cc99;
}
.arrow::after{
  content: "";
  display:block;
  border-top: 50px solid #99cc99;
  border-left: 50px solid transparent;
  border-right: 50px solid transparent;
  transform-origin: left top;
  transform: scaleY(.5);
}


/*========= 代理店募集 ===============*/

/*---------- bosyu ----------*/

#bosyu {
  width: 80%;
  margin: 60px auto 60px auto;
}
#bosyu dt {
  color: navy;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 1px;
  line-height: 240%;
}
#bosyu dd {
  display: inline-block;
}
#bosyu dd.dd1 {
  width: 30%;
  text-align: center;
}
#bosyu dd.dd1 img {
  max-width: 100%;
  height: auto;
}

#bosyu dd.dd2 {
  width: 67%;
  vertical-align: top;
}

#bosyu dd.dd2 li {
  font-size: 1.8rem;
  line-height: 150%;
  padding: 10px 0px 10px 0px;
}
#bosyu dd.dd2 li span {
  font-weight: bold;
  letter-spacing: 4px;
}

/*----------aisatu----------*/
#aisatu {
  width: 70%;
  font-size: 1.6rem;
  line-height: 150%;
  border-style: dotted;
  border-color: #330000;
  border-width: 2px;
  margin: 60px auto 60px auto;
  padding: 50px 40px 40px 40px;
}
#aisatu dt{
  width: 200px;
  color: #330000;
  font-size: 130%;
  font-weight: bold;
  letter-spacing: 20px;
  text-align: center;
  border-style: double;
  border-color: #330000;
  border-width: 0px 0px 3px 0px;
  margin: 0px auto 20px auto;
}
#aisatu dd{
  margin: 0px 0px 10px 0px;
}

#aisatu dd.doc_r{
  letter-spacing: 4px;
  line-height: 160%;
  margin: 0px 0px 0px 70%;
}
#aisatu dd.doc_r span{
  font-size: 1.4rem;
}

/*---------- tokucho ----------*/

#dairiten #tokucho dt{
  color: #ff3300;
}

/*----------add2----------*/
#add2{
  width: 60%;
  font-size: 1.6rem;
  border-style: solid;
  border-color: #6878c8;
  border-width: 2px;
  margin: 20px auto 60px auto;
  padding: 40px 0px 20px 50px;
}
#add2 dl{
  display: inline-block;
  width: 48%;
  border-style: solid;
  border-color: #6878c8;
  border-width: 0px 0px 0px 15px;
  margin: 20px 0px 20px 0px;
  padding: 2px 0px 0px 8px;
}
#add2 dt{
  color: #222222;
  font-size: 2rem;
  letter-spacing: 4px;
  padding: 0px 0px 10px 0px;
}
#add2 dt span {
  display: block;
  color: #333333;
  font-size: 1.6rem;
  font-weight: normal;
  letter-spacing: 1px;
  padding: 0px 0px 5px 0px;
}
#add2 dd{
  color: #333333;
  font-size: 1.8rem;
  line-height: 140%;
}

/*========= 会社概要 ===============*/

#gaiyo {
  width: 60%;
  margin: 60px auto 60px auto;
}
#gaiyo dl {
  font-size: 1.8rem;
  line-height: 150%;
  background-color: #e1e6fd;
  border-style: solid;
  border-color: #192679;
  border-width: 1px 0px 0px 1px;
}
#gaiyo dt {
  display: inline-block;
  width: 20%;
  color: #111;
  font-weight: normal;
  letter-spacing: 4px;
  text-align: center;
  border-style: solid;
  border-color: #192679;
  border-width: 0px 0px 1px 0px;
  padding: 10px 0px 10px 0px;
}
#gaiyo dd {
  display: inline-block;
  width: 79%;
  letter-spacing: 1px;
  background-color: #ffffff;
  border-style: solid;
  border-color: #192679;
  border-width: 0px 1px 1px 1px;
  padding: 10px 0px 10px 20px;
}
#gaiyo dd iframe {
  width: 425px;
  height: 350px;
}


/*========= 近畿圏bD会名簿 ===============*/

/*----------meibo----------*/
#meibo {
  width: 70%;
  margin: 60px auto 60px auto;
}
#meibo ul {
  border-style: solid;
  border-color: silver;
  border-width: 1px 1px 0px 1px;
  background-color: silver;
  margin: 0px 0px 40px 0px;
}
#meibo li {
  list-style-type: none;
  font-size: 1.6rem;
  border-style: solid;
  border-color: silver;
  border-width: 0px 0px 1px 0px;
  background-color: #e1e6fd;
}
#meibo li span.sp1 {
  display: inline-block;
  width: 20%;
  font-size: 1.8rem;
  letter-spacing: 2px;
  text-align: center;
  padding: 10px 0px 5px 0px;
}
#meibo li span.sp2 {
  display: inline-block;
  width: 79%;
  font-size: 1.8rem;
  background-color: #fff;
  border-style: solid;
  border-color: silver;
  border-width: 0px 0px 0px 1px;
  padding: 10px 0px 5px 10px;
}
#meibo li span.sp3 {
  display: inline-block;
  width: 30%;
  float: right;
  text-align: center;
  background-color: #e1e6fd;
  padding: 4px 0px 0px 0px;
}


/*========= お問合わせ・資料請求 ===============*/

/*----------inquiry----------*/

#inquiry ul {
  width: 50%;
  border-style: solid;
  border-color: silver;
  border-width: 1px 1px 0px 1px;
  margin: 40px auto 20px auto;
}
#inquiry li {
  list-style-type: none;
  color: #333333;
  font-size: 1.6rem;
  border-style: solid;
  border-color: silver;
  border-width: 0px 0px 1px 0px;
  background-color: #e1e6fd;
}
#inquiry li span.sp1 {
  display: inline-block;
  width: 15%;
  text-align: center;
  padding: 8px 0px 4px 0px;
  margin: 0px 10px 0px 0px;
}
#inquiry li span.sp2 {
  display: inline-block;
  width: 82%;
  background-color: #fff;
  border-style: solid;
  border-color: silver;
  border-width: 0px 0px 0px 1px;
  padding: 6px 0px 0px 15px;
}

input,
textarea {
  border: solid 1px silver;
  padding: 5px 10px 5px 10px;
  margin: 0px 0px 5px 0px;
}
textarea {
  width: 60%;
  height: 10em;
}

input[type="radio"],
input[type="checkbox"] {
  margin: 5px 5px 7px 0px;
}
input[type="button"],
input[type="submit"],
input[type="reset"] {
  background-image: linear-gradient(0deg, #c1cdfe, #e5eaff); /* グラデーション */
  border: 1px solid #3c7fb1; /* 枠線 */
  border-radius: 0.3em;      /* 角丸 */
}
.txt {
  display: inline-block;
  width: 20em;
}
.txt2 {
  display: inline-block;
  width: 20%;
}

.rs{
  color: #FF0000;
  font-size: 12px;
  font-weight: normal;
  padding: 0px 0px 0px 5px;
}

#inquiry p {
  width: 50%;
  text-align: center;
  margin: 0px auto 60px auto;
}
#inquiry p input {
  border-style: solid;
  border-color: silver;
  border-width: 1px;
  padding: 10px 20px 10px 20px;
}


/*-------ime設定---------*/
.ime_on{
  ime-mode:active;
}
.ime_off{
  ime-mode:inactive;
}


/*----------privacy----------*/
#privacy {
  margin: 80px 0px 0px 0px;
}
#privacy dl{
  margin: 20px 20px 0px 40px;
}
#privacy dt{
  color: #222222;
  font-size: 110%;
  letter-spacing: 1px;
  margin: 0px 0px 7px 0px;
}
#privacy dd{
  color: #333333;
  line-height: 140%;
  margin: 0px 0px 20px 0px;
  padding: 0px 0px 0px 17px;
}

/*========= お知らせ ===============*/

.news_i {
  width: 100%;
  margin: 20px 0px 80px 0px;
}
.news_box {
  position: relative;
  width: 80%;
  border-top: solid 2px black;
  border-bottom: solid 2px black;
  margin: 2em auto 60px auto;
  padding: 40px 40px 40px 40px;
}
.news_box:before, .news_box:after{
    content: '';
    position: absolute;
    top: -10px;
    width: 2px;
    height: -webkit-calc(100% + 20px);
    height: calc(100% + 20px);
    background-color: black;
}
.news_box:before {left: 10px;}
.news_box:after {right: 10px;}
.news_box p {
    margin: 0;
    padding: 0;
}

.news_i dt {
  font-size: 2.2rem;
  line-height: 180%;
  letter-spacing: 2px;
}
.news_i dt span {
  display: inline-block;
  background-color: #eee;
  border-style: double;
  border-color: silver;
  border-width: 4px 0px 4px 0px;
  padding: 5px 20px 0px 20px;
}

.news_i dd.dd_day {
  font-size: 1.5rem;
  line-height: 150%;
  letter-spacing: 2px;
  text-align: right;
  padding: 0px 30px 0px 0px;
}
.news_i dd.dd_com {
  font-size: 1.8rem;
  line-height: 140%;
}
