@charset "UTF-8";

/*!
 * ress.css • v1.1.1
 * MIT License
 * github.com/filipelinhares/ress
 */
 progress,sub,sup{vertical-align:baseline}html{-webkit-box-sizing:border-box;box-sizing:border-box;overflow-y:scroll;-webkit-text-size-adjust:100%}*,:after,:before{-webkit-box-sizing:inherit;box-sizing:inherit}:after,:before{text-decoration:inherit;vertical-align:inherit}*{background-repeat:no-repeat;padding:0;margin:0}audio:not([controls]){display:none;height:0}button,hr{overflow:visible}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}summary{display:list-item}small{font-size:80%}[hidden],template{display:none}abbr[title]{border-bottom:1px dotted;text-decoration:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}code,kbd,pre,samp{font-family:monospace,monospace}b,strong{font-weight:bolder}dfn{font-style:italic}mark{background-color:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}input{border-radius:0}[aria-controls],[type=button],[type=reset],[type=submit] [role=button],button{cursor:pointer}[aria-disabled],[disabled]{cursor:default}[type=number]{width:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto;resize:vertical}button,input,optgroup,select,textarea{font:inherit}optgroup{font-weight:700}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{outline:ButtonText dotted 1px}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}button,select{text-transform:none}button,input,select,textarea{background-color:transparent;border-style:none;color:inherit}select{-moz-appearance:none;-webkit-appearance:none}select::-ms-expand{display:none}select::-ms-value{color:currentColor}legend{border:0;color:inherit;display:table;max-width:100%;white-space:normal}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}img{border-style:none}svg:not(:root){overflow:hidden}audio,canvas,progress,video{display:inline-block}@media screen{[hidden~=screen]{display:inherit}[hidden~=screen]:not(:active):not(:focus):not(:target){position:absolute!important;clip:rect(0 0 0 0)!important}}[aria-busy=true]{cursor:progress}::-moz-selection{background-color:#b3d4fc;color:#000;text-shadow:none}::selection{background-color:#b3d4fc;color:#000;text-shadow:none}
 /*ress.css end*/


/* ==========================================================================
   Template css
========================================================================== */


/*=========================================
  Bace
=========================================*/

body {
    color: #222;
    min-width: 1010px;
    background: #fff;
}

body.permanent_area {
    background-color: #fff;
}

body {
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    /*font-family: verdana, arial,"\FF2D\FF33\20\FF30\30B4\30B7\30C3\30AF", "\30D2\30E9\30AE\30CE\20Pro\20W3", HiraKakuPro-W3, Osaka, sans-serif;*/
}

input,
textarea,
.l_right_area,
.plugin_right_title,
.plugin-mail,
.blog_content_category,
.blog_content_date,
.comment_area,
.blog_entry #fc2relate_entry_thumbnail_area,
.fc2relate_entry_thumbnail_off,
.comment_area_title,
.trackback_area_title,
.pager,
.fc2_recent_entry_thumb_date,
.comment_form_btn,
.fc2_text_ad_title,
.trackback_link,
.trackback_item,
.fc2magablo_buy_area {
    font-family: Verdana, Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}

ul,
ol,
li,
dl,
dt,
dd {
    list-style: none;
    /*list-style: inside;*/
}

p {
    margin: 0;
}

input[type="text"],
input[type="password"] {
    border: 1px solid #dadada;
    font-size: 14px;
    padding: 2px 10px 1px;
}

textarea {
    border: 1px solid #dadada;
    font-size: 14px;
    padding: 3px 10px 2px;
}

input[type="text"],
input[type="password"],
input[type="submit"],
textarea,
select {
    outline: none;
}


/*-----------------------------------------
  Clear Fix
-----------------------------------------*/

.cf:before,
.cf:after {
    content: "";
    display: table;
}

.cf:after {
    clear: both;
}


/*-----------------------------------------
  color
-----------------------------------------*/


/* link */

a {
    text-decoration: none;
    -webkit-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
    outline: none;
}


/* text color */

a:link,
a:visited,
.blog_content_desc,
.trackback_link a,
.trackback_link a:visited,
.plugin-all a,
.plugin-all a:visited,
.plg_blomaga a,
.plg_blomaga a:visited,
.pager a,
.pager a:visited,
.blog_content_category,
.comment_item_author,
.l_right_area caption a,
.l_footer,
.blog_content_item .blog_content_title,
.l_footer_copyright,
.comment_form_text,
.profile_text,
.plugin_area_first_desc,
.plugin_area_second_desc,
.plugin_area_third_desc,
.plugin_area_first_desc2,
.plugin_area_second_desc2,
.plugin_area_third_desc2,
.blog_content_item .blog_content_title,
.blog_content_item .blog_entry_title,
a.pager_next_link,
a.pager_prev_link,
.plugin_right_title,
.profile_name,
.blog_content_sup .blog_content_date {
    color: #222;
}

.blog_entry_body a,
.blog_entry_body a:visited {
    text-decoration: underline;
}

.blog_entry_body a,
.blog_entry_body a:visited,
.l_right_area table.calender td a,
.comment_item_footer a {
    color: #4876c1;
}

.blog_entry_body li {
    list-style: outside;
    padding-left: 5px;
}

.blog_entry_body ol, ul {
    padding-left: 22px;
}

.blog_entry_body ol li {
    list-style-type: decimal;
}

.blog_content_item .blog_content_title:focus,
.blog_content_item .blog_content_title:hover,
.blog_content_item .blog_content_title:active,
.l_container a:focus,
.l_container a:hover,
.l_container a:active,
.l_right_area table.calender td a:focus,
.l_right_area table.calender td a:hover,
.l_right_area table.calender td a:active,
.l_right_area caption a:focus,
.l_right_area caption a:hover,
.l_right_area caption a:active,
.l_right_area .plugin_right_content a:focus,
.l_right_area .plugin_right_content a:hover,
.l_right_area .plugin_right_content a:active,
.blog_entry_body a:visited,
.blog_entry_body a:focus,
.blog_entry_body a:hover,
.plugin_right_content .plugin-mail-submit:hover,
input[type="submit"]:hover {
    opacity: .75;
}


/* contents bg*/

.profile,
.pager,
.plugin_right_content,
.search_area,
.titlelist_area,
.comment_area,
.trackback_area_inner,
.comment_form_text,
.comment_form_textarea {
    background-color: #fff;
}


/*ボタン背景色*/

textarea+input[type="submit"],
.plugin_right_content .plugin-mail-submit,
.comment_form_btn {
    background: #444;
    -webkit-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
}

.comment_form_btn:hover,
.comment_form_btn:active,
.comment_form_btn:focus {
    background-color: #444;
}


/*-----------------------------------------
  arrow
-----------------------------------------*/

.arrow {
    position: relative;
    /*display: inline-block;*/
    /*padding: 0 0 0 16px;*/
    vertical-align: middle;
    text-decoration: none;
}

.arrow::before,
.arrow::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 2px;
    margin: auto;
    vertical-align: middle;
}

.arrow::before {
    -webkit-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
}

.pager_prev_link::before {
    width: 8px;
    height: 8px;
    border-top: 2px solid #444;
    border-right: 2px solid #444;
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
}

.pager_prev_link::before,
.pager_prev_link::after {
    left: 2px;
}

.pager_next_link::before {
    width: 8px;
    height: 8px;
    border-top: 2px solid #444;
    border-right: 2px solid #444;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.pager_next_link::before,
.pager_next_link::after {
    right: 2px;
}


/*=========================================
  layout
=========================================*/

.l_wraper {
    overflow: hidden;
}

.l_header {
    background-color: #fff;
}

.l_container {
    width: 1010px;
    margin: 0 auto;
    clear: both;
    min-height: 600px;
}

.l_left_area {
    float: left;
    width: 640px;
    margin: 0;
}

.l_right_area {
    float: right;
    width: 320px;
    margin: 0;
}

.permanent_area .l_left_area {
    width: 100%;
    max-width: 700px;
    margin-left: auto;
    /*margin-left: 50px;*/
    margin-right: auto;
    float: none;
}


/*=========================================
  header
=========================================*/

.header_img {
    width: 100%;
    margin: 0 auto;
    padding: 60px 0 0;
}

.permanent_area .header_img {
    border: none;
}

.header_img a {
    -webkit-transition: opacity 0.2s ease-in;
    transition: opacity 0.2s ease-in;
    background: url() center top no-repeat;
    display: block;
}

.header_img a:hover {
    opacity: .9;
}

.header_blog_name {
    display: block;
    text-align: center;
    width: 1010px;
    margin: 0 auto;
    font-size: 23px;
    padding: 0 0 52px;
    font-weight: bold;
    color: #222;
    letter-spacing: 1px;
}

.permanent_area .l_header .header_blog_name {
    padding-bottom: 10px;
}

.header_logo {
    position: absolute;
    top: 64px;
    left: 45px;
}


/*=========================================
  右カラム
=========================================*/

.plugin_area_first_desc,
.plugin_area_second_desc,
.plugin_area_third_desc,
.plugin_area_first_desc2,
.plugin_area_second_desc2,
.plugin_area_third_desc2 {
    font-size: 14px;
    font-weight: normal;
}

.plugin_area_first_desc,
.plugin_area_second_desc,
.plugin_area_third_desc {
    margin: 0px 0 8px;
}

.plugin_area_first_desc2,
.plugin_area_second_desc2,
.plugin_area_third_desc2 {
    margin: 8px 0;
}

#plugin_first div[id^="fc2_recent_entry_thumb_"],
#plugin_second div[id^="fc2_recent_entry_thumb_"],
#plugin_third div[id^="fc2_recent_entry_thumb_"] {
    padding: 0;
}

