/* 共通部分
------------------------------- */
*{
    margin: 0;
    padding: 0;
	box-sizing: border-box;
}

body {
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", 
    HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
    color: gray;
    letter-spacing: 1px;
}

li {
	list-style: none;
}

/* TOP
------------------------------- */

.bx-wrapper {
    margin-bottom: 0 !important; 
    border: none !important;
}

.bx-wrapper img {
    margin: 0 auto;
}

.bx-wrapper .bx-pager, .bx-wrapper .bx-controls-auto {
    bottom: 10px !important;
}

.shinbunshi {
    position: absolute; 
    left: 50%;
    margin-left: -450px;
    top: 100px;
    z-index: 100;
    opacity: 0.7;
}

.charactor {
    width: 120px;
    position: absolute; 
    right: 5%;
	top: 300px;
}


/* HEADER
------------------------------- */

a {
    color: gray;
    text-decoration: none;
}

header {
    position: relative;
}

header article {
    background-image: url(../images/paper.jpg);
    padding: 30px 0;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    color: #99744d;
    line-height: 1.8;
}

.top {
    display: flex;
    list-style: none;
    margin: 10px;
    padding: 10px 0;
    background-color: lightyellow;
}

.top li {
    flex: 1;
    border-right: solid 1px gray;
    text-align: center;
    letter-spacing: 3px;
}

.top li:last-child {
    border: none;
}

.sub {
    display: flex;
    list-style: none;
    padding: 0 10px;
}

.sub li {
    flex: 1;
    text-align: center;
    margin: 0px 10px 5px;
    background-color: orange;
}

.sub a {
    font-size: 14px;
    color: white;
    text-decoration-line: none;
}
.cap {
    text-align: right;
}
.cap a {
    font-size: 12px;
    color: gray;
    margin: 0px 20px 0px;
}

.contact{
    display: flex;
    justify-content: center;
    margin: 5px 0 25px;
    align-items: center;
}


.con_a {
    color: white;
    font-size: 16px;
    text-align: center;
    background-color: #db738dee;
    padding: 30px 0;
    width: 80px;
}

.con_b {
    width: 270px;
    margin: 0 20px;
}

.con_b h1{
    font-size: 32px;
    font-weight: lighter;
    letter-spacing: 4px;
}

.con_b h1 span{
    font-size: 25px;
    margin-right: 5px;
}

.logo {
    font-size: 16px;
}

.logo img {
    width: 100px;
    vertical-align: -6px;
    margin-right: 8px;
}

.con_c {
    width: 360px;
}

.tel {
    font-weight: lighter;
    background-image: url(../images/freedial.png);
    background-position: 0 50%;
    background-size: 40px;
    background-repeat: no-repeat;
    padding: 0;
    margin: 0;
    padding-left: 1.5em;
    font-size: 40px;
    letter-spacing: 4px;
}

.con_c p {
    font-size: 12px;
    letter-spacing: 1px;
}

.con_c a{
    font-size: 16px;
}

.con_c i{
    margin-right: 5px;
}

/* NEWS
------------------------------- */

.news {
    background-image: url(../images/paper.jpg);
	padding: 10px 2em;
}


h3 {
    width: 900px;
    color: white;
    font-size: 22px;
	font-family:  "Yu Gothic medium";
    letter-spacing: 0.1em;
    background-color: #43c7b1c7;
    border-radius: 5px;
    padding: 5px 2em;
    margin: 30px auto;
}

.topic {
	width: 900px;
	margin: 20px auto;
}

.topic_tytle {
    width: 800px;
    margin: 0 auto;
    font-size: 30px;
	font-weight: bold;
	color: goldenrod;
	text-align: center;
	background-color: lightyellow;
}

.goodslist {
	display: flex;
	flex-wrap: wrap;
	width: 900px;
	margin: 0 auto;
}

.goodsitem {
	width: 24%;
	margin-right: 1%;
	padding: 5px;
	border: 2px solid #FFFFFF;
}

.goodsitem img {
	height: 150px;
	display: block;
	margin: 0 auto;
}

.goodsitem_name {
    font-size: 17px;
	font-weight: bold;
	padding: 0 5px;
	margin-top: 10px;
	height: 50px;
}

.goodsitem dl {
	display: flex;
	font-size: 15px;
	line-height: 1.2;
	margin: 10px;
}

.goodsitem dt {
	width: 20%;
}

.goodsitem dd {
	width: 80%;
    color:#db738dee;
	text-align: right;
}

.goodsitem dd span {
	font-size: 20px;
}



.select {
	font-size: 30px;
    text-align: center;
    margin: 0 auto;
	padding: 30px 0 0 0;
}

input[type="submit"] {
    position: relative;
    display: inline-block;
	height: 80px;
    margin: 0 10px;
	padding: 10px;
    width: 400px;
    color: #FFF;
    font-size: 20px;
    background: #1daf8b;/*色*/
    border-radius: 4px;/*角の丸み*/
    box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), inset 0 -2px 0 rgba(0, 0, 0, 0.05);
    font-weight: bold;
    border: solid 2px #299687;/*線色*/
}

