/*
 * 汎用スタイル
 * OOCSSとBEMを合わせた設計方針になっており、Device-Object(_Elements)-Modifierの命名規則になります。
 * Object / Elements / Modifier が1単語で表せない場合にはキャメルケースでつなぎます。
 * Elementsが複数ある場合にはスネークケースでつなぎます。（Object-Elements_Elements-Modifier
 * Modifierが複数ある場合にはチェーンケースでつなぎます。（Object-Modifier-Modifier）
 */
/*-------------------------------------------------------------------------------
	ラッパー
-------------------------------------------------------------------------------*/
.container {
    margin-left: auto;
    margin-right: auto;
    width: 1050px;
}

.content {
    margin-right: 20px;
    margin-left: 20px;
}

.content-negative {
    margin-right: -20px;
    margin-left: -20px;
}

.content-wrap {
    margin: 20px;
}

/*-------------------------------------------------------------------------------
	背景色
-------------------------------------------------------------------------------*/
.bg-white {
    background-color: #fff;
}

.bg-gray {
    background-color: #F3F3F3;
}



.color-primaryGreen {
    color: #00ACB8;
}

/* thumbnail */
.thumbnail-48,
.thumbnail-75,
.thumbnail-xsm,
.thumbnail-sm,
.thumbnail-md,
.thumbnail-lg,
.thumbnail-circle,
.thumbnail-dummy {
    box-sizing: border-box;
    background-color: #fff;
    overflow: hidden;
}

.thumbnail-dummy {
    border: 1px solid #ccc;
}

.thumbnail-48 img,
.thumbnail-75 img,
.thumbnail-xsm img,
.thumbnail-sm img,
.thumbnail-md img,
.thumbnail-lg img,
.thumbnail-circle img,
.thumbnail-dummy img {
    width: 100%;
    height: auto;
}

.thumbnail-48 {
    width: 48px;
    height: 48px;
}

.thumbnail-75 {
    width: 75px;
    height: 75px;
}

.thumbnail-xsm {
    width: 106px;
    height: 106px;
}

.thumbnail-sm {
    width: 150px;
    height: 150px;
}

.thumbnail-md {
    width: 200px;
    height: 150px;
}

.thumbnail-lg {
    width: 270px;
    height: 270px;
}

.thumbnail-circle {
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    border-radius: 50%;
}

.thumbnail-contain {
    text-align: center;
}

.thumbnail-contain img {
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 100% !important;
}

.thumbnail-dummy {
    background-repeat: no-repeat;
    background-position: center;
}

.thumbnail-48.thumbnail-dummy {
    background-image: url(/img/common/dummy/no_image-xsm.png);
    background-size: 40px auto;
}

.thumbnail-75.thumbnail-dummy {
    background-image: url(/img/common/dummy/no_image-xsm.png);
    background-size: 50px auto;
}

.thumbnail-xsm.thumbnail-dummy {
    background-image: url(/img/common/dummy/no_image-xsm.png);
}

.thumbnail-sm.thumbnail-dummy {
    background-image: url(/img/common/dummy/no_image-sm.png);
}

.thumbnail-md.thumbnail-dummy {
    background-image: url(/img/common/dummy/no_image-sm.png);
}

.thumbnail-lg.thumbnail-dummy {
    background-image: url(/img/common/dummy/no_image-lg.png);
}

.thumbnail-flexible-h {
    height: auto !important;
}


/*-------------------------------------------------------------------------------
	幅
-------------------------------------------------------------------------------*/
.w-auto {
    width: auto !important;
}
.w100p {
    width: 100% !important;
}

/*-------------------------------------------------------------------------------
	線
-------------------------------------------------------------------------------*/
.border-none {
    border: none !important;
}

/*-------------------------------------------------------------------------------
	分類できないもの
-------------------------------------------------------------------------------*/
.nowrap {
    white-space: nowrap;
}