#plugin_first div[id^="fc2_recent_entry_thumb_"] .fc2_recent_entry_thumb_link,
#plugin_second div[id^="fc2_recent_entry_thumb_"] .fc2_recent_entry_thumb_link,
#plugin_third div[id^="fc2_recent_entry_thumb_"] .fc2_recent_entry_thumb_link {
    padding: 3px 0;
}

.plugin_my_link {
    color: #fff;
    font-size: 13px;
    padding: 0 8px;
}

.l_right_area .plugin_right_content .plugin_my_link a {
    display: block;
    text-align: center;
}

.l_right_area .plugin_right_content .plugin_my_link .plugin_my_link_text_list a {
    text-align: left;
}


/*-----------------------------------------
  右カラムリンク
-----------------------------------------*/

.l_right_area .plugin_right_content a {
    vertical-align: middle;
    display: inline-block;
    -webkit-transition: all 300ms 0s ease-in;
    transition: all 300ms 0s ease-in;
    padding: 4px 0;
    border-radius: 4px;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.5em;
    word-break: break-all;
    word-wrap : break-word;
    overflow-wrap : break-word;
}


/*-----------------------------------------
  右カラムカテゴリ
-----------------------------------------*/

.plugin_right_content .sub_list,
.plugin_right_content .sub_list_end {
    padding: 0 0 3px 20px;
    position: relative;
}

.plugin_right_content .sub_list::after,
.plugin_right_content .sub_list_end::after {
    position: absolute;
    top: 2px;
    left: 10px;
    content: "";
    width: 10px;
    height: 10px;
    -webkit-box-shadow: -1px 1px 0 0 #bbb;
    box-shadow: -1px 1px 0 0 #bbb;
}

.l_right_area .plugin_right_content .sub_list a {
    padding-left: 4px;
}


/*-----------------------------------------
  右カラムプラグイン [プロフィール]
-----------------------------------------*/

.plugin-myimage {
    width: 90px;
    margin: 0 auto 15px;
}

.plugin-myimage img {
    width: 90px;
    height: 90px;
    display: block;
    margin: 0 auto;
    position: relative;
    z-index: 5;
    display: inline-block;
    vertical-align: middle;
    border-width: 1px;
    border-style: solid;
    border-color: rgb(255, 255, 255);
    border-radius: 50%;
}

.plugin-myimage+p {
    display: inline-block;
    font-size: 14px;
    line-height: 1.4em;
}

.plugin-myimage+p:first-line {
    font-weight: bold;
    line-height: 2em;
}


/*-----------------------------------------
  右カラムプラグイン [最新記事]
-----------------------------------------*/

.fc2_recent_entry_thumb_item {
    border-bottom: 1px solid #eee;
}

.l_right_area #plugin_first div[id^="fc2_recent_entry_thumb_"] .fc2_recent_entry_thumb_link {
    padding: 0;
}

.fc2_recent_entry_thumb_item:last-child {
    border: none;
    padding-bottom: 0;
}

.l_right_area #plugin_first div[id^="fc2_recent_entry_thumb_"] .fc2_recent_entry_thumb_item:last-child .fc2_recent_entry_thumb_img,
.l_right_area #plugin_first div[id^="fc2_recent_entry_thumb_"] .fc2_recent_entry_thumb_item:last-child .fc2_recent_entry_thumb_text {
    padding-bottom: 0;
}

.fc2_recent_entry_thumb_img img {
    vertical-align: middle;
}

.fc2_recent_entry_thumb_blogtitle {
    height: 4em;
    overflow: hidden;
}

.fc2_recent_entry_thumb_date {
    color: #888;
    font-size: 11px;
    font-weight: normal;
}


/*-----------------------------------------
  右カラムプラグイン [カレンダー]
-----------------------------------------*/

.l_right_area caption {
    font-weight: normal;
    border-bottom: 1px solid #fff;
    padding-bottom: 8px;
    margin-bottom: 8px;
}

.l_right_area .plugin-calender {
    text-align: left;
    width: auto;
    margin: 0 auto 24px;
    font-weight: normal;
}

.l_right_area .plugin_right_content .plugin-calender a {
    width: auto;
}

.l_right_area table.calender {
    text-align: center;
    margin: 0 auto;
    table-layout: fixed;
}

.l_right_area table.calender th {
    width: 34px;
    font-weight: normal;
    font-size: 13px;
}

.l_right_area table.calender th#sat {
    color: #36bbea;
}

.l_right_area table.calender th#sun {
    color: #e04848;
}

.l_right_area table.calender td {
    width: 34px;
    padding: 2px 0;
    font-size: 13px;
}

.l_right_area table.calender td a {
    font-weight: normal;
    text-decoration: underline;
}


/*-----------------------------------------
  右カラムプラグイン [カテゴリ別記事一覧]
-----------------------------------------*/

.l_right_area .plugin-category-list {
    margin: 0 0 12px;
}

.l_right_area .plugin-category-list-date {
    font-weight: normal;
    font-size: 13px;
    line-height: 1em;
}

.plugin-category-list-description {
    font-size: 14px;
}

.l_right_area .plugin_right_content a.plugin-category-list-link {
    padding-left: 0;
    font-weight: normal;
    padding: 0;
}


/*-----------------------------------------
  右カラムプラグイン [検索フォーム]
-----------------------------------------*/

.plugin_right_content .plugin-search {
    width: 100%;
    margin: -4px auto 0;
    position: relative;
}

.plugin_right_content .plugin-search input[type="text"] {
    padding: 9px 48px 8px 14px;
    font-size: 14px;
    width: 100%;
    border: 1px solid #d6d6d6;
    border-radius: 30px;
    font-weight: normal;
}

.plugin_right_content .plugin-search input[type="submit"] {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    display: block;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABcAAAAXCAYAAADgKtSgAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAT9JREFUeNrUVcsNgkAQBSqwBOzADsQOsAOpQG8clSMn6ACoQO1gS7ADKcESfJMMZrLuT4MHJ5nshpl989m3QxT9q8Q2Q13XKZY9NIOuhElBr9C+LMvHx+AAPmE5ehIj4AIBLsHgAO6w7LTPiteFVkXEAXovuCHjCtrK8rldDTQXfhv4KCs4H7oL29ZVMvwPHIRkhO9S90nEfi8zdgGTwN6KdqUIlrvAM7FvA9lWif3aBT5dlPJRTGSvDOeN4N/KaDPMAZ6GgE8lZswcr2iXeHOBX8W+CcxavonBBd7zkybJmceurDuNBDffC6Uyz1qrKskK9jlq7CCfU8hsobnSWVjhuou3GZMYuEsOGwPFUsMwk4+o48T881y0YK21gHo7TD02VPqqIJ7jj2MLMAu4LUAyFzi3ovjpT5kqmC72KcAAagZ6piWQfaQAAAAASUVORK5CYII=) center no-repeat;
    cursor: pointer;
    padding: 0;
    border: none;
    width: 52px;
    height: 34px;
}


/*-----------------------------------------
  右カラムプラグイン [アクセスランキング]
-----------------------------------------*/

.plugin_right_content .up {
    background-position: 3px -1305px;
}

.plugin_right_content .down {
    background-position: 0 -878px;
}


/*-----------------------------------------
  右カラムプラグイン [メールフォーム]
-----------------------------------------*/