/*button {
    position: relative;
    display: inline-block;
    padding: 20px;
    margin: 0 10px;
    width: 200px;
    color: #FFF;
    background: #138b94;/*色*/
    border-radius: 4px;/*角の丸み*/
    box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), inset 0 -2px 0 rgba(0, 0, 0, 0.05);
    font-weight: bold;
    border: solid 2px #045872;/*線色*/
}*/


/* LINK
------------------------------- */

.link {
    display: flex;
	justify-content: center;
}

.linkbox {
    margin: 0 auto;
    padding: 30px;
    width: 820px;
}


.box {
    display: flex;
    justify-content: center;
    margin: 0 auto;
    padding: 30px;
    width: 600px;
}


/* NEWSPAPER
------------------------------- */

.selectbtn {
    text-align: center;
    padding: 20px;
    margin: 20px;
    background-color: olivedrab;
    color: white;
    width: 200px;
    height: 50px;
}

table {
    margin-left: auto;
    margin-right: auto;
    border-collapse: collapse;
    color: #4CAF50;
}


.newspaperbox {
	width: 600px;
	margin: 0 auto;
}

.best {
	font-size: 26px;
	color:darkblue;
}

  
table tr {
    background-color: #fff;
    border-bottom: 1px dotted #8BC34A;
}
table tr:last-child{
     border-bottom: 2px solid #18521b;
}
table th,
table td {
    padding: 10px 20px;
}
tbody th {
      color: #0f7d13;
}
.txt{
     text-align: left;
     font-size: 14px;
}
.price{
     text-align: right;
}
  @media screen and (max-width: 600px) {
    table {
      border: 0;
      width:100%
    }
    table th{
      display: block;
      border-right: none;
      border-bottom: 2px solid #0f7d13;
      padding-bottom: 10px;
      margin-bottom: 10px;
	  text-align: left;
  
    }
    table thead {
      border: none;
      clip: rect(0 0 0 0);
      height: 1px;
      margin: -1px;
      overflow: hidden;
      position: absolute;
      width: 1px;
    }
    
    table tr {
      display: block;
      margin-bottom: 2em;
          border-bottom: 2px solid #0f7d13;
    }
    
    table td {
      border-bottom: 1px solid #bbb;
      display: block;
      font-size: 14px;
      text-align: right;
      position: relative;
      padding: 10px;
      border-right: none;
    }
    
    table td::before {
      content: attr(data-label);
      font-weight: bold;
      position: absolute;
      left: 10px;
    }
    
    table td:last-child {
      border-bottom: 0;
    }
  }

/* GOODS
------------------------------- */

.layout{
	display: flex;
	flex-wrap: wrap;
	padding: 20px;
}


.list {
	margin: 20px;
	display: flex;
}

.list_goods > li {
	width: 25%;
}

.list_goods .img {
	width: 100%;
}

.list_goods .img before {
	content: " ";
	diplay: block;
	width: 100%;
	padding-top: 75%;
}

.list_goods .txt {
	flex: auto;
	min-width: 10px;
	color: gray;
	font-size: 12px;
}

.list_goods{
	display: flex;
}





/* TICKET
------------------------------- */
.whiteboad {
	text-align: center;
}

.boadnavy {
	padding: 30px;
	margin: 30px 0;
	background-color: midnightblue;
	text-align: center;
}

.boadblue {
	padding: 30px;
	margin: 30px 0;
	background-color: lightblue;
	text-align: center;
}

.dragons {
	width: 800px;
	margin: 0 auto;
	padding: 10px;
}



/* COMPANY
------------------------------- */

.block {
	display: flex;
	width: 800px;
	margin: 0 auto;
	padding: 10px;
}

.job {
	width: 800px;
	margin: 0 auto;
	padding: 10px;
}

.company {
    font-size: 26px;
	padding: 0 50px;
}

.company_photo {
    width: 300px;
    margin: 0 20px;
}

.topic_title {
    font-size: 28px;
    letter-spacing: 4px;
}

/* FORM
------------------------------- */

.cp_iptxt {
	width: 30%;
	margin: 40px 3%;
}

.cp_iptxt input {
	width: 100%;
    padding: 20px;
	padding-left: 20px;
	letter-spacing: 1px;
}



/* FOOTER
------------------------------- */

footer {
    display: flex;
    justify-content: center;
    background-color: white;
    margin: 30px auto;
}

footer ul {
    display: flex;
    justify-content: center;
}

footer li {
    list-style: none;
    border-right: solid 1px gray;
    padding: 10px 10px;
}

footer li:last-child {
    border: none;
}

footer a {
    color: gray;
    font-size: 12px;
    text-decoration-line: none;
}

small {
    font-size: 12px;
    color: gray;
    padding: 10px;
}