.block {
    display: block;
}

.hide {
    display: none !important;
}

.overflow-hidden {
    overflow: hidden;
}



/*-------------------------------------------------------------------------------
	ページヘッダー
-------------------------------------------------------------------------------*/
.head01 {
    margin-bottom: 25px;
}

.head01 .ttl {
    font-style: 32px;
    font-size: 3.2rem;
    font-weight: bold;
}

.head01 .sub {
    font-style: 16px;
    font-size: 1.6rem;
    font-weight: bold;
}


.head-image {
    margin-bottom: 20px;
    height: 210px;
    background-repeat: no-repeat;
    background-size: cover;
    display: table;
    color: #fff;
}
.head-image-column {
    background-image: url('../images/news/column.jpg');
}


.head-image_inner {
    padding-top: 35px;
    padding-left: 30px;
    padding-right: 30px;
    display: table-cell;
    position: relative;
}

.head-image_tag {
    position: absolute;
    top: 0;
    left: 0;
}

.head-image_ttl {
    margin-bottom: 10px;
    font-size: 32px;
    font-size: 3.2rem;
}

.head-image_lead {
    font-size: 16px;
    line-height: 34px;
}

.head-image-library .head-image_inner {
    padding-top: 0;
    vertical-align: middle;
}

/*-------------------------------------------------------------------------------
	ソーシャル系ボタン
-------------------------------------------------------------------------------*/

.date-md:before,
.date-sm:before,
.date-lg:before {
    margin-right: .2em;
    width: 11px;
    height: 11px;
    background-repeat: no-repeat;
    display: inline-block;
    content: "";
}

.date-lg:before {
    width: 20px;
    height: 20px;
}

.date-md {
    font-size: 15px;
    font-size: 1.5rem;
}

.date-sm {
    font-size: 13px;
    font-size: 1.3rem;
}

.date-lg {
    font-size: 24px;
    font-size: 2.4rem;
}

.date-md:before {
    background-image: url(../images/news/clock.png);
}

.date-sm:before {
    background-image: url(../images/news/clock.png);
}

.date-lg:before {
    background-image: url(../images/news/clock.png);
}



/*-------------------------------------------------------------------------------
	サムネイル付きカラム
-------------------------------------------------------------------------------*/
.thumbnailColumn {
    padding: 20px;
    overflow: hidden;
    font-size: 16px;
    border-top: 1px dotted #ccc;
    border-bottom: 1px dotted #ccc;
}

.thumbnailColumn + .thumbnailColumn {
    border-top: none;
}

.thumbnailColumn-left .thumbnailColumn_thumbnail {
    float: left;
}

.thumbnailColumn_ttl {
    margin-bottom: 10px;
    font-size: 26px;
    font-size: 2.6rem;
    color: #000;
    font-weight: bold;
}

.thumbnailColumn_ttl > a {
    text-decoration: none;
}

.thumbnailColumn_ttl > a:hover {
    text-decoration: underline;
}

.thumbnailColumn_header {
    margin-bottom: 10px;
}

.thumbnailColumn_body {
    margin-left: 220px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.75;
}

.thumbnailColumn-xsm .thumbnailColumn_body {
    margin-left: 126px;
}

.thumbnailColumn-sm .thumbnailColumn_body {
    margin-left: 170px;
}

.thumbnailColumn-lg .thumbnailColumn_body {
    margin-left: 290px;
}

.thumbnailColumn.border-gray {
    border: 1px solid #ddd;
}

.thumbnailColumn_linkArea {
    margin: -20px;
    padding: 20px;
    overflow: hidden;
    display: block;
    text-decoration: none;
}

.thumbnailColumn_linkArea:link,
.thumbnailColumn_linkArea:visited {
    text-decoration: none;
}

.thumbnailColumn_linkArea:hover {
    background-color: #D9F3F5;
}

.thumbnailColumn_linkArea p {
    color: #111;
}