.plugin_right_content .plugin-mail input,
.plugin_right_content .plugin-mail textarea {
    width: 100% !important;
    padding: 8px;
}

.plugin_right_content .plugin-mail {
    width: 100%;
    margin: 0 auto 24px;
    overflow: hidden;
}

.plugin_right_content .plugin-mail-group {
    display: block;
    margin: 0 0 12px;
}

.plugin_right_content .plugin-mail-title {
    display: block;
    font-weight: bold;
    font-size: 14px;
}

.plugin_right_content .plugin-mail-text {
    width: 100%;
    padding: 7px 10px;
    font-weight: normal;
    font-size: 14px;
}

.plugin_right_content .plugin-mail-textarea {
    width: 100%;
    min-height: 150px;
    font-weight: normal;
    font-size: 14px;
}

textarea+input[type="submit"],
.plugin_right_content .plugin-mail-submit {
    float: right;
    color: #fff;
    padding: 7px 18px;
    border-radius: 4px;
    margin: 10px 0 0px;
    cursor: pointer;
    font-weight: normal;
    font-size: 16px;
}


/*-----------------------------------------
  content title
-----------------------------------------*/

.plugin_right {
    margin: 0 0 40px;
}


/*プラグインタイトル*/

.plugin_right_title {
    font-size: 12px;
    margin: 0;
    padding: 16px;
    clear: both;
    text-align: left;
    width: auto;
    overflow: hidden;
    padding: 0;
    padding: 0 0 8px 0;
}


/*プラグインコンテンツ*/

.plugin_right_content {
    padding: 0;
}

.plugin_right_content li {
    border-bottom: 1px solid #eee;
    padding: 4px 0;
}

.plugin_right_content li:last-child {
    border: none;
    padding-bottom: 0;
}


/*カテゴリ等*/

.plugin_right_content .main_list {
    font-size: 14px;
    margin: 4px;
}

.plugin_right_content .acc_btn {
    background-size: 15px;
    width: 15px;
    height: 15px;
}


/*=========================================
  Profile
=========================================*/

.plugin_right_content img {
    max-width: 100%;
}

.profile_img_wrap {
    border-radius: 50%;
    margin: 10px 0 20px;
    text-align: center;
    position: relative;
}

.profile_img {
    border: 1px solid #fff;
    border-radius: 50%;
    width: 90px;
    height: 90px;
    position: relative;
    z-index: 5;
    display: inline-block;
    vertical-align: middle;
    background-position: center;
    background-size: cover;
}

.profile_intro_text {}

.profile_intro_text_item {
    display: block;
    border-bottom: 1px dotted #fff;
    padding: 0 0 24px;
    margin: 0 0 24px;
}

.profile_intro_text_item_title {
    font-size: 16px;
    font-weight: bold;
    display: block;
    text-align: center;
}

.profile_intro_text .profile_intro_text_item:last-child {
    border: none;
    margin: 0;
    padding: 0 0 8px;
}

.profile_intro_text_item_bnr {
    text-align: center;
    display: block;
    margin: 12px 0 0;
}

.l_right_area .profile {
    padding: 0 0 15px;
    margin: 0 0 40px;
}

.l_right_area .profile_upper {
    display: flex;
    align-items: center;
    margin: 0 0 20px;
}

.l_right_area .profile_img_wrap {
    margin-bottom: 0;
}

.l_right_area .profile_name {
    font-weight: bold;
    text-align: left;
    font-size: 20px;
    margin: 0 0 5px;
    font-size: 14px;
    margin: 0 0;
    padding: 0 0 0 20px;
    position: relative;
    z-index: 4;
    width: 200px;
    word-break: break-all;
}

.l_right_area .profile_intro {
    font-size: 14px;
    clear: both;
    word-wrap: break-word;
}


/*=========================================
  Top blog contents
=========================================*/

.blog_content_item {
    background-color: #fff;
    border-radius: 3px;
    margin: 0 0 40px;
    word-break: break-word;
    width: 640px;
    overflow: hidden;
    border-bottom: 1px solid #eee;
}

.blog_content_tmb_wrap {
    display: block;
}

.blog_content_tmb_wrap:hover {
    opacity: 1;
}

.blog_content_title_wrap a {
    display: inline-block;
}

.blog_content_tmb {
    object-fit: cover;
    width: 100%;
    max-height: 427px;
    display: block;
}

.blog_content_tmb[src=""] {
    display: none;
}

.blog_content_text {
    -webkit-box-flex: 0.0;
    -ms-flex: 0 0 350px;
    /*--- IE10横のみ対応 ---*/
    flex: 0 0 350px;
    position: relative;
}

.blog_content_item .blog_content_title {
    display: block;
    margin: 0 0 4px;
    font-size: 20px;
    font-weight: bold;
    padding: 0;
    float: left;
    max-height: 4.7em;
    line-height: 1.5em;
    overflow: hidden;
}

.blog_content_desc {
    line-height: 1.4em;
    overflow: hidden;
    padding: 20px 0 25px;
    font-size: 17px;
    line-height: 1.8;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.blog_content_sup {
    display: block;
    padding: 0 0 8px;
    overflow: hidden;
    width: 100%;
}

.permanent_area .blog_content_sup {
    padding: 0 0 8px;
}

.blog_entry .blog_content_sup {
    width: 100%;
}

.blog_content_date {
    font-size: 12px;
    display: block;
    float: right;
    margin: 10px 0 0;
}

.blog_content_date_y,
.blog_content_date_m,
.blog_content_date_d {
    display: inline;
}

.blog_content_date_y {
    margin: 0 2px;
}

.blog_content_date_m {
    margin: 0 2px;
}

.blog_content_date_d {
    margin: 0 2px;
}

.blog_content_category {
    float: left;
    font-size: 12px;
    display: none;
    margin-top: 10px;
}

.blog_content_list .blog_content_item .blog_content_tmb {
    width: 640px;
    height: auto;
}

.blog_content_list .blog_content_item .blog_content_title {
    font-size: 24px;
    word-wrap : break-word;
    overflow-wrap : break-word;
}

.blog_content_list .blog_content_item .blog_content_tmb_wrap,
.blog_content_list .blog_content_item .blog_content_desc,
.blog_content_list .blog_content_item .blog_content_category,
.blog_entry .blog_content_category {
    display: block;
}

.blog_content_list .blog_content_item .blog_content_title,
.blog_content_list .blog_content_item .blog_content_tmb_wrap,
.blog_content_list .blog_content_item .blog_content_sup {
    float: none;
}

.blog_content_list .blog_content_item .blog_content_title {
    margin: 0 0 4px 0;
}

.blog_content_list .blog_content_item .blog_content_sup {
    width: auto;
    margin: 0 0 12px;
}


/*=========================================
  Entry page
=========================================*/

.blog_entry {
    word-wrap: break-word;
    overflow-wrap: break-word;
    margin: 0 auto;
}

.blog_entry_title {
    font-size: 26px;
    font-weight: bold;
    padding: 25px 0 16px;
}

.permanent_area .blog_entry_title {
    font-size: 28px;
    line-height: 1.5;
}

.blog_entry_body {
    font-size: 17px;
    line-height: 1.8;
    letter-spacing: 0.2px;
    padding: 0;
    margin: 0;
}

.blog_entry h3 {
    font-size: 22px;
    margin: 20px 0 0 0;
    border-left: 4px solid #555;
    padding: 0 0 0 8px;
    border-bottom: 1px dashed #155;
}

.blog_entry h4 {
    font-size: 16px;
    margin: 20px 0 0 0;
    border-left: 4px solid #555;
    padding: 0 0 0 8px;
}

.blog_entry h5 {
    font-size: 14px;
    margin: 20px 0 0 0;
    border-left: 4px solid #555;
    padding: 0 0 0 8px;
}

.blog_entry h6 {
    font-size: 12px;
    margin: 20px 0 0 0;
    border-left: 4px solid #555;
    padding: 0 0 0 8px;
}

.blog_entry img {
    max-width: 100%;
    height: auto;
    /*margin: 8px auto;*/
}

.blog_entry .emoji {
    display: inline-block;
    margin: 0 2px;
}

.blog_entry ul,
.blog_entry ol,
.blog_entry dl,
.blog_entry p,
.blog_entry fieldset,
.blog_entry blockquote,
.blog_entry table {
    margin: 0.8em 0;
}

.blog_entry fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 10px;
}

