:root {
  --main-bg-color: #191970;
  --main-text-color: #000000;
  --header-text-color: #fff;
}

@media screen and (min-width:480px) { 
    /*　画面サイズが480pxからはここを読み込む　*/
 td {
   white-space: normal;
 }
}
@media screen and (min-width:1024px) {
    /*　画面サイズが1024pxからはここを読み込む　*/
 td {
   white-space: nowrap;
 }
}

body {
  background: #FFFFFF ;
}

div.header {
  background: linear-gradient(90deg, var(--main-bg-color), var(--main-bg-color) );
  width: 100%;
  height: 50px;
  vertical-align: middle;
  font-size: 30px;
  color: var(--header-text-color); 
  font-weight: bold;
}

input.wide {
  width: 500px;
}
input.latin {
  ime-mode: disabled;
}
input.kana {
  ime-mode: active;
}

textarea.wide {
  width: 500px;
  height: 5em;
}

.button {
  display: inline-block;
  border-radius: 5%;
  font-size: 18pt;
  text-align: center;
  cursor: pointer;
  padding: 12px 12px;
  background: #000066;
  color: #ffffff;
  line-height: 1em;
  transition: .3s;
  box-shadow: 6px 6px 3px #666666;
  border: 2px solid #000066;
  appearance: none;
}

a:link, a:visited, a:hover, a:active {
  color: blue;
}

.marker_pink {
background: linear-gradient(transparent 80%, #ff66ff 80%);
}

.cols {
    -webkit-column-count: 2; /* Chrome, Safari, Opera */
    -moz-column-count: 2; /* Firefox */
    column-count: 2;
    
    -webkit-column-gap: 10px; /* Chrome, Safari, Opera */
    -moz-column-gap: 10px; /* Firefox */
    column-gap: 10px;
    
    display:flex;
    flex-wrap:wrap;
}

.box2 {
    padding: 0.5em 1em;
    margin: 2em 0;
    font-weight: bold;
    color: var(--main-text-color);/*文字色*/
    background: #FFF;
    border: solid 3px var(--main-bg-color);/*線*/
    border-radius: 10px;/*角の丸み*/
}
.box2 p {
    margin: 0; 
    padding: 0;
}

/*タブ切り替え全体のスタイル*/
.tabs {
  margin-top: 50px;
  padding-bottom: 40px;
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  width: 100%;
  margin: 0 auto;}

/*タブのスタイル*/
.tab_item {
  width: calc(100%/3);
  height: 50px;
  border-bottom: 3px solid #5ab4bd;
  background-color: #d9d9d9;
  line-height: 50px;
  font-size: 16px;
  text-align: center;
  color: #565656;
  display: block;
  float: left;
  text-align: center;
  font-weight: bold;
  transition: all 0.2s ease;
}
.tab_item:hover {
  opacity: 0.75;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
  display: none;
  padding: 40px 40px 0;
  clear: both;
  overflow: hidden;
}


/*選択されているタブのコンテンツのみを表示*/
#day1:checked ~ #day1_content,
#day2:checked ~ #day2_content,
#day3:checked ~ #day3_content {
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
  background-color: #5ab4bd;
  color: #fff;
}

table{
  width: 100%;
  border-collapse:separate;
  border-spacing: 0;
}

table th:first-child{
  border-radius: 5px 0 0 0;
}

table th:last-child{
  border-radius: 0 5px 0 0;
  border-right: 1px solid #3c6690;
}

table th{
  text-align: center;
  color:white;
  background: linear-gradient(#829ebc,#225588);
  border-left: 1px solid #3c6690;
  border-top: 1px solid #3c6690;
  border-bottom: 1px solid #3c6690;
  box-shadow: 0px 1px 1px rgba(255,255,255,0.3) inset;
  padding: 10px 0;
}

table td{
  text-align: center;
  border-left: 1px solid #a8b7c5;
  border-bottom: 1px solid #a8b7c5;
  border-top:none;
  box-shadow: 0px -3px 5px 1px #eee inset;
  padding: 10px 0;
}

table td:last-child{
  border-right: 1px solid #a8b7c5;
}

table tr:last-child td:first-child {
  border-radius: 0 0 0 5px;
}

table tr:last-child td:last-child {
  border-radius: 0 0 5px 0;
}
