@charset "utf-8";

.product-banner {width: 100%; text-align: center;}
.product-banner img {width: 100%;height: 220px;margin-bottom: 20px;}
@media screen and (max-width: 768px) {.product-banner img {height: 90px;}}
.intro-text p {font-size:clamp(0.8rem,2.5vw,0.9rem);}
.template-block a {color: #0000ff !important;}
.download-block{display: flex;align-items: center;}
.download-block p {padding:clamp(0.5rem,2.5vw,1rem) 0;}
.high-banner {height: 370px !important;}
@media (max-width:768px) {.high-banner {height: 170px !important;}}
.item_img{ width: 58%; position: relative; overflow: hidden;}
/* !--↓↓↓ fix_20230212_uetani　------------------------------------------------------------------------------ */
/**fix_20221210_uetani**/
main #right_column { margin-top: 80px;}
div#hospital { width: 100%;padding: 0 15px; box-sizing: border-box;margin:auto;}
@media screen and (min-width: 768px){
 #wrap { width:100%; max-width: 1220px;margin: 10px auto;}
 #container {width:100%; max-width: 1220px; box-sizing: border-box;}
 main #left_column {width: 30%;max-width: 300px; box-sizing: border-box; margin: 0;}
 main #right_column {width: 70%;flex: 1;box-sizing: border-box;margin: 0;}
 #pankuzu {padding: 0 15px;box-sizing: border-box; }
 div#hospital {width: 100%;max-width: 920px;padding: 0 15px; box-sizing: border-box; }
 div#hospital section#price dl.table dd, div#hospital section#deadline dl.table dd { max-width: 195px; }
 div#hospital section#deadline .box_wrap .box h4 {max-width: 190px;}
}
/**common.css の修正**/
.sidebar-wrapper .product-section { margin-bottom: 20px;}
/**page-content.css の修正**/
.page-content { padding-left: 0px; padding-right: 0px; box-sizing: border-box;}
.page-content h2.item_title { font-size: 20px; background: #0202e5; color: #fff; padding: 0.5em 1em; font-weight: bold; margin-bottom: 15px; line-height: 1.2;}
.page-content h3.item_title { font-size: 20px; background: #0202e5; color: #fff; padding: 0.5em 1em; font-weight: bold; margin-bottom: 15px; line-height: 1.2;}
.item_title span{ font-size: 14px; padding: 0 10px 0 10px;}
.price-table-wrapper table .price.reasonable, .price-table-wrapper table .price.reasonable a { background: #E4007F; border: solid 1px #E4007F;}
.price-table-wrapper table .price.standard, .price-table-wrapper table .price.standard a { background: #1d8fff; border: solid 1px #1d8fff;}
.price-table-wrapper .table-mobile-wrap th.reasonable, .price-table-wrapper table thead th.reasonable { color: #E4007F; border-color: #E4007F;}
.price-table-wrapper table span { font-size: 12px; letter-spacing: 0;}
.page-content .small { font-size: 13px; line-height: 1.5;}
#header h1 { height: 18px;}
@media screen and (min-width: 768px){
	.page-content { width: 100%; max-width: 920px; padding: 0; padding-left: 15px; padding-right: 15px; box-sizing: border-box;}
	.page-content h2.item_title { font-size: 23px; line-height: 1.6; margin-bottom: 20px;}
	.page-content h3.item_title { font-size: 23px; line-height: 1.6; margin-bottom: 20px;}
	.item_title span{ font-size: 17px; }
	.price-table-wrapper table span { font-size: 13px;}
	#header h1 { height: auto;}
}
.flex{display:flex;}
/**既存部分修正**/
.cont_inner{box-sizing: border-box;padding:0 1.2rem;margin:2rem 0;}
/*display flexの指示*/
	.flex-f_w-a_c-j_c{ display: flex; flex-wrap: wrap; align-items: center; justify-content: center;}
	.flex-f_w-a_c-j_sb{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;}
	.flex-f_w-a_c-j_sa{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-around;}
/*image画像等の指示*/
	.img_w100 { width: 100%;}
	
/*image画像　横並びの指示*/
/*フルワイド：画像2枚横並び　width768px以下：画像1枚*/
.full_w2img-768_w1img{ width: 49%;}
/*フルワイド：画像3枚横並び　width768px以下：画像1枚*/
.full_w3img-768_w1img{ width: 32%;}
@media screen and (max-width: 768px){
	.full_w3img-768_w1img{ width: 100%;}
}
/*フルワイド：画像4枚横並び　width768px以下：画像1枚*/
.full_w4img-768_w1img{ width: 24%;}
@media screen and (max-width: 768px){
	.full_w4img-768_w1img{ width: 100%;}
}

/*フルワイド：画像2枚横並び　width768px以下：画像2枚*/
.full_w2img-768_w2img{ width: 49%;}
/*フルワイド：画像3枚横並び　width768px以下：画像2枚*/
.full_w3img-768_w2img{ width: 32%;}
@media screen and (max-width: 768px){
	.full_w3img-768_w2img{ width: 49%;}
}
/*フルワイド：画像4枚横並び　width768px以下：画像2枚*/
.full_w4img-768_w2img{ width: 24%;}
@media screen and (max-width: 768px){
	.full_w4img-768_w2img{ width: 49%;}
}



/* アコーディオン */
.animated {-webkit-animation-duration: 1s;animation-duration: 1s;-webkit-animation-fill-mode: both;animation-fill-mode: both;}
.content-wrap {position: relative;overflow: hidden;transition: height 0.3s ease;}
.close-btn, .more-btn {display: block;width: 100%;padding: 45px 0 0;position: absolute;bottom: 0;left: 0;text-align: center;background: -moz-linear-gradient(top,rgba(255, 255, 255, 0) 0%,rgba(255, 255, 255, 1) 60%);
background: -webkit-linear-gradient(top,rgba(255, 255, 255, 0) 0%,rgba(255, 255, 255, 1) 60%);
background: linear-gradient(to bottom,rgba(255, 255, 255, 0) 0%,rgba(255, 255, 255, 1) 60%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff',endColorstr='#ffffff',GradientType=0);z-index:2;}
.close-btn {background: none;}
.slide-up {
padding-bottom: 0;}
.slide-down {padding-bottom: 50px;}
.more-btn p,.close-btn p {display: inline-block;color: #fff;cursor: pointer;padding: 5px 20px;width: 25%;border-radius: 20px;font-size: 1.1rem;}
.more-btn p {background: #29B6F6;}
.close-btn {padding:0;}
.close-btn p {background: #aaa; }
.content-wrap {
--content-txt: 16px;
.content-txt {
font-size: var(--content-txt);}}
@media (max-width: 768px) {.more-btn p,.close-btn p {font-size: 1rem; width: 40%;}}

/* 目次 */
.article-index{font-size: 0.8rem;padding: 1rem 4rem;border: solid 1px #AFAFAF;}
@media (max-width:768px){.article-index{padding: 1rem 1.5rem;}}
.article-index .mokuji{text-align: center;font-weight: bold;padding-bottom: 0.5rem;margin-bottom: 1rem;border-bottom: 2px solid #AFAFAF;position: relative;}
.article-index ol{list-style-type: decimal;list-style-position: inside;padding-left: 1.2em;margin: 0;counter-reset: section;}
.article-index ol li {padding: 0.3em 0;margin-left: 1em;text-indent: -1.2em;}
.article-index ol li a {color: #2c3e50;text-decoration: none;transition: color 0.3s;}
.article-index ol li a:hover {color: #3498db;text-decoration: underline;}

/**fix_20240918_uetani 学会ポスターテンプレート部分**/
.flex_table{overflow-wrap: anywhere; word-break: normal; line-break: strict;}
.flex_table tr td{ line-height: 2;}
.ft_icon{ width: 20px; height: 20px; margin: 0 5px -2px 0;}
@media screen and (max-width: 768px){
	.flex_table tr{ display: flex; flex-wrap: wrap;}
	.flex_table tr td{ width: 100%;}
}
.pt_h3_br{ display: none;}
.po_temp_base{ overflow-wrap: anywhere; word-break: normal; line-break: strict;}
.po_temp_base *{ box-sizing: border-box;}
.po_temp{ display: flex; flex-wrap: wrap; margin: 0 0 30px 0; padding: 20px 0 0px 0;}
h4.po_temp_tit{ font-size: 18px; font-weight: bold; background: #0202e5; color: #fff; padding: 6px 10px; margin: 0 0 15px 0; line-height: 1.3; width: 100%;}
h4.po_temp_tit span{ font-size: 12px; padding: 0 0 0 10px;}
.po_temp_img{ width:300px;max-width:50%;border: solid 5px #E2E2FE; padding: 15px 15px 5px 15px ;}
.po_temp_img >a {display:block;width:100%;}
.po_temp_img >a img { width: 100%; border: solid 1px #ddd;}
.po_temp_img_cap{ font-size: 11px; margin: 3px 0; text-align: center; color: #aaa;}
.po_temp_txt{ width: 50%; padding: 0 20px;}
.po_temp_txt01{ font-size: 15px; line-height: 2; padding: 0 10px;}
#grayDisplay { display: none; position: fixed; top: 0; left: 0; width: 100%; max-width: 100% !important; height: 100%; background: rgba(0, 0, 0, 0.8);}
#grayDisplay img { position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; max-width: 90%; max-height: 90%; height: 90%; object-fit: contain;}
@media screen and (max-width: 540px){
	.pt_h3_br{ display: block;}
	.po_temp_img{ width: 100%;max-width:100%;}
	.po_temp_txt{ width: 100%; padding: 20px 0;}
}
#cards {display: flex;justify-content: center;}
.card {width: 300px;height: 400px;border: 1px solid lightgray;}
.card:nth-child(2) {margin-right: 10px;margin-left: 10px;}
.picture img {width: 100%;height: 100%;}

.description {width: 100%;height: 145px;padding-right: 12px;padding-left: 12px;box-sizing: border-box;}
.description p {font-size: 13px;color: dimgray;}
/**ダウンロードボタン**/
.download_tem_01{display: flex; flex-wrap: wrap; align-items: center; text-decoration: none !important; margin: 10px 0; color: #000 !important; font-size: 15px;}
.download_tem_01 img { width: 156px; margin-right: 10px;}
.download_tem_01 b{ flex:1;}
@media screen and (max-width: 768px){
	.download_tem_01{font-size: 13px; line-height: 1.3;}
	.download_tem_01 img { width: 110px;}
}

/**コンテンツバナー画像**/
.lead_img{ height: 300px; background-size: cover;}
 @media screen and (max-width: 768px){ .lead_img{ height: 200px;}}  

.page-content h3 {font-size: 18px;color: #0202e5;border-bottom: solid 3px #0202e5;padding: 0.5em 0 0.2em 0;font-weight: bold;margin:2rem 0 .3rem;line-height: 1.2;position: relative;}
@media screen and (min-width: 768px) {
    .page-content h3 {font-size: 21px;line-height: 1.6;margin-bottom: 25px;}
}
span.marker {background: linear-gradient(transparent 50%, #ffd700 100%);}

/* モーダル制御 */
#image-modal {position: fixed;top: 0;left: 0;width:100vw;
height: 100%;background-color: rgba(0, 0, 0, 0.85);z-index: 9999;align-items: center;justify-content: center;text-align: center;}
/* スマートフォン用（幅767px以下）無印ipad除外 */
@media (max-width: 767px) {
  #image-modal {
    justify-content: flex-end;
  }
}
.modal-inner {position: relative;display: inline-block;max-width: 800px;width: 95vw;max-height: 95vh;}
@media (max-width: 767px) {
    #image-modal img {max-width: 95%;max-height: 95%;object-fit: contain;border-radius: 10px;box-shadow: 0 0 20px rgba(0, 0, 0, 0.4);display: block;}
}
#image-modal .modal-close {position: absolute;top: 100px;right: -50px;font-size: 1.8rem;font-weight: bold;
color:#fff;cursor: pointer;z-index: 11;background-color: rgba(0, 0, 0, 0.4);padding: 0.2em 0.4em;border-radius: 50%;line-height: 1;transition: background-color 0.2s;}
@media screen and (max-width: 767px) {
 #image-modal .modal-close {font-size: 1rem;top: -50px;right: 30px;}
}

.page-content>section { margin-bottom: 5rem;}
/* はじめのナビゲーション */
.setting-area-nav{ margin: 18px 0 30px; }
.setting-area-nav__lead{margin: 0 0 12px;font-size: 14px;line-height: 1.7;color: #333;}
.setting-area-nav__grid{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:.8rem .86rem;margin:2rem auto 5rem;}
.setting-area-nav__btn{position: relative;display:flex;height:100%;align-items: center;justify-content:center;height:100%;
border-radius: 14px;border: 1px solid #dfe3ea;background: linear-gradient(180deg, #ffffff, #f7f8fb);text-decoration: none;color: #0f172a;font-weight: 700;font-size: 14px;
transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;}
.setting-area-nav__btn:before{content:"";position:absolute;inset:0;background: radial-gradient(120px 60px at 20% 20%, rgba(2,2,229,.10), transparent 70%);opacity: 0;transition: opacity .18s ease;pointer-events:none;}
.setting-area-nav__btn:hover{transform: translateY(-2px);border-color: #cdd5e1;background: #0202e5;color: #fff;}
.setting-area-nav__btn:hover:before{ opacity: 1; }
.setting-area-nav__label{display: inline-flex;text-align:center;align-items: center;gap: 8px;min-width: 0;}
.setting-area-nav__dot{width: 10px;height: 10px;border-radius: 999px;background: #0202e5;box-shadow: 0 0 0 4px rgba(2,2,229,.10);flex: 0 0 auto;}
.setting-area-nav__name{white-space: nowrap;text-overflow: ellipsis;font-family: sans-serif;padding:.8rem .3rem;}
.setting-area-nav__arrow{flex: 0 0 auto;font-size: 18px;color: #64748b;transform: translateX(0);transition: transform .18s ease, color .18s ease;}
.setting-area-nav__btn:hover .setting-area-nav__arrow{transform: translateX(2px);color: #fff;}
.setting-area-nav__btn.is-current{background: linear-gradient(180deg, #0202e5, #1414f0);border-color: #0202e5;color: #fff;box-shadow: 0 10px 22px rgba(2,2,229,.22);pointer-events: none;}
.setting-area-nav__btn.is-current:before{ opacity: 0; }
.setting-area-nav__btn.is-current .setting-area-nav__dot{background: #fff;box-shadow: 0 0 0 4px rgba(255,255,255,.22);}
.setting-area-nav__btn.is-current .setting-area-nav__arrow{color: rgba(255,255,255,.85);}
@media screen and (max-width: 900px){
  .setting-area-nav__grid{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media screen and (max-width: 768px){
    .setting-area-nav__grid{ grid-template-columns: repeat(2, minmax(0, 1fr));gap:2.6rem 1.5rem;}
    .setting-area-nav__btn{ padding:.7rem .3rem; border-radius: 14px; }
}

.page-content {letter-spacing:0;}
.page-content h3{margin:2rem 0 .3rem;padding:0 1.3rem .3rem;}
.page-content h4{font-size:1rem;margin:1rem 0 .5rem;}
.page-content h5{font-size:.97rem;font-weight:bold;color: #f62f00;margin:.5rem 0;}
.page-content h4::before{content:'■';}
.page-content h5::before{content:'◎';}

.dsc-box p {font-size:.87rem;margin:.5rem;}

.a-l-c{align-items:center;}
.first-view-img{display:block;width:600px;max-width:90%;margin:.8rem auto;}
.first-view-img2{display:block;width:550px;max-width:90%;margin:2rem auto;}
.view-bottom{width:820px;max-width:98%;margin:10px auto;}
.template-dl-area{margin:2rem auto 1.5rem;max-width:95%;display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:center;}
.template-dl-area>span{display:inline-flex; align-items:center; gap:10px;width:510px;}
.template-btn{display:inline-block;width:100%;max-width:100%;text-align:center;font-family:sans-serif;font-size:.98rem;background-color:#ffcc00;color:#000; font-weight:bold;padding:1rem .5rem;
border-radius:4px;text-decoration:none;transition:0.3s;}
.template-btn:hover {transform: scale(1.05);}
.single-temp>span{width:350px;}
.size-temp>span{width:200px;}
.ac-temp>span{width:250px;}
.gakkai-temp>span{width:170px;}
.shoujo-temp>span{width:310px;}
.ac-temp>span>.template-btn{font-size:.8rem;}
.single-temp>span>.template-btn{font-size:1.02rem;padding:2rem 1rem;}
.size-temp>span>.template-btn{font-size:.85rem;}
.gakkai-temp>span>.template-btn{font-size:.68rem;}
.shoujo-temp>span>.template-btn{font-size:.8rem;}

#ac>.template-dl-area{margin:0 auto;}
#ac-key>.template-dl-area{margin:0 auto;}
.g-thumnail{display:block;width:230px;max-width:90%;margin:.5rem;}
.g-thumnail>img{display:block;width:87%;padding:.75rem;border:1px solid #7edbff;border-radius:.2rem;}
.gakkai-temp{width:535px;max-width:95%;}
.shoujo-temp{width:535px;max-width:95%;}

@media screen and (max-width:820px){
.g-thumnail{width:170px;}
.single-temp>span{width:350px;}
.ac-temp>span{width:550px;}
.gakkai-temp>span{width:200px;}
.gakkai-temp>span>.template-btn{font-size:.8rem;}
.shoujo-temp>span{width:370px;}
.shoujo-temp>span>.template-btn{font-size:.8rem;}
	.media-wrap{flex-direction:column;}
}
div#ac-key>h4 {padding:.5rem;border-bottom:2px solid;font-size:.97rem;}

.common-ul{margin:.5rem;}
.common-ul li{padding:.4rem 1rem;}
.common-ul li span{font-size:.78rem;padding:.3rem;}
.img-area{display:flex;justify-content:center;}
.img-area a{display:block;width:330px;max-width:90%;margin:.75rem;}

@media screen and (max-width:768px){
	.template-dl-area>span{width:100%;}
}
.template-btn>span{display:inline-block;}

/* アコーディオン */
.accordion_wrapper {width:90%;margin: 1.5rem auto;}
.accordion-box {border: 1px solid #ccc;border-radius:.4rem;margin-bottom: 10px;overflow: hidden;}
.accordion-box summary {cursor:pointer;padding:1rem;font-size: clamp(0.9rem, 2.5vw, 1rem);font-weight:bold;background:linear-gradient(134deg, #5a87ff, #00fff2);display:flex;align-items: center;justify-content: space-between;list-style:none;-webkit-appearance:none;}
.accordion-box summary::-webkit-details-marker {display: none !important;}
.accordion-box summary .icon {transition:transform 0.3s ease;color:#fff;font-size:1.5rem;}
summary h3{text-align: center;font-size:1.1rem!important;color:#ffffff!important;width: fit-content;margin: 0 auto;border:none!important;}
summary h3 span{color:#ffff00;}
.accordion-box summary h4{text-align:center;font-size:1.2rem!important;color:#ffffff!important;border:0;width:fit-content;margin: 0 auto;}
.accordion-box summary h4 span{color:#ffff00;}
details[open] summary .icon {transform: rotate(180deg);}
.accordion-box p {padding: 1rem;margin: 0;background: #fff;font-size:.8rem;}
.accordion-box p a{font-weight:bold;border-bottom:2px solid;}
.accordion-box h5{padding:12px 20px 5px;font-size: 1.6rem;color:#5454ff;font-weight: bold;}
.accordion-box ul li{font-size:.9rem;margin:1rem;}
.bc-img{width:100%;margin:1vh auto;display:flex;flex-wrap: wrap;}
.bc-img img{width: 800px;max-width: 100%;margin: 0 auto;}
#nyukou-sec h4{padding:.4rem;font-size:1.1rem;font-weight: bold;color: #fff;width:fit-content;margin:0 auto;}
#nyukou-sec>.accordion_wrapper{width:80%;margin:0 auto;}
#nyukou-sec>.accordion_wrapper>.accordion-box summary{background: #00078d;padding:.5rem;}
.pad-1rem{padding:.2rem 1rem;}
.pad-1rem p{font-size:1rem;margin:.3rem 0;}
#nyukou-sec{font-size:1rem;width:800px;max-width:95%;margin:0 auto;}
#nyukou-sec>#nyukou-summary>.accordion-box summary{background:#000;}
@media screen and (max-width:768px){
	#nyukou-sec>.accordion_wrapper{width:100%;}
	.pad-1rem{padding:.2rem .5rem;}
}
/*アコーディオン end*/

/* デザインオプションのボタン */
.div-design-option-button{position: relative;width: fit-content;margin:auto;}
.div-design-option-button a{width:100%;height:100%;display:block;position:absolute;top:0;opacity: 0;}
#design-option-button{display:block;width:280px;max-width:85%;border-radius:.4rem;margin:0 auto;box-shadow:5px 8px 5px #5e5e5e;}
.div-design-option-button:hover #design-option-button{transform:scale(1.08);}

.imp{width:690px;max-width:90%;margin:0 auto;}
.imp h4{color:#000;font-size:1.2rem;display:flex;align-items:center;font-weight:bold;margin:.2rem auto .7rem;border-bottom:2px solid;width:fit-content;text-align:center}
.imp h4 img{width:1.5rem;height:1.5rem;margin-right:5px;}
.imp p{margin:.2rem 1.5rem;font-size:.9rem;}
.b-border{padding:.5rem;border-radius:.4rem;border:4px solid red;}
	@media screen and (max-width: 768px){
		/* .accordion-box p{padding:0;} */
	}

.nyukou-data{width:630px;max-width:95%;margin:0 auto;border:1px solid #00008b;border-radius:0 0 .4rem .4rem;font-family:sans-serif;font-weight:normal;}
.nyukou-data>p{font-size:.8rem;padding:0 .8rem;}
.nyukou-data>h4{font-size:1rem;}
.nyukou-data>h5{font-weight:bold;font-size:.9rem;border-bottom:1px solid;margin:0;padding:.4rem;color:#fff;background:#00008b;}
.red-line {background: linear-gradient(transparent 89%, #ff4242 85%);}
.f-j-dr-cl{display:flex;justify-content:center;align-items:center;}
.f-j-dr-cl >a{display:block;width:300px;max-width:45%;margin:.5rem;}
.f-j-dr-cl >a>img{display:block;width:100%;}
ul.need-data {width: 430px;max-width: 85%;margin:2rem;font-size:.8rem;font-weight: bold;}
ul.need-data li{margin:.5rem 0;}
@media screen and (max-width:768px){
	ul.need-data {margin:1.3rem auto;}
	div#under_box_catch_text >div{font-size:1rem;}
}
.div-p{width:45%;padding:.5rem;margin:auto;}
@media screen and (max-width: 768px){
    .f-j-dr-cl{flex-direction:column;max-width:90%;}
    .f-j-dr-cl a{max-width:75%;}
    .div-p{width:100%;}
}


.gakkai-img-area{display:flex;justify-content:center;margin:1rem auto;}
.gakkai-img-area a{display:block;margin:.3rem;width:220px;}
@media screen and (max-width:450px){
	.gakkai-img-area{flex-wrap:wrap;}
	.gakkai-img-area a{max-width:27%;}
}

.ac-img-area{display:flex;justify-content:center;margin:2rem auto;}
.ac-img-area a{display:block;margin:.3rem;width:75px;}
.ac-img-area a img {border:1px solid #abdbff;}
@media screen and (max-width:450px){
	.ac-img-area{flex-wrap:wrap;}
	.ac-img-area a{max-width:60px;}
}

.SNS-img-area{display:flex;justify-content:center;margin:1rem auto;}
.SNS-img-area a{display:block;margin:.3rem;width:100px;}
@media screen and (max-width:450px){
	.SNS-img-area{flex-wrap:wrap;}
	.SNS-img-area a{max-width:60px;}
}
.shojo-img-area{display:flex;justify-content:center;margin:1rem auto}
.shojo-img-area a{display:block;margin:.3rem;max-width:130px;}
@media screen and (max-width:450px){
	.shojo-img-area{flex-wrap:wrap;}
	.shojo-img-area a{max-width:70px;}
}