.blog_entry blockquote {
    position: relative;
    font-size: 14px;
    margin: 20px 0;
    padding: 10px 10px 10px 20px;
    border-left: 4px solid #d6d6d6;
}

.blog_entry table {
    margin: 0 0 20px 0;
    border-collapse: collapse;
    border-spacing: 0;
}

.blog_entry th,

.blog_entry td {
    padding: 12px;
    text-align: left;
    border: 1px solid #c0c0c0;
}

.blog_entry em,
.blog_entry i {
    font-family: Verdana, Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
}

.blog_entry iframe {
    display: block;
    margin: 24px auto 24px;
    max-width: 100%;
}

.blog_entry .fc2_footer img {
    display: inline-block;
}

.blog_entry .fc2_footer iframe {
    margin: 0;
}

.blog_entry #fc2relate_entry_thumbnail_area,
.blog_entry .fc2relate_entry_thumbnail_off,
.blog_entry .blog_entry_body #fc2_text_ad {
    width: 100%;
    position: relative;
    margin: 40px 0 -40px;
    padding: 0 0 40px;
}

.blog_entry .blog_entry_body #fc2_text_ad{
    padding-top: 40px;
}

.blog_entry #fc2relate_entry_thumbnail_area::before,
.blog_entry .fc2relate_entry_thumbnail_off::before {
    content: "";
    display: block;
    height: 20px;
}

.blog_entry #fc2relate_entry_thumbnail_area::after,
.blog_entry .fc2relate_entry_thumbnail_off::after {
    content: "";
    display: block;
    width: 300vw;
    margin-left: -100vw;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -50;
}

.blog_entry #fc2relate_entry_thumbnail_area .relate_dt,
.blog_entry .fc2relate_entry_thumbnail_off .relate_dt {
    position: relative;
    z-index: 100;
    width: 700px;
    font-size: 14px;
    font-weight: bold;
    padding: 60px 0 10px 0;
    text-align: center;
}

.blog_entry #fc2relate_entry_thumbnail_area .relate_dd,
.blog_entry .fc2relate_entry_thumbnail_off .relate_dd {
    position: relative;
    z-index: 100;
    width: 700px;
    list-style: none;
    background-color: #fff;
    border: 1px solid #eee;
    border-radius: 4px;
}

.blog_entry #fc2relate_entry_thumbnail_area .relate_dd .relate_ul,
.blog_entry .fc2relate_entry_thumbnail_off .relate_dd .relate_ul  {
    margin: 0;
    width: 700px;
}

.blog_entry #fc2relate_entry_thumbnail_area .relate_dd .relate_ul .relate_li,
.blog_entry .fc2relate_entry_thumbnail_off .relate_dd .relate_ul .relate_li,
.blog_entry #fc2relate_entry_thumbnail_area .relate_dd .relate_ul .relate_li_nolink,
.blog_entry .fc2relate_entry_thumbnail_off .relate_dd .relate_ul .relate_li_nolink  {
    font-size: 14px;
    margin: 0;
    line-height: 20px;
    border-bottom: 1px solid #eee;
    width: 100%;
    padding: 15px 20px 15px 15px;
    table-layout: fixed;
}

.blog_content .blog_entry #fc2relate_entry_thumbnail_area .relate_dd .relate_ul li:last-child,
.blog_content .blog_entry .fc2relate_entry_thumbnail_off .relate_dd .relate_ul li:last-child{
    border-bottom: none;
}

#fc2relate_entry_thumbnail_area .relate_dd .relate_entry_thumbnail,
.fc2relate_entry_thumbnail_off .relate_dd .relate_entry_thumbnail {
    padding: 0;
}

#fc2relate_entry_thumbnail_area .relate_dd .relate_entry_thumbnail,
#fc2relate_entry_thumbnail_area .relate_dd .relate_ul .relate_entry_thumbnail img {
    width: 90px;
    height: 90px;
}

#fc2relate_entry_thumbnail_area .relate_ul .relate_entry_title,
.fc2relate_entry_thumbnail_off .relate_ul .relate_entry_title {
    font-size: 17px;
    font-weight: bold;
    line-height: 1.4;
    padding: 0 1em;
    color: #222;
}

#fc2relate_entry_thumbnail_area .relate_li .relate_entry_title .relate_entry_title_text,
#fc2relate_entry_thumbnail_area .relate_li_nolink .relate_entry_title .relate_entry_title_text,
.fc2relate_entry_thumbnail_off .relate_li a {
    text-decoration: none;
    color: #222;
    max-height: 2.7em;
    word-break: break-word;
    word-wrap : break-word;
    overflow-wrap : break-word;
    display: block;
    overflow: hidden;
}

.fc2relate_entry_thumbnail_off .relate_li a,
.fc2relate_entry_thumbnail_off .relate_li_nolink{
    max-height: initial;
}

#fc2relate_entry_thumbnail_area .relate_entry_title .relate_entry_date,
.fc2relate_entry_thumbnail_off .relate_entry_title .relate_entry_date {
    font-size: 11px;
    color: #888;
}

.blog_entry .blog_entry_msg {
    float: left;
    width: 45%;
    text-align: left;
}

.blog_entry .blog_entry_comment,
.blog_entry .blog_entry_trackback {
    display: inline-block;
    font-size: 13px;
    line-height: 1.8;
}

.fc2_footer {
    margin: 60px 0 40px;
}


/*-----------------------------------------
  記事下広告
-----------------------------------------*/

.blog_entry_body #fc2_text_ad {
    position: relative;
    margin: 0;
    padding: 40px 0;
}

/* 関連記事がある場合 */
.blog_entry_body .relate_dl ~ #fc2_text_ad {
    position: relative;
    margin: 0 0 -40px;
    padding: 60px 0 10px;
}

.blog_entry_body .relate_dl ~ #fc2_text_ad::after {
    content: "";
    display: block;
    width: 300vw;
    margin-left: -100vw;
    height: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: -50;
}


/*=========================================
  Comment area ,Trackback area
=========================================*/

.comment_area,
.trackback_area {
    padding: 40px 0 40px 0;
/*padding: 40px 210px 40px 0;*/
    margin-top: 30px;
    overflow: hidden;
    width: 100%;
    background-color: #fff;
}

.comment_area {
   padding: 40px 0 7px 0;
 /*padding: 40px 210px 7px 0;*/
    margin-bottom: -40px;
}

.comment_area + .trackback_area{
  padding-top: 60px;
}

.comment_area_title,
.trackback_area_title {
    width: 700px;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    padding: 0 0 10px;
    margin: 0 auto;
}



#comment_edit .comment_area_title,
.trackback_area .trackback_area_title {
    width: 100%;
}

#comment_edit #comment_form {
    width: 99%;
}


/*-----------------------------------------
  Comment content ,Trackback content
-----------------------------------------*/

.comment_item {
    width: 700px;
    margin: 0 auto;
    padding: 20px 0;
    position: relative;
    clear: both;
    background-color: #fff;
    overflow: hidden;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.comment_item + .comment_item {
  border-top: 1px solid #eee;
}

.comment_item::after {
    position: absolute;
    bottom: -20px;
    left: 0;
    content: "";
    width: 100%;
    height: 30px;
    display: block;
    z-index: 100;
    background-color: #fff;
}

.comment_item_author {
    font-size: 12px;
    margin: 0 0 2px;
    font-weight: bold;
    margin: 8px 0;
}

.comment_item_title,
.trackback_title {
    font-size: 13px;
    font-weight: bold;
    border-left: 4px solid #222;
    padding: 0 0 0 8px;
    margin: 0 0 8px;
}

.comment_item_text,
.trackback_body {
    font-size: 13px;
}

.comment_item_footer {
    font-size: 13px;
}

.comment_item_footer {
    float: right;
}

.comment_item_date,
.comment_item_url,
.comment_item_edit {
    padding-right: 3px;
}

.trackback_area_inner {
    width: 700px;
    margin: 0 auto;
    padding: 15px;
    border: 1px solid #eee;
    border-radius: 4px;
}

.trackback_link {
    font-size: 13px;
    margin: 0 0 10px 0;
}

.trackback_input {
    overflow: scroll;
    box-sizing: border-box;
    width: 100%;
    padding: 5px 16px;
    border: 1px solid #CCCCCC;
    border-radius: 2px;
    margin: 0 0 20px;
}

.trackback_item {
    border-bottom: 1px solid #E0E0E0;
    padding: 20px 0;
}

.trackback_item:last-child {
    border: none;
    padding-bottom: 0;
}

.trackback_footer {
    color: #666666;
    text-align: right;
    font-size: 11px;
    margin: 0;
    padding: 0;
}

.trackback_footer a {
    text-decoration: underline;
}


/*-----------------------------------------
  Comment form
-----------------------------------------*/

#comment_form {
    position: relative;
    z-index: 50;
    width: 700px;
    background-color: #fff;
    border: 1px solid #eee;
    list-style: none;
    border-radius: 4px;
    margin: 0 auto 10px;
}

