﻿@charset "utf-8"; /* PublishCharset into mt-config.cgi */

* {
margin: 0;
padding: 0;
}

html {font-size:62.5%;}

body {
margin-top:0;
margin-bottom:20px;
margin-left:0;
margin-right:0;
text-align:center;
font-family:
  -apple-system,
  BlinkMacSystemFont,
  "Segoe UI",
  "Hiragino Sans",
  "Hiragino Kaku Gothic ProN",
  "Yu Gothic UI",
  "Yu Gothic",
  Meiryo,
  sans-serif;
font-size:1.6rem;
line-height:1.7;
color:#222;
}
/* サイト内検索の移設表示 */
#top_search_module {
margin:0;
padding:0;
}
/* ==========================================
   レイアウト用 media query
   区分
   ① 1440px以上   ：上限付きリキッド2カラム
   ② 800px～1439px：通常2カラム
   ③ 799px以下    ：1カラム＋サイドバー非表示
   ===================================== */
/* =========================
   ① 1440px以上
   上限付きリキッド2カラム
   ========================= */
@media screen and (min-width:1440px) {
  .two_col_right #container {
    width: 94%;
    max-width: 1360px;
    margin-right: auto;
    margin-left: auto;
    padding: 0;
    text-align: left;
  }
  .two_col_right #content {
    float: left;
    width: calc(100% - 320px);
    padding-right: 20px;
    margin: 0;
    box-sizing: border-box;
  }
  .two_col_right #sidebar {
    float: right;
    width: 300px;
    margin: 0;
    padding-bottom: 5px;
    padding-right: 0;
    padding-left: 0;
    box-sizing: border-box;
  }
  #spMenuDesktopAnchor #top_search_module {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0 0 10px 0;
    text-align: center;
    box-sizing: border-box;
    min-height: 58px;
  }
}
/* =========================
   ② 800px～1439px
   通常2カラム
   ========================= */
@media screen and (min-width:800px) and (max-width:1439px) {
  .two_col_right #container {
    width: 94%;
    margin-right: auto;
    margin-left: auto;
    padding: 0;
    text-align: left;
  }
  .two_col_right #content {
    float: left;
    width: 72%;
    padding-right: 2%;
    margin: 0;
    box-sizing: border-box;
  }
  .two_col_right #sidebar {
    float: right;
    width: 28%;
    margin: 0;
    padding-bottom: 5px;
    padding-right: 0;
    padding-left: 0;
    box-sizing: border-box;
  }
  #spMenuDesktopAnchor #top_search_module {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0 0 10px 0;
    text-align: center;
    box-sizing: border-box;
    min-height: 58px;
  }
}
/* =========================
   ③ 799px以下
   1カラム＋サイドバー非表示
   ========================= */