.comment_form_inner {
    margin: 0;
    padding: 20px;
}

.comment_form_title {
    font-size: 14px;
    font-weight: bold;
    margin: 0 0 5px 0;
    line-height: 1em;
}

.comment_form_checkbox_wrap,
.comment_form_text_wrap {
    margin: 0 0 20px 0;
}

.comment_form_input {
    margin: 0 0 20px;
}

.comment_form_text {
    width: 60%;
    height: 32px;
    line-height: 22px;
    font-size: 14px;
    padding: 8px;
    border: 1px solid #CCCCCC;
    border-radius: 3px;
}

.comment_form_checkbox {
    margin: 0 4px 0 0;
    -webkit-appearance: checkbox;
}

.comment_form_label {
    font-size: 13px;
}

#tools_dialog {
    display: inline-block;
    max-width: 100%;
    margin: 0 0 0 0;
    vertical-align: middle;
}

.comment_form_textarea {
    resize: vertical;
    width: 100%;
    height: 215px;
    margin: 0 0 10px 0;
    padding: 8px;
    border: 1px solid #ccc;
    border-radius: 3px;
}

.comment_form_btn_wrap {
    margin: 29px 0 0 0;
}

.comment_form_btn {
    display: block;
    width: 120px;
    height: 37px;
    margin: 0 auto;
    line-height: 37px;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    float: right;
}

.comment_form_delete_btn {
    font-size: 14px;
    float: right;
    margin: 5px 25px;
    cursor: pointer;
}

.comment_form_delete_btn:hover {
    opacity: .7;
}

#himitu {
    margin-right: 6px;
}


/*=========================================
  検索結果ページ,全記事表示ページ
=========================================*/

.titlelist_area {
    margin: 0 0 5px;
}

.search_area {
    margin: 0 0 40px;
}

.search_area_title,
.titlelist_area_title {
    font-size: 20px;
    padding: 0 0 4px;
    font-weight: bold;
    margin: 25px 0;
}

.search_list,
.titlelist_list {
    font-size: 14px;
    line-height: 26px;
    letter-spacing: 0.2px;
    padding: 0 0 16px;
    margin: 0 0 40px;
}

.search_item,
.titlelist_item {
    border-bottom: 1px dotted #eaeaea;
    word-wrap: break-word;
}

.search_item {
    margin: 0 0 40px;
    padding: 0 0 40px;
}

.titlelist_item {
    margin: 0 0 16px;
    padding: 0 0 16px;
}

.search_item:last-child,
.titlelist_item:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.search_item_title,
.titlelist_item_title {
    font-size: 16px;
    font-weight: bold;
    display: block;
}

.search_item_description,
.titlelist_item_description {
    font-size: 13px;
}

.search_item_sup,
.titlelist_item_sup {
    text-align: right;
    font-size: 13px;
    margin: 3px 0 0;
}

.search_item_category,
.titlelist_item_category {
    margin: 0 8px 0 0;
}


/*=========================================
  Pager
=========================================*/

.pager {
    background-color: #fff;
    width: 100%;
    padding: 40px 0 0;
    /*padding: 40px 240px 0 0;*/
}

.l_container+.pager {
    margin-top: 20px;
}

.comment_area+.pager {
    padding-top: 80px;
}

.pager_inner {
    margin: 0 auto;
    padding: 0 0 60px;
    width: 700px;
    font-size: 13px;
    line-height: 1em;
    overflow: hidden;
    clear: both;
}

.not_permanent_area .pager {
    padding-top: 0;
}

.not_permanent_area .pager_inner {
    width: auto;
}

.pager a {
    border-radius: 3px;
    font-size: 16px;
    -webkit-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
}

.pager_prev {
    float: left;
    width: 280px;
    text-align: left;
}

.pager_next {
    float: right;
    width: 280px;
    text-align: right;
}

.pager_next_link {
    padding: 0;
    display: inline-block;
    width: 100%;
}

.pager_prev_link {
    padding: 0;
    display: inline-block;
    width: 100%;
}

.pager_next_text,
.pager_prev_text {
    display: inline-block;
    vertical-align: middle;
    font-weight: bold;
    margin: 0px 15px 15px;
    line-height: 1em;
    font-size: 14px;
}

.pager_prev_title,
.pager_next_title {
    vertical-align: middle;
    display: block;
    font-size: 14px;
    line-height: 1.4;
    color: #666;
    font-weight: normal;
    width: 280px;
    height: 2.7em;
    overflow: hidden;
    text-align: left;
    word-break: break-word;
}

.pager_next_title {
    text-align: right;
}


/*=========================================
  Footer
=========================================*/

.l_footer {
    margin: 0 auto;
    padding: 0 0 30px;
    clear: both;
    overflow: hidden;
    background-color: #fff;
}

.l_footer_inner {
    width: 1010px;
    margin: 0 auto;
    overflow: hidden;
    display: table;
}

.l_footer_logoimg {
    max-width: 365px;
}

.l_footer_copyright,
.powered_by_fc2 {
    font-size: 13px;
    text-align: center;
    line-height: 1.5;
    color: #888;
}

.l_footer_copyright a,
.powered_by_fc2,
.powered_by_fc2 a,
.ad a {
    color: #888;
}

/*-----------------------------------------
  マガブロ用
-----------------------------------------*/
.blog_entry .fc2magablo_buy_wrap {
    margin-bottom: 40px;
}


/*-----------------------------------------
  レスポンシブ
-----------------------------------------*/

@media screen and (max-width: 600px) {
    body {
        min-width: initial;
        min-width: auto;
        width: auto;
    }

    .l_header,
    .header_blog_name,
    .l_container,
    .l_footer_inner {
        width: 100%;
    }

    .l_container {
        margin-bottom: 0;
        min-height: 300px;
    }

    /* header */
    .header_img {
        padding: 20px 0 0;
    }

    .l_header .header_blog_name {
        padding: 0 20px;
        font-size: 22px;
    }

    /*left_area right_area */
    .l_left_area,
    .l_right_area {
        float: none;
        width: 100%;
    }

    .l_left_area {
        margin: 0;
    }

    .l_right_area {
        padding: 0 16px;
    }

    .l_left_area {
        margin-top: 20px;
    }

    /* footer */
    .l_footer {
        margin: 0;
        text-align: center;
    }

    .l_footer_inner {
        padding: 0 16px;
        display: block;
        width: auto;
    }

    /* blog entry */
    .blog_entry_body {
        font-size: 15px;
    }

    /* pager */
    .blog_content .pager {
        margin: 0 16px;
    }

    .pager {
        margin: 0;
        padding: 0 15px;
    }

    .pager_next,
    .pager_prev {
        width: 45%;
    }

    .l_container + .pager{
      padding: 20px 15px 0;
    }

    .not_permanent_area .pager{
      padding-top: 10px;
      padding-bottom: 20px;
    }

    .pager_next_link::before,
    .pager_prev_link::before {
        top: 0;
        bottom: 0;
    }

    .permanent_area .pager_next_link::before,
    .permanent_area .pager_prev_link::before {
        top: 17px;
        bottom: auto;
    }

    .pager_prev_title,
    .pager_next_title {
        width: auto;
    }

    .pager_next_text,
    .pager_prev_text {
        margin: 15px 12px;
    }

    .pager_inner {
        width: 100%;
        padding: 0 0 40px;
    }

    .l_container .pager_inner {
        padding-bottom: 0;
    }

    .comment_area+.pager {
        padding-top: 40px;
    }

    /* profile */
    .profile_upper .profile_img_wrap {
        flex: 0 0 90px
    }

    .profile_upper .profile_name {
        width: auto;
        flex: 1 1 auto;
    }

    /* blog_contents */
    .blog_content_list {
        padding: 0 12px;
    }

    .blog_content_item {
        width: 100%;
        margin-bottom: 20px;
    }

    .blog_content_tmb_wrap {
        position: relative;
        width: 100%;
        padding: 0;
    }

    .blog_content_list .blog_content_item .blog_content_tmb_wrap {
        display: flex;
        align-items: center;
        padding: 0 0 40px;
    }

    .blog_content .blog_content_list .blog_content_item .blog_content_tmb {
        width: 60px;
        height: 60px;
        border-radius: 6px;
        flex: 0 0 60px;
        order: 2;
    }

    .blog_content_desc {
        flex: 1 1 auto;
        font-size: 12px;
        padding: 0;
        order: 1;
        max-height: 6.7em;
        padding: 0 12px 0 0;
    }

    .blog_content_tmb[src=""]+.blog_content_desc {
        padding-right: 0;
    }

    .blog_content .blog_content_list .blog_content_item .blog_content_title,
    .blog_content .blog_entry_title {
        font-size: 20px;
        margin: 0;
    }

    .blog_content .blog_content_list .blog_content_item .blog_content_title {
        padding: 20px 0 4px;
        max-height: 4.1em;
    }

    .blog_content .blog_entry_title {
        padding: 0 0 4px;
    }

    .blog_content .blog_content_list .blog_content_item .blog_content_sup {
        margin: 0;
    }

    .blog_content_list .blog_content_item {
        display: block;
    }

    .blog_content_list .blog_content_item .blog_content_text_inner {
        margin: 0;
    }

    .blog_content_list .blog_content_item .blog_content_sup {
        position: relative;
        left: 0px;
        bottom: 0px;
    }

    .blog_entry {
        margin: 0 16px;
    }

    .comment_area {
       padding: 20px 16px 30px;
      
    }

    .trackback_area {
        padding: 20px 16px 25px;       
    }
    .comment_area + .trackback_area{
      padding-top: 20px;
 /*margin: 0px 240px 0px 16px;*/
    }

    .comment_area_title,
    .trackback_area_title,
    #comment_form,
    .blog_entry #fc2relate_entry_thumbnail_area .relate_dd .relate_ul,
    .blog_entry .fc2relate_entry_thumbnail_off .relate_dd .relate_ul {
        width: 100%;
    }

    .comment_item,
    .trackback_area_inner {
        width: 100%;
    }

    .comment_item_title,
    .trackback_title {
        font-size: 14px;
    }

    /* 関連記事 表示場所「個別ページ記事下」 */
    #fc2relate_entry_thumbnail_area .relate_ul .relate_entry_title {
        line-height: 1.3em;
        padding: 0;
    }

    #fc2relate_entry_thumbnail_area .relate_entry_title .relate_entry_title_text {
        max-height: 2.4em;
    }

    #fc2relate_entry_thumbnail_area .relate_dd .relate_ul .relate_entry_thumbnail img,
    #fc2relate_entry_thumbnail_area .relate_dd .relate_ul .relate_entry_thumbnail .relate_entry_thumbnail_noimg{
      width: 72px;
      height: 72px;
    }

    #fc2relate_entry_thumbnail_area .relate_entry_title .relate_entry_date {
        margin-top: 0;
    }

    .blog_entry #fc2relate_entry_thumbnail_area,
    .blog_entry .fc2relate_entry_thumbnail_off {
        padding: 0 0 40px;
    }

    .blog_entry #fc2relate_entry_thumbnail_area .relate_dt,
    .blog_entry .fc2relate_entry_thumbnail_off .relate_dt {
        width: 100%;
        padding-top: 40px;
    }

    .blog_entry #fc2relate_entry_thumbnail_area .relate_dd,
    .blog_entry .fc2relate_entry_thumbnail_off .relate_dd {
        width: 100%;
        margin: 0 auto;
    }

    /* archive */
    .l_right_area .plugin_category .plugin_category_link,
    .l_right_area .plugin_archive .plugin_archive_link {
        padding-top: 16px;
        padding-bottom: 16px;
    }

    /* 全記事一覧 */
    .titlelist_area,
    .search_area {
        margin: 0 16px 32px;
    }

    /* comment form */
    .comment_form_text {
        width: 100%;
        height: 40px;
    }

    .primaryBtn:hover{
      color: #4990e2;
      background-color: #fff;
    }
    .is-over+.primaryBtn-archiveOpen:hover:after {
      border-top-color: #4990e2;
    }
    .primaryBtn-archiveOpen:hover:after{
      border-bottom-color: #4990e2;
    }
}

/* 自分カスタマイズ*/

pre {
   overflow: auto;
   white-space: pre-wrap;  
   word-wrap: break-word; 
   background-color: #eeeeee;
   padding: 10px 15px;
   //padding: 50px;
   margin: 15px;
   /*border: solid 1px DarkGray;*/
}