@media screen and (max-width:799px) {
  .two_col_right #container {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding: 0;
    text-align: left;
  }
  .two_col_right #content {
    float: none;
    width: 100%;
    padding-right: 10px;
    margin: 0;
    box-sizing: border-box;
  }
  .two_col_right #sidebar {
    display: none;
  }
  #top_search_module {
  float:none;
  width:100%;
  margin:0;
  padding:0;
  }
  #top_search_module table,
  #top_search_module tbody,
  #top_search_module tr,
  #top_search_module td,
  #top_search_module input,
  #top_search_module .gsc-control-cse,
  #top_search_module .gsc-search-box,
  #top_search_module .gsc-input-box,
  #top_search_module .gsc-input {
  max-width:100% !important;
  box-sizing:border-box;
  }
}
/***********************************/
/* メインメニュー：PC/スマホ兼用 */
/* 共通 */
#spMenuBar {
  margin: 0;
  padding: 0;
}
#spMenuMobileAnchor,
#spMenuDesktopAnchor {
  margin: 0;
  padding: 0;
}
#sharedMenuPanel {
  margin: 0;
  padding: 0;
}
#sharedMenuPanel ul.spMenuList {
  list-style: none;
  margin: 0;
  padding: 0;
}
#sharedMenuPanel ul.spMenuList li {
  margin: 0;
  padding: 0;
  border-bottom: 1px solid #ddd;
}
#sharedMenuPanel ul.spMenuList li a {
  display: block;
  padding: 10px 12px;
  text-decoration: none;
  color: #000;
  line-height: 1.6;
  box-sizing: border-box;
}
#sharedMenuPanel ul.spMenuList li a:hover { background: #CC6666; } 
#sharedMenuPanel ul.spMenuList li a:hover:after { border-left-color: #CC6666 !important; }
/* ボタンの見た目 */
#spMenuButton {
  display: inline-block;
  line-height: 1.4;
  padding: 8px 16px;
  border: 1px solid #999;
  background: #f5f5f5;
  color: #222;
  cursor: pointer;
}
/* 799px以下：スマホ */
@media screen and (max-width:799px) {
  #spMenuBar {
    display: block;
    margin: 0 0 8px 0;
/*    margin: 0 0 12px 0;*/
    padding: 10px;
/*    background: #f5f5f5;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;*/
  }
  #sharedMenuPanel {
    display: block;
    width: 100%;
    margin: 0 0 12px 0;
    padding: 0;
  }
  #sharedMenuPanel[hidden] {
    display: none !important;
  }
  #spMenuDesktopAnchor {
    display: none;
  }
    #sharedMenuPanel ul.spMenuList li {
    margin: 0 0 12px 0;
  }
  #sharedMenuPanel ul.spMenuList li a {
    padding: 10px 12px;
  }
}
/* 800px以上：PCではボタン非表示、メニュー常時表示 */
@media screen and (min-width:800px) {
  #spMenuBar {
    display: none;
  }
  #spMenuDesktopAnchor {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    text-align: left;
    box-sizing: border-box;
  }
  #sharedMenuPanel {
    display: block !important;
    float: none;
    clear: none;
    width: 100%;
    margin: 0;
    padding: 0;
    text-align: left;
    box-sizing: border-box;
  }
  #sharedMenuPanel[hidden] {
    display: block !important;
  }
  #sharedMenuPanel ul.spMenuList {
    width: 100%;
    margin: 0;
    padding: 0;
  }

  #sharedMenuPanel ul.spMenuList li,
  #sharedMenuPanel ul.spMenuList li a {
    width: 100%;
    text-align: left;
    box-sizing: border-box;
  }
  #spMenuMobileAnchor {
    display: none;
  }
}
/***************************/
/*広告ユニットのサイズ指定*/
.adslot_Top {
  width: 336px;
  height: 280px;
}
@media (max-width:799px) {
  .adslot_Top {
    width: 320px;
    height: 100px;
  }
}
.adslot_Bottom {
  width: 336px;
  height: 280px;
}
@media (max-width:799px) {
  .adslot_Bottom {
    width: 300px;
    height: 250px;
  }
}
.adslot_Side {
  width: 100%;
  max-width: 300px;
  height: 600px;
}
@media (max-width:799px) {
  .adslot_Side {
    display: none;
  }
}
/*折りたたみメニュー*/
.sidecontent #main_categories {
margin:5px 5px 0 5px;padding: 0px;font-size:1.4rem;
}
.sidecontent #main_categories a:hover {
background-color: #CC6666;color: #ffffff;
}
/*トップページ・カテゴリページのメニュー*/
#content ol.cat {
margin-left:1.5rem;
margin-right :1rem;
padding: 0px;
}
#content ol.cat li {
margin-top:1rem;
padding-right:1rem;
line-height:2.7rem;
margin-bottom:2rem;
}
#content ol.cat li a:hover {
background-color: #CC6666;
color: #ffffff;
}
#content h4.cat {
padding:0 0 0 0;
margin-top:0;
margin-bottom:0.5rem;
margin-left:0;
margin-right:0;
border-width:0 0 0 0;
border-style:none;
}
#content h4.cat a:hover {
background-color: #CC6666;
color: #ffffff;
}
#tagline {
/*background-color: #000080;*/
margin-top:0;
margin-bottom: 5px;
padding-top:0px;
padding-bottom:0;
padding-right: 8px;
padding-left:8px;
color: #444444;
border-bottom: 1px solid #dddddd;
font-weight: normal;
line-height:1.1em;
}
#tagline h1, 
#tagline h2 {
margin-top: 0;
margin-bottom: 0;
padding-top:0x;
padding-bottom:5px;
}
#tagline h1 {
font-size: 1.6rem;
margin-bottom: 3px;
}
#tagline h2 {
font-size:1.2rem;
}
#tagline a:link,
#tagline a:active,
#tagline a:visited {
color: #444444;
text-decoration: none;
}
/*パンくずリスト*/
ul#breadcrumb {
margin-top:0;
margin-bottom:5px;
margin-left:0;
margin-right:0;
clear: both;
overflow: visible;
background: none;
padding: 5px 0;
font-size:1.3rem;
color:#666;
} 
ul#breadcrumb li {
float: none;
display: inline-block;
list-style: none;
padding: 0;
line-height:1.5em;
} 
ul#breadcrumb li a {
color:#666;
text-decoration:none;
} 
ul#breadcrumb li a:hover { background: #CC6666; } 
ul#breadcrumb li a:hover:after { border-left-color: #CC6666 !important; }
.reproduction_note {
font-size:1.2rem;
color:#666666;
margin-top:0px;
margin-bottom:0px !important;
padding-top:0px;
padding-bottom:0px;
line-height:1.2em !important;
}
.sponsored_link {
font-size: 0.8rem;
color:#666666;
margin-top:0px;
margin-bottom:5px !important;
padding-top:0px;
padding-bottom:0px;
line-height:1.2em !important;
}
.entry-title {
margin-top: 0;
margin-right: 5px;
margin-bottom: 15px;
margin-left:0;
padding-top: 3px;
padding-right: 3px;
padding-bottom: 3px;
padding-left:3px;
border-bottom:#000080 1px solid;
font-size:2rem;
font-weight: bold;
}
/* 本文だけフォントサイズを18px相当にする */
#content {
word-wrap: break-word;
font-size: 1.8rem;
}
#content a {
text-decoration: none;
}
#content a:hover{
text-decoration:underline;
}
#content h3 {
background-color:none;
/*color:white;*/
font-size: 1.8rem;
margin-left:10px;
margin-right:5px;
margin-top:0;
margin-bottom:15px;
padding-left:10px;
padding-right:5px;
padding-top: 4px;
padding-bottom: 4px
border-color: #000080;
border-width:0 0 1px 0;
border-style:solid;
}
#content h3 a, 
#content th a {
color:white;
}
#content h4 {
font-size: 1.8rem;
padding:0px 5px;
margin:0em 0.5em 0.5em 0.5em;
border-left:25px solid #000080;
}
#content h5 {
font-size: 1.8rem;
margin:0em 0.5em 0.5em 1em;
padding:0px 5px;
border-left:15px solid #000080;
}
#content h6 {
font-size: 1.8rem;
margin:0em 0.5em 0.5em 1.5em;
padding:0px 5px;
border-left:5px solid #000080;
}
#content h4 a,
#content h5 a,
#content h6 a
{
color: #0000ff;
text-decoration: none;
}
#content p {
margin:0em 1em 0.3em;
line-height: 1.8em;
}
#content p:after {
content: " ";
display: inline-block;
height: 1em;
}
#content hr {margin-right:0.5em;}
#content dl {
font-size: 1.4rem;
margin-left:2em;
margin-right:2em;
}
#content dl.supplement {
font-size: 1.4rem;
margin-left:2em;
margin-right:2em;
background-color:#ffdddd;
}
#content dd.supplement {
font-size: 1.4rem;
margin-left:1em;
margin-right:1em;
}
#content table {
font-size: 1.4rem;
    margin-left: auto;
    margin-right: auto;
}
#content ul ul,
#content ol ol,
#content ul ul ul,
#content ol ol ol
{
font-size: 1.8rem;
padding-top: 5px;
}
#content ul li {display: list-item;line-height:3.2rem;list-style-image: url("//k-solution.info/image/point.gif");margin-right:1em;margin-bottom:10px;}
#content ol li {display: list-item;line-height:3.2rem;margin-right:1em;margin-bottom:10px;}
#content ul#tv li { list-style-image: none; line-height:120%}
#content th { 
background-color: #000080;
color: #FFFFFF;
padding: 4px;
}
#content td { 
padding: 4px;
background-color:#F2F6FF;
}
.page-list-heading {
padding-left:5px;
padding-right:5px;
padding-top:10px;
padding-bottom:10px;
margin:0 5px 10px;
border-color: #000080;
border-width:7px 0 1px 0;
border-style:solid;
font-weight: bold;
font-size: 1.8rem;
}
.PreviousNext-navi {
margin: 10px;
text-align: center;
}
.sidemodule {
margin-top: 0;
margin-right: 0;
margin-left: 0;
margin-bottom: 0;
padding-left: 0;
padding-right: 0;
padding-bottom: 15px;
padding-top: 0;
}
.sidecontent {
margin-top: 0;
margin-right: 0;
margin-left: 0;
margin-bottom: 0;
padding: 0;
border-bottom: 1px solid #000080;
}
.border_none {
border:none;
border-collapse:collapse;
}
.img-right
{
float: right; 
margin-left: 10px;
}
.img-left
{
float: left; 
padding-left: 6px;
}
.align-center {
text-align: center;
}
.align-left {
text-align: left;
}
.align-right {
text-align: right;
}
.table-center {
margin-left : auto;
margin-right : auto;
}
.block-center {
margin: 0 auto;
}
.block-left {
margin-right : auto;
margin-left : 0px;
text-align : left;
}
.block-right {
margin-left : auto;
margin-right : 0px;
text-align : right;
}
.background-color_yellow {
background-color:#FCC800;
margin-left: 1em;
margin-right:1em;
margin-top: 1em;
margin-bottom: 1em;
padding:1em;
list-style-position: inside;
}
.background-color_grey {
background-color:#c5beba;
}
.div_background-color_yellow {
background-color:#FCC800;
margin-top:1em;
margin-bottom:1em;
margin-left: 1em;
margin-right:1em;
padding:1em;
list-style-position: inside;
font-size: 1.6rem;
}
.div_background-color_grey {
background-color:#c5beba;
margin-top:1em;
margin-bottom:1em;
margin-left: 1em;
margin-right:1em;
padding:1em;
list-style-position: inside;
font-size: 1.6rem;
}
.div_background-color_grey2 {
background-color:#F0F0E8;
margin-top:1em;
margin-bottom:1em;
margin-left: 1em;
margin-right:1em;
padding:1em;
list-style-position: inside;
font-size: 1.6rem;
}
#content p.note {
font-size: 1.3rem;
margin-left: 2em;
margin-right: 2em;
padding-left: 26px;
background:url(//k-solution.info/image/note01.gif) no-repeat left top;
}
#content p.reference {
font-size: 1.3rem;
margin-left: 2em;
margin-right: 2em;
padding-left: 25px;
background:url(//k-solution.info/image/i_arrow_red.gif) no-repeat left center;
line-height: 1.6rem;
}
.download {
font-size: 1.2rem;
margin-left: 2em;
margin-right: 2em;
padding-left: 25px;
background:url(//k-solution.info/image/dlNowGrnSm.gif) no-repeat left center;
}
.download_btn{
    position: relative;
    display: inline-block;
	border-radius:3px;
    font-size:1.8rem;
	font-weight: bold;
	margin-left:2em;
    padding: 0.25em 0.5em;
    text-decoration: none;
    color:white;
    background: black;
}
.download_btn:hover {
    background: #CC6666;
}
#content p.inyo {
font-size: 1.3rem;
margin:0 2em 0.5em;
padding-left: 16px;
background:url(//k-solution.info/image/point5_2_1.png) no-repeat left top;
font-style: italic;
line-height: 100%;
}
#content p.attention {
font-size: 1.3rem;
margin-left: 2em;
padding-left: 25px;
background:url(//k-solution.info/image/red_ex.gif) no-repeat left top;
}
.sanko
{
background:url("//k-solution.info/image/sanko.gif") no-repeat left center;
margin-left: 1em;
padding-left:60px;
}
h1, h2, h3, h4, h5, h6, p, ul, ol, pre, blockquote
{
margin-top: 10px;
margin-bottom: 10px;
}
/* 順序なしリスト */
ul, ol {
padding-left: 16px;
margin-left: 2em;
}
ul li ul {
margin: 0 0 0 1em;
padding: 0;
}
dl {}
dd {
padding-left: 2em;
padding-right: 2em;
}
dt {
padding-left: 1em;
font-weight:bold;
}
blockquote {
width: auto;
margin: 0 20px 10px 20px;
padding: 8px;
border: 1px solid #666666;
background: #f6f6f6;
font-size: 1.4rem;
line-height: 150%;
color:#009900;
}
#content p.cite {
font-size: 1.3rem;
font-style:italic;
margin-left: 2em;
margin-right: 2em;
padding-left: 26px;
background:url(//k-solution.info/image/book.ico) no-repeat left top;
}
#content p.under_construction {
margin-left: 2em;
margin-right: 2em;
padding-left: 26px;
background:url(//k-solution.info/image/under_construction.png) no-repeat left 
}
ul.menu{
list-style:none;
display: block;
margin: 0;
list-style-position:outside;
}
ul.menu li{
display: list-item;
margin:0;
}
ul.menu li a{
display:block;
padding:10px;
text-decoration:none;
background-repeat:no-repeat;
}
ul.menu li a:hover{
text-decoration:underline;
}
ul ul {
margin: 0 0 0 0;
padding:0 0 0 1em;
}
ul ul ul {
margin: 0 0 0 0;
padding:0 0 0 1em;
}
ul ul ul ul {
margin: 0 0 0 0;
padding:0 0 0 1em;
}
ol ol {
margin: 0 0 0 0;
padding:0 0 0 1em;
}
ol ol ol {
margin: 0 0 0 0;
padding:0 0 0 1em;
}
ol ol ol ol {
margin: 0 0 0 0;
padding:0 0 0 1em;
}
.cornerBox {
border-radius: 10px; /* CSS3 */
-moz-border-radius: 10px;/* Firefox */
-webkit-border-radius: 10px; /* Safari,Chrome */
}