/* ただのセンター揃え */
.just_center {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.just_align {
    display: flex;
    align-items: center;
    justify-content: center;
}

.just_align img{
    margin: 0 2em;
}

.just_flex {
    display: flex;
    flex-direction: column;
}

/* box 2 の使い方
<div class="box2">
    <p>ここに文章</p>
</div>
*/
.box2 {
    padding: 0.5em 1em;
    margin: 2em 0;
    /*font-weight: bold;*/
    /*color: #6091d3;*/ /*文字色*/
    /*background: #FFF;*/
    /*border: solid 3px #6091d3;*//*線*/
    border: solid 1px; 
    border-radius: 10px;/*角の丸み*/
}
.box2 p {
    margin: 0; 
    padding: 0;
}

.box2_small {

    display: flex;
    flex-direction: column;
    align-items: center;

    width: 300px; 
    text-align: center;
    
    font-size: 15px;
    padding: 0.5em 1em;
    margin: 2em 0;
    border: solid 1px; 
    border-radius: 10px;
}
.box2_small p {
    margin: 0; 
    padding: 0;
}

.gshopper_small {
    display: flex;
    flex-direction: column;
    align-items: center;

    /*width: 300px; */
    text-align: center;
    color: white;
    background-color: #339933;
    font-size: 15px;
    padding: 0.5em 1em;
    margin: 2em 0;
    border: non; 
    border-radius: 5px;
}
.gshopper p {
    margin: 0; 
    padding: 0;
}



/* box 17 の使い方
<div class="box17">
    <p>ここに文章</p>
</div>
*/

.box17{
    margin:2em 0;
    position: relative;
    padding: 0.5em 1.5em;
    border-top: solid 1px black;
    border-bottom: solid 1px black;

}
.box17:before, .box17:after{
    content: '';
    position: absolute;
    top: -10px;
    width: 1px;
    height: -webkit-calc(100% + 20px);
    height: calc(100% + 20px);
    background-color: black;
}
.box17:before {left: 10px;}
.box17:after {right: 10px;}
.box17 p {
    margin: 0; 
    padding: 0;
}

.box-text-notice {
    position: relative;
    border: 3px double #da4033;
    border-radius: 5px;
    margin: 20px 0;
    padding: 20px 20px 5px 20px;
}
.box-text-notice::before {
    content: "重要！";
    position: absolute;
    background-color: #fff;
    color: #da4033;
    font-weight: bold;
    left: 20px;
    top: -23px;
    padding: 10px;
}

.box-text-point {
    position: relative;
    border: 3px solid #033;
    border-radius: 5px;
    margin: 20px 0;
    padding: 20px 20px 5px 20px;
}
.box-text-point::before {
    content: "POINT";
    position: absolute;
    background-color: #f4f4f4;
    color: #033;
    font-weight: bold;
    left: 20px;
    top: -23px;
    padding: 10px;
}

.box-text-memo {
    position: relative;
    border: 3px dashed #000055;
    border-radius: 5px;
    margin: 20px 0;
    padding: 20px 20px 5px 20px;
}

.box-text-memo::before {
    content: "MEMO";
    position: absolute;
    background-color: #fff;
    color: #000055;
    font-weight: bold;
    left: 20px;
    #top: -23px;
    top: -30px;
    padding: 10px;
}

.container{
  display: flex;
  flex-wrap: wrap;

  align-items: baseline;
  justify-content: center;
}

.item_choco {
  display: flex;
  justify-content: center;
  align-items: center; 

  width: 300px;
  height: 300px;

  box-shadow: 3px 3px 5px rgba(0,0,0,0.4);
}

.vuitton_coin {
    width: 100%;
    box-shadow: 0px 0px 15px rgba(0,0,0,0.4) inset;
    margin: 20px 0px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
}
.vuitton_coin p{ margin: 0; }

.vuitton_coin-box {
    height: 250px;
    width : 250px;

    box-shadow: 0px 0px 20px rgba(0,0,0,0.4);
    background-color: #F7F4F0;
    margin: 30px 30px;
    display: flex;

    flex-direction: column;
    /*-webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;*/
    justify-content: space-between;
}
.vuitton_coin-txt {
    /*border: solid;*/
    margin: 0px 0px;
    padding: 30px 30px;
    word-break: break-all;
    flex-basis: 100%;
}
.vuitton_coin-titleBox {
    /*border: solid blue;*/
    padding: 30px 0px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 25px;
}
.vuitton_coin-imgBox {
    display: block;
    /*border: solid red;*/
    width : 250px;
    height: 150px;
}

@media screen and (max-width: 600px){
  .vuitton_coin {
    flex-wrap: wrap;
  }
}


.myFlexbox13 {
  width: 100%;
  margin: 0px 0px;
  /* border-style: solid; */
  /*background-color: #F7F4F0;*/
  box-shadow: 0px 0px 15px rgba(0,0,0,0.4) inset;

  display: flex;
  flex-direction: column;
}

.myFlexbox13-childTxt {
  width: 100%;
  padding: 0 1rem;
  /*border-style: solid;*/
}

.myFlexbox13-child {
  width: 100%;

  /*border-style: solid;*/

  margin: 0px 0px 8px 4px;
  flex-basis: content;
  display: flex;
  flex-wrap: wrap;
}

.myFlexbox13-imgBox {
  margin: 1rem;
  width: 140px;
  height: 140px;
  background-color: #F7F4F0;
}

.myFlexbox13-img {
  width: 130%;
  height: auto;
  object-fit: contain;
}

.myFlexbox14 {
  width: 100%;
  margin: 0px 0px;
  /* border-style: solid; */
  /*background-color: #F7F4F0;*/
  box-shadow: 0px 0px 15px rgba(0,0,0,0.4) inset;

  display: flex;
  flex-direction: column;
}

.myFlexbox14-childTxt {
  width: 100%;
  padding: 0 1rem;
  /*border-style: solid;*/
}

.myFlexbox14-child {
  width: 100%;

  /*border-style: solid;*/

  margin: 0px 0px 8px 4px;
  flex-basis: content;
  display: flex;
  flex-wrap: wrap;
}

.myFlexbox14-imgBox {
  margin: 1rem;
  width: 140px;
  height: 140px;
  background-color: #F7F4F0;
}

.myFlexbox14-imgBox img {
  max-width: 300%;
  width: 150%;
  height: auto;
  object-fit: contain;
}

.smallwoman{
  position: relative;
  right: 25%;
  top: -50%;
}

.upimg130{
  position: relative;
  top: -130px;
}

.upimg110{
  position: relative;
  top: -110px;
}

.upimg90{
  position: relative;
  top: -90px;
}

.upimg70{
  position: relative;
  top: -70px;
}

.upimg50{
  position: relative;
  top: -50px;
}

.upimg20{
  position: relative;
  top: -20px;
}


.downimg20{
  position: relative;
  top: 20px;
}

.downimg10{
  position: relative;
  top: 10px;
}

.upimg10{
  position: relative;
  top: -10px;
}
.number_font1{
  font-family: 'Open Sans', sans-serif;
}


:root {
  --w: 300px;
  --h: 400px;

  --txt-h: 10px;

  --box-margin-h: 30px;
  --box-margin-w: 10px;	      
}

/* Flexbox 解説用 */
.img_box {
  /*border: solid;*/
  display: flex;
  flex-wrap: wrap;
  /*align-items: center;
  justify-content: center;*/
}

.img_box a {
  width: 150px;
  height: 150px;

  border: solid;
  margin: 10px 10px;
  padding: 0;

  /*画像配置*/
  display: flex;

  align-items: center;
  /* align-items: flex-end; */
  justify-content: center;
}

.img_box img {
  width: 50%;
}

@media screen and (max-width: 600px){
  .img_box a {
    width: 100%;
  }
}



.imgtxt_container {
  /*border: solid;*/
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.imgtxt_container div {
  margin: 0;
  padding: 0;

  /*border: solid;*/
  margin: var(--box-margin-h) var(--box-margin-w);

  /*テキスト・画像ボックス配置*/
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
}
.imgtxt_container p {
  margin: 0;
  padding: 0;

  /*border: solid;*/
  width: var(--w);

  /*テキスト配置*/
  padding-bottom: var(--txt-h);
  text-align: center;
}
.imgtxt_container a {
  /*border: solid;*/

  width: var(--w);
  height: var(--h);

  /* 画像配置 */
  display: flex;
  align-items: center;
  justify-content: center;
}
.imgtxt_container img {
  width: 100%;
}

@media screen and (max-width: 600px){
  .imgtxt_container div {
    width: 100%;
  }
}


.mybox1 {
  width: 100%;
  box-shadow: 0px 0px 15px rgba(0,0,0,0.4) inset;

  margin: 0px 0px;
  padding: 1rem 1rem;
}

.card {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;

}

.item {
   display: flex;
   flex-direction: column;

   width: 40%;
   margin:  15px 15px 15px;

   box-shadow: 3px 3px 5px rgba(0,0,0,0.4);
}

.ttl {
  text-align: center;

}

.pic {
  text-align: center;
}

.pic img{
   max-width: 100%;
}


.vuitton_container {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;

  /*border: solid black;*/
}

.vuitton_card {
   display: flex;
   flex-direction: column;

   margin: 10px 0;
   padding: 10px 0px;

   width: 300px;
   box-shadow: 3px 3px 5px rgba(0,0,0,0.4);

   /*border: solid blue;*/
}
@media screen and (max-width: 600px){
    .vuitton_container {    
	justify-content: space-evenly;	
    }
}

.vuitton_card a{
    margin: 0px 30px;
    display: flex;

    /*border: solid red;*/
}
.vuitton_card p{
    margin: 0 0 10px 0;
    padding: 0;
    text-align: center;

   /*border: solid yellow;*/
}






.mytable table{
    table-layout: auto;
    margin: 0 0 20px 0;
    border-collapse: collapse;
    border-spacing: 0px;

}

.mytable td {
    padding: 12px;
    text-align: center;
    /*border: 3px solid #c0c0c0;*/
    border: 1px solid #c0c0c0;
}

.th_center tr th{
    text-align:center;
}

.th_bggray th{
    background-color: #EEE;
}

.th_fggreen th{
    color: green;
}

.th_fgblue th{
    color: navy;
}

.double_line {
    border-bottom: 3px double;
 /*border-bottom: 2px solid; */
}

.fst_center_nowrap tr td:nth-of-type(1){
    text-align:center;
    white-space: nowrap;
}

.except_fst_right_nowrap tr td{
    text-align: right;
    white-space: nowrap;
}

.except_fst_right_nowrap tr td:nth-of-type(1){
    text-align:center;
    white-space: nowrap;
}


.table_center tr td{
    text-align:center;
}


.table_noline td, td{
    border: none;
    vertical-align: top;

}
.table_noline tr td:nth-of-type(1){
    white-space: nowrap;
    padding-right: 20px;
}

.under {
  background: linear-gradient(transparent 70%, #ff99ab 70%);
}

.under_plain_blue {
  border-bottom: solid 3px #87CEFA;
}

/**/

.mytd{

    border: 1px solid #c0c0c0 !important;
}

.mytd_double{
    border-bottom: 3px double #c0c0c0 !important;
}


.mytable_right td {
    padding: 12px;
    text-align: right;
    /*border: 3px solid #c0c0c0;*/
    border: 1px solid #c0c0c0;
}

.center_fst_tr tr:nth-of-type(1) td{
    text-align:center;
}
.center_snd_tr tr:nth-of-type(2) td{
    text-align:center;
}

.center_thd_tr tr:nth-of-type(3) td{
    text-align:center;
}

.mytable_borderless{
  border: none;
}
.mytable_borderless tb{
  border: none;
}
.mytable_borderless tr{
  border: none;
}
.mytable_borderless td{
  border: none;
}


.myclass img{
  width: 100px;
  height: 200px;
}


.myclass2 img{
  width: 100px;
  height: 200px;

  border-style: solid;
  border-color: red;

  margin: 0px 30px;
  align: left;
}

.obj-fill img{
  object-fit: fill;
}

.obj-contain img{
  object-fit: contain;
}

.obj-cover img{
  object-fit: cover;
}

.obj-none img{
  object-fit: none;
}

.obj-scale-down img{
  object-fit: scale-down;
}

/*ハイパーリンクの文字色と下線消去で使用*/
.mylink1{

  text-decoration: none;
  color: black;
}

.mylink2 a{
  text-decoration: none;
  color: black;
}
/*ハイパーリンクの文字色と下線消去で使用 ここまで*/

/* 記事リンクカード */
.card-link {
    position: relative;
    /*border: solid;*/
}
.card-link a{
    text-decoration: none;
    margin: 1.5em 0;
    width: 100%;
    min-height: 120px;

    color: #3884ff;
    border: 1px solid #e3e3e3;
    border-radius: 4px;
    transition: .15s border ease;
    font-weight: bold;
    
    display: flex;
}
.card-link p {
    padding-right: 1em;
    align-self: flex-start;
}
.card-link img{
    height: 100px;
    width: auto;

    max-height: 100%;
    max-width: 30%;

    margin: 10px 1.5em 10px 10px;
    /*border: solid;*/
   
    align-self: center;
}

.card-link a::hover {
  border-color: #bbb;
}

.card-link a::after {
    position: absolute;

    display: block;
    content: attr(href);
    font-size: 0.75em;
    color: #767676;
    font-weight: normal;

    align-self: flex-end;

    left: 35%;
    bottom: 10%;
}
@media screen and (max-width: 600px) {
    .card-link a{
	margin: 0.5em 0 0 0;
	line-height: normal;
    }

    .card-link p {
	font-size: 3vw;
        line-height: 3.5vw;
        padding-bottom: 0.3em;
	align-self: center;

        display: flex;
	/*border: solid;*/
    }
    .card-link img{
        height: auto;
	margin: 10px;
        padding-bottom: 0.3em;
    }
    .card-link a::after {
	width: 100%;
	line-height: 3.5vw;
        font-size: 0.6em;	

	left: 0;
	bottom: 0;

	padding: 5px 0;
	text-align: center;
        /*border: solid;*/
    }
    
}
/*リンクカード ここまで*/


.img_border{
  border: solid; 
  border-color: black; 
  border-width: 1px; 
}

.textOnImage {
  position: relative;

  display: inline-block; 
  _display: inline;
}

.textOnImage p {
  position: absolute;
  top: 0;/*画像の左上に配置*/
  left: 0;
  margin: 0; /*余計な隙間を除く*/
  color: white;/*文字を白に*/
  background: skyblue;/*背景色*/
  font-size: 15px;
  line-height: 1;/*行高は1に*/
  padding: 5px 10px;/*文字周りの余白*/
}

.titleOnImage {
  position: relative;
}

.titleOnImage p {
  position: absolute;
  color: white;/*文字は白に*/
  font-weight: bold; /*太字に*/
  font-size: 2em; /*サイズ2倍*/
 
  font-family :Quicksand, sans-serif;/*Google Font*/
  top: 0;
  left: 30px;
}
.titleOnImage img {
  width: 100%;
}
@media screen and (max-width: 600px) {
    .titleOnImage p {
	font-size: 4vw;
    }
}

/* 目次 */
.sidebar{
    position: fixed;
    right:20px;
    width:240px;
    color:#444;
    font-size: 12px;
    margin: -12px 0;
}
.sidebar h2{
    border-top: 2px solid #777;
    border-bottom: 2px solid #777;
    text-align:center;
    padding: 5px 0;
    margin: 0px 5px 0 0;
}

.sidebar h3{
   padding: 20px 0;
}

.sidebar ol{
    background:#EEEEEE;
/*    margin: 0px 5px 15px 0;*/
    margin: 0px 5px 15px 0;
    /*padding: 0.5em 0.3em 0.5em 0.8em;*/
    padding: 0em 0.3em 0em 0.8em;

    font-size: 16px;

    /*line-height: 18px;*/
    line-height: 1.1;
    letter-spacing: 0px;
}

.sidebar ol li{
    list-style-type: none;
    padding: 0.2em 0;
/*padding: 1.5em 0;*/
}

.sidebar ol li li{
    list-style-type: disc;
    list-style-position: outside;
    line-height:1.1;
    font-size: 13px;
/*padding: 1.5em 0;*/
}

.sidebar ol li a{
    color: #2244ff;
    text-decoration: none;
}

.sidebar ol li li:hover{
    background:#ddd;
}

.sidebar ol li a:hover{
    background:#ddd;
}

.sidebar ol a.active{
    /*color:black;*/
background:yellow;

}



/* ***************************************************************** */

.hidden_box {
    padding: 0;
    display: flex;
    flex-flow: column;
}

.hidden_box subbox{
    flex-flow: row;
}
    
.hidden_box label {
    padding: 10px;
    font-weight: bold;
    cursor :pointer;
    margin: -10px -5px 0 0;
    position: fixed;
    text-align: center;
    align-self:end;
}
      
.hidden_box label:before {
    display: inline-block;
    content: '目次';
    box-shadow: 0 0 4px gray;
    padding: 10px 13px;
    font-size: 16px;
}

.hidden_box label:hover {
    color: red;
}

.hidden_box input:checked ~ label:before {
    content: '☓';
    font-weight: bold;    
    font-size: 20px;
    color: black;
    width: 40px;

    margin: -5px 12px 0 0;
    box-shadow: 0 0 0px gray;
    
}
.hidden_box input {
    display: none;
}

.hidden_box .hidden_show {
    height: 0;
    padding: 0;
    overflow: hidden;
}

.hidden_box input:checked ~ .hidden_show {
    height: 80vh;
    overflow-y: auto;
}

.hidden_box .hidden_show_h2 {
    height: 0;
    padding: 0;
    overflow: hidden;
}

.hidden_box input:checked ~ .hidden_show_h2 {
    height: auto;
}



@media screen and (max-width: 600px) {
    .sidebar{
        top: 15px;
	right:10px;
    }
    .sidebar h2{
        top: 0;
	font-size: 12px;
	background: #fff;
    }
      
    .hidden_box label {
	top: 0;
	right: 0;
        margin: -5px -0px 0 0;
    }

    .hidden_box label:before {
	  display: inline-block;
	  content: '目次';
	  box-shadow: 0 0 4px gray;
	  padding: 5px; 
	  font-size: 12px;
      }

    .hidden_box label:hover {
	color: blue;
    }
    
    .hidden_box input:checked ~ label:before {
	content: '☓';
	font-weight: bold;    
	font-size: 20px;
	color: black;
	width: 40px;

	margin: -6px -3px 0 0;
	box-shadow: 0 0 0px gray;
	
    }

}

/* 目次 終わり*/


/* vuitton の個別製品紹介に使用 */
.vuittonImgBox {
    margin: 1rem;
    background-color: #F7F4F0;
    border: solid 1px;

    max-width: 90vw;
    max-height: 90vw;    
}
@media screen and (max-width: 600px) {
    .vuittonImgBox {
	margin: 0;
    }
}
.vuittonImgBox img{
    max-width: 500%;
    position: relative;
    border: 0;
}
.box600{
    width: 600px;
    height: 600px;
}
.box300{
    width: 300px;
    height: 300px;
}
.vuittonFront{
    width: 150%;
    top: -45%;
    right: 25%;
    border: solid 1px;
}
.vuittonInterior{
    width: 110%;    
    top: -20%;
    right: 5%;
    border: solid 1px;
}
.vuittonBagInterior{
    width: 150%;    
    top: -35%;
    right: 25%;
    border: solid 1px;
}
.vuittonLWalletFront{
    width: 110%;    
    top: -5%;
    right: 5%;
    border: solid 1px;
}
.vuittonSWalletFront_Strap{
    width: 110%;    
    top: 3%;
    right: 5%;
    border: solid 1px;
}
.vuittonDetail{
   width: 100%;
    /*object-fit: cover;*/
    border: solid 1px;
}

/* vuitton おわり */



.copy_btn {
    /*border: solid;*/
    border-width: 1px;
    text-align: center;
    width: 180px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.22);
    background: #EEEEEE;
    margin: 10px 10px 30px 10px;
    padding: 10px 0px;
}
.copy_crd {
    width: 150px;

}


/* 箇条書きボックス */
/*
.list_box ul, ol {
  background: #fffcf4;
  border-radius :8px;/*角の丸み*/
  box-shadow :0px 0px 5px silver;/*5px=影の広がり具合*/
  padding: 0.5em 0.5em 0.5em 2em;
  padding-left: 10em;
}

.list_box ul li, ol li {
  line-height: 1.5;
  padding: 0.5em 0;
}
*/

/* 自分カスタマイズ 終了*/


/*-----------------------------------------
  広告
-----------------------------------------*/

.ad {
    font-size: 13px;
    text-align: center;